Postado Setembro 27, 2014 10 anos Fiz uma magia onde o attacker se teleporta em 4 posições em volta de seu target, mas até onde consegui desenvolver, ele se teleporta em volta de si mesmo com a função 'getCreaturePosition(cid)'. Ja tentei outras funções e o script nem é executado. Aqui está a parte do script onde identifica a posição do target, e designia as posições onde quem ataca, é teleportado: local ppos = onTargetTile(cid, pos) local from = {x=ppos.x, y=ppos.y, z=ppos.z} local posr1 = {x=ppos.x-1, y=ppos.y-1, z=ppos.z} local posr2 = {x=ppos.x+1, y=ppos.y-1, z=ppos.z} local posr3 = {x=ppos.x+1, y=ppos.y+1, z=ppos.z} local posr4 = {x=ppos.x-1, y=ppos.y+1, z=ppos.z} E aqui é UMA das funções que executa estas posições, no caso a primeira: function walk1(cid) if isInArea(onTargetTile(cid, pos), from, from) then doTeleportThing(cid, posr1) then doCombat(cid, combat, var) end end Queria que a magia localizasse a posição do target. Mas creio que esta função que usei esteja errada. REP+ Pra solução do meu problema. Atenciosamente, Meu servidor: pbOT
Postado Setembro 28, 2014 10 anos local target = getCreatureTarget(cid) Utilize de complemento com a do Nogard. (A não ser se for alguma outra function que não precise dar valor ao target.. Tipo creaturescript) Editado Setembro 28, 2014 10 anos por lucasromero (veja o histórico de edições)
Postado Setembro 28, 2014 10 anos Autor Lucas, como disse no inicio do tópico, é uma magia. Ja utilizei seu metódo e não funcionou anteriormente. Nogard, já tentei esta função, mas a coloquei novamente pra te mostrar os erros que ocorrem. Coloquei assim: local ppos = getCreaturePosition(target) local from = {x=ppos.x, y=ppos.y, z=ppos.z} <---- LINHA 24 DO ERRO local posr1 = {x=ppos.x-1, y=ppos.y-1, z=pops.z} local posr2 = {x=ppos.x+1, y=ppos.y-1, z=ppos.z} local posr3 = {x=ppos.x+1, y=ppos.y+1, z=ppos.z} local posr4 = {x=ppos.x-1, y=ppos.y+1, z=ppos.z} E na hora de teleportar o attacker: function walk1(cid) if isInArea(getCreaturePosition(target), posr1, posr1) then doTeleportThing(cid, posr2) <------ LINHA 32 DO ERRO doCombat(cid, combat, var) end end Aparecem os seguintes erros: [16:49:03.448] [Error - Spell Interface] [16:49:03.448] data/spells/scripts/attack/magia nova.lua [16:49:03.448] Description: [16:49:03.448] (luaGetThingPosition) Thing not found [Error - Spell Interface] [16:49:03.448] data/spells/scripts/attack/magia nova.lua [16:49:03.448] Description: [16:49:03.448] data/spells/scripts/attack/magia nova.lua:24: attempt to index local 'ppos' (a boolean value) [16:49:03.448] [Warning - Event::loadScript] Cannot load script (data/spells/scripts/attack/magia nova.lua) [16:49:03.448] data/spells/scripts/attack/magia nova.lua:32: unexpected symbol near 'then' Creio que ficaria mais fácil se eu postasse o script inteiro, mas é uma magia que criei, e não queria divulga-la no momento. Está ai os erros, se puderem me ajudar, REP+. Editado Setembro 28, 2014 10 anos por VictorTasquin (veja o histórico de edições) Atenciosamente, Meu servidor: pbOT
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.