Ir para conteúdo

Featured Replies

Postado

Qual servidor ou website você utiliza como base? 

OTServBR-Global 12.x

Qual o motivo deste tópico? 

Ajuda para corrigir um bug

Está surgindo algum erro? Se sim coloque-o aqui. 

Olá, eu gostaria de criar uma magia tipo flamethrower, dos ATS de pokemon. Essa magia consiste em haver um efeito diferente para cada direção que o jogador olha, por exemplo.
Norte: efeito x
Sul: efeito y
Leste: efeito w
Oeste: efeito z

 

Eu encontrei esse script, porem não consegui adapta-lo, uma vez que apresenta o seguinte erro:

Citar

Lua Script Error: [Spell Interface]
data/spells/scripts/class\archer\instant\offensive\area\chuva_morte.lua:onCastSpell
...ipts/class\archer\instant\offensive\area\chuva_morte.lua:26: attempt to index global 'exhaustion' (a nil value)
stack traceback:
        [C]: in function '__index'
        ...ipts/class\archer\instant\offensive\area\chuva_morte.lua:26: in function <...ipts/class\archer\instant\offensive\area\chuva_morte.lua:22>

 

Removendo as partes referentes ao erro acima, eu obtenho o seguinte erro:

Nota: essa parte do exhaustion não me interessa, já pretendia remover.

Citar

Lua Script Error: [Spell Interface]
data/spells/scripts/class\archer\instant\offensive\area\chuva_morte.lua:onCastSpell
...ipts/class\archer\instant\offensive\area\chuva_morte.lua:38: attempt to call global 'getCreatureLookDirection' (a nil value)
stack traceback:
        [C]: in function 'getCreatureLookDirection'
        ...ipts/class\archer\instant\offensive\area\chuva_morte.lua:38: in function <...ipts/class\archer\instant\offensive\area\chuva_morte.lua:22> 

 

Tentei adaptar utilizando creature:getDirection(), mas não obtive sucesso.
Alguém teria alguma ideia?

Você tem o código disponível? Se tiver publique-o aqui: 

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -45.2, 1, -65.2, 1)
 
arr = {
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
}

local area = createCombatArea(arr)
setCombatArea(combat, area)

function onCastSpell(cid, var)
local waittime = 2
local storage = 5868

if isPlayer(cid) and exhaustion.check(cid, storage) then
doPlayerSendCancel(cid, "You are exhausted.")
doSendMagicEffect(getCreaturePosition(cid), 2)
return FALSE
end

local p = getCreaturePosition(cid)
local x = {
[0] = {x=p.x+1, y=p.y-1, z=p.z},
[1] = {x=p.x+7, y=p.y+1, z=p.z},
[2] = {x=p.x+1, y=p.y+7, z=p.z},
[3] = {x=p.x-1, y=p.y+1, z=p.z}
}

local y = {
[0] = 172,
[1] = 170,
[2] = 173,
[3] = 171
}

pos = x[getCreatureLookDirection(cid)]
eff = y[getCreatureLookDirection(cid)]
doSendMagicEffect(pos, eff)
exhaustion.set(cid, storage, waittime)
doCombat(cid, combat, var)
return TRUE
end

 

 

Editado por lusgo (veja o histórico de edições)

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.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo