NB
pedido

Efeito Em Spell

Por nbb147, 04 de nov. de 2012 em Scripts

efeito
spell
resolvido
10
1.4k
nbb147N
04 de novembro de 2012 às 17:36

bom gente eu estou com uma spell aki, eu queria colocar para o efeito dessa magia ficar saindo ate a magia acabar..

 

 

 

 

 

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_EFFECT, 40)

setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)

 

 

 

arr = {

{0, 0, 0, 0, 0},

{0, 0, 0, 0, 0},

{0, 0, 0, 0, 0},

{0, 1, 2, 0, 0},

{0, 0, 0, 0, 0},

{0, 0, 0, 0, 0},

{0, 0, 0, 0, 0},

}

 

local area = createCombatArea(arr)

setCombatArea(combat, area)

 

local storage = 111

 

function onCastSpell(cid, var)

local status = getCreatureStorage(cid, 1115)

if status > os.time() then

return doPlayerSendCancel(cid, "A spell já esta ativado.")

end

doCreatureSetStorage(cid, 1115, os.time() + 15)

doCombat(cid, combat, var)

return true

end

 

 

 

Editado Novembro 4 por nbb147

brun123B
04 de novembro de 2012 às 19:07
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, 40)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)
arr = {
{0, 0, 0, 0, 0},
{0, 0, 0, 0, 0},
{0, 0, 0, 0, 0},
{0, 1, 2, 0, 0},
{0, 0, 0, 0, 0},
{0, 0, 0, 0, 0},
{0, 0, 0, 0, 0},}
local area = createCombatArea(arr)
setCombatArea(combat, area)

local dur = 10 -- spell vai durar 10 segundos
local delay = 500 -- delay (em ms) entre cada enviada de effect

function executeCombat(cid, combat, var, time)
   if not isCreature(cid) or time <= os.time() then return
   doCombat(cid, combat, var)
   addEvent(executeCombat, delay, cid, combat, var, time)
end

function onCastSpell(cid, var)
   local status = getCreatureStorage(cid, 1115)
   if status > os.time() then
   return doPlayerSendCancel(cid, "A spell já esta ativado.")
   end
   doCreatureSetStorage(cid, 1115, os.time() + 15)
   executeCombat(cid, combat, var, os.time() + dur)
return true
end

SlicerS
04 de novembro de 2012 às 19:25

n faltou um 'end'?

function executeCombat(cid, combat, var, time)
   if not isCreature(cid) or time <= os.time() then return
   doCombat(cid, combat, var)
   addEvent(executeCombat, delay, cid, combat, var, time)
end

nbb147N
04 de novembro de 2012 às 19:45

deu esse erro:

 

 

 

[05/11/2012 19:41:15] [Error - LuaScriptInterface::loadFile] data/spells/scripts/sasuke/susanoo.lua:21: 'end' expected (to close 'if' at line 19) near 'addEvent'

[05/11/2012 19:41:15] [Warning - Event::loadScript] Cannot load script (data/spells/scripts/sasuke/susanoo.lua)

[05/11/2012 19:41:15] data/spells/scripts/sasuke/susanoo.lua:21: 'end' expected (to close 'if' at line 19) near 'addEvent'

notle2012N
04 de novembro de 2012 às 22:03

@Slicer

ja disse ai que tava faltando um end testa esse

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, 40)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)
arr = {
{0, 0, 0, 0, 0},
{0, 0, 0, 0, 0},
{0, 0, 0, 0, 0},
{0, 1, 2, 0, 0},
{0, 0, 0, 0, 0},
{0, 0, 0, 0, 0},
{0, 0, 0, 0, 0},}
local area = createCombatArea(arr)
setCombatArea(combat, area)
local dur = 10 -- spell vai durar 10 segundos
local delay = 500 -- delay (em ms) entre cada enviada de effect
function executeCombat(cid, combat, var, time)
   if not isCreature(cid) or time <= os.time() then return end
   doCombat(cid, combat, var)
   addEvent(executeCombat, delay, cid, combat, var, time)
end
function onCastSpell(cid, var)
   local status = getCreatureStorage(cid, 1115)
   if status > os.time() then
   return doPlayerSendCancel(cid, "A spell já esta ativado.")
   end
   doCreatureSetStorage(cid, 1115, os.time() + 15)
   executeCombat(cid, combat, var, os.time() + dur)
return true
end

nbb147N
04 de novembro de 2012 às 22:33

nao sai nenhum efeito, e nem da nenhum erro, a spell funciona normal, mais o efeito nao sai..

 

----------------------------------EDIT-------------------------------------

malz ai testei errado, bom o efeito fica saindo de boa mais tem um problema o efeito fica saindo onde o player usou a spell, eu queria que o efeito fica-se no boneco, o boneco andase o efeito tambem...

Editado Novembro 5 por nbb147

brun123B
08 de novembro de 2012 às 23:09

acima dessa linha no script:

 

doCombat(cid, combat, var)

 

adicione essas:

 

local var = var
var.pos = getThingPos(cid)

nbb147N
09 de novembro de 2012 às 17:02

funfou aki, valeu cara rep+

reportado para moverem...

caoticC
09 de novembro de 2012 às 17:52

Duvida Sanada

Tópico Movido

caoticC
09 de novembro de 2012 às 17:53

Tópico movido para a seção de dúvidas e pedidos resolvidos.