Ir para conteúdo

cs007

Membro
  • Registro em

  • Última visita

Tudo que cs007 postou

  1. Boa tarde, alguém pode me dizer como faço para adicionar novas paginas? Antigamente era na index.php, e não achei essas informações lá. Obrigado
  2. Alguém tem um tutorial explicando como compilar no ubuntu 16.04, da error de todas as formas possível. Obrigado
  3. cs007 postou uma resposta no tópico em Sistemas, Mods & Funções .lua
    Olá, sei que é um post bem antigo, porém incompleto, alguém tem o script para rodar com esse sistema?
  4. Thanks. :D @Ackerzin Qual nome eu ponho nas imagens? obrigado
  5. Bom dia, o link está com error. Obrigado
  6. É sim. @Underewar
  7. root@debian:/home/sources# openssl version -a OpenSSL 1.1.0l 10 Sep 2019 built on: reproducible build, date unspecified platform: debian-amd64 options: bn(64,64) rc4(16x,int) des(int) blowfish(ptr) compiler: gcc -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/lib/ssl\"" -DENGINESDIR="\"/usr/lib/x86_64-linux-gnu/engines-1.1\"" OPENSSLDIR: "/usr/lib/ssl" ENGINESDIR: "/usr/lib/x86_64-linux-gnu/engines-1.1" root@debian:/home/sources# @Underewar
  8. make[1]: Entering directory '/home/sources' CXX actions.o CXX allocator.o CXX beds.o CXX baseevents.o CXX chat.o CXX combat.o CXX condition.o CXX configmanager.o CXX connection.o CXX container.o CXX creature.o CXX creatureevent.o CXX cylinder.o CXX database.o CXX databasemanager.o CXX databasemysql.o CXX depotchest.o CXX depotlocker.o CXX dispatcher.o CXX exception.o CXX fileloader.o CXX game.o CXX globalevent.o CXX group.o CXX gui.o CXX house.o CXX housetile.o CXX inbox.o CXX inputbox.o CXX ioban.o CXX ioguild.o CXX iologindata.o CXX iomap.o CXX iomapserialize.o CXX item.o CXX itemattributes.o CXX items.o CXX luascript.o CXX mailbox.o CXX manager.o CXX map.o CXX monster.o CXX monsters.o CXX movement.o CXX networkmessage.o CXX npc.o CXX otpch.o CXX otserv.o CXX outfit.o otserv.cpp:165:4: warning: invalid suffix on literal; C++11 requires a space bet ween literal and string macro [-Wliteral-suffix] "A server developed by: "SOFTWARE_DEVELOPERS".\n" ^ otserv.cpp:167:4: warning: invalid suffix on literal; C++11 requires a space bet ween literal and string macro [-Wliteral-suffix] ""FORUMS"\n"; ^ otserv.cpp:441:6: warning: invalid suffix on literal; C++11 requires a space bet ween literal and string macro [-Wliteral-suffix] << "A server developed by: "SOFTWARE_DEVELOPERS"." << std::endl ^ otserv.cpp:443:6: warning: invalid suffix on literal; C++11 requires a space bet ween literal and string macro [-Wliteral-suffix] << ""FORUMS"" << std::endl; ^ CXX outputmessage.o otserv.cpp: In function âbool argumentsHandler(StringVec)â: otserv.cpp:167:16: warning: statement has no effect [-Wunused-value] ""FORUMS"\n"; ^ otserv.cpp: In function âvoid otserv(StringVec, ServiceManager*)â: otserv.cpp:615:18: error: invalid use of incomplete type âRSA {aka struct rsa_st }â BN_dec2bn(&g_RSA->p, g_config.getString(ConfigManager::RSA_PRIME1).c_str()); ^~ In file included from /usr/include/openssl/crypto.h:31:0, from /usr/include/openssl/bio.h:20, from /usr/include/openssl/asn1.h:16, from /usr/include/openssl/rsa.h:16, from otserv.cpp:44: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of âRSA {aka s truct rsa_st}â typedef struct rsa_st RSA; ^~~~~~ otserv.cpp:616:18: error: invalid use of incomplete type âRSA {aka struct rsa_st }â BN_dec2bn(&g_RSA->q, g_config.getString(ConfigManager::RSA_PRIME2).c_str()); ^~ In file included from /usr/include/openssl/crypto.h:31:0, from /usr/include/openssl/bio.h:20, from /usr/include/openssl/asn1.h:16, from /usr/include/openssl/rsa.h:16, from otserv.cpp:44: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of âRSA {aka s truct rsa_st}â typedef struct rsa_st RSA; ^~~~~~ otserv.cpp:617:18: error: invalid use of incomplete type âRSA {aka struct rsa_st }â BN_dec2bn(&g_RSA->d, g_config.getString(ConfigManager::RSA_PRIVATE).c_str()); ^~ In file included from /usr/include/openssl/crypto.h:31:0, from /usr/include/openssl/bio.h:20, from /usr/include/openssl/asn1.h:16, from /usr/include/openssl/rsa.h:16, from otserv.cpp:44: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of âRSA {aka s truct rsa_st}â typedef struct rsa_st RSA; ^~~~~~ otserv.cpp:618:18: error: invalid use of incomplete type âRSA {aka struct rsa_st }â BN_dec2bn(&g_RSA->n, g_config.getString(ConfigManager::RSA_MODULUS).c_str()); ^~ In file included from /usr/include/openssl/crypto.h:31:0, from /usr/include/openssl/bio.h:20, from /usr/include/openssl/asn1.h:16, from /usr/include/openssl/rsa.h:16, from otserv.cpp:44: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of âRSA {aka s truct rsa_st}â typedef struct rsa_st RSA; ^~~~~~ otserv.cpp:619:18: error: invalid use of incomplete type âRSA {aka struct rsa_st }â BN_dec2bn(&g_RSA->e, g_config.getString(ConfigManager::RSA_PUBLIC).c_str()); ^~ In file included from /usr/include/openssl/crypto.h:31:0, from /usr/include/openssl/bio.h:20, from /usr/include/openssl/asn1.h:16, from /usr/include/openssl/rsa.h:16, from otserv.cpp:44: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of âRSA {aka s truct rsa_st}â typedef struct rsa_st RSA; ^~~~~~ In file included from /usr/include/openssl/asn1.h:24:0, from /usr/include/openssl/rsa.h:16, from otserv.cpp:44: otserv.cpp:629:15: error: invalid use of incomplete type âRSA {aka struct rsa_st }â BN_mod(g_RSA->dmp1, g_RSA->d, r1, ctx); ^ In file included from /usr/include/openssl/crypto.h:31:0, from /usr/include/openssl/bio.h:20, from /usr/include/openssl/asn1.h:16, from /usr/include/openssl/rsa.h:16, from otserv.cpp:44: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of âRSA {aka s truct rsa_st}â typedef struct rsa_st RSA; ^~~~~~ In file included from /usr/include/openssl/asn1.h:24:0, from /usr/include/openssl/rsa.h:16, from otserv.cpp:44: otserv.cpp:629:28: error: invalid use of incomplete type âRSA {aka struct rsa_st }â BN_mod(g_RSA->dmp1, g_RSA->d, r1, ctx); ^ In file included from /usr/include/openssl/crypto.h:31:0, from /usr/include/openssl/bio.h:20, from /usr/include/openssl/asn1.h:16, from /usr/include/openssl/rsa.h:16, from otserv.cpp:44: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of âRSA {aka s truct rsa_st}â typedef struct rsa_st RSA; ^~~~~~ In file included from /usr/include/openssl/asn1.h:24:0, from /usr/include/openssl/rsa.h:16, from otserv.cpp:44: otserv.cpp:630:15: error: invalid use of incomplete type âRSA {aka struct rsa_st }â BN_mod(g_RSA->dmq1, g_RSA->d, r2, ctx); ^ In file included from /usr/include/openssl/crypto.h:31:0, from /usr/include/openssl/bio.h:20, from /usr/include/openssl/asn1.h:16, from /usr/include/openssl/rsa.h:16, from otserv.cpp:44: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of âRSA {aka s truct rsa_st}â typedef struct rsa_st RSA; ^~~~~~ In file included from /usr/include/openssl/asn1.h:24:0, from /usr/include/openssl/rsa.h:16, from otserv.cpp:44: otserv.cpp:630:28: error: invalid use of incomplete type âRSA {aka struct rsa_st }â BN_mod(g_RSA->dmq1, g_RSA->d, r2, ctx); ^ In file included from /usr/include/openssl/crypto.h:31:0, from /usr/include/openssl/bio.h:20, from /usr/include/openssl/asn1.h:16, from /usr/include/openssl/rsa.h:16, from otserv.cpp:44: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of âRSA {aka s truct rsa_st}â typedef struct rsa_st RSA; ^~~~~~ otserv.cpp:632:23: error: invalid use of incomplete type âRSA {aka struct rsa_st }â BN_mod_inverse(g_RSA->iqmp, g_RSA->q, g_RSA->p, ctx); ^~ In file included from /usr/include/openssl/crypto.h:31:0, from /usr/include/openssl/bio.h:20, from /usr/include/openssl/asn1.h:16, from /usr/include/openssl/rsa.h:16, from otserv.cpp:44: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of âRSA {aka s truct rsa_st}â typedef struct rsa_st RSA; ^~~~~~ otserv.cpp:632:36: error: invalid use of incomplete type âRSA {aka struct rsa_st }â BN_mod_inverse(g_RSA->iqmp, g_RSA->q, g_RSA->p, ctx); ^~ In file included from /usr/include/openssl/crypto.h:31:0, from /usr/include/openssl/bio.h:20, from /usr/include/openssl/asn1.h:16, from /usr/include/openssl/rsa.h:16, from otserv.cpp:44: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of âRSA {aka s truct rsa_st}â typedef struct rsa_st RSA; ^~~~~~ otserv.cpp:632:46: error: invalid use of incomplete type âRSA {aka struct rsa_st }â BN_mod_inverse(g_RSA->iqmp, g_RSA->q, g_RSA->p, ctx); ^~ In file included from /usr/include/openssl/crypto.h:31:0, from /usr/include/openssl/bio.h:20, from /usr/include/openssl/asn1.h:16, from /usr/include/openssl/rsa.h:16, from otserv.cpp:44: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of âRSA {aka s truct rsa_st}â typedef struct rsa_st RSA; ^~~~~~ Makefile:570: recipe for target 'otserv.o' failed make[1]: *** [otserv.o] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory '/home/sources' Makefile:419: recipe for target 'all' failed make: *** [all] Error 2 root@debian:/home/sources# @Underewar
  9. Bom dia pessoal, tenho enfrentado alguns problemas na hora de compilar o OTserv 8.60 no debian9, se alguém souber o motivo, serei grato! Obrigado.
  10. cs007 postou uma resposta no tópico em Suporte Tibia OTServer
    Galera, achei esse script perdido em meus scripts de NPCs, ele parece ser interessa e divertido de se por em otserv. Ele ataca players PK e outros monstros mas queria deixar ele mais realista ele fica muito paradão e os players fogem fácil dele. local level = 10 ----- change this to make the npc hit more/less---------------------|damage_min = (level * 2 + maglevel * 3) * min_multiplier | local maglevel = 10 ----- change this to make the npc hit more/less -----------------|damage_max = (level * 2 + maglevel * 3) * max_multiplier | local min_multiplier = 2.1 ----- change this to make the npc hit more/less ----------|damage_formula = math.random(damage_min,damage_max) | local max_multiplier = 4.2 ----- change this to make the npc hit more/less --------------------------------------------------------------------- local check_interval = 5 ----- change this to the time between checks for a creature (the less time the more it will probably lag :S) local radiusx = 7 ----- change this to the amount of squares left/right the NPC checks (default 7 so he checks 7 squares left of him and 7 squares right (the hole screen) local radiusy = 5 ----- change this to the amount of squares left/right the NPC checks (default 5 so he checks 5 squares up of him and 5 squares down (the hole screen) local Attack_message = "An Invader, ATTACK!!!" ----- change this to what the NPC says when he sees a monster(s) local town_name = "Archgard" ----- the name of the town the NPC says when you say "hi" local Attack_monsters = TRUE ----- set to TRUE for the npc to attack monsters in his area or FALSE if he doesnt local Attack_swearers = TRUE ----- set to TRUE for the npc to attack players that swear near him or FALSE if he doesnt local Attack_pkers = TRUE ----- set to TRUE for the npc to attack players with white and red skulls or FALSE if he doesnt local health_left = 10 ----- set to the amount of health the npc will leave a player with if they swear at him (ie at 10 he will hit the player to 10 health left) local swear_message = "Take this!!!" ----- change this to what you want the NPC to say when he attackes a swearer local swear_words = {"shit", "fuck", "dick", "cunt"} ----- if "Attack_swearers" is set to TRUE then the NPC will attack anyone who says a word in here. Remember to put "" around each word and seperate each word with a comma (,) local hit_effect = CONST_ME_MORTAREA ----- set this to the magic effect the creature will be hit with, see global.lua for more effects local shoot_effect = CONST_ANI_SUDDENDEATH ----- set this to the magic effect that will be shot at the creature, see global.lua for more effects local damage_colour = TEXTCOLOR_RED ----- set this to the colour of the text that shows the damage when the creature gets hit ------------------end of config------------------ local check_clock = os.clock() ----- leave this local focus = 0 ----- leave this function msgcontains(txt, str) return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)')) end function onCreatureSay(cid, type, msg) msg = string.lower(msg) health = getCreatureHealth(cid) - health_left if ((string.find(msg, '(%a*)hi(%a*)'))) and getDistanceToCreature(cid) < 4 then selfSay('Hello ' .. creatureGetName(cid) .. '! I am a defender of '..town_name..'.') doNpcSetCreatureFocus(cid) focus = 0 end if msgcontains(msg, 'time') then selfSay('The time is ' .. getWorldTime() .. '.') end if messageIsInArray(swear_words, msg) then if Attack_swearers == TRUE then selfSay('' .. swear_message ..' ') doCreatureAddHealth(cid,-health) doSendMagicEffect(getThingPos(cid),17) doSendAnimatedText(getThingPos(cid),health,180) doNpcSetCreatureFocus(cid) focus = 0 end end end function getMonstersfromArea(pos, radiusx, radiusy, stack) local monsters = { } local starting = {x = (pos.x - radiusx), y = (pos.y - radiusy), z = pos.z, stackpos = stack} local ending = {x = (pos.x + radiusx), y = (pos.y + radiusy), z = pos.z, stackpos = stack} local checking = {x = starting.x, y = starting.y, z = starting.z, stackpos = starting.stackpos} repeat creature = getThingfromPos(checking) if creature.itemid > 0 then if isCreature(creature.uid) == TRUE then if isPlayer(creature.uid) == FALSE then if Attack_monsters == TRUE then table.insert (monsters, creature.uid) check_clock = os.clock() end elseif isPlayer(creature.uid) == TRUE then if Attack_pkers == TRUE then if getPlayerSkullType(creature.uid) > 0 then table.insert (monsters, creature.uid) check_clock = os.clock() end end end end end if checking.x == pos.x-1 and checking.y == pos.y then checking.x = checking.x+2 else checking.x = checking.x+1 end if checking.x > ending.x then checking.x = starting.x checking.y = checking.y+1 end until checking.y > ending.y return monsters end function onThink() if (Attack_monsters == TRUE and Attack_pkers == TRUE) or (Attack_monsters == TRUE and Attack_pkers == FALSE) or (Attack_monsters == FALSE and Attack_pkers == TRUE) then if (os.clock() - check_clock) > check_interval then monster_table = getMonstersfromArea(getCreaturePosition(getNpcCid( )), radiusx, radiusy, 253) if #monster_table >= 1 then selfSay('' .. Attack_message ..' ') for i = 1, #monster_table do doNpcSetCreatureFocus(monster_table[i]) local damage_min = (level * 2 + maglevel * 3) * min_multiplier local damage_max = (level * 2 + maglevel * 3) * max_multiplier local damage_formula = math.random(damage_min,damage_max) doSendDistanceShoot(getCreaturePosition(getNpcCid( )), getThingPos(monster_table[i]), shoot_effect) doSendMagicEffect(getThingPos(monster_table[i]),hit_effect) doSendAnimatedText(getThingPos(monster_table[i]),damage_formula,damage_colour) doCreatureAddHealth(monster_table[i],-damage_formula) check_clock = os.clock() focus = 0 end elseif table.getn(monster_table) < 1 then focus = 0 check_clock = os.clock() end end end focus = 0 end Agradeço desde já
  11. cs007 postou uma resposta no tópico em Suporte Tibia OTServer
    Notice: Undefined index: sqliteDatabase in /var/www/config-and-functions.php on line 30 Notice: Undefined variable: file_data in /var/www/config-and-functions.php on line 456 Notice: Undefined index: action in /var/www/index.php on line 13 Notice: Undefined index: account_login in /var/www/index.php on line 35 Notice: Undefined index: password_login in /var/www/index.php on line 36 Fiz a configuração do pagseguro automático mas da o seguinte error. donate.php
  12. Valeu mano. Abraço
  13. Primeiramente, fico feliz em saber que você ainda é ativo por aqui mano ? hahaha... Bom, vê se você consegue identificar pelo script que checa. function onLogin(cid) local vip = isVip(cid) if getVipTime(cid) > 0 and vip == FALSE then local townid = 1 doPlayerSetTown(cid, townid) local templePos = getTownTemplePosition(getPlayerTown(cid)) doTeleportThing(cid, templePos, false) setVipTime(cid, 0) doTeleportPlayers(cid, templePos) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seus dias de VIP ACC acabaram.") elseif vip == TRUE then local duration = getVipDate(cid) setPlayerPromotionLevel(cid, 2) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você possui "..getVipDays(cid).." dia(s) de vip acc."..(duration and (" Ela irá durar até "..duration..".") or "")) end return TRUE end Abraço
  14. Pessoal achei um script aqui no site que da p_points para o jogador que se manter online por determinado tempo, eu gostaria de editar esse script para que ele receba uma hora de viptime para cada hora online. É possível? valeu USO TFS 0.4 script referencia:
  15. Eu não achei essa task, mas eu fiz a Annihilator e mesmo assim não apareceu nada.
  16. Sim $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' );
  17. Essa é a pagina do player, eu consegui mostrar os pontos E a outra é database
  18. Boa noite pessoal, não sei por que mas as conquistas não aparecem no site, ele salva na database mas não mostra no site mesmo configurando. <?PHP //$guild = $SQL->query('SELECT ``, `date`, `level` FROM `player_deaths` WHERE `player_id` = '.$player->getId().' ORDER BY `date` DESC LIMIT 0,10;'); $name = stripslashes(ucwords(strtolower(trim($_REQUEST['name'])))); if(empty($name)) { $main_content .= 'Here you can get detailed information about a certain player on '.$config['server']['serverName'].'.<BR> <FORM ACTION="?subtopic=characters" METHOD=post><TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4><TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Search Character</B></TD></TR><TR><TD BGCOLOR="'.$config['site']['darkborder'].'"><TABLE BORDER=0 CELLPADDING=1><TR><TD>Name:</TD><TD><INPUT NAME="name" VALUE=""SIZE=29 MAXLENGTH=29></TD><TD><INPUT TYPE=image NAME="Submit" SRC="'.$layout_name.'/images/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></TD></TR></TABLE></TD></TR></TABLE></FORM>'; } else { if(check_name($name)) { $player = $ots->createObject('Player'); $player->find($name); if($player->isLoaded()) { $account = $player->getAccount(); $main_content .= '<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH=100%><TR><TD></TD><TD><TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%><TR BGCOLOR='.$config['site']['vdarkborder'].'><TD COLSPAN=2 CLASS=white><B>Character Information</B></TD></TR>'; if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD WIDTH=20%>Name:</TD><TD>'; $main_content .= '<b><font color="#004294">'.$player->getName().'</font></b> '; if($player->isOnline()) $main_content .= '|<font color="green"><strong>ON</strong></font>|'; else $main_content .= '|<font color="red"><strong>OFF</strong></font>|'; if($player->isDeleted()) $main_content .= '<font color="red"> [DELETED]</font>'; if($player->isNameLocked()) $main_content .= '<font color="red"> [NAMELOCK]</font>'; $main_content .= '</TD></TR>'; if($player->getOldName()) { if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; if($player->isNameLocked()) $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD>Proposition:</TD><TD>'.$player->getOldName().'</TD></TR>'; else $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD>Old name:</TD><TD>'.$player->getOldName().'</TD></TR>'; } // BEGIN Position Showing *** Fixed by jerryb1988 from otfans.net $group = $player->getGroup(); if ($group == 2){$group_name = 'Tutor';} if ($group == 3){$group_name = 'Senior Tutor';} if ($group == 4){$group_name = 'Gamemaster';} if ($group == 5){$group_name = 'Community Manager';} if ($group == 6){$group_name = 'GOD';} if($group != 1) { if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD>Position:</TD><TD>'.$group_name.'</TD></TR>'; } // END Position Showing if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD>Sex:</TD><TD>'; $main_content .= ($player->getSex() == 0) ? 'female' : 'male'; $main_content .= '</TD></TR>'; if($config['site']['show_marriage_info']) { if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD>Marital status:</TD><TD>'; $marriage = new OTS_Player(); $marriage->load($player->getMarriage()); if($marriage->isLoaded()) $main_content .= 'married to <a href="?subtopic=characters&name='.urlencode($marriage->getName()).'"><b>'.$marriage->getName().'</b></a></TD></TR>'; else $main_content .= 'single</TD></TR>'; } if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD>Profession:</TD><TD>'.$vocation_name[$player->getWorld()][$player->getPromotion()][$player->getVocation()].'</TD></TR>'; if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD>Level:</TD><TD>'.$player->getLevel().'</TD></TR>'; /* Achievements Points */ $achievementPoints = $SQL->query('SELECT SUM(`value`) AS `sum` FROM `player_storage` WHERE `key` LIKE "achievement_points" AND `player_id` = ' . $player->getId())->fetch(); if(!$achievementPoints['sum']) { $achPoints = '0'; } else { $achPoints = $achievementPoints['sum']; } if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD>Achievement Points:</TD><TD>'.$achPoints.'</TD></TR>'; /* Achievements Points END*/ if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD>World:</TD><TD>'.$config['site']['worlds'][$player->getWorld()].'</TD></TR>'; if(!empty($towns_list[$player->getWorld()][$player->getTownId()])) { if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD>Residence:</TD><TD>'.$towns_list[$player->getWorld()][$player->getTownId()].'</TD></TR>'; if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD>Balance:</TD><TD>'.$player->getBalance().' Gold Coins.</TD></TR>'; } $rank_of_player = $player->getRank(); if(!empty($rank_of_player)) { { $guild_id = $rank_of_player->getGuild()->getId(); $guild_name = $rank_of_player->getGuild()->getName(); if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD>Guild Name:</TD><TD>'.$rank_of_player->getName().' of the <a href="?subtopic=guilds&action=show&guild='.$guild_id.'">'.$guild_name.'</a></TD></TR>'; } } if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $lastlogin = $player->getLastLogin(); if(empty($lastlogin)) $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD>Last login:</TD><TD>Never logged in.</TD></TR>'; else /* $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD>Last login:</TD><TD>'.date("j F Y, g:i a", $lastlogin).'</TD></TR>'; */ if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; if($config['site']['show_creationdate'] && $player->getCreated()) { $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD>Created:</TD><TD>'.date("j F Y, g:i a", $player->getCreated()).'</TD></TR>'; } if($config['site']['show_vip_status']) { $id = $player->getCustomField("id"); if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $comment = $player->getComment(); $newlines = array("\r\n", "\n", "\r"); $comment_with_lines = str_replace($newlines, '<br />', $comment, $count); if($count < 50) $comment = $comment_with_lines; if(!empty($comment)) { if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD VALIGN=top>Comment:</TD><TD>'.$comment.'</TD></TR>'; } } //Outfit shower by Pening edited by loleslav if($config['site']['show_outfit']) { $id = $player->getCustomField("id"); $main_content .= '<TD BGCOLOR="'.$config['site']['darkborder'].'">Outfit:'; $listaddon = array('128','129','130','131','132','133','134','135','136','137','138','139','140','141','142','143','144','145','146','147','148','149','150','151','152','153','154','155','158','159','251','252','268','269','270','273','278','279','288','289','302','324','325'); $lookadd = array('0','1','2','3'); foreach ($listaddon as $pid => $name) foreach ($lookadd as $addo => $name) { $addon1 = $SQL->query('SELECT * FROM players WHERE id = '.$id.' AND looktype = '.$listaddon[$pid].' AND lookaddons = '.$lookadd[$addo].';')->fetch(); if($addon1[looktype] == true ) { $finaddon = $addon1[looktype] + $addon1[lookaddons] * 300; $main_content .= '<TD with=50% style="background-color: '.$config['site']['darkborder'].'"><center><img src="images/addons/'.$finaddon.'.gif"/></center></TD></TD>'; } } } $main_content .= '</td>'; //end Outfit shower by Pening edited by loleslav //modified status scripts by ballack13 $main_content .= '<table width=100%><tr>'; //quest status by ballack13 $id = $player->getCustomField("id"); $number_of_quests = 0; $main_content .= '<TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%><TR BGCOLOR='.$config['site']['vdarkborder'].'><TD align="left" COLSPAN=2 CLASS=white><B>Quests</B></TD></TD align="right"></TD></TR>'; $quests = $config['site']['quests']; foreach ($quests as $storage => $name) { if(is_int($number_of_quests / 2)) $bgcolor = $config['site']['darkborder']; else $bgcolor = $config['site']['lightborder']; $number_of_quests++; $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD WIDTH=95%>'.$storage.'</TD>'; $quest = $SQL->query('SELECT * FROM player_storage WHERE player_id = '.$id.' AND `key` = '.$quests[$storage].';')->fetch(); if($quest == false) { $main_content .= '<TD><img src="images/false.png"/></TD></TR>'; } else { $main_content .= '<TD><img src="images/true.png"/></TD></TR>'; } } $main_content .= '</TABLE></td></tr></table><br />'; $deads = 0; //deaths list $player_deaths = $SQL->query('SELECT `id`, `date`, `level` FROM `player_deaths` WHERE `player_id` = '.$player->getId().' ORDER BY `date` DESC LIMIT 0,10;'); foreach($player_deaths as $death) { if(is_int($number_of_rows / 2)) $bgcolor = $config['site']['darkborder']; else $bgcolor = $config['site']['lightborder']; $number_of_rows++; $deads++; $dead_add_content .= "<tr bgcolor=\"".$bgcolor."\"> <td width=\"20%\" align=\"center\">".date("j M Y, H:i", $death['date'])."</td> <td>"; $killers = $SQL->query("SELECT environment_killers.name AS monster_name, players.name AS player_name, players.deleted AS player_exists FROM killers LEFT JOIN environment_killers ON killers.id = environment_killers.kill_id LEFT JOIN player_killers ON killers.id = player_killers.kill_id LEFT JOIN players ON players.id = player_killers.player_id WHERE killers.death_id = ".$SQL->quote($death['id'])." ORDER BY killers.final_hit DESC, killers.id ASC")->fetchAll(); $i = 0; $count = count($killers); foreach($killers as $killer) { $i++; if(in_array($i, array(1, $count))) $killer['monster_name'] = str_replace(array("an ", "a "), array("", ""), $killer['monster_name']); if($killer['player_name'] != "") { if($i == 1) $dead_add_content .= "Killed at level <b>".$death['level']."</b> by "; else if($i == $count) $dead_add_content .= " and by "; else $dead_add_content .= ", "; if($killer['monster_name'] != "") $dead_add_content .= $killer['monster_name']." summoned by "; if($killer['player_exists'] == 0) $dead_add_content .= "<a href=\"index.php?subtopic=characters&name=".urlencode($killer['player_name'])."\">"; $dead_add_content .= $killer['player_name']; if($killer['player_exists'] == 0) $dead_add_content .= "</a>"; } else { if($i == 1) $dead_add_content .= "Died at level <b>".$death['level']."</b> by "; else if($i == $count) $dead_add_content .= " and by "; else $dead_add_content .= ", "; $dead_add_content .= $killer['monster_name']; } if($i == $count) $dead_add_content .= "."; } $dead_add_content .= ".</td></tr>"; } if($deads > 0) $main_content .= '<TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%><TR BGCOLOR='.$config['site']['vdarkborder'].'><TD COLSPAN=2 CLASS=white><B>Deaths</B></TD></TR>' . $dead_add_content . '</TABLE><br />'; //end if(!$player->getHideChar()) { $main_content .= '<TABLE BORDER=0><TR><TD></TD></TR></TABLE><TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%><TR BGCOLOR='.$config['site']['vdarkborder'].'><TD COLSPAN=2 CLASS=white><B>Account Information</B></TD></TR>'; if($account->getRLName()) { if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<TR BGCOLOR='.$config['site']['lightborder'].'><TD WIDTH=20%>Real name:</TD><TD>'.$account->getRLName().'</TD></TR>'; } if($account->getLocation()) { if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<TR BGCOLOR='.$config['site']['darkborder'].'><TD WIDTH=20%>Location:</TD><TD>'.$account->getLocation().'</TD></TR>'; } if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; if($account->getLastLogin()) $main_content .= ''; else $main_content .= ''; if($account->getCreated()) { if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<TR BGCOLOR='.$config['site']['lightborder'].'><TD WIDTH=20%>Created:</TD><TD>'.date("j F Y, g:i a", $account->getCreated()).'</TD></TR>'; } if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD>Account&#160;Status:</TD><TD>'; $main_content .= ($account->isPremium()) ? '<b>Premium Account</b>' : '<b>Free Account</b>'; $main_content .= '</TABLE></TD><TD></TD></TR></TABLE>'; } $main_content .= '<BR><BR><FORM ACTION="?subtopic=characters" METHOD=post><TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4><TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Search Character</B></TD></TR><TR><TD BGCOLOR="'.$config['site']['darkborder'].'"><TABLE BORDER=0 CELLPADDING=1><TR><TD>Name:</TD><TD><INPUT NAME="name" VALUE=""SIZE=29 MAXLENGTH=29></TD><TD><INPUT TYPE=image NAME="Submit" SRC="'.$layout_name.'/images/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></TD></TR></TABLE></TD></TR></TABLE></FORM>'; $main_content .= '</TABLE>'; /* Achievements website script by Archez. http://otland.net/members/archez/ Achievements in-game functions and script by darkhaos. http://otland.net/members/darkhaos/ A person that made this script possible, Chris. http://otland.net/members/chris/ ------------------------------------------------------ Merely scripted for Gesior AAC. ------------------------------------------------------ */ $achievements = $SQL->query('SELECT `key`, `player_id` FROM `player_storage` WHERE `key` LIKE "200%" AND `player_id` = ' . $player->getId())->fetchAll(); $main_content .= '<br /><table border=0 cellspacing="1" cellpadding="4" width=100%><tr bgcolor="'.$config['site']['vdarkborder'].'"><td colspan="2" class=white><b>Account Achievements</b></td></tr>'; if(!$achievements) { $main_content .= '<tr bgcolor="'.$config['site']['lightborder'].'"><td>There are no achievements set to be displayed for this character.</td></tr>'; } else { $number_of_rows = 0; foreach($achievements as $row) { if(!array_key_exists(($row['key'] - 19999 ), $achievements)) { if($row['key'] - 20000 <= 54) { $grade = '<img src="http://www.tibiawiki.com.br/images/f/ff/Achievement.gif" />'; } elseif($row['key'] - 20000 >= 55) { $grade = '<img src="http://www.tibiawiki.com.br/images/f/ff/Achievement.gif" /> <img src="http://www.tibiawiki.com.br/images/f/ff/Achievement.gif" />'; } $secret = false; if(in_array(($row['key'] - 20000), $config['archez']['secret'])) { $secret = '<img src="http://www.tibiawiki.com.br/images/e/e7/Achievement_Secret.gif" />'; } if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['lightborder']; } else { $bgcolor = $config['site']['darkborder']; } $main_content .= '<tr bgcolor="'.$bgcolor.'"><td width="20%">'.$grade.'</td><td>' . $config['archez']['achievements'][$row['key'] - 20000] . '<span style="float:right;">'.$secret.'</span></td></tr>'; $number_of_rows++; } } } $main_content .= '</table>'; /* END OF ACHIEVEMENTS */ } else $search_errors[] = 'Character <b>'.$name.'</b> does not exist.'; } else $search_errors[] = 'This name contains invalid letters. Please use only A-Z, a-z and space.'; if(!empty($search_errors)) { $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($search_errors as $search_error) $main_content .= '<li>'.$search_error; $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/>'; $main_content .= '<BR><FORM ACTION="?subtopic=characters" METHOD=post><TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4><TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Search Character</B></TD></TR><TR><TD BGCOLOR="'.$config['site']['darkborder'].'"><TABLE BORDER=0 CELLPADDING=1><TR><TD>Name:</TD><TD><INPUT NAME="name" VALUE=""SIZE=29 MAXLENGTH=29></TD><TD><INPUT TYPE=image NAME="Submit" SRC="'.$layout_name.'/images/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></TD></TR></TABLE></TD></TR></TABLE></FORM>'; } } ?>
  19. Boa tarde pessoal, queria modificar a moeda de compra e aluguel da casa, porém dei uma olhada na source e não achei a função. alguém sabe onde posso modificar? Obrigado
  20. Vou testar aqui se eu conseguir resolver eu posto..
  21. POsta como ficou o script.. Faltou uma virgula testa ai
  22. Você que dois scripts com a mesma storage?

Informação Importante

Confirmação de Termo