Ir para conteúdo

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 06/09/16 em %

  1. Sirarcken

    Item Editor 10.94

    Suporte para versões 10.77, 10.82, 10.90--10.94. Scan (esta acusando um virus) Download Creditos Mignari items10.94.otb items10.94.otb
    3 pontos
  2. Tópico atualizado com a segunda source, possivelmente mais atualizada. Espero que a galera contribua e não fiquem só no sangue-suga.
    3 pontos
  3. @Taiger Se você quizer, sexta-feira, quando fizer a edição referente a lua, eu crio um novo topico e compartilhando todo meu conhecimento referente ao servidor, como adicionar pokemons, open code, storages e tudo mais.
    3 pontos
  4. Um recadinho pros que não tem coragem de mostrar a cara e ficam acusando sem provas: se não sabe fazer melhor, pelo menos tente. Mas não venha com atitudes infantis.
    3 pontos
  5. Sim, arrumei.. Abre normal. Mais tarde posto a correção pra mysql (site) e sqlite (account manager).
    3 pontos
  6. PROJETOS PATROCINADOS - POKÉMON ONLINE Venha conferir o projeto Pokémon Online, o novo projeto patrocinado do Xtibia. Gerenciado pelo membro @Tony Araujo, este projeto promete trazer inovações ao munto poketibia. O servidor terá sua experiência baseada no antigo SvkE, porém, será por estágios, tendo o seu primeiro iniciado por 2x, além de possuir vários sistemas que ainda depois de tanto tempo nunca fora criado algo parecido. Veja alguns deles: Tv System Wild Pokemons Passives Party System ou Partner Duel System Effective System Fly System Quer saber como estes sistemas funcionam? Acesse o tópico de apresentação do projeto e acompanhe o desenvolvimento deste. Te vejo lá!
    2 pontos
  7. amigo, não sei se devo mas acho que vou "falar", vocês querem tudo na mão, no forum tem basicamente quase todos os sistemas que vocês pedem, coisas simples coisas fáceis de se conseguir, oque custa procurar antes de perguntar? esse tópico aqui já não é mais sobre o servidor postado em si, e sim sobre todos os erros e dificuldades das pessoas com preguiça de procurar as coisas.
    2 pontos
  8. sendcancel? -PS: liberarei o codigo de ditto memory, porém so funciona se tiver opcode nas soure do server (no meu caso, tem) final de semana posto pra vocês, beijos!
    2 pontos
  9. Galera acabei de chegar do serviço, estou ativando meu kaspersky para dar uma limpa na outra source que tenho aqui e ja posto ela, pelo que eu vi ela é mais atualizada que a postada.
    2 pontos
  10. haha nos sistemas de lua tem varios erros especialmente nos scripts dos helds irei citar alguns rapidinhos aqui: X-Block : sua funçao é blocar COMPLETAMENTE o dano do ataque inimigo das habilidades q irao ser usadas neles, com porcetagem para ser ativado obviamente, e cada vez que for blocado mandar uma messagem falando BLOCK, ele esta mandando a messagem porem nao esta blocando o dano X-Return: ele esta devolvendo o dano porem o jeito de devolver esta muito estranho, paresce q ele tem cooldown pois as veces ele deixa de devolver o dano e quando o bixo inimigo chega na hp 1 ele nao devolve + o dano aqui podem ver ele NAO devolve o dano do fire blast: e aqui ele para de devolver dano qndo o bixo fica em 1 hp nem sei se voces gostariam de eu procurar mais coisas assim ou é inutil sla...
    2 pontos
  11. Conteúdo: Imagens Mapa não incluso Downloads: Removendo Bugs de itens (como order, fishing, etc) Sistemas feitos para o PDE: Tutoriais feitos para o PDE: Bugs reportados:
    1 ponto
  12. Taiger

    [DxP] Exclusivo Poketibia OpenSource

    Exclusivo! PokeTibia DxP OpenSource praticamente completo com sistemas e funções nunca liberados. ATENÇÃO: Não dou suporte, apenas estou disponibilizando o server para quem quiser continua-lo ou pegar os sistemas. Se alguns grandes aqui do xtibia quiserem ajudar nos bugs fiquem a vontade, pois este server é praticamente completo, com funções e sistemas nas sources, acho que nunca liberados para o publico. Aconselho a trocarem o mapa ou criarem outro por que não testei o mesmo, e não sei se há bugs ou armadilhas. • Menu: ├ Informações; ├ Bugs; ├ Prints; ├ Download; └ Créditos. • Informações Basicas • • Duel System. • Nick System. • TV System. • Autoloot System. • Block Respaw System. • Mega Evolução Ssystem. • Auto Stacking System. • Player passa por dentro de outros Players(Não sei o nome deste sistema kk). • Ditto Memory System. • Player pode usar potions, revive, soltar poke andando sem parar. • Limite de efeitos aumentados nas sources até 380(Podendo aumentar muito mais) • Transparência. • Cliente criptografado(Acompanha OBD único para o cliente). • Sistemas básicos como fly, ride, surf, order etc. • Held System(Não tem todos, falta fazer alguns, ja tem o x-luck). • Fishing trocando o outfit automaticamente. • Icone System. • Varias Pokeballs novas. • Task System. • Guild System. E muito+, não testei o servidor todo. podem ter sistemas no server que eu esqueci de colocar aqui na lista. Conta ADM: 222/222 • Bugs • Irei postar os que eu sei, podem haver mais. • Pode soltar mais de 1 poke ao mesmo tempo. • Botão que abre os chats tipo help, trade etc, não esta funcionando. • Não da para criar conta nem char(Provavelmente o programador colocou nas sources como proteção, alguem com conhecimento em programação pode resolver). • Tem um código nas sources, segundo fontes, em game.cpp que caso alguém coloque o servidor online o programador do server pode derrubá-lo(Outra coisa para um programador rever). • Fly anda travando, no chão voa normal, somente nos andares acima acontece isso, deve ser alguma config. • Gym System não esta funcionando. Bem, são os que eu sei, tem que dar uma revisada geral. • Prints • • Mega Evolução • Ditto Memory. • TV System. • Auto Loot System. • Block Respaw System. • Irei colocar mais prints em breve(Estou com pouco tempo agora). • Downloads • • Server; >>Download<< >>Scan<< • Server Sources; >>Download<< >>Scan<< • Server Sources 2; >>Download<< >>Scan<< • Cliente: >>Download<< >>Scan<< • Cliente Sources; >>Download<< >>Scan<< • Object Builder; >>Download<< >>Scan<< • Site Java; >>Download<< >>Scan<< • Patch de correção V1 DXP By kttallan >>Download<< >>Scan<< Para instalar o patch V1 by Kttallan basta estrair o arquivo, copiar a pasta data que vem nele e colar na pasta principal do server DXP, clicando em SIM para subistituir todos os arquivos que forem pedidos. Créditos; Kttallan Atualização V2. Correção bug fly by Drakopoulos: >>Download<< >>Scan<< Extraia o arquivo na pasta do server e subistitua o que for pedido. Distro/Executavel sem o código de derrubar o server em game.cpp. >>Download<< >>Scan<< • Atualização V3 Completo• >>DxP Server V3<< >>Scan<< >>Source V3<< >>Scan<< >>Cliente V3<< >>Scan<< >>WebSite<< >>Scan<< Bugs corrigidos na V3: *Portraits não podem mais ser movidos. *Icones usados não podem mais ser movidos. *Poke não morre mais ao entrar em um teleport. *Source atualizada sem o código de derrubar o server. *Portas das houses corrigidas. *Cliente agora é normal, não precisa descompilar para usar o OBD.(Podem usar o OBD normal agora). *HeadButt corrigido.(falta adicionar os pokes na tabela specialabilities em configuration.lua da pasta lib). *Double team e shared Team corrigidos parcialmente.(ainda contem alguns bugs). *Adicionei algumas sprs do cp que faltavam, e subistitui algumas com transparencia.(Deixei o cp de saffron igual pxg como exemplo, esta sem teto kk). Alguns antivirus detectam virus, possiveis dlls não reconhecidas, baixem por sua conta em risco, não estou obrigando ninguem a baixar, estou trabalhando no server e nao tive problemas. Caso tenham problemas na descompactação dos arquivos utilizem o 7zip, compactador que utilizei. • Créditos • •CipSoft •Nintendo •TFS Team •Dark X Poke •PXG •Tom Lukz (Smix) •Allan Harlen (Kttallan/lordsorte) •Eduardo Meskita (FuuinFake) •Noninhouh •Tony Araujo •Taiger/Dudu •Drakopoulos •Justiceiro751 E a todos que tiveram alguma participação em sistemas, server, site, cliente etc. Se estiver faltando algo como créditos, má formatação etc, por favor me avisem, é meu primeiro post de server.
    1 ponto
  13. Luga03

    Task System 2016

    Olá! Eu estava ajudando um cara com um task system , ele disse que pegou na net, mas as alterações que ele queria eu tive que refazer algumas partes do sistemas! Testei e funcionou perfeitamente! Funciona com Poketibia e Tibia! Vamos deixar de enrolação e adicionar o sistema! Lembrando também que funciona com tfs 0.3.6 e tfs 0.4! Não testei com tfs 1.x mas acho que não funciona. Vá em creaturescripts.xml e adicione isso: <event type="kill" name="KillTask" event="script" value="task.lua"/> No login.lua adiciona isso com os demais: registerCreatureEvent(cid, "KillTask") Agora crie um arquivo chamado task.lua e adicione isso: local tasksss = { [1] = {name = "Blastoise", sto = 10212, count = 3, time_sto = 5457, time = 1*24*60*60, sto_count = 14129, money = 100, rewardid = 7621, rewardcount = 100, rewardexp = 10000, text = "Congratulations! You finished this task. In 24h, you will be able to do it again."}, [2] = {name = "Charizard", sto = 10213, count = 5, time_sto = 5458, time = 1*24*60*60, sto_count = 14130, money = 100, rewardid = 7621, rewardcount = 100, rewardexp = 10000, text = "Congratulations! You finished this task. In 24h, you will be able to do it again."},}function onKill(cid, target) for _, t in ipairs(tasksss) do local total_count = t.count local m_sto = t.sto local count_sto = t.sto_count if getPlayerStorageValue(cid, m_sto) ~= -1 then if getCreatureName(target) == t.name then if (total_count - getPlayerStorageValue(cid, count_sto)) == 1 then setPlayerStorageValue(cid, count_sto, getPlayerStorageValue(cid, count_sto) + 1) doPlayerSendTextMessage(cid, 20, "You are killed ".. getPlayerStorageValue(cid, count_sto) .." " .. t.name .. " and finished the task!") return true elseif (total_count - getPlayerStorageValue(cid, count_sto)) >= 1 then setPlayerStorageValue(cid, count_sto, getPlayerStorageValue(cid, count_sto) + 1) doPlayerSendTextMessage(cid, 20, "You are killed ".. getPlayerStorageValue(cid, count_sto) .." of ".. total_count .." " .. t.name .. " kills to finish the task.") return true end end end end return trueend Agora vá em npc/scripts e crie um arquivo chamado task.lua e adicione isso: local tasksss = { [1] = {name = "Blastoise", sto = 10212, count = 3, time_sto = 5457, time = 1*24*60*60, sto_count = 14129, money = 100, rewardid = 7621, rewardcount = 100, rewardexp = 10000, text = "Congratulations! You finished this task. In 24h, you will be able to do it again."}, [2] = {name = "Charizard", sto = 10213, count = 5, time_sto = 5458, time = 1*24*60*60, sto_count = 14130, money = 100, rewardid = 7621, rewardcount = 100, rewardexp = 10000, text = "Congratulations! You finished this task. In 24h, you will be able to do it again."},}local keywordHandler = KeywordHandler:new()local npcHandler = NpcHandler:new(keywordHandler)NpcSystem.parseParameters(npcHandler)local talkState = {}function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) endfunction onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) endfunction onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) endfunction onThink() npcHandler:onThink() endfunction creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid value = -1 for i = 1, #tasksss do if msgcontains(msg, tasksss[i].name) and not value ~= -1 then value = i end end if value == -1 then selfSay('I don\'t have a this task!', cid) talkState[talkUser] = 0 return true end local configss = tasksss[value] local name = configss.name local m_sto = configss.sto local time_sto = configss.time_sto local count_sto = configss.sto_count local total_count = configss.count local rest = total_count - getPlayerStorageValue(cid, count_sto) if getPlayerStorageValue(cid, time_sto) < os.time() then -- verifica se o player ainda está no prazo if getPlayerStorageValue(cid, m_sto) <= 0 then -- verifica se o player não pegou está task selfSay('Ready! Now you need kill a '.. total_count .. ' '.. name .. '!', cid) setPlayerStorageValue(cid, m_sto, 1) setPlayerStorageValue(cid, total_count, 0) talkState[talkUser] = 0 else if rest <= 0 then -- Verifica se o player matou todos os monstros nescessários doPlayerAddItem(cid, configss.rewardid, configss.rewardcount) setPlayerStorageValue(cid, count_sto, 0) setPlayerStorageValue(cid, m_sto, -1) setPlayerStorageValue(cid, time_sto, os.time() + configss.time) doPlayerAddExperience(cid, configss.rewardexp) doSendAnimatedText(getCreaturePosition(cid), configss.rewardexp, 215) selfSay(configss.text, cid) talkState[talkUser] = 0 else selfSay('You need to kill '..rest..' '..name..' to gain a reward.', cid) talkState[talkUser] = 0 end end else selfSay('You already did this task, player. Wait '..math.ceil((getPlayerStorageValue(cid, time_sto) - os.time())/(60*60))..' hours to do it again.', cid) talkState[talkUser] = 0 endendnpcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)npcHandler:addModule(FocusModule:new()) Pronto, agora volte para a pasta npc e crie um novo arquivo .xml chamado de Task e adicione isso lá: <?xml version="1.0" encoding="UTF-8"?><npc name="Npc Nome" script="task.lua" walkinterval="350000" floorchange="0" speed="0"> <health now="150" max="150"/> <look type="369" head="91" body="102" legs="83" feet="0"/> <parameters> <parameter key="message_greet" value="You want gain a task of {Blastoise}?"/> </parameters></npc> Pronto, agora o sistema de task está funcionando, e para adicionar um novo monstro pra fazer a task? Basta editar a tabela, mas não esqueça que tem que atualizar a tabela nos 2 scripts .lua !! local tasksss = { [1] = {name = "Blastoise", sto = 10212, count = 3, time_sto = 5457, time = 1*24*60*60, sto_count = 14129, money = 100, rewardid = 7621, rewardcount = 100, rewardexp = 10000, text = "Congratulations! You finished this task. In 24h, you will be able to do it again."}, [2] = {name = "Charizard", sto = 10213, count = 5, time_sto = 5458, time = 1*24*60*60, sto_count = 14130, money = 100, rewardid = 7621, rewardcount = 100, rewardexp = 10000, text = "Congratulations! You finished this task. In 24h, you will be able to do it again."},} Para configurar siga as seguintes instruções: Modificações da versão 2.0: Corrigido bug de apenas o primeiro monstro configurado funcionava, agora todos configurados funcionam! Quando player fala qual quer coisa que não seja o nome do monstro, diz que não tem aquela task! Modificado modo de contagem de kill, agora monstra quantos você matou e o total que precisa matar, quando mata o ultimo monstro, aparece a mensagem que terminou a task! Créditos: Criador @miguel223 Drazyn1291 -- Editei e reformulei muita coisa! Adicionei coisas como a contagem que falta ao matar os monstros, editei pra fazer a task apenas se o player falar com o NPC e outras coisas!
    1 ponto
  14. Nethron

    Mega pinsir sprite

    Sprite Feita Por min!! Notas e Criticas!! Frente: http://prntscr.com/b82ush Costas: http://prntscr.com/b82uvj
    1 ponto
  15. Taiger

    [DxP] Exclusivo Poketibia OpenSource

    Estou fazendo testes aqui. Drakopoulos corrigiu chars e db para site. Terminando aqui eu atualizo o tópico. @Josegvb Kttallan abrira um tópico com o server em .lua sem as sources. Este aqui tem elas e por isso só fecharei quando os bugs relacionados a ela forem resolvidos.
    1 ponto
  16. Taiger

    [DxP] Exclusivo Poketibia OpenSource

    Só adicionei a nova source, a antiga ainda esta la. Baixa a source2
    1 ponto
  17. kttallan

    [DxP] Exclusivo Poketibia OpenSource

    Irei fazer isso já que vazou o servidor do DxP, vou ajudar com o meu conhecimento (Como disse antes, não vou disponibilizar a versão sem bugs que tenho devido que está sendo usado em um projeto privado, vou postar os erros que conheço e foram consertados em lua).
    1 ponto
  18. Oque isso muda é só abrir o creaturescript.cpp e creaturescript.h e copiar o codigo. parabéns você descobriu o mundo, como meu caro amigo smix diz é um caso serio. REP+ Pela criatividade.
    1 ponto
  19. Taiger

    [DxP] Exclusivo Poketibia OpenSource

    @Eskylo Deve estar faltando alguma lib no seu dv pois eu compilei as sources e o arquivo ficou somente com 10kb a menos que o original. Logo postarei a outra source, estou resolvendo umas coisas aqui.
    1 ponto
  20. boxxer321

    [DxP] Exclusivo Poketibia OpenSource

    um problema feio é estar geral se ajudando e tem gente com uma rédia que só olha pra si..
    1 ponto
  21. kttallan "não da pra retirar sistemas desse servidore, ele tem proteção que só faz funciona no dxp"
    1 ponto
  22. Logico que você tem que da a atenção a esse projeto, afinal..ele que ta movimentando o xtibia ultimamente hahah! servidores derivados tens os dom de colocar a comunidade a trabalhar junto rs. sobre o topico.. a Source do OTC é a atual do client posto pra dowload? obg
    1 ponto
  23. #Report Bug: Estive fazendo alguns teste no servidor e acabei me deparando um um bug, ao estar capturando 6 pokémons os mesmo estão indo normalmente para bag, porem ao capturar o 7 pokémon, o mesmo não vai para o Deposit Chest, alguém teria a solução ou é somente em minha residência este tipo de problema ?
    1 ponto
  24. getCreatureLookDirection(cid)
    1 ponto
  25. dalvorsn

    TV System by caotic

    A maneira correta é bem melhor, e não é tão dificil, é extretamente similar ao cast system, tu transforma a instancia do protocolgame no player em um vetor, onde uma posição determinada, tipo "front", será o player principal, dai replica os demais pacotes para o player que esta assistindo, porém na hora de "conectar" precisa de alguns detalhes, que é enviar o map descriptions, No caso do tv system, a diferença maior é que existem dois players ao mesmo tempo, um enviando a imagem e outro com coisas como chat e etc, ai precisa apenas ajusta os pacotes nesse sentido, determinando quais devem ou não ser aceitos(enviados ou recebidos) e por quem. Não é um sistema trivial, mas da pra ser feito
    1 ponto
  26. O gruop do ADM não é 6 é 15. Ou seja /attr group 6 (É GM) /attr group 15(ADM)
    1 ponto
  27. isso 'e s'o com char ADM, chars normais tem cooldowns
    1 ponto
  28. boxxer321

    [DxP] Exclusivo Poketibia OpenSource

    ainda não vi o bghl que vc ia liberar.... cade? e ainda n foi consertado o do mais de um poke, ou foi?
    1 ponto
  29. Danihcv

    Ajuda com npc

    @carlinhoo0ww, tente mudar o aqruivo .lua desse npc pro seguinte: A parte em vermelho é a parte pra vc configurar a mensagem de boas vindas do npc. As partes em verde são o que eu adicionei.
    1 ponto
  30. Tony Araujo

    XML Organizado

    Fala ae pessoa, hoje eu vim trazer novamente a idéia de um xml organizado. Bom, como alguns sabem eu postei essa ideia ano passado mostrando como organizar um XML para ficar mais fácil, limpes e bonito de para possíveis edições, além de evitar um monte de trabalho desnecessário de configurações em tabelas, dentre outros. Vou postar aqui um exemplo de como está o meu XML, não reparem as configurações presentes nele porém, é apenas uma demonstração. Espero que gostem, pode ajudar a muitos. Lembrando, esta XML é para ser usada para selvagens e capturados. <?xml version="1.0" encoding="UTF-8"?><monster name="Pidgey" experience="216" speed="100"> <health base="1200" gain="30"/> <look type="30" corpse="5961" typeShiny="42" corpseShiny="5822"/> <pokemon> <poke description="A strange seed was planted on its back at birth. The plant sprouts and grows with this Pokemon."/> <poke chance="20"/> <poke type="Grass, Poison"/> <poke portrait="2377"/> <poke portraitShiny="1222"/> <poke level="20"/> <poke agressive="1"/> </pokemon> <effectiveness> <eff effective="ice,flying,psychic"/> <eff normal="poison,bug,rock,ghost,fire"/> <eff ineffective="water,electric,fighting,earth"/> <eff null="grass"/> </effectiveness> <abilities> <hability name="cut"/> <hability name="fly" outfit="123" speed="100"/> </abilities> <evolutions> <newEvo name="Ivysaur" stone1="2276" level="40"/> </evolutions> <moves> <move name="melee" cooldown="2" chance="100" range="1" power="1"/> <move name="Tri Flames" cooldown="2" level="20" power="10" chance="30" type="normal" icoOn="3" icoOff="4"/> </moves> <loot> <item name="straw" countmax="6" chance="100000"/> <item name="feather" countmax="1" chance="30000"/> </loot></monster>
    1 ponto
  31. Ai é por sua conta, baixe o patch acima que disponibilizei pois lá eu corrigi alguns erros referente aos moves. Outros bugs só nas sources e não vou citar vou deixar por conta de vocês. Brinde: game.cpp tem um bagzin lá dá uma olhada Rep ai que ne de graça não.
    1 ponto
  32. kttallan

    [DxP] Exclusivo Poketibia OpenSource

    1 - Player criado sem itens. R: Use site Mysql e edite o sample colocando esses itens nele. 2 - Autoloot não funcionando, Você tem que setar a storage no player pode usar o onLogin ou Manualmente R: /storage PlayerName, 20025, true Abra seu data e cole tudo dessa pasta lá, tem alguns bugs referente a moves e attributos consertados, por fim não encham minha caixa posta com besteira eu já disse que não iria ajudar/postar o servidor que tenho pois não é mais minha propriedade, só estou ajudando devido a grande insistencia e que tou vendo vocês correndo atrás e não esperando.. Link http://www.mediafire.com/download/ae5ce4yqyar2rkd/DxP+-+Server(2).rar
    1 ponto
  33. Str00per

    Elfcrack

    Link para download: http://www.4shared.com/rar/HF_zeShg/DLL_CRACK_ELFBOT_86_elf-bot-ng.htmlPara crackear seu bot basta colocar esse arquivo dentro da pasta fonte do elfbot e subistituir pela dll antiga.A pasta geralmente fica em meu computador -> disco local -> arquivos de programas -> elfbotOu o nome ou o destino que você colocou.
    1 ponto
  34. Boa noite galera, Estou a alguns dias tentando resolver um problema que tive com o OTC: ao usar a função doCreatureSetHideHealth simplesmente o player trava e não consegue fazer nada até o hidehealth ser desfeito. Isso ocorre porque, na source do OTC, a declaração de morte é feita baseada em porcentagem de vida e essa inexiste quando o hideHealth é acionado, somente a vida total e a vida máxima é que continuam com valores relevantes. Então, o OTC simplesmente te considera como um morto vivo quando você usa hideHealth e você não pode realizar nenhuma ação no jogo a não ser deslogar. Após alguns dias fuçando consegui finalmente resolver o problema e vim compartilhar a solução com vocês. 1) Na source do seu OTC vá em creatures.cpp. Crie as funções abaixo: double Creature::getLocalPlayerHealth() { return g_game.getLocalPlayer()->getHealth(); } bool Creature::isDead() { if (!isLocalPlayer()) return m_healthPercent <= 0; double m_health = getLocalPlayerHealth(); return m_health <= 0; } Substitua: if(m_healthPercent < 1) // creature is dead return; por if(m_healthPercent < 1) // creature is dead if (!isLocalPlayer()) return; 2) Vá em creature.h e troque a declaração da função isDead() por: bool isDead(); 3) Em game.cpp troque a função proccessDeath por: void Game::processDeath(int deathType, int penality) { if (m_localPlayer->getHealth() > 0){ m_dead = true; m_localPlayer->stopWalk(); g_lua.callGlobalField("g_game", "onDeath", deathType, penality); } } Pronto, o seu OTC agora suporta a função doCreatureSetHideHealth (e de bônus você consegue enxergar o seu player com uma barra preta e seu nome, apesar dos outros não te verem). Bom é simples, mas útil espero que ajude. Abraços,
    1 ponto
  35. RigBy

    Comando /attr - TFS 1.x

    Ola, tava dando uma olhada no TFS 1.x e acabei percebendo que não tinha o comando /attr, então tinha decidido recriar, alguns comandos ja tava funcionando mas eu acabei achando esse na internet e resolvi trazer para ca. Exemplo: /attr action, 1231 Então vamos la instalar: Em talkactions/talkactions.xml adicione essa tag: <talkaction words="/attr" separator=" " script="attributes.lua" /> Em talkactions/scripts, crie o arquivo attributes.lua e adicione isso: local itemFunctions = { ["actionid"] = { isActive = true, targetFunction = function (item, target) return item:setActionId(target) end }, ["action"] = { isActive = true, targetFunction = function (item, target) return item:setActionId(target) end }, ["aid"] = { isActive = true, targetFunction = function (item, target) return item:setActionId(target) end }, ["description"] = { isActive = true, targetFunction = function (item, target) return item:setAttribute(ITEM_ATTRIBUTE_DESCRIPTION, target) end }, ["desc"] = { isActive = true, targetFunction = function (item, target) return item:setAttribute(ITEM_ATTRIBUTE_DESCRIPTION, target) end }, ["remove"] = { isActive = true, targetFunction = function (item, target) return item:remove() end }, ["decay"] = { isActive = true, targetFunction = function (item, target) return item:decay() end }, ["transform"] = { isActive = true, targetFunction = function (item, target) return item:transform(target) end }, ["clone"] = { isActive = true, targetFunction = function (item, target) return item:clone() end } } local creatureFunctions = { ["health"] = { isActive = true, targetFunction = function (creature, target) return creature:addHealth(target) end }, ["mana"] = { isActive = true, targetFunction = function (creature, target) return creature:addMana(target) end }, ["speed"] = { isActive = true, targetFunction = function (creature, target) return creature:changeSpeed(target) end }, ["droploot"] = { isActive = true, targetFunction = function (creature, target) return creature:setDropLoot(target) end }, ["skull"] = { isActive = true, targetFunction = function (creature, target) return creature:setSkull(target) end }, ["direction"] = { isActive = true, targetFunction = function (creature, target) return creature:setDirection(target) end }, ["maxHealth"] = { isActive = true, targetFunction = function (creature, target) return creature:setMaxHealth(target) end }, ["say"] = { isActive = true, targetFunction = function (creature, target) creature:say(target, TALKTYPE_SAY) end } } local playerFunctions = { ["fyi"] = { isActive = true, targetFunction = function (player, target) return player:popupFYI(target) end }, ["tutorial"] = { isActive = true, targetFunction = function (player, target) return player:sendTutorial(target) end }, ["guildnick"] = { isActive = true, targetFunction = function (player, target) return player:setGuildNick(target) end }, ["group"] = { isActive = true, targetFunction = function (player, target) return player:setGroup(Group(target)) end }, ["vocation"] = { isActive = true, targetFunction = function (player, target) return player:setVocation(Vocation(target)) end }, ["stamina"] = { isActive = true, targetFunction = function (player, target) return player:setStamina(target) end }, ["town"] = { isActive = true, targetFunction = function (player, target) return player:setTown(Town(target)) end }, ["balance"] = { isActive = true, targetFunction = function (player, target) return player:setBankBalance(target + player:getBankBalance()) end }, ["save"] = { isActive = true, targetFunction = function (player, target) return target:save() end }, ["type"] = { isActive = true, targetFunction = function (player, target) return player:setAccountType(target) end }, ["skullTime"] = { isActive = true, targetFunction = function (player, target) return player:setSkullTime(target) end }, ["maxMana"] = { isActive = true, targetFunction = function (player, target) return player:setMaxMana(target) end }, ["addItem"] = { isActive = true, targetFunction = function (player, target) return player:addItem(target, 1) end }, ["removeItem"] = { isActive = true, targetFunction = function (player, target) return player:removeItem(target, 1) end }, ["premium"] = { isActive = true, targetFunction = function (player, target) return player:addPremiumDays(target) end } } function onSay(player, words, param) if(not player:getGroup():getAccess()) or player:getAccountType() < ACCOUNT_TYPE_GOD then return true end if(param == "") then player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Command param required.") return false end local position = player:getPosition() position:getNextPosition(player:getDirection(), 1) local split = param:split(",") local itemFunction, creatureFunction, playerFunction = itemFunctions[split[1]], creatureFunctions[split[1]], playerFunctions[split[1]] if(itemFunction and itemFunction.isActive) then local item = Tile(position):getTopVisibleThing(player) if(not item or not item:isItem()) then player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Item not found.") return false end if(itemFunction.targetFunction(item, split[2])) then position:sendMagicEffect(CONST_ME_MAGIC_GREEN) else player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "You cannot add that attribute to this item.") end elseif(creatureFunction and creatureFunction.isActive) then local creature = Tile(position):getTopCreature() if(not creature or not creature:isCreature()) then player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Creature not found.") return false end if(creatureFunction.targetFunction(creature, split[2])) then position:sendMagicEffect(CONST_ME_MAGIC_GREEN) else player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "You cannot add that attribute to this creature.") end elseif(playerFunction and playerFunction.isActive) then local targetPlayer = Tile(position):getTopCreature() if(not targetPlayer or not targetPlayer:getPlayer()) then player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Player not found.") return false end if(playerFunction.targetFunction(targetPlayer, split[2])) then position:sendMagicEffect(CONST_ME_MAGIC_GREEN) else player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "You cannot add that attribute to this player.") end else player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Unknow attribute.") end return false end Credito: Darkhaos, por ter adptado para lua WibbenZ, por ter adptado para TFS 1.x
    1 ponto
Líderes está configurado para São Paulo/GMT-03:00
×
×
  • Criar Novo...