Ir para conteúdo

Posts Recomendados

Olá pessoal do XTibia ,

eu tava brincando de fazer spells , ta bom só que quando pus duas areas a spell não pega nos bichos não ranca nada vou mostra a original e a de duas areas.

 

Primeira Magia !



 
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ANI_FIRE)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_NONE)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 50, 100, 150, 200)

local arr= {
{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,1,0,0,0,0,0},
{0,0,0,0,0,1,0,0,0,0,0},
{0,0,0,1,1,2,1,1,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,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)
return doCombat(cid,
combat, var)
end

 

Segunda Magia
(
mesma que a primeira só que com duas areas
)

 

local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat1, COMBAT_PARAM_EFFECT, 36)
setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_NONE)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -50, -100, -50, -100)

local combat2 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat2, COMBAT_PARAM_EFFECT, 36)
setCombatParam(combat2, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_NONE)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -50, -100, -50, -100)

arr1 = {
{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,1,0,0,0,0,0},
{0,0,0,0,0,1,0,0,0,0,0},
{0,0,0,1,1,2,1,1,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,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},
}
arr2 = {
{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,1,0,1,0,1,0,0,0},
{0,0,0,0,1,0,1,0,0,0,0},
{0,0,0,0,0,2,0,0,0,0,0},
{0,0,0,0,1,0,1,0,0,0,0},
{0,0,0,1,0,1,0,1,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 area1 = createCombatArea(arr1)
local area2 = createCombatArea(arr2)

setCombatArea(combat1, area1)
setCombatArea(combat2, area2)

function onCastSpell1(parameters)
doCombat(parameters.cid, parameters.combat1, parameters.var)
end

function onCastSpell2(parameters)
doCombat(parameters.cid, parameters.combat2, parameters.var)
end

function onCastSpell(cid, var)
local parameters = { cid = cid, var = var, combat1 = combat1, combat2 = combat2 }

addEvent(onCastSpell1, 100, parameters)
addEvent(onCastSpell2, 500, parameters)

return TRUE
end


 

 

oque esta errado?

 

vlw no aguardo

Link para o comentário
https://xtibia.com/forum/topic/181156-d%C3%BAvida-oque-tem-de-errado-com-essa-magia/
Compartilhar em outros sites

Primeirea magia

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREATTACK)

setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 50, 100, 150, 200)

 

local arr= {

{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,1,0,0,0,0,0},

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

{0,0,0,1,1,2,1,1,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,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)

return doCombat(cid,combat, var)

end

 

 

isso tava assim return doCombat(cid,

combat, var) o certo e na mesma linha e nunca usa setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ANI_FIREATTACK) ANI e pra efeitos /x nao efeitos /z pra efeitos /z e assim setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREATTACK)

 

a segunda magia

local combat1 = createCombatObject()

setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat1, COMBAT_PARAM_EFFECT, 36)

setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -50, -100, -50, -100)

 

local combat2 = createCombatObject()

setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat2, COMBAT_PARAM_EFFECT, 36)

setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -50, -100, -50, -100)

 

arr1 = {

{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,1,0,0,0,0,0},

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

{0,0,0,1,1,2,1,1,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,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},

}

arr2 = {

{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,1,0,1,0,1,0,0,0},

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

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

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

{0,0,0,1,0,1,0,1,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 area1 = createCombatArea(arr1)

local area2 = createCombatArea(arr2)

 

setCombatArea(combat1, area1)

setCombatArea(combat2, area2)

 

function onCastSpell1(parameters)

doCombat(parameters.cid, parameters.combat1, parameters.var)

end

 

function onCastSpell2(parameters)

doCombat(parameters.cid, parameters.combat2, parameters.var)

end

 

function onCastSpell(cid, var)

local parameters = { cid = cid, var = var, combat1 = combat1, combat2 = combat2 }

 

addEvent(onCastSpell1, 100, parameters)

addEvent(onCastSpell2, 500, parameters)

 

return TRUE

end

voce deixou assim setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -50, -100, -50, -100) sem o 1 do lado o certo seria assim setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -50, -100, -50, -100)

 

 

SE AJUDEI REP+

 

Primeirea magia

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREATTACK)

setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 50, 100, 150, 200)

 

local arr= {

{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,1,0,0,0,0,0},

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

{0,0,0,1,1,2,1,1,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,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)

return doCombat(cid,combat, var)

end

 

 

isso tava assim return doCombat(cid,

combat, var) o certo e na mesma linha e nunca usa setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ANI_FIREATTACK) ANI e pra efeitos /x nao efeitos /z pra efeitos /z e assim setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREATTACK)

 

a segunda magia

local combat1 = createCombatObject()

setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat1, COMBAT_PARAM_EFFECT, 36)

setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -50, -100, -50, -100)

 

local combat2 = createCombatObject()

setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat2, COMBAT_PARAM_EFFECT, 36)

setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -50, -100, -50, -100)

 

arr1 = {

{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,1,0,0,0,0,0},

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

{0,0,0,1,1,2,1,1,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,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},

}

arr2 = {

{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,1,0,1,0,1,0,0,0},

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

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

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

{0,0,0,1,0,1,0,1,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 area1 = createCombatArea(arr1)

local area2 = createCombatArea(arr2)

 

setCombatArea(combat1, area1)

setCombatArea(combat2, area2)

 

function onCastSpell1(parameters)

doCombat(parameters.cid, parameters.combat1, parameters.var)

end

 

function onCastSpell2(parameters)

doCombat(parameters.cid, parameters.combat2, parameters.var)

end

 

function onCastSpell(cid, var)

local parameters = { cid = cid, var = var, combat1 = combat1, combat2 = combat2 }

 

addEvent(onCastSpell1, 100, parameters)

addEvent(onCastSpell2, 500, parameters)

 

return TRUE

end

voce deixou assim setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -50, -100, -50, -100) sem o 1 do lado o certo seria assim setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -50, -100, -50, -100)

 

 

SE AJUDEI REP+

 

 

Poo mano valew por tentar ajudar mais a primeira magia estava funfando normalmente dps que quis por duas fases que começo e a falhar mais se vooc' prestar atenção no lugar que vooc' falow que estava sem o 1 tem o 1 '-' olha no script :x

 

----

OBS: não tem 1 no primeiro pq só é uuma fazer ai nãão precisa de 1 ..

Editado por Riiicky
×
×
  • Criar Novo...