local arena = {
frompos = {x=12, y=17, z=7}, -- Top Left Corner
topos = {x=22, y=27, z=7}, -- Bottom Right Corner
exit = {x=12, y=27, z=7} -- Exit
}
function isInArea(position, from, to)
local x= position.x
local y= position.y
local z= position.z
if x >= from.x and x <= to.x then
if y >= from.y and y <= to.y then
if z >= from.z and z <= to.z then
return TRUE
end
end
end
return FALSE
end
function onPrepareDeath(cid, lastHitKiller, mostDamageKiller)
if isPlayer(cid) then
if isInArea(getPlayerPosition(cid), arena.frompos, arena.topos) then
if doCreatureAddHealth(cid, getCreatureMaxHealth(cid) - getCreatureHealth(cid)) then
if doTeleportThing(cid, arena.exit) then
doSendMagicEffect(arena.exit, 10)
return FALSE
end
end
end
end
return TRUE
end
- Fórum
- xTibia - Notícias e Suporte
- Soluções
- Archived
- Onpreparedeath
info
Grupo: Herói
Registrado: 20/05/10
Posts: 3.4k
Reputação: +1.5k
Gênero: Masculino

info
Grupo: Campones
Registrado: 09/08/10
Posts: 0
Reputação: 0

Ainda não funcionou.
Após o player ser morto ele é teleportado para a posição exit e fica com zero de vida(HP).
Poderia me explicar melhor esse script?
Lembrando que estou usando tfs 0.3.6.
Desde ja obrigado
info
Grupo: Herói
Registrado: 20/05/10
Posts: 3.4k
Reputação: +1.5k
Gênero: Masculino

eu só não entendi seu bug até agora.
você só não quer que ele volte com 0 de hp para a saida, é isso?
info
Grupo: Visconde
Registrado: 12/09/10
Posts: 416
Reputação: +160
Char no Tibia: Draky Lucas

local arena = {
frompos = {x=12, y=17, z=7}, -- Top Left Corner
topos = {x=22, y=27, z=7}, -- Bottom Right Corner
exit = {x=12, y=27, z=7} -- Exit
}
function onPrepareDeath(cid, lastHitKiller, mostDamageKiller)
if isPlayer(cid) == TRUE then
if isInArea(getPlayerPosition(cid), arena.frompos, arena.topos) then
doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
doTeleportThing(cid, arena.exit)
doSendMagicEffect(arena.exit, 10)
return FALSE
end
end
return TRUE
end
testa assim =D
info
Grupo: Campones
Registrado: 09/08/10
Posts: 0
Reputação: 0

Bom vou tentar explicar um pouco melhor para que vcs entendam.
Estou fazendo uma pvp arena no meu ot, pra falar a verdade só falta ela pq o ot ja ta pronto.
Só que esse script que eu estou usando funciona em TFS 0.3.5 mas em TFS 0.3.6 parece que a function
onPreparedeath esta bugada, sendo assim que quando o player morre na arena e ele é teleportado
para o ponto exit sua vida fica zerada e fica dando o efeito de teleporting (doSendMagicEffect(arena.exit, 10)
eu gostaria de saber se tem como usar outra funtion sem ser essa onPreparedath, eu li alguns topicos
e me parece que con a function onStatsChange da para fazer algo do tipo mas n sei nem por onde começar
abaixo uma SS do player depois q morre na arena.

novamente obrigado pela ajuda.
ajuda eu ai galerinha.
Por favor.



info
Grupo: Campones
Registrado: 09/08/10
Posts: 0
Reputação: 0
Ola Bom Dia !
Estou tentando arrrumar ja faz uma semana mas nada de conseguir.
Tenho um script de arena PVP em meu OT mas ele esta dando um erro, pois quando o player morre na arena ele é teleportado para o templo com zero de vida(HP) meu OT é TFS 0.3.6 eu testei em 0.3.5 e funcionou, mas eu queria que desce certo em 0.306 pois estou querendo colocar em protocolo 8.54.
Logo abaixo o script q estou usando.
se alguem souber responder ficarei muito grato
Desde ja obrigado.