Ir para conteúdo
  • Cadastre-se

Como tirar vocações do site?


Posts Recomendados

@luanluciano93

 

 

mas ele ta assim e msm assim ele continua la entende? oke eu queria é que alguem q entende de web me ajudace a tirar da config da web

 

accountManager = false

namelockManager = true
newPlayerChooseVoc = false
newPlayerSpawnPosX = 32097
newPlayerSpawnPosY = 32219
newPlayerSpawnPosZ = 7
newPlayerTownId = 1
newPlayerLevel = 1
newPlayerMagicLevel = 1
generateAccountNumber = false
 
 
useFragHandler = true
redSkullLength = 2 * 24 * 60 * 60
blackSkullLength = 3 * 24 * 60 * 60

me ajuda ai só falta isso pra eu finalizar o meu site!! pliz

Link para o post
Compartilhar em outros sites
  • Sub-Admin

config.php do site não config.lua 0.o manda ai ele que arrumo pra tu é só dizer o que vc qer tirar!

Editado por alexxxxxxx (veja o histórico de edições)

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Link para o post
Compartilhar em outros sites

config
 

 

Oque eu quero é tirar aquela opções ali de escolher as vocações se vc puder me ajudar agradeço

 

 

<?PHP

$config['site']['worlds'] = array(0 => 'Paranaguá');
$config['site']['quests'] = array('Annihilator' => 5000,'Demon Helmet' => 2645,'Pits of Inferno' => 5550); // list of quests, 'questname' => storage-id,
 
// ACCOUNT config
$config['site']['one_email'] = 1; // one e-mail can be used only to create one account 0 / 1
$config['site']['email_days_to_change'] = 2; // how many days user need to change e-mail to account - block hackers
$config['site']['newaccount_premdays'] = 50; // how many days receive new account
$config['site']['access_tickers'] = 3;
 
// Pagseguro Automatico DangerSoft.com.Br
// Seu email cadastrado no pagseguro
$config['pagseguro']['email'] = '[email protected]';
 
// Nome do Produto
$config['pagseguro']['produtoNome'] = 'Paranaguá Points';
 
$config['site']['publickey'] = "6LfZAAoAAAAAALswKC2UCdCo_wf3ilh_C0qBhQJs "; // Public Key
$config['site']['privkey'] = "6LfZAAoAAAAAAA7_sZX1ZPomaqqTKBka5t6so0Un";; // Private Key
 
// USE ONLY IF YOU CONFIGURED E-MAIL AND IT WORK
$config['site']['create_account_verify_mail'] = 0; // when create account player must use right e-mail, he will receive random password to account like on RL tibia, 1 = yes, 0 = no
$config['site']['generate_new_reckey'] = 0; // let player generate new recovery key, he will receive e-mail with new rec key (not display on page, hacker can't generate rec key)
$config['site']['generate_new_reckey_price'] = 5; // you can get some Premium Points for new rec key
$config['site']['send_mail_when_change_password'] = 1; // send e-mail with new password when change password to account, set 0 if someone abuse to send spam
$config['site']['send_mail_when_generate_reckey'] = 1; // send e-mail with rec key (key is displayed on page anyway when generate), set 0 if someone abuse to send spam
$config['site']['send_register_email'] = 1; // send e-mail when register account
 
// CHARACTER config, format: ID_of_vocation => 'Name of Character to copy', load vocation name from $vocation_name[0] (below)
$config['site']['newchar_vocations'][0] = array(1 => 'Sorcerer Sample', 2 => 'Druid Sample', 3 => 'Paladin Sample', 4 => 'Knight Sample');
$config['site']['newchar_vocations'][0] = array(1 => 'Sorcerer Sample', 2 => 'Druid Sample', 3 => 'Paladin Sample', 4 => 'Knight Sample');
// sample, if rook only:             $config['site']['newchar_vocations'][0] = array(0 => 'Rook Sample');
$config['site']['newchar_towns'][0] = array(2);
$config['site']['newchar_towns'][0] = array(2);
// sample, if all players should spawn in one city (city with ID 2): $config['site']['newchar_towns'] = array(2);
 
// list of vocations on ots (world 0)
$vocation_name[0][0] = array(0 => 'None', 1 => 'Sorcerer', 2 => 'Druid', 3 => 'Paladin', 4 => 'Knight'); // id => 'name' , $vocation_name[0] - promotion level 0, $vocation_name[0] - for world ID 0
$vocation_name[0][1] = array(1 => 'Master Sorcerer', 2 => 'Elder Druid', 3 => 'Royal Paladin', 4 => 'Elite Knight'); // id => 'name' , $vocation_name[1] - promotion level 1, $vocation_name[0] - for world ID 0
// list of vocations on ots (world 1)
$vocation_name[1][0] = array(0 => 'None', 1 => 'Sorcerer', 2 => 'Druid', 3 => 'Paladin', 4 => 'Knight'); // id => 'name' , $vocation_name[0] - promotion level 0, $vocation_name[1] - for world ID 1
$vocation_name[1][1] = array(1 => 'Master Sorcerer', 2 => 'Elder Druid', 3 => 'Royal Paladin', 4 => 'Elite Knight'); // id => 'name' , $vocation_name[1] - promotion level 1, $vocation_name[1] - for world ID 1
 
// list of towns on ots
$towns_list[0] = array(2 => 'Thais', 13 => 'Yalahar', 4 => 'Carlin', 7 => 'Darashia'); // list of towns, id => 'name', $towns_list[0] - for world id 0
$towns_list[1] = array(0 => 'Venore', 1 => 'Edron', 2 => 'Thais', 3 => 'Carlin'); // list of towns, id => 'name', $towns_list[1] - for world id 1
 
// list of monsters on ots - names blocked, you can generate list of your monsters in acc. maker admin panel ( Reload Monsters )
$config['site']['monsters'] = array("amazon","valkyrie","carrion worm","rotworm","rotworm queen","cockroach","kongra","merlkin","sibang","crystal spider","giant spider","poison spider","scorpion","spider","tarantula","achad","axeitus headbanger","bloodpaw","bovinus","colerian the barbarian","cursed gladiator","frostfur","orcus the cruel","rocky","the hairy one","avalanche","drasilla","grimgor guteater","kreebosh the exile","slim","spirit of earth","spirit of fire","spirit of water","the dark dancer","the hag","darakan the executioner","deathbringer","fallen mooh'tah master ghar","gnorre chyllson","norgle glacierbeard","svoren the mad","the masked marauder","the obliverator","the pit lord","webster","barbarian bloodwalker","barbarian brutetamer","barbarian headsplitter","barbarian skullhunter","bear","panda","polar bear","braindeath","beholder","elder beholder","gazer","chicken","dire penguin","flamingo","parrot","penguin","seagull","terror bird","bazir","infernatil","thul","munster","son of verminor","xenia","zoralurk","big boss trolliver","foreman kneebiter","mad technomancer","man in the cave","lord of the elements","the count","the plasmother","dracola","the abomination","the handmaiden","mr. punish","the countess sorrow","the imperor","massacre","apocalypse","brutus bloodbeard","deadeye devious","demodras","dharalion","fernfang","ferumbras","general murius","ghazbaran","grorlam","lethal lissy","morgaroth","necropharus","orshabaal","ron the ripper","the evil eye","the horned fox","the old widow","tiquandas revenge","apprentice sheng","dog","hellhound","war wolf","winter wolf","wolf","chakoya toolshaper","chakoya tribewarden","chakoya windcaller","blood crab","crab","frost giant","frost giantess","ice golem","yeti","acolyte of the cult","adept of the cult","enlightened of the cult","novice of the cult","ungreez","dark torturer","demon","destroyer","diabolic imp","fire devil","fury","hand of cursed fate","juggernaut","nightmare","plaguesmith","blue djinn","efreet","green djinn","marid","frost dragon","wyrm","sea serpent","dragon lord","dragon","hydra","dragon hatchling","dragon lord hatchling","frost dragon hatchling","dwarf geomancer","dwarf guard","dwarf soldier","dwarf","dworc fleshhunter","dworc venomsniper","dworc voodoomaster","elephant","mammoth","elf arcanist","elf scout","elf","charged energy elemental","energy elemental","massive energy elemental","overcharged energy elemental","energy overlord","cat","lion","tiger","azure frog","coral frog","crimson frog","green frog","orchid frog","toad","jagged earth elemental","muddy earth elemental","earth elemental","massive earth elemental","earth overlord","gargoyle","stone golem","ghost","phantasm","phantasm","pirate ghost","spectre","cyclops smith","cyclops drone","behemoth","cyclops","slick water elemental","roaring water elemental","ice overlord","water elemental","massive water elemental","ancient scarab","butterfly","bug","centipede","exp bug","larva","scarab","wasp","lizard sentinel","lizard snakecharmer","lizard templar","minotaur archer","minotaur guard","minotaur mage","minotaur","squirrel","goblin demon","badger","bat","deer","the halloween hare","hyaena","pig","rabbit","silver rabbit","skunk","wisp","dark monk","monk","tha exp carrier","necromancer","priestess","orc berserker","orc leader","orc rider","orc shaman","orc spearman","orc warlord","orc warrior","orc","goblin leader","goblin scavenger","goblin","goblin assassin","assasin","bandit","black knight","hero","hunter","nomad","smuggler","stalker","poacher","wild warrior","ashmunrah","dipthrah","mahrdis","morguthis","omruc","rahemos","thalas","vashresamun","pirate buccaneer","pirate corsair","pirate cutthroat","pirate marauder","carniphila","spit nettle","fire overlord","massive fire elemental","blistering fire elemental","blazing fire elemental","fire elemental","hellfire fighter","quara constrictor scout","quara hydromancer scout","quara mantassin scout","quara pincher scout","quara predator scout","quara constrictor","quara hydromancer","quara mantassin","quara pincher","quara predator","cave rat","rat","cobra","crocodile","serpent spawn","snake","wyvern","black sheep","sheep","mimic","betrayed wraith","bonebeast","demon skeleton","lost soul","pirate skeleton","skeleton","skeleton warrior","undead dragon","defiler","slime2","slime","bog raider","ice witch","warlock","witch","bones","fluffy","grynch clan goblin","hacker","minishabaal","primitive","tibia bug","undead minion","annihilon","hellgorak","latrivan","madareth","zugurosh","ushuriel","golgordan","thornback tortoise","tortoise","eye of the seven","deathslicer","flamethrower","magicthrower","plaguethrower","poisonthrower","shredderthrower","troll champion","frost troll","island troll","swamp troll","troll","banshee","blightwalker","crypt shambler","ghoul","lich","mummy","vampire","grim reaper","trainer","forest dragon","knight","paladin","druid","sorcerer","guard","mercenary","thief","toxiros","pyramo","lazarus","zathroth","goshnar","durin","demora","orc champion","lumenia","dracula","alezzo","prince almirith","elf warlord","random noob","magebomb");
// list of NPCs on ots - names blocked
$config['site']['npc'] = array('alice', 'oarkhal', 'equer', 'parkhal', 'leoric', 'sarkhal', 'pallo', 'riona', 'her miona', 'varkhal', 'eura', 'blitz', 'markhal', 'wengo', 'larkhal');
$config['site']['max_players_per_account'] = 150; // max. number of characters on account
 
$config['archez']['secret'] = array(2, 6, 7, 13, 16, 17, 18, 23, 24, 26, 29, 30, 31, 32, 34, 35, 37, 43, 44, 46, 51, 53, 54, 62, 63, 65, 66, 68, 73, 80, 81, 82, 83);
$config['archez']['achievements'] = array(
    1 => 'Allow Cookies?',
    2 => 'Backpack Tourist',
    3 => 'Bearhugger',
    4 => 'Bone Brother',
    5 => 'Chorister',
    6 => 'Fountain of Life',
    7 => 'Here, Fishy Fishy!',
    8 => 'Honorary Barbarian',
    9 => 'Huntsman',
    10 => 'Just in Time',
    11 => 'Matchmaker',
    12 => 'Nightmare Knight',
    13 => 'Party Animal',
    14 => 'Secret Agent',
    15 => 'Talented Dancer',
    16 => 'Territorial',
    17 => 'Worm Whacker',
    18 => 'Allowance Collector',
    19 => 'Amateur Actor',
    20 => 'Animal Activist',
    21 => 'Beach Tamer',
    22 => 'Blessed!',
    23 => 'Exquisite Taste',
    24 => 'Fireworks in the Sky',
    25 => 'Greenhorn',
    26 => 'Jinx',
    27 => 'Lucid Dreamer',
    28 => 'Mathemagician',
    29 => 'Masquerader',
    30 => 'Ministrel',
    31 => 'Poet Laureate',
    32 => 'Quick as a Turtle',
    33 => 'Sea Scout',
    34 => 'Steampunked',
    35 => 'Superstitios',
    36 => 'The Milkman',
    37 => 'Turncoat',
    38 => 'Vive la Resistance',
    39 => 'Archpostman',
    40 => 'Clay Fighter',
    41 => 'Efreet Ally',
    42 => 'Ghostwisperer',
    43 => 'His True Face',
    44 => 'Ice Sculptor',
    45 => 'King Tibanus Fan',
    46 => 'Marblelous',
    47 => 'Marid Ally',
    48 => 'Passionate Kisser',
    49 => 'Perfect Fool',
    50 => 'Recognised Trader',
    51 => 'Rockstar',
    52 => 'Scrapper',
    53 => 'Vanity',
    54 => 'Wayfarer',
    55 => 'Champion of Chazorai',
    56 => 'Culinary Master',
    57 => 'Explorer',
    58 => 'Follower of Azerus',
    59 => 'Follower of Palimuth',
    60 => 'Friend of the Apes',
    61 => 'Golem in the Gears',
    62 => 'High-Flyer',
    63 => 'Interior Decorator',
    64 => 'Master Thief',
    65 => 'Polisher',
    66 => 'Potion Addict',
    67 => 'Ruthless',
    68 => 'Ship\'s Kobold',
    69 => 'Top AVIN Agent',
    70 => 'Top CGB Agent',
    71 => 'Top TBI Agent',
    72 => 'Annihilator',
    73 => 'Castlemania',
    74 => 'Elite Hunter',
    75 => 'High Inquisitor',
    76 => 'Jamjam',
    77 => 'Lord of the Elements',
    78 => 'Warlord of Svargrond',
    79 => 'Master of the Nexus',
    80 => 'Razing!',
    81 => 'Dread Lord',
    82 => 'Lord Protector',
    83 => 'Herbicide'
);
 
// GUILDS config
$config['site']['guild_need_level'] = 40; // minimum level to create guild
$config['site']['guild_need_pacc'] = 0; // guild need pacc 0 / 1
$config['site']['guild_image_size_kb'] = 1550; // maximum size of image in KB
$config['site']['guild_description_chars_limit'] = 1000; // limit of guild description
$config['site']['guild_description_lines_limit'] = 6; // limit of lines, if description has more lines it will be showed as long text, without 'enters'
$config['site']['guild_motd_chars_limit'] = 150; // limit of MOTD (show in game?)
 
// E-MAIL config
$config['site']['send_emails'] = 1; // is acc. maker configured to send e-mails?
$config['site']['mail_address'] = "[email protected]"; // e-mail address
$config['site']['smtp_enabled'] = "yes"; // send by smtp or mail function (set 0 if use mail function)
$config['site']['smtp_host'] = "tls://smtp.gmail.com"; // address
$config['site']['smtp_port'] = 465; // port
$config['site']['smtp_auth'] = "yes"; // need authorization? (set 0 if not need auth)
$config['site']['smtp_user'] = "[email protected]"; // login
$config['site']['smtp_pass'] = "daniel4747"; // password
 
// ACC MAKER OPTIONS config
$config['site']['access_tickers'] = 6; // acess level needed to create/edit tickers
$config['site']['access_news'] = 6; // access level needed to edit news
$config['site']['access_admin_panel'] = 6; // access level needed to open admin panel
$config['site']['news_big_limit'] = 3; // limit of news on latest news page
$config['site']['news_ticks_limit'] = 5; // limit of ticker news on latest news page
$config['site']['show_creationdate'] = 1; // show date of character creation 1 = yes, 0 = no (when use Search Player)
$config['site']['last_deaths_limit'] = 40; // max. number of death on last death page
$config['site']['players_group_id_block'] = 4; // don't show in statistics players with group ID higher (or equal) then (show tutors, senior tutors and normal players)
$config['site']['support_group_id'] = 2; // on game masters list show players with group id 2 or higher
$config['site']['shop_system'] = 0; // show server shop page? 1 = yes, 0 = no, use only if you installed LUA scripts of shop
$config['site']['download_page'] = 1; // show download page? 1 = yes, 0 = no
$config['site']['serverinfo_page'] = 1; // show server info page? 1 = yes, 0 = no
$config['site']['verify_code_shop'] = 0; // show verify code when player try to check premium code
$config['site']['gallery_page'] = 0; // show gallery page? 1 = yes, 0 = no
$config['site']['email_lai_sec_interval'] = 180; // time in seconds between e-mails to one account from lost account interface, block spam
$config['site']['show_health_information'] = 0; //Show health bar 
$config['site']['show_mana_information'] = 0; //Show mana bar 
$config['site']['show_exp_information'] = 0; //Show exp bar 
$config['site']['number_of_advances'] = 0; // number of latest skill advances to show on character page 
$config['site']['show_marriage_info'] = 0; // show marriage, 1 = yes, 0 = no
$config['site']['show_skills_info'] = 0;//show players skills, 1 = yes, 0 = no
$config['site']['show_vip_status'] = 0;// show vip status, 1 = yes, 0 = no
$config['site']['show_vip_storage'] = 0;// the storage of vip
$config['site']['show_outfit'] = 0;// show outfit, 1 = yes, 0 = no
$config['site']['show_signature'] = 0;// show signature, 1 = yes, 0 = no
$config['site']['screenoftheday'] = 1;// show screenshot of the day
$config['site']['worldtransfer'] = 0;//1-Enable/0-Disable Character World Transfer
$config['site']['worldtransferprice'] = 10;//Price for Character World Transfer
$config['site']['transfermonths'] = 6;//Months for which you cannot make World Transfer with a character
 
// layout, available layouts: rasta,tibiacom,darkritual
$config['site']['layout'] = "tibiacom"; // layout name
?>
 
Link para o post
Compartilhar em outros sites
  • Sub-Admin

 

 

Oque eu quero é tirar aquela opções ali de escolher as vocações se vc puder me ajudar agradeço

 

haaa me manda seu creataccount rsrs

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Link para o post
Compartilhar em outros sites

haaa me manda seu creataccount rsrs
 

 

 

<b>

<?php
$location = array(
'GER' =>'Europe',
// 'USA' =>'North America'
);
$default = 'all';
 
$worlds = array();
$worlds[0] = array('GER', 'open');
/*
$worlds[1] = array('GER', 'optional');
$worlds[2] = array('GER', 'hardcore');
$worlds[3] = array('USA', 'open');
$worlds[4] = array('USA', 'optional');
$worlds[5] = array('USA', 'hardcore');
*/
 
$voc = array(); // if empty, Rook Sample will be used
$voc[1] = 'Sorcerer';
$voc[2] = 'Druid';
$voc[3] = 'Paladin';
$voc[4] = 'Knight';
 
$suggestname = NULL; // not available
$version = '960'; // for download link
 
foreach($worlds as $k =>$v) // remove invalid worlds
if(!isset($location[$v[0]]) || !isset($config['site']['worlds'][$k]))
unset($worlds[$k]);
 
$tmp = array();
foreach($location as $k =>$v) // remove invalid/unused locations
foreach($worlds as $i =>$j)
if($j[0] == $k) {
$tmp[$k] = $v;
break;
}
$location = $tmp; unset($tmp);
 
if(isset($_POST['step']) && $_POST['step'] == 'docreate') {
$e = array();
$s = isset($_POST['accountname']) ? $_POST['accountname'] : '';
if($s == '')
$e['acc'] = 'Please enter an account name!';
elseif(strlen($s) < 6)
$e['acc'] = 'This account name is too short!';
elseif(strlen($s) > 30)
$e['acc'] = 'This account name is too long!';
else {
$s = strtoupper($s);
 
if(!ctype_alnum($s))
$e['acc'] = 'This account name has an invalid format. Your account name may only consist of numbers 0-9 and letters A-Z!';
elseif(!preg_match('/[A-Z]/', $s))
$e['acc'] = 'Your account name must include at least one letter A-Z!';
else {
$con = mysql_pconnect($config['server']['sqlHost'], $config['server']['sqlUser'], $config['server']['sqlPass']) or die('MySQL connection error.');
mysql_select_db($config['server']['sqlDatabase']);
 
if(mysql_num_rows(mysql_query('SELECT id FROM accounts WHERE name=\''.mysql_escape_string($s).'\' LIMIT 1')) != 0)
$e['acc'] = 'This account name is already used. Please select another one!';
}
}
 
$s = isset($_POST['name']) ? trim($_POST['name']) : '';
 
if(empty($s))
$e['name'] = 'Please enter a name for your character!';
elseif(strlen($s) < 3 || strlen($s) > 15)
$e['name'] = 'A name must have at least 3 but no more than 15 letters!';
elseif(preg_match('/[^a-zA-Z ]/', $s))
$e['name'] = 'This name contains invalid letters. Please use only A-Z, a-z and space!';
elseif(!ctype_upper($s[0]))
$e['name'] = 'The first letter of a name has to be a capital letter!';
elseif(strpos($s, '  ') !== false)
$e['name'] = 'This name contains more than one space between words. Please use only one space between words!';
else {
foreach(explode(' ', $s) as $k =>$v) {
$words[$k] = str_split($v);
$len = strlen($v);
if($len == 1) {
$e['name'] = 'This name contains a word with only one letter. Please use more than one letter for each word!';
break;
}
elseif($len > 14) {
$e['name'] = 'This name contains a word that is too long. Please use no more than 14 letters for each word!';
break;
}
}
if(!isset($e['name'])) {
$total=0;
foreach($words as $k =>$p) {
if(isset($e['name']))
break;
$total++;
if($total > 3) {
$e['name'] = 'This name contains more than 3 words. Please choose another name!';
break;
}
$len=0;
foreach($p as $i =>$j) {
$len++;
if($i != 0 && ctype_upper($j)) {
$e['name'] = 'In names capital letters are only allowed at the beginning of a word!';
break;
}
elseif($i == $len-1) {
$ff=null;
for($h=0;$h<strlen($v); $h++) {
if(in_array(strtolower($v[$h]), array('a','e','i','o','u')) !== false) {
$ff=true;
break;
}
}
if(!$ff) {
$e['name'] = 'This name contains a word without vowels. Please choose another name!';
break;
}
}
}
}
if(!isset($e['name'])) {
$s = strtolower($s);
for($i = 0; $i < strlen($s); $i++)
if($s[$i] == $s[($i+1)] && $s[$i] == $s[($i+2)]) {
$e['name'] = 'This character name is already used. Please select another one!';
break;
}
if(!isset($e['name'])) {
foreach(array('aa ', 'ee', 'ii', 'oo', 'uu', 'gm','cm', 'aff ', 'god ', 'abc', 'tutor', 'game', 'admin', 'the ') as $v)
if($v == substr($s, 0, strlen($v))) {
$e['name'] = 'This character name is already used. Please select another one!';
break;
}
if(!isset($e['name'])) {
foreach(array('game', 'customer', 'support', 'fuck', 'haha', 'sux', ' abc', 'suck', 'noob', 'tutor', 'admin', 'account', 'gay', 'password', 'manager', 'frost dragon', 'dragon lord', 'dragon', 'demon', 'minotaur', 'hydra') as $v)
if(strpos($s, $v) !== false) {
$e['name'] = 'This character name is already used. Please select another one!';
break;
}
if(!isset($e['name'])) {
if(!isset($con)) {
$con = mysql_pconnect($config['server']['sqlHost'], $config['server']['sqlUser'], $config['server']['sqlPass']) or die('MySQL connection error.');
mysql_select_db($config['server']['sqlDatabase']);
}
if(mysql_num_rows(mysql_query('SELECT id FROM players WHERE name=\''.mysql_escape_string($s).'\' LIMIT 1')) != 0)
$e['name'] = 'This character name is already used. Please select another one!';
}
}
}
}
}
}
 
if(!isset($_POST['world']) || empty($_POST['world']))
$e['world'] = 'Please select a game world for your character!';
 
if(!isset($_POST['sex']) || ($_POST['sex'] != 'male' && $_POST['sex'] != 'female'))
$e['sex'] = 'Please select the sex for your character!';
 
if(count($voc) != 0 && (!isset($_POST['vocation']) || !is_numeric($_POST['vocation']) || !isset($voc[$_POST['vocation']])))
$e['vocation'] = 'Please select the vocation for your character!';
 
$s = isset($_POST['email']) ? $_POST['email'] : '';
 
if($s == '')
$e['email'] = 'Please enter your email address!';
elseif(strlen($s) > 49)
$e['email'] = 'Your email address is too long!';
elseif(!filter_var($s, FILTER_VALIDATE_EMAIL))
$e['email'] = 'This email address has an invalid format. Please enter a correct email address!';
else {
if(!isset($con)) {
$con = mysql_pconnect($config['server']['sqlHost'], $config['server']['sqlUser'], $config['server']['sqlPass']) or die('MySQL connection error.');
mysql_select_db($config['server']['sqlDatabase']);
}
if(mysql_num_rows(mysql_query('SELECT id FROM accounts WHERE email=\''.mysql_escape_string($s).'\' LIMIT 1')) != 0)
$e['email'] = 'This email address is already used. Please enter another email address!';
}
 
$s1 = isset($_POST['password1']) ? $_POST['password1'] : '';
$s2 = isset($_POST['password2']) ? $_POST['password2'] : '';
 
if(empty($s2))
$e['pass'] = 'Please enter the password again!';
elseif($s1 != $s2)
$e['pass'] = 'The two passwords do not match!';
else {
$err = array();
if(strlen($s1) < 8 || strlen($s1) > 29)
$err[] = 'The password must have at least 8 and less than 30 letters!';
if(!ctype_alnum($s1))
$err[] = 'The password contains invalid letters!';
if(!preg_match('/[a-zA-Z]/', $s1))
$err[] = 'The password must contain at least one letter A-Z or a-z!';
elseif(!preg_match('/[0-9]/', $s1))
$err[] = 'The password must contain at least one letter other than A-Z or a-z!';
 
if(count($err) != 0) {
$e['pass'] = '';
for($i=0; $i < count($err); $i++)
$e['pass'] .= ($i == 0 ? '' : '<br/>').$err[$i];
}
}
 
if(!isset($_POST['agreeagreement']) || empty($_POST['agreeagreement']))
$e['agreement'] = 'You have to agree to the Tibia Service Agreement in order to create an account!';
if(!isset($_POST['agreerules']) || empty($_POST['agreerules']))
$e['rules'] = 'You have to agree to the Tibia Rules in order to create an account!';
if(!isset($_POST['agreeprivacy']) || empty($_POST['agreeprivacy']))
$e['privacy'] = 'You have to agree to the Tibia Privacy Policy in order to create an account!';
 
if(count($e) == 0) {
$worldid = NULL;
foreach($config['site']['worlds'] as $id =>$name)
if($worlds[$id] && $name == $_POST['world']) {
$worldid = $id;
break;
}
if($worldid === FALSE)
$e['world'] = 'Please select a valid game world.';
}
 
if(count($e) != 0) {
$main_content = '<div class="SmallBox"><div class="MessageContainer"><div class="BoxFrameHorizontal" style="background-image:url('.$layout_name.'/images/content/box-frame-horizontal.gif)"/></div><div class="BoxFrameEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></div><div class="BoxFrameEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></div><div class="ErrorMessage"><div class="BoxFrameVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"/></div><div class="BoxFrameVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"/></div><div class="AttentionSign" style="background-image:url('.$layout_name.'/images/content/attentionsign.gif)"/></div><b>The Following Errors Have Occurred:</b><br/>';
foreach($e as $error) $main_content .= $error.'<br/>';
$main_content .= '</div><div class="BoxFrameHorizontal" style="background-image:url('.$layout_name.'/images/content/box-frame-horizontal.gif)"/></div><div class="BoxFrameEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></div><div class="BoxFrameEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></div></div></div><br/>';
}
else {
$random = rand(1, 9999999);
$n = $random;
$cur = array();
 
$q = mysql_query('SELECT id FROM accounts');
while ($r = mysql_fetch_array($q, MYSQL_NUM))
$cur[] = $r[0];
 
while(true)
{
if(!in_array($n, $cur))
break;
 
$n++;
 
if($n > 9999999)
$n = 1;
 
if($n == $random)
die('Failed to create account.');
}
 
if(mysql_query("INSERT INTO accounts (id,name,password,email,created) VALUES($n,'".$_POST['accountname']."','".($config['server']['encryptionType'] == 'plain' ? $_POST['password1'] : hash($config['server']['encryptionType'], $_POST['password1']))."','".$_POST['email']."',".time().")") === true) {
$sample = (count($voc) == 0 ? 'Rook' : $voc[$_POST['vocation']]).' Sample';
$q = mysql_query("SELECT id,vocation,town_id,experience,level,maglevel,health,healthmax,mana,manamax,soul,lookbody,lookfeet,lookhead,looklegs,lookaddons,cap,save,posx,posy,posz FROM players WHERE name='$sample' LIMIT 1");
if(mysql_num_rows($q) != 1)
die('Missing sample character ('.$sample.')');
 
$q = mysql_fetch_array($q);
mysql_query('INSERT INTO players (name,world_id,account_id,level,vocation,health,healthmax,experience,lookbody,lookfeet,lookhead,looklegs,looktype,lookaddons,maglevel,mana,manamax,soul,town_id,posx,posy,posz,cap,sex,created) VALUES(\''.$_POST['name'].'\','.$worldid.','.$n.','.$q['level'].','.$q['vocation'].','.$q['health'].','.$q['healthmax'].','.$q['experience'].','.$q['lookbody'].','.$q['lookfeet'].','.$q['lookhead'].','.$q['looklegs'].','.($_POST['sex'] == 'female' ? 136 : 128).','.$q['lookaddons'].','.$q['maglevel'].','.$q['mana'].','.$q['manamax'].','.$q['soul'].','.$q['town_id'].','.$q['posx'].','.$q['posy'].','.$q['posz'].','.$q['cap'].','.($_POST['sex'] == 'female' ? 0 : 1).','.time().')');
}
else die('Failed to create account.');
$main_content = '<div class="SmallBox"><div class="MessageContainer"><div class="BoxFrameHorizontal" style="background-image:url('.$layout_name.'/images/content/box-frame-horizontal.gif)"/></div><div class="BoxFrameEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></div><div class="BoxFrameEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></div><div class="Message"><div class="BoxFrameVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"/></div><div class="BoxFrameVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"/></div><table><tr><td class="LabelV">Note:</td><td style="width:100%"><p>Your account and character have been created successfully.</p></td></tr></table></div><div class="BoxFrameHorizontal" style="background-image:url('.$layout_name.'/images/content/box-frame-horizontal.gif)"/></div><div class="BoxFrameEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></div><div class="BoxFrameEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></div></div></div><div class="BoxFrameHorizontal" style="background-image:url('.$layout_name.'/images/content/box-frame-horizontal.gif)"></div><div class="BoxFrameEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></div><div class="BoxFrameEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></div><br/><div class="TableContainer"><table class="Table4" cellpadding="0" cellspacing="0"><div class="CaptionContainer"><div class="CaptionInnerContainer"><span class="CaptionEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></span><span class="CaptionEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></span><span class="CaptionBorderTop" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span><span class="CaptionVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"/></span><div class="Text">Download Client</div><span class="CaptionVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"/></span><span class="CaptionBorderBottom" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span><span class="CaptionEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></span><span class="CaptionEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></span></div></div><tr><td><div class="InnerTableContainer"><table style="width:100%"><tr><td><table width="100%" cellpadding=0 cellspacing=0><tr><td style="vertical-align:top"><div class="TableShadowContainerRightTop"><div class="TableShadowRightTop" style="background-image:url('.$layout_name.'/images/content/table-shadow-rt.gif)"></div></div><div class="TableContentAndRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-rm.gif)"><div class="TableContentContainer"><table class="TableContent" width="100%"><tr><td><table style="width:100%;text-align:center"><tr><td><a href="http://tibiaclient.com/files/tibia'.$version.'.exe" type="application/octet-stream" target="_top"><img style="width:180px;height:180px;border:0px" src="account/download_windows.png"/></a></td><td><a href="http://tibiaclient.com/files/tibia'.$version.'.tar" type="application/octet-stream" target="_top"><img style="width:180px;height:180px;border:0px" src="account/download_linux.png"/><br/></a></td></tr><tr><td valign="top"><a href="http://www.mediafire.com/?g48tx82cm8neenj" type="application/octet-stream" target="_top">Baixe nosso Cliente Propio</a></td><td valign="top"><a href="http://tibiaclient.com/files/tibia'.$version.'.tar" type="application/octet-stream" target="_top">Linux Tibia Client '.(sprintf('%01.2f', $version / 100)).'</a></td></tr><tr><td colspan="2">[<span class="HelpLink" onClick="window.open(\'http://www.tibia.com/support/content/help.php?subtopic=requirementes\' \'Help\', \'width=380px, height=310px, scrollbars=yes\')"><a>system requirements</a></span>]</td></tr></table></td></tr></table></div></div><div class="TableShadowContainer"><div class="TableBottomShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bm.gif)"><div class="TableBottomLeftShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bl.gif)"></div><div class="TableBottomRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-br.gif)"></div></div></div></td><td style="vertical-align:top"><div class="TableShadowContainerRightTop"><div class="TableShadowRightTop" style="background-image:url('.$layout_name.'/images/content/table-shadow-rt.gif)"></div></div><div class="TableContentAndRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-rm.gif)"><div class="TableContentContainer"><table class="TableContent" width="100%"><tr><td style="text-align:center"><img style="width:254px;height:218px;margin:7px" src="account/successful_download.jpg"/></td></tr></table></div></div><div class="TableShadowContainer"><div class="TableBottomShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bm.gif)"><div class="TableBottomLeftShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bl.gif)"></div><div class="TableBottomRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-br.gif)"></div></div></div></td></tr></table><tr><td><div class="TableShadowContainerRightTop"><div class="TableShadowRightTop" style="background-image:url('.$layout_name.'/images/content/table-shadow-rt.gif)"></div></div><div class="TableContentAndRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-rm.gif)"><div class="TableContentContainer"><table class="TableContent" width="100%"><tr><td class="LabelV">Disclaimer</td></tr><tr><td>The software and any related documentation is provided "as is" without warranty of any kind. The entire risk arising out of use of the software remains with you. In no event shall CipSoft GmbH be liable for any damages to your computer or loss of data.</td></tr></table></div></div><div class="TableShadowContainer"><div class="TableBottomShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bm.gif)"><div class="TableBottomLeftShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bl.gif)"></div><div class="TableBottomRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-br.gif)"></div></div></div></td></tr></table></div></table></div></td></tr>';
return;
}
} else $_POST['step'] = '';
 
$main_content .= '<script type="text/javascript" src="account/jquery.js"></script>
<script type="text/javascript" src="account/create_character.js"></script>
<script type="text/javascript">var PreselectServerLocation="'.$default.'";var g_FormName="CreateAccountAndCharacter";var g_FieldName="accountname";document.getElementById("ActiveSubmenuItemIcon_createaccount").style.visibility = "visible";';
foreach($worlds as $k =>$v) // create dynamic server list
$main_content .= 'ServerList.push(new Array(\''.$config['site']['worlds'][$k].'\', \''.$v[0].'\', \''.$v[1].'\'));';
$main_content .= '</script><div style="position:relative;top:0px;left:0px"><form action="/index.php?subtopic=createaccount" method=post name="CreateAccountAndCharacter"><div class="TableContainer"><table class="Table5" cellpadding="0" cellspacing="0"><div class="CaptionContainer"><div class="CaptionInnerContainer"><span class="CaptionEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span><span class="CaptionEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span><span class="CaptionBorderTop" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span><span class="CaptionVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span><div class="Text">Create New Account</div><span class="CaptionVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span><span class="CaptionBorderBottom" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span><span class="CaptionEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span><span class="CaptionEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span></div></div><tr><td><div class="InnerTableContainer"><table style="width:100%"><tr><td><div class="TableShadowContainerRightTop"><div class="TableShadowRightTop" style="background-image:url('.$layout_name.'/images/content/table-shadow-rt.gif)"></div></div><div class="TableContentAndRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-rm.gif)"><div class="TableContentContainer"><table class="TableContent" width="100%"><tr><td class="LabelV150"><span id="accountname_label"'.(isset($e['acc']) ? ' class=red"' : '').'>Account Name:</span></td><td><input id="accountname" name="accountname" class="CipAjaxInput" style="width:206px;float:left" value="'.(isset($_POST['accountname]) ? htmlspecialchars(substr($_POST['accountname'], 0, 30)) : '').'" size=30" maxlength="30" onBlur="SendAjaxCip({DataType: \'Container\'}, {Href: \'account/ajax_accountname.php\',PostData: \'a_AccountName=\'+this.value,Method: \'POST\'})"/><div id="accountname_indicator" class="InputIndicator" style="background-image:url(account/'.($_POST['step] != 'docreate' || isset($e['acc']) ? 'n' : '').'ok.gif)"></div></td></tr><tr><td></td><td><span id=accountname_errormessage" class="FormFieldError">'.(isset($e['acc]) ? $e['acc'] : '').'</span></td></tr><tr><td class=LabelV150"><span id="email_label"'.(isset($e['email]) ? ' class="red"' : '').'>Email Address:</span></td><td><input id="email" name="email" class="CipAjaxInput" style="width:206px;float:left" value="'.(isset($_POST['email']) ? htmlspecialchars(substr($_POST['email'], 0, 50)) : '').'" autocomplete=off" size="30" maxlength="50" onBlur="SendAjaxCip({DataType: \'Container\'}, {Href: \'account/ajax_email.php\',PostData: \'a_EMail=\'+this.value,Method: \'POST\'})"/><div id="email_indicator" class="InputIndicator" style="background-image:url(account/'.($_POST['step] != 'docreate' || isset($e['email']) ? 'n' : '').'ok.gif)"></div></td></tr><tr><td></td><td><span id=email_errormessage" class="FormFieldError">'.(isset($e['email]) ? $e['email'] : '').'</span></td></tr><tr><td class=LabelV150"><span id="password1_label"'.(isset($e['pass]) ? ' class="red"' : '').'>Password:</span></td><td><input id="password1" type="password" autocomplete="off" name="password1" style="width:206px;float:left" value="'.(isset($_POST['password1']) ? htmlspecialchars(substr($_POST['password1'], 0, 30)) : '').'" size=30" maxlength="30" onBlur="SendAjaxCip({DataType: \'Container\'}, {Href: \'account/ajax_password.php\',PostData: \'a_Password1=\'+getElementById(\'password1\').value+\'&a_Password2=\'+getElementById(\'password2\').value,Method: \'POST\'})"/><div id="password1_indicator" class="InputIndicator" style="background-image:url(account/'.($_POST['step] != 'docreate' || isset($e['pass']) ? 'n' : '').'ok.gif)"></div></td></tr><tr><td class=LabelV150"><span id="password2_label"'.(isset($e['pass]) ? ' class="red"' : '').'>Password Again:</span></td><td><input id="password2" type="password" name="password2" style="width:206px;float:left" value="'.(isset($_POST['password2']) ? htmlspecialchars(substr($_POST['password2'], 0, 30)) : '').'" size=30" maxlength="30" onBlur="SendAjaxCip({DataType: \'Container\'}, {Href: \'account/ajax_password.php\',PostData: \'a_Password1=\'+getElementById(\'password1\').value+\'&a_Password2=\'+getElementById(\'password2\').value,Method: \'POST\'})"/><div id="password2_indicator" class="InputIndicator" style="background-image:url(account/'.($_POST['step] != 'docreate' || isset($e['pass']) ? 'n' : '').'ok.gif)"></div></td></tr><tr><td></td><td><span id=password_errormessage" class="FormFieldError">'.(isset($e['pass]) ? $e['pass'] : '').'</span></td></tr></table></div></div><div class=TableShadowContainer"><div class="TableBottomShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bm.gif)"><div class="TableBottomLeftShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bl.gif)"></div><div class="TableBottomRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-br.gif)"></div></div></div></td></tr><tr><td><div class="TableShadowContainerRightTop"><div class="TableShadowRightTop" style="background-image:url('.$layout_name.'/images/content/table-shadow-rt.gif)"></div></div><div class="TableContentAndRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-rm.gif)"><div class="TableContentContainer"><table class="TableContent" width="100%"><tr><td class="LabelV150"><span id="charactername_label"'.(isset($e['name]) ? ' class="red"' : '').'>Character Name:</span></td><td><input id="charactername" name="name" class="CipAjaxInput" style="width:206px;float:left;position:relative" style="float:left" value="'.(isset($_POST['name']) ? htmlspecialchars(str_replace('+', ' ', substr(trim($_POST['name']), 0, 30))) : '').'" size=30" maxlength="30" onBlur="SendAjaxCip({DataType: \'Container\'}, {Href: \'account/ajax_charactername.php\',PostData: \'a_CharacterName=\'+this.value,Method: \'POST\'})"/><div id="charactername_indicator" class="InputIndicator" style="background-image:url(account/'.($_POST['step] != 'docreate' || isset($e['name']) ? 'n' : '').'ok.gif)"></div>';
if($suggestname)
$main_content .= '<br/><small>[<a class="CipAjaxLink" href="https://secure.tibia.com/account/content/ajax_suggestname.php" ajaxcip="true" ajaxcip_datatype="Container">suggest name</a>]</small>';
$main_content .= '</td></tr><tr><td></td><td><span id="charactername_errormessage" class="FormFieldError">'.(isset($e['name']) ? $e['name'] : '').'</span></td></tr><tr><td class=LabelV150"><span'.(isset($e['sex]) ? ' class="red"' : '').'>Sex:</span></td><td><table width="100%"><tr><td><span style="margin-right:75px" class="OptionContainer"><label for="sex_male"><span class="OptionContainer"><input id="sex_male" type="radio" name="sex" value="male"'.(($_POST['sex'] == 'male' || $_POST['step'] != 'docreate') ? ' checked=checked"' : '').'/><label for="sex_male">male</label></span></label></span><span class="OptionContainer"><label for="sex_female"><span class="OptionContainer"><input id="sex_female" type="radio" name="sex" value="female"'.($_POST['sex] == 'female' ? ' checked="checked"' : '').'/><label for="sex_female">female</label></span></label></span></td><td></td></tr></table></td></tr>'.(isset($e['sex']) ? '<tr><td></td><td><span class=FormFieldError">'.$e['sex].'</span></td></tr>' : '');
if(count($voc) != 0) {
$main_content .= '<tr><td class="LabelV150"><span'.(isset($e['vocation']) ? ' class="red"' : '').'>Vocation:</span></td><td><table width="100%"><tr><td>';
foreach($voc as $k => $v)
$main_content .= '<span style="margin-right:15px" class="OptionContainer"><label for="vocation_'.$k.'">
<span class="OptionContainer"><input id="vocation_'.$k.'" type="radio" name="vocation" value="'.$k.'"'.($_POST['vocation'] == $k ? ' checked="checked"' : '').'/><label for="vocation_'.$k.'">'.$v.'</label></span></label></span>';
$main_content .= '</td><td></td></tr></table></td></tr>'.(isset($e['vocation']) ? '<tr><td></td><td><span class=FormFieldError">'.$e['vocation].'</span></td></tr>' : '');
}
$main_content .= '</table></div></div><div class="TableShadowContainer"><div class="TableBottomShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bm.gif)"><div class="TableBottomLeftShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bl.gif)"></div><div class="TableBottomRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-br.gif)"></div></div></div></td></tr><tr><td><div class="TableShadowContainerRightTop"><div class="TableShadowRightTop" style="background-image:url('.$layout_name.'/images/content/table-shadow-rt.gif)"></div></div><div class="TableContentAndRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-rm.gif)"><div class="TableContentContainer"><table class="TableContent" width="100%">';
if(count($location)>1) { // show server location filter
$main_content .= '<tr id="filterbox_location"><td class="LabelV150"><span'.(isset($e['world']) ? ' class="red"' : '').'>World Location:</span></td><td><table width="100%"><tr><td width="33%" valign="top"><script>CreateFilterOption(\'server_location\', \'all\', \'all\')</script>&nbsp;&nbsp;</td>';
$i=0;
foreach($location as $k =>$v) {
$i++;
$main_content .= '<td '.($i == count($location) ? '' : 'width="33%" ').'valign="top"><script>CreateFilterOption(\'server_location\', \''.$k.'\', \''.$v.'\')</script>&nbsp;&nbsp;</td>';
}
$main_content .= '</tr></table></td></tr>';
}
$main_content .= '<tr id="filterbox_pvp"><td class="LabelV150"><span'.(isset($e['world']) ? ' class="red"' : '').'>World Type:</span></td><td><div>';
 
$optional=true; $open=true; $hardcore=true;
 
foreach($worlds as $k =>$v) { // remove selection if there's no valid worlds
if($optional && $v[1] == 'optional')
unset($optional);
elseif($open && $v[1] == 'open')
unset($open);
elseif($hardcore && $v[1] == 'hardcore')
unset($hardcore);
elseif(!$optional && !$open && !$hardcore)
break;
}
 
$n = 0;
foreach(array($optional, $open, $hardcore) as $k)
if(!$k)
$n++;
$main_content .= '<table width="'.round(33.33 *  $n).'%"><tr>';
if(!$optional)
$main_content .= '<td width="'.(100 / $n).'%" align="center" valign="top"><b><script>CreateFilterOption(\'server_pvp_type\', \'optional\', \'Optional PvP\')</script></b>&nbsp;&nbsp;Only if both sides agree, characters can be fought<br/><br/></td>';
if(!$open)
$main_content .= '<td width="'.(100 / $n).'%" align="center" valign="top"><b><script>CreateFilterOption(\'server_pvp_type\', \'open\', \'Open PvP\')</script></b>&nbsp;&nbsp;Killing other characters is possible, but restricted<br/><br/></td>';
if(!$hardcore)
$main_content .= '<td align="center" valign="top"><b><script>CreateFilterOption(\'server_pvp_type\', \'hardcore\', \'Hardcore PvP\')</script></b>&nbsp;&nbsp;Killing other characters is not restricted at all<br/><br/></td>';
 
$main_content .= '</tr></table></div></td></tr><tr><td class="LabelV150"><span'.(isset($e['world']) ? ' class="red"' : '').'>World Name:</span></td><td><div id="js_world_box" style="display:none"><table width="100%"><tr id="world_list_tr" style="text-align:left"></tr></table><span onClick="ToggleVisibility(\'js_world_box\', \'suggested_world_box\'); UpdateServerList(); "><small>[<a style="cursor:pointer">suggest game world</a>]</small></span></div><div id="suggested_world_box">Suggested world: <span id="suggested_world_div"></span><br/><span onClick="ToggleVisibility(\'suggested_world_box\', \'js_world_box\'); "><small>[<a style="cursor:pointer">change game world</a></span>]</small></div></td></tr><tr><td><table id="js_world_box" width="100%"><tr id="world_list_tr"></tr></table><table id="plain_world_box" width="100%"><tr><td>';
foreach($worlds as $k =>$v)
$main_content .= '<input id="server_static_'.$config['site']['worlds'][$k].'" type=radio" name="world" value="'.$config['site]['worlds'][$k].'"'.($config['site']['worlds'][$k] == $_POST['world'] ? ' checked=checked"' : '').'><label for="server_static_'.$config['site]['worlds'][$k].'">'.$config['site']['worlds'][$k].'</label><br/>';
$main_content .= '</td></tr></table></td></tr>'.(isset($e['world']) ? '<tr><td></td><td><span class=FormFieldError">'.$e['world].'</span></td></tr>' : '').'</table></div></div><div class="TableShadowContainer"><div class="TableBottomShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bm.gif)"><div class="TableBottomLeftShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bl.gif)"></div><div class="TableBottomRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-br.gif)"></div></div></div></td></tr><tr><td><div class="TableShadowContainerRightTop"><div class="TableShadowRightTop" style="background-image:url('.$layout_name.'/images/content/table-shadow-rt.gif)"></div></div><div class="TableContentAndRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-rm.gif)"><div class="TableContentContainer"><table class="TableContent" width="100%"><tr><td><b>Please select all of the following check boxes:</b></td></tr><tr><td><input type="checkbox" name="agreeagreement" value="true"  onClick="if(this.checked == true) {  document.getElementById(\'agreeagreement_errormessage\').innerHTML = \'\';} else {  document.getElementById(\'agreeagreement_errormessage\').innerHTML = \'You have to agree to the Tibia Service Agreement in order to create an account!\';}"'.($_POST['step'] == 'docreate' && !isset($e['agreement']) ? ' checked=checked"' : '').'/>I agree to the <a href="/index.php?subtopic=legaldocuments&page=agreement" target="_blank">Tibia Service Agreement</a>.</td></tr><tr><td><span id="agreeagreement_errormessage" class="FormFieldError">'.(isset($e['agreement]) ? $e['agreement'] : '').'</span></td></tr><tr><td><input type=checkbox" name="agreerules" value="true"  onClick="if(this.checked == true) {  document.getElementById(\'agreerules_errormessage\').innerHTML = \'\';} else {  document.getElementById(\'agreerules_errormessage\').innerHTML = \'You have to agree to the Tibia Rules in order to create an account!\';}"'.($_POST['step] == 'docreate' && !isset($e['rules']) ? ' checked=checked"' : '').'/>I agree to the <a href="/index.php?subtopic=legaldocuments&page=rules" target="_blank">Tibia Rules</a>.</td></tr><tr><td><span id="agreerules_errormessage" class="FormFieldError">'.(isset($e['rules]) ? $e['rules'] : '').'</span></td></tr><tr><td><input type=checkbox" name="agreeprivacy" value="true"  onClick="if(this.checked == true) {  document.getElementById(\'agreeprivacy_errormessage\').innerHTML = \'\';} else {  document.getElementById(\'agreeprivacy_errormessage\').innerHTML = \'You have to agree to the Tibia Privacy Policy in order to create an account!\';}"'.($_POST['step] == 'docreate' && !isset($e['privacy']) ? ' checked=checked"' : '').'/>I agree to the <a href="/index.php?subtopic=legaldocuments&page=privacy" target="_blank">Tibia Privacy Policy</a>.</td></tr><tr><td><span id="agreeprivacy_errormessage" class="FormFieldError">'.(isset($e['privacy]) ? $e['privacy'] : '').'</span></td></tr></table></div></div><div class="TableShadowContainer"><div class="TableBottomShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bm.gif)"><div class="TableBottomLeftShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bl.gif)"></div><div class="TableBottomRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-br.gif)"></div></div></div></td></tr><script type="text/javascript">PreselectWorld="';
if(isset($_POST['world']) && !empty($_POST['world']))
foreach($config['site']['worlds'] as $id =>$name)
if($worlds[$id] && $name == $_POST['world']) {
$main_content .= $name;
break;
}
$main_content .= '";InitializeCharacterCreator(PreselectServerLocation, \''.(!$optional ? 'optional' : (!$open ? 'open' : 'hardcore')).'\')</script></table></div></table></div></td></tr><br/></div><center><table border="0" cellspacing="0" cellpadding="0"><tr><td style="border:0px"><input type="hidden" name=step value=docreate><input type="hidden" name=noframe value=""><div class="BigButton" style="background-image:url('.$layout_name.'/images/buttons/sbutton.gif)"><div onMouseOver="MouseOverBigButton(this)" onMouseOut="MouseOutBigButton(this)"><div class="BigButtonOver" style="background-image:url('.$layout_name.'/images/buttons/sbutton_over.gif)"></div><input class="ButtonText" type="image" name="Submit" alt="Submit" src="'.$layout_name.'/images/buttons/_sbutton_submit.gif"></div></div></td><tr></form></table></center><script type="text/javascript" language="javascript">document.forms[\'CreateAccountAndCharacter\'].elements[\'accountname\'].focus();</script><script type="text/javascript" src="account/generic.js"></script><script type="text/javascript" src="account/ajaxcip.js"></script>';
Link para o post
Compartilhar em outros sites
  • Sub-Admin

tenta

 

<b>


<?php
$location = array(
'GER' =>'Europe',
// 'USA' =>'North America'
);
$default = 'all';

$worlds = array();
$worlds[0] = array('GER', 'open');
/*
$worlds[1] = array('GER', 'optional');
$worlds[2] = array('GER', 'hardcore');
$worlds[3] = array('USA', 'open');
$worlds[4] = array('USA', 'optional');
$worlds[5] = array('USA', 'hardcore');
*/

$suggestname = NULL; // not available
$version = '960'; // for download link

foreach($worlds as $k =>$v) // remove invalid worlds
if(!isset($location[$v[0]]) || !isset($config['site']['worlds'][$k]))
unset($worlds[$k]);

$tmp = array();
foreach($location as $k =>$v) // remove invalid/unused locations
foreach($worlds as $i =>$j)
if($j[0] == $k) {
$tmp[$k] = $v;
break;
}
$location = $tmp; unset($tmp);

if(isset($_POST['step']) && $_POST['step'] == 'docreate') {
$e = array();
$s = isset($_POST['accountname']) ? $_POST['accountname'] : '';
if($s == '')
$e['acc'] = 'Please enter an account name!';
elseif(strlen($s) < 6)
$e['acc'] = 'This account name is too short!';
elseif(strlen($s) > 30)
$e['acc'] = 'This account name is too long!';
else {
$s = strtoupper($s);

if(!ctype_alnum($s))
$e['acc'] = 'This account name has an invalid format. Your account name may only consist of numbers 0-9 and letters A-Z!';
elseif(!preg_match('/[A-Z]/', $s))
$e['acc'] = 'Your account name must include at least one letter A-Z!';
else {
$con = mysql_pconnect($config['server']['sqlHost'], $config['server']['sqlUser'], $config['server']['sqlPass']) or die('MySQL connection error.');
mysql_select_db($config['server']['sqlDatabase']);

if(mysql_num_rows(mysql_query('SELECT id FROM accounts WHERE name=\''.mysql_escape_string($s).'\' LIMIT 1')) != 0)
$e['acc'] = 'This account name is already used. Please select another one!';
}
}

$s = isset($_POST['name']) ? trim($_POST['name']) : '';

if(empty($s))
$e['name'] = 'Please enter a name for your character!';
elseif(strlen($s) < 3 || strlen($s) > 15)
$e['name'] = 'A name must have at least 3 but no more than 15 letters!';
elseif(preg_match('/[^a-zA-Z ]/', $s))
$e['name'] = 'This name contains invalid letters. Please use only A-Z, a-z and space!';
elseif(!ctype_upper($s[0]))
$e['name'] = 'The first letter of a name has to be a capital letter!';
elseif(strpos($s, '  ') !== false)
$e['name'] = 'This name contains more than one space between words. Please use only one space between words!';
else {
foreach(explode(' ', $s) as $k =>$v) {
$words[$k] = str_split($v);
$len = strlen($v);
if($len == 1) {
$e['name'] = 'This name contains a word with only one letter. Please use more than one letter for each word!';
break;
}
elseif($len > 14) {
$e['name'] = 'This name contains a word that is too long. Please use no more than 14 letters for each word!';
break;
}
}
if(!isset($e['name'])) {
$total=0;
foreach($words as $k =>$p) {
if(isset($e['name']))
break;
$total++;
if($total > 3) {
$e['name'] = 'This name contains more than 3 words. Please choose another name!';
break;
}
$len=0;
foreach($p as $i =>$j) {
$len++;
if($i != 0 && ctype_upper($j)) {
$e['name'] = 'In names capital letters are only allowed at the beginning of a word!';
break;
}
elseif($i == $len-1) {
$ff=null;
for($h=0;$h<strlen($v); $h++) {
if(in_array(strtolower($v[$h]), array('a','e','i','o','u')) !== false) {
$ff=true;
break;
}
}
if(!$ff) {
$e['name'] = 'This name contains a word without vowels. Please choose another name!';
break;
}
}
}
}
if(!isset($e['name'])) {
$s = strtolower($s);
for($i = 0; $i < strlen($s); $i++)
if($s[$i] == $s[($i+1)] && $s[$i] == $s[($i+2)]) {
$e['name'] = 'This character name is already used. Please select another one!';
break;
}
if(!isset($e['name'])) {
foreach(array('aa ', 'ee', 'ii', 'oo', 'uu', 'gm','cm', 'aff ', 'god ', 'abc', 'tutor', 'game', 'admin', 'the ') as $v)
if($v == substr($s, 0, strlen($v))) {
$e['name'] = 'This character name is already used. Please select another one!';
break;
}
if(!isset($e['name'])) {
foreach(array('game', 'customer', 'support', 'fuck', 'haha', 'sux', ' abc', 'suck', 'noob', 'tutor', 'admin', 'account', 'gay', 'password', 'manager', 'frost dragon', 'dragon lord', 'dragon', 'demon', 'minotaur', 'hydra') as $v)
if(strpos($s, $v) !== false) {
$e['name'] = 'This character name is already used. Please select another one!';
break;
}
if(!isset($e['name'])) {
if(!isset($con)) {
$con = mysql_pconnect($config['server']['sqlHost'], $config['server']['sqlUser'], $config['server']['sqlPass']) or die('MySQL connection error.');
mysql_select_db($config['server']['sqlDatabase']);
}
if(mysql_num_rows(mysql_query('SELECT id FROM players WHERE name=\''.mysql_escape_string($s).'\' LIMIT 1')) != 0)
$e['name'] = 'This character name is already used. Please select another one!';
}
}
}
}
}
}

if(!isset($_POST['world']) || empty($_POST['world']))
$e['world'] = 'Please select a game world for your character!';

if(!isset($_POST['sex']) || ($_POST['sex'] != 'male' && $_POST['sex'] != 'female'))
$e['sex'] = 'Please select the sex for your character!';

if(count($voc) != 0 && (!isset($_POST['vocation']) || !is_numeric($_POST['vocation']) || !isset($voc[$_POST['vocation']])))
$e['vocation'] = 'Please select the vocation for your character!';

$s = isset($_POST['email']) ? $_POST['email'] : '';

if($s == '')
$e['email'] = 'Please enter your email address!';
elseif(strlen($s) > 49)
$e['email'] = 'Your email address is too long!';
elseif(!filter_var($s, FILTER_VALIDATE_EMAIL))
$e['email'] = 'This email address has an invalid format. Please enter a correct email address!';
else {
if(!isset($con)) {
$con = mysql_pconnect($config['server']['sqlHost'], $config['server']['sqlUser'], $config['server']['sqlPass']) or die('MySQL connection error.');
mysql_select_db($config['server']['sqlDatabase']);
}
if(mysql_num_rows(mysql_query('SELECT id FROM accounts WHERE email=\''.mysql_escape_string($s).'\' LIMIT 1')) != 0)
$e['email'] = 'This email address is already used. Please enter another email address!';
}

$s1 = isset($_POST['password1']) ? $_POST['password1'] : '';
$s2 = isset($_POST['password2']) ? $_POST['password2'] : '';

if(empty($s2))
$e['pass'] = 'Please enter the password again!';
elseif($s1 != $s2)
$e['pass'] = 'The two passwords do not match!';
else {
$err = array();
if(strlen($s1) < 8 || strlen($s1) > 29)
$err[] = 'The password must have at least 8 and less than 30 letters!';
if(!ctype_alnum($s1))
$err[] = 'The password contains invalid letters!';
if(!preg_match('/[a-zA-Z]/', $s1))
$err[] = 'The password must contain at least one letter A-Z or a-z!';
elseif(!preg_match('/[0-9]/', $s1))
$err[] = 'The password must contain at least one letter other than A-Z or a-z!';

if(count($err) != 0) {
$e['pass'] = '';
for($i=0; $i < count($err); $i++)
$e['pass'] .= ($i == 0 ? '' : '<br/>').$err[$i];
}
}

if(!isset($_POST['agreeagreement']) || empty($_POST['agreeagreement']))
$e['agreement'] = 'You have to agree to the Tibia Service Agreement in order to create an account!';
if(!isset($_POST['agreerules']) || empty($_POST['agreerules']))
$e['rules'] = 'You have to agree to the Tibia Rules in order to create an account!';
if(!isset($_POST['agreeprivacy']) || empty($_POST['agreeprivacy']))
$e['privacy'] = 'You have to agree to the Tibia Privacy Policy in order to create an account!';

if(count($e) == 0) {
$worldid = NULL;
foreach($config['site']['worlds'] as $id =>$name)
if($worlds[$id] && $name == $_POST['world']) {
$worldid = $id;
break;
}
if($worldid === FALSE)
$e['world'] = 'Please select a valid game world.';
}

if(count($e) != 0) {
$main_content = '<div class="SmallBox"><div class="MessageContainer"><div class="BoxFrameHorizontal" style="background-image:url('.$layout_name.'/images/content/box-frame-horizontal.gif)"/></div><div class="BoxFrameEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></div><div class="BoxFrameEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></div><div class="ErrorMessage"><div class="BoxFrameVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"/></div><div class="BoxFrameVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"/></div><div class="AttentionSign" style="background-image:url('.$layout_name.'/images/content/attentionsign.gif)"/></div><b>The Following Errors Have Occurred:</b><br/>';
foreach($e as $error) $main_content .= $error.'<br/>';
$main_content .= '</div><div class="BoxFrameHorizontal" style="background-image:url('.$layout_name.'/images/content/box-frame-horizontal.gif)"/></div><div class="BoxFrameEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></div><div class="BoxFrameEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></div></div></div><br/>';
}
else {
$random = rand(1, 9999999);
$n = $random;
$cur = array();

$q = mysql_query('SELECT id FROM accounts');
while ($r = mysql_fetch_array($q, MYSQL_NUM))
$cur[] = $r[0];

while(true)
{
if(!in_array($n, $cur))
break;

$n++;

if($n > 9999999)
$n = 1;

if($n == $random)
die('Failed to create account.');
}

if(mysql_query("INSERT INTO accounts (id,name,password,email,created) VALUES($n,'".$_POST['accountname']."','".($config['server']['encryptionType'] == 'plain' ? $_POST['password1'] : hash($config['server']['encryptionType'], $_POST['password1']))."','".$_POST['email']."',".time().")") === true) {
$sample = (count($voc) == 0 ? 'Rook' : $voc[$_POST['vocation']]).' Sample';
$q = mysql_query("SELECT id,vocation,town_id,experience,level,maglevel,health,healthmax,mana,manamax,soul,lookbody,lookfeet,lookhead,looklegs,lookaddons,cap,save,posx,posy,posz FROM players WHERE name='$sample' LIMIT 1");
if(mysql_num_rows($q) != 1)
die('Missing sample character ('.$sample.')');

$q = mysql_fetch_array($q);
mysql_query('INSERT INTO players (name,world_id,account_id,level,vocation,health,healthmax,experience,lookbody,lookfeet,lookhead,looklegs,looktype,lookaddons,maglevel,mana,manamax,soul,town_id,posx,posy,posz,cap,sex,created) VALUES(\''.$_POST['name'].'\','.$worldid.','.$n.','.$q['level'].','.$q['vocation'].','.$q['health'].','.$q['healthmax'].','.$q['experience'].','.$q['lookbody'].','.$q['lookfeet'].','.$q['lookhead'].','.$q['looklegs'].','.($_POST['sex'] == 'female' ? 136 : 128).','.$q['lookaddons'].','.$q['maglevel'].','.$q['mana'].','.$q['manamax'].','.$q['soul'].','.$q['town_id'].','.$q['posx'].','.$q['posy'].','.$q['posz'].','.$q['cap'].','.($_POST['sex'] == 'female' ? 0 : 1).','.time().')');
}
else die('Failed to create account.');
$main_content = '<div class="SmallBox"><div class="MessageContainer"><div class="BoxFrameHorizontal" style="background-image:url('.$layout_name.'/images/content/box-frame-horizontal.gif)"/></div><div class="BoxFrameEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></div><div class="BoxFrameEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></div><div class="Message"><div class="BoxFrameVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"/></div><div class="BoxFrameVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"/></div><table><tr><td class="LabelV">Note:</td><td style="width:100%"><p>Your account and character have been created successfully.</p></td></tr></table></div><div class="BoxFrameHorizontal" style="background-image:url('.$layout_name.'/images/content/box-frame-horizontal.gif)"/></div><div class="BoxFrameEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></div><div class="BoxFrameEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></div></div></div><div class="BoxFrameHorizontal" style="background-image:url('.$layout_name.'/images/content/box-frame-horizontal.gif)"></div><div class="BoxFrameEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></div><div class="BoxFrameEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></div><br/><div class="TableContainer"><table class="Table4" cellpadding="0" cellspacing="0"><div class="CaptionContainer"><div class="CaptionInnerContainer"><span class="CaptionEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></span><span class="CaptionEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></span><span class="CaptionBorderTop" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span><span class="CaptionVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"/></span><div class="Text">Download Client</div><span class="CaptionVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"/></span><span class="CaptionBorderBottom" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span><span class="CaptionEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></span><span class="CaptionEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"/></span></div></div><tr><td><div class="InnerTableContainer"><table style="width:100%"><tr><td><table width="100%" cellpadding=0 cellspacing=0><tr><td style="vertical-align:top"><div class="TableShadowContainerRightTop"><div class="TableShadowRightTop" style="background-image:url('.$layout_name.'/images/content/table-shadow-rt.gif)"></div></div><div class="TableContentAndRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-rm.gif)"><div class="TableContentContainer"><table class="TableContent" width="100%"><tr><td><table style="width:100%;text-align:center"><tr><td><a href="http://tibiaclient.com/files/tibia'.$version.'.exe" type="application/octet-stream" target="_top"><img style="width:180px;height:180px;border:0px" src="account/download_windows.png"/></a></td><td><a href="http://tibiaclient.com/files/tibia'.$version.'.tar" type="application/octet-stream" target="_top"><img style="width:180px;height:180px;border:0px" src="account/download_linux.png"/><br/></a></td></tr><tr><td valign="top"><a href="http://www.mediafire.com/?g48tx82cm8neenj" type="application/octet-stream" target="_top">Baixe nosso Cliente Propio</a></td><td valign="top"><a href="http://tibiaclient.com/files/tibia'.$version.'.tar" type="application/octet-stream" target="_top">Linux Tibia Client '.(sprintf('%01.2f', $version / 100)).'</a></td></tr><tr><td colspan="2">[<span class="HelpLink" onClick="window.open(\'http://www.tibia.com/support/content/help.php?subtopic=requirementes\' \'Help\', \'width=380px, height=310px, scrollbars=yes\')"><a>system requirements</a></span>]</td></tr></table></td></tr></table></div></div><div class="TableShadowContainer"><div class="TableBottomShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bm.gif)"><div class="TableBottomLeftShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bl.gif)"></div><div class="TableBottomRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-br.gif)"></div></div></div></td><td style="vertical-align:top"><div class="TableShadowContainerRightTop"><div class="TableShadowRightTop" style="background-image:url('.$layout_name.'/images/content/table-shadow-rt.gif)"></div></div><div class="TableContentAndRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-rm.gif)"><div class="TableContentContainer"><table class="TableContent" width="100%"><tr><td style="text-align:center"><img style="width:254px;height:218px;margin:7px" src="account/successful_download.jpg"/></td></tr></table></div></div><div class="TableShadowContainer"><div class="TableBottomShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bm.gif)"><div class="TableBottomLeftShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bl.gif)"></div><div class="TableBottomRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-br.gif)"></div></div></div></td></tr></table><tr><td><div class="TableShadowContainerRightTop"><div class="TableShadowRightTop" style="background-image:url('.$layout_name.'/images/content/table-shadow-rt.gif)"></div></div><div class="TableContentAndRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-rm.gif)"><div class="TableContentContainer"><table class="TableContent" width="100%"><tr><td class="LabelV">Disclaimer</td></tr><tr><td>The software and any related documentation is provided "as is" without warranty of any kind. The entire risk arising out of use of the software remains with you. In no event shall CipSoft GmbH be liable for any damages to your computer or loss of data.</td></tr></table></div></div><div class="TableShadowContainer"><div class="TableBottomShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bm.gif)"><div class="TableBottomLeftShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bl.gif)"></div><div class="TableBottomRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-br.gif)"></div></div></div></td></tr></table></div></table></div></td></tr>';
return;
}
} else $_POST['step'] = '';

$main_content .= '<script type="text/javascript" src="account/jquery.js"></script>
<script type="text/javascript" src="account/create_character.js"></script>
<script type="text/javascript">var PreselectServerLocation="'.$default.'";var g_FormName="CreateAccountAndCharacter";var g_FieldName="accountname";document.getElementById("ActiveSubmenuItemIcon_createaccount").style.visibility = "visible";';
foreach($worlds as $k =>$v) // create dynamic server list
$main_content .= 'ServerList.push(new Array(\''.$config['site']['worlds'][$k].'\', \''.$v[0].'\', \''.$v[1].'\'));';
$main_content .= '</script><div style="position:relative;top:0px;left:0px"><form action="/index.php?subtopic=createaccount" method=post name="CreateAccountAndCharacter"><div class="TableContainer"><table class="Table5" cellpadding="0" cellspacing="0"><div class="CaptionContainer"><div class="CaptionInnerContainer"><span class="CaptionEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span><span class="CaptionEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span><span class="CaptionBorderTop" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span><span class="CaptionVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span><div class="Text">Create New Account</div><span class="CaptionVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span><span class="CaptionBorderBottom" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span><span class="CaptionEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span><span class="CaptionEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span></div></div><tr><td><div class="InnerTableContainer"><table style="width:100%"><tr><td><div class="TableShadowContainerRightTop"><div class="TableShadowRightTop" style="background-image:url('.$layout_name.'/images/content/table-shadow-rt.gif)"></div></div><div class="TableContentAndRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-rm.gif)"><div class="TableContentContainer"><table class="TableContent" width="100%"><tr><td class="LabelV150"><span id="accountname_label"'.(isset($e['acc']) ? ' class=red"' : '').'>Account Name:</span></td><td><input id="accountname" name="accountname" class="CipAjaxInput" style="width:206px;float:left" value="'.(isset($_POST['accountname]) ? htmlspecialchars(substr($_POST['accountname'], 0, 30)) : '').'" size=30" maxlength="30" onBlur="SendAjaxCip({DataType: \'Container\'}, {Href: \'account/ajax_accountname.php\',PostData: \'a_AccountName=\'+this.value,Method: \'POST\'})"/><div id="accountname_indicator" class="InputIndicator" style="background-image:url(account/'.($_POST['step] != 'docreate' || isset($e['acc']) ? 'n' : '').'ok.gif)"></div></td></tr><tr><td></td><td><span id=accountname_errormessage" class="FormFieldError">'.(isset($e['acc]) ? $e['acc'] : '').'</span></td></tr><tr><td class=LabelV150"><span id="email_label"'.(isset($e['email]) ? ' class="red"' : '').'>Email Address:</span></td><td><input id="email" name="email" class="CipAjaxInput" style="width:206px;float:left" value="'.(isset($_POST['email']) ? htmlspecialchars(substr($_POST['email'], 0, 50)) : '').'" autocomplete=off" size="30" maxlength="50" onBlur="SendAjaxCip({DataType: \'Container\'}, {Href: \'account/ajax_email.php\',PostData: \'a_EMail=\'+this.value,Method: \'POST\'})"/><div id="email_indicator" class="InputIndicator" style="background-image:url(account/'.($_POST['step] != 'docreate' || isset($e['email']) ? 'n' : '').'ok.gif)"></div></td></tr><tr><td></td><td><span id=email_errormessage" class="FormFieldError">'.(isset($e['email]) ? $e['email'] : '').'</span></td></tr><tr><td class=LabelV150"><span id="password1_label"'.(isset($e['pass]) ? ' class="red"' : '').'>Password:</span></td><td><input id="password1" type="password" autocomplete="off" name="password1" style="width:206px;float:left" value="'.(isset($_POST['password1']) ? htmlspecialchars(substr($_POST['password1'], 0, 30)) : '').'" size=30" maxlength="30" onBlur="SendAjaxCip({DataType: \'Container\'}, {Href: \'account/ajax_password.php\',PostData: \'a_Password1=\'+getElementById(\'password1\').value+\'&a_Password2=\'+getElementById(\'password2\').value,Method: \'POST\'})"/><div id="password1_indicator" class="InputIndicator" style="background-image:url(account/'.($_POST['step] != 'docreate' || isset($e['pass']) ? 'n' : '').'ok.gif)"></div></td></tr><tr><td class=LabelV150"><span id="password2_label"'.(isset($e['pass]) ? ' class="red"' : '').'>Password Again:</span></td><td><input id="password2" type="password" name="password2" style="width:206px;float:left" value="'.(isset($_POST['password2']) ? htmlspecialchars(substr($_POST['password2'], 0, 30)) : '').'" size=30" maxlength="30" onBlur="SendAjaxCip({DataType: \'Container\'}, {Href: \'account/ajax_password.php\',PostData: \'a_Password1=\'+getElementById(\'password1\').value+\'&a_Password2=\'+getElementById(\'password2\').value,Method: \'POST\'})"/><div id="password2_indicator" class="InputIndicator" style="background-image:url(account/'.($_POST['step] != 'docreate' || isset($e['pass']) ? 'n' : '').'ok.gif)"></div></td></tr><tr><td></td><td><span id=password_errormessage" class="FormFieldError">'.(isset($e['pass]) ? $e['pass'] : '').'</span></td></tr></table></div></div><div class=TableShadowContainer"><div class="TableBottomShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bm.gif)"><div class="TableBottomLeftShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bl.gif)"></div><div class="TableBottomRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-br.gif)"></div></div></div></td></tr><tr><td><div class="TableShadowContainerRightTop"><div class="TableShadowRightTop" style="background-image:url('.$layout_name.'/images/content/table-shadow-rt.gif)"></div></div><div class="TableContentAndRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-rm.gif)"><div class="TableContentContainer"><table class="TableContent" width="100%"><tr><td class="LabelV150"><span id="charactername_label"'.(isset($e['name]) ? ' class="red"' : '').'>Character Name:</span></td><td><input id="charactername" name="name" class="CipAjaxInput" style="width:206px;float:left;position:relative" style="float:left" value="'.(isset($_POST['name']) ? htmlspecialchars(str_replace('+', ' ', substr(trim($_POST['name']), 0, 30))) : '').'" size=30" maxlength="30" onBlur="SendAjaxCip({DataType: \'Container\'}, {Href: \'account/ajax_charactername.php\',PostData: \'a_CharacterName=\'+this.value,Method: \'POST\'})"/><div id="charactername_indicator" class="InputIndicator" style="background-image:url(account/'.($_POST['step] != 'docreate' || isset($e['name']) ? 'n' : '').'ok.gif)"></div>';
if($suggestname)
$main_content .= '<br/><small>[<a class="CipAjaxLink" href="https://secure.tibia...suggestname.php" ajaxcip="true" ajaxcip_datatype="Container">suggest name</a>]</small>';
$main_content .= '</td></tr><tr><td></td><td><span id="charactername_errormessage" class="FormFieldError">'.(isset($e['name']) ? $e['name'] : '').'</span></td></tr><tr><td class=LabelV150"><span'.(isset($e['sex]) ? ' class="red"' : '').'>Sex:</span></td><td><table width="100%"><tr><td><span style="margin-right:75px" class="OptionContainer"><label for="sex_male"><span class="OptionContainer"><input id="sex_male" type="radio" name="sex" value="male"'.(($_POST['sex'] == 'male' || $_POST['step'] != 'docreate') ? ' checked=checked"' : '').'/><label for="sex_male">male</label></span></label></span><span class="OptionContainer"><label for="sex_female"><span class="OptionContainer"><input id="sex_female" type="radio" name="sex" value="female"'.($_POST['sex] == 'female' ? ' checked="checked"' : '').'/><label for="sex_female">female</label></span></label></span></td><td></td></tr></table></td></tr>'.(isset($e['sex']) ? '<tr><td></td><td><span class=FormFieldError">'.$e['sex].'</span></td></tr>' : '');
if(count($voc) != 0) {
$main_content .= '<tr><td class="LabelV150"><span'.(isset($e['vocation']) ? ' class="red"' : '').'>Vocation:</span></td><td><table width="100%"><tr><td>';
foreach($voc as $k => $v)
$main_content .= '<span style="margin-right:15px" class="OptionContainer"><label for="vocation_'.$k.'">
<span class="OptionContainer"><input id="vocation_'.$k.'" type="radio" name="vocation" value="'.$k.'"'.($_POST['vocation'] == $k ? ' checked="checked"' : '').'/><label for="vocation_'.$k.'">'.$v.'</label></span></label></span>';
$main_content .= '</td><td></td></tr></table></td></tr>'.(isset($e['vocation']) ? '<tr><td></td><td><span class=FormFieldError">'.$e['vocation].'</span></td></tr>' : '');
}
$main_content .= '</table></div></div><div class="TableShadowContainer"><div class="TableBottomShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bm.gif)"><div class="TableBottomLeftShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bl.gif)"></div><div class="TableBottomRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-br.gif)"></div></div></div></td></tr><tr><td><div class="TableShadowContainerRightTop"><div class="TableShadowRightTop" style="background-image:url('.$layout_name.'/images/content/table-shadow-rt.gif)"></div></div><div class="TableContentAndRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-rm.gif)"><div class="TableContentContainer"><table class="TableContent" width="100%">';
if(count($location)>1) { // show server location filter
$main_content .= '<tr id="filterbox_location"><td class="LabelV150"><span'.(isset($e['world']) ? ' class="red"' : '').'>World Location:</span></td><td><table width="100%"><tr><td width="33%" valign="top"><script>CreateFilterOption(\'server_location\', \'all\', \'all\')</script>&nbsp;&nbsp;</td>';
$i=0;
foreach($location as $k =>$v) {
$i++;
$main_content .= '<td '.($i == count($location) ? '' : 'width="33%" ').'valign="top"><script>CreateFilterOption(\'server_location\', \''.$k.'\', \''.$v.'\')</script>&nbsp;&nbsp;</td>';
}
$main_content .= '</tr></table></td></tr>';
}
$main_content .= '<tr id="filterbox_pvp"><td class="LabelV150"><span'.(isset($e['world']) ? ' class="red"' : '').'>World Type:</span></td><td><div>';

$optional=true; $open=true; $hardcore=true;

foreach($worlds as $k =>$v) { // remove selection if there's no valid worlds
if($optional && $v[1] == 'optional')
unset($optional);
elseif($open && $v[1] == 'open')
unset($open);
elseif($hardcore && $v[1] == 'hardcore')
unset($hardcore);
elseif(!$optional && !$open && !$hardcore)
break;
}

$n = 0;
foreach(array($optional, $open, $hardcore) as $k)
if(!$k)
$n++;
$main_content .= '<table width="'.round(33.33 *  $n).'%"><tr>';
if(!$optional)
$main_content .= '<td width="'.(100 / $n).'%" align="center" valign="top"><b><script>CreateFilterOption(\'server_pvp_type\', \'optional\', \'Optional PvP\')</script></b>&nbsp;&nbsp;Only if both sides agree, characters can be fought<br/><br/></td>';
if(!$open)
$main_content .= '<td width="'.(100 / $n).'%" align="center" valign="top"><b><script>CreateFilterOption(\'server_pvp_type\', \'open\', \'Open PvP\')</script></b>&nbsp;&nbsp;Killing other characters is possible, but restricted<br/><br/></td>';
if(!$hardcore)
$main_content .= '<td align="center" valign="top"><b><script>CreateFilterOption(\'server_pvp_type\', \'hardcore\', \'Hardcore PvP\')</script></b>&nbsp;&nbsp;Killing other characters is not restricted at all<br/><br/></td>';

$main_content .= '</tr></table></div></td></tr><tr><td class="LabelV150"><span'.(isset($e['world']) ? ' class="red"' : '').'>World Name:</span></td><td><div id="js_world_box" style="display:none"><table width="100%"><tr id="world_list_tr" style="text-align:left"></tr></table><span onClick="ToggleVisibility(\'js_world_box\', \'suggested_world_box\'); UpdateServerList(); "><small>[<a style="cursor:pointer">suggest game world</a>]</small></span></div><div id="suggested_world_box">Suggested world: <span id="suggested_world_div"></span><br/><span onClick="ToggleVisibility(\'suggested_world_box\', \'js_world_box\'); "><small>[<a style="cursor:pointer">change game world</a></span>]</small></div></td></tr><tr><td><table id="js_world_box" width="100%"><tr id="world_list_tr"></tr></table><table id="plain_world_box" width="100%"><tr><td>';
foreach($worlds as $k =>$v)
$main_content .= '<input id="server_static_'.$config['site']['worlds'][$k].'" type=radio" name="world" value="'.$config['site]['worlds'][$k].'"'.($config['site']['worlds'][$k] == $_POST['world'] ? ' checked=checked"' : '').'><label for="server_static_'.$config['site]['worlds'][$k].'">'.$config['site']['worlds'][$k].'</label><br/>';
$main_content .= '</td></tr></table></td></tr>'.(isset($e['world']) ? '<tr><td></td><td><span class=FormFieldError">'.$e['world].'</span></td></tr>' : '').'</table></div></div><div class="TableShadowContainer"><div class="TableBottomShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bm.gif)"><div class="TableBottomLeftShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bl.gif)"></div><div class="TableBottomRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-br.gif)"></div></div></div></td></tr><tr><td><div class="TableShadowContainerRightTop"><div class="TableShadowRightTop" style="background-image:url('.$layout_name.'/images/content/table-shadow-rt.gif)"></div></div><div class="TableContentAndRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-rm.gif)"><div class="TableContentContainer"><table class="TableContent" width="100%"><tr><td><b>Please select all of the following check boxes:</b></td></tr><tr><td><input type="checkbox" name="agreeagreement" value="true"  onClick="if(this.checked == true) {  document.getElementById(\'agreeagreement_errormessage\').innerHTML = \'\';} else {  document.getElementById(\'agreeagreement_errormessage\').innerHTML = \'You have to agree to the Tibia Service Agreement in order to create an account!\';}"'.($_POST['step'] == 'docreate' && !isset($e['agreement']) ? ' checked=checked"' : '').'/>I agree to the <a href='/index.php?subtopic=legaldocuments&page=agreement' target="_blank">Tibia Service Agreement</a>.</td></tr><tr><td><span id="agreeagreement_errormessage" class="FormFieldError">'.(isset($e['agreement]) ? $e['agreement'] : '').'</span></td></tr><tr><td><input type=checkbox" name="agreerules" value="true"  onClick="if(this.checked == true) {  document.getElementById(\'agreerules_errormessage\').innerHTML = \'\';} else {  document.getElementById(\'agreerules_errormessage\').innerHTML = \'You have to agree to the Tibia Rules in order to create an account!\';}"'.($_POST['step] == 'docreate' && !isset($e['rules']) ? ' checked=checked"' : '').'/>I agree to the <a href="/index.php?subtopic=legaldocuments&page=rules" target="_blank">Tibia Rules</a>.</td></tr><tr><td><span id="agreerules_errormessage" class="FormFieldError">'.(isset($e['rules]) ? $e['rules'] : '').'</span></td></tr><tr><td><input type=checkbox" name="agreeprivacy" value="true"  onClick="if(this.checked == true) {  document.getElementById(\'agreeprivacy_errormessage\').innerHTML = \'\';} else {  document.getElementById(\'agreeprivacy_errormessage\').innerHTML = \'You have to agree to the Tibia Privacy Policy in order to create an account!\';}"'.($_POST['step] == 'docreate' && !isset($e['privacy']) ? ' checked=checked"' : '').'/>I agree to the <a href="/index.php?subtopic=legaldocuments&page=privacy" target="_blank">Tibia Privacy Policy</a>.</td></tr><tr><td><span id="agreeprivacy_errormessage" class="FormFieldError">'.(isset($e['privacy]) ? $e['privacy'] : '').'</span></td></tr></table></div></div><div class="TableShadowContainer"><div class="TableBottomShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bm.gif)"><div class="TableBottomLeftShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-bl.gif)"></div><div class="TableBottomRightShadow" style="background-image:url('.$layout_name.'/images/content/table-shadow-br.gif)"></div></div></div></td></tr><script type="text/javascript">PreselectWorld="';
if(isset($_POST['world']) && !empty($_POST['world']))
foreach($config['site']['worlds'] as $id =>$name)
if($worlds[$id] && $name == $_POST['world']) {
$main_content .= $name;
break;
}
$main_content .= '";InitializeCharacterCreator(PreselectServerLocation, \''.(!$optional ? 'optional' : (!$open ? 'open' : 'hardcore')).'\')</script></table></div></table></div></td></tr><br/></div><center><table border="0" cellspacing="0" cellpadding="0"><tr><td style="border:0px"><input type="hidden" name=step value=docreate><input type="hidden" name=noframe value=""><div class="BigButton" style="background-image:url('.$layout_name.'/images/buttons/sbutton.gif)"><div onMouseOver="MouseOverBigButton(this)" onMouseOut="MouseOutBigButton(this)"><div class="BigButtonOver" style="background-image:url('.$layout_name.'/images/buttons/sbutton_over.gif)"></div><input class="ButtonText" type="image" name="Submit" alt="Submit" src="'.$layout_name.'/images/buttons/_sbutton_submit.gif"></div></div></td><tr></form></table></center><script type="text/javascript" language="javascript">document.forms[\'CreateAccountAndCharacter\'].elements[\'accountname\'].focus();</script><script type="text/javascript" src="account/generic.js"></script><script type="text/javascript" src="account/ajaxcip.js"></script>';

Editado por alexxxxxxx (veja o histórico de edições)

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Link para o post
Compartilhar em outros sites

Parse error: syntax error, unexpected '{', expecting ';' in C:\xampp\htdocs\createaccount.php on line 104   

 

 

deu erro

Link para o post
Compartilhar em outros sites
  • Sub-Admin

tem teaw vewer ? liga ae manda por msg lá como vc mandou antes!

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Link para o post
Compartilhar em outros sites

$config['site']['newchar_vocations'][0] = array(1 => 'Sorcerer Sample', 2 => 'Druid Sample', 3 => 'Paladin Sample', 4 => 'Knight Sample'); $config['site']['newchar_vocations'][0] = array(1 => 'Sorcerer Sample', 2 => 'Druid Sample', 3 => 'Paladin Sample', 4 => 'Knight Sample');

 

Muda isso ai pra isso:

$config['site']['newchar_vocations'][0] = array(0 => 'Rooker Sample'); 
$config['site']['newchar_vocations'][0] = array(0 => 'Rooker Sample'); 

@alexxxxxxx, é proibido pedir ou fornecer ajuda por qualquer outro meio que não seja o fórum, LEIA AS REGRAS! 

Link para o post
Compartilhar em outros sites

e

bom eu fiz isso ontem a noite e ele ficou certo mas quando entro no acc manager pra criar outra char na conta ele aparece devolta olha

 

https://imageshack.com/i/ex79ddb2j

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo