Postado Fevereiro 18, 2018 7 anos preciso de um script de 1 tile que se x vocation subir toma dano de 5 em 5 segundos.
Postado Fevereiro 19, 2018 7 anos @bismarkzika, Qual é a condição a ser satisfeita para parar o damage? O jogador sair do piso?? Caso seja, aqui está o script: Nome: [PEDIDO] Tile que da dano em x vocation Distro utilizada nos testes: Aries Server to Tibia 8.1 - Version 4.0 based on OTServ SVN Version 0.6.0 Comportamento: Caso um jogador de uma das vocations especificadas na lista config.vocation pise no local indicado, um contador será inicializado e, a cada tickTime segundos o jogador receberá damagePerTick de dano caso permaneça neste local. Em data/movements/movements.xml, adicione esta tag: <movevent event="StepIn" actionid="9999" script="vocation_damage.lua" /> Em data/movements/scripts crie um arquivo chamado vocation_damage.lua e cole isto dentro dele: -- [PEDIDO] Tile que da dano em x vocation by marcot local config = { vocation = {4}, -- Lista de Vocations afetadas pelo damage damagePerTick = 50, -- Dano recebido a cada tick tickTime = 5 -- Tempo do dano (segundos) } -- Main function onStepIn(cid, item, pos) if not isPlayer (cid) then return false end if isInArray(config.vocation, getPlayerVocation(cid)) then infos = { cid = cid, pos = getPlayerPosition(cid), } addEvent (damageCondition, config.tickTime * 1000, infos) end return true end -- Funcao para comparar duas coordenadas (Retorna true caso sejam iguais) function comparePositions (posA, posB) if posA.x == posB.x and posA.y == posB.y and posA.z == posB.z then return true end return false end -- Funcao responsavel pela condition do player receber dano function damageCondition (infos) if comparePositions (infos.pos, getPlayerPosition(infos.cid)) then doCreatureAddHealth (infos.cid, -config.damagePerTick) addEvent (damageCondition, config.tickTime * 1000, infos) end end Editado Fevereiro 19, 2018 7 anos por marcot (veja o histórico de edições)
Postado Fevereiro 19, 2018 7 anos Acredito que sim, o actionID você coloca no piso indicado. Você estava querendo fazer isso com UM piso em específico ou em uma área completa? Se quiser eu coloco para o efeito se manter em qualquer piso que tiver o action id 9999, não necessariamente o char ficar parado no mesmo piso. Aliás, qual sua versão de TFS? Se não estiver funcionando absolutamente nada pode ser a tag, que é diferente. Editado Fevereiro 19, 2018 7 anos por marcot (veja o histórico de edições)
Postado Fevereiro 19, 2018 7 anos Autor @marcot coloquei o id no piso e dei ctrl + c, ctrl + v e fiz uma area gigantesca, sobre a tfs é 0.3.6
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.