local spell = {}
spell.config = {
[1] = {
type = COMBAT_FIREDAMAGE,
areaEffect = CONST_ME_FIREAREA,
area = {
{1, 1, 1},
{0, 2, 0},
{0, 0, 0}
},
formula = {5, 5, 1.2, 2}
},
[2] = {
type = COMBAT_FIREDAMAGE,
areaEffect = CONST_ME_FIREAREA,
area = {
{0, 0, 1},
{0, 2, 1},
{0, 0, 1}
},
formula = {5, 5, 1.2, 2}
},
[3] = {
type = COMBAT_FIREDAMAGE,
areaEffect = CONST_ME_FIREAREA,
area = {
{0, 0, 0},
{0, 2, 0},
{1, 1, 1}
},
formula = {5, 5, 1.2, 2}
},
[4] = {
type = COMBAT_FIREDAMAGE,
areaEffect = CONST_ME_FIREAREA,
area = {
{1, 0, 0},
{1, 2, 0},
{1, 0, 0}
},
formula = {5, 5, 1.2, 2}
}
}
spell.combats = {}
for _, config in ipairs(spell.config) do
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, (config.type or COMBAT_NONE))
setCombatParam(combat, COMBAT_PARAM_EFFECT, (config.areaEffect or CONST_ME_NONE))
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, (config.shootEffect or CONST_ANI_NONE))
local area = createCombatArea(config.area)
setCombatArea(combat, area)
setAttackFormula(combat, COMBAT_FORMULA_LEVELMAGIC, unpack(config.formula))
table.insert(spell.combats, combat)
end
function onCastSpell(cid, var)
local k, v = getCreatureStorage(cid, 70001), getCreatureStorage(cid, 70002)
if os.clock() > getCreatureStorage(cid, 70001) then
doCombat(cid, spell.combats[1], var)
doCreatureSetStorage(cid, 70001, os.clock() + 2)
doCreatureSetStorage(cid, 70002, 2)
return true
end
doCombat(cid, spell.combats[getCreatureStorage(cid, 70002)], var)
doCreatureSetStorage(cid, 70001, os.clock() + 2)
doCreatureSetStorage(cid, 70002, (getCreatureStorage(cid, 70002) == #spell.combats and 1 or (getCreatureStorage(cid, 70002) + 1)))
return true
end
Toma. Eu fiz de uma forma que se o jogador use a magia em até dois segundos depois do último uso, crie o tal combo.
Abraços.






info
Grupo: Campones
Registrado: 23/03/08
Posts: 5
Reputação: 0
Char no Tibia: Sir Lokao
Primeiramente, bom dia e feliz natal.
Eu tentei criar uma magia que tem varias etapas, e se a pessoa usar repetidamente ela cria combos, exemplo:
eu uso a spell:
local arr1 = {
{1, 1, 1},
{0, 0, 0},
{0, 0, 0},
uso denovo(tem q ser seguida, sem demorar)
local arr2 = {
{0, 0, 1},
{0, 0, 1},
{0, 0, 1},
e se eu usar ela denovo(dentro do tempo)
local arr3 = {
{0, 0, 0},
{0, 0, 0},
{1, 1, 1},