hello guys!
I got a spell that lasts 30 seconds
I need a talkaction to make it stop, make character move again and make stop the exausted.
i'm sorry but I have no idea how to do
I got a spell that lasts 30 seconds
PHP:
local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_PURPLE)
local combat2 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_RED)
local drunk = createConditionObject(CONDITION_DRUNK)
setConditionParam(drunk, CONDITION_PARAM_TICKS, 10000)
setCombatCondition(combat1, drunk)
setCombatCondition(combat2, drunk)
local paralyze = createConditionObject(CONDITION_PARALYZE)
setConditionParam(paralyze, CONDITION_PARAM_TICKS, 10000)
setConditionFormula(paralyze, -0.9, 0, -0.9, 0)
setCombatCondition(combat1, paralyze)
setCombatCondition(combat2, paralyze)
local death = createConditionObject(CONDITION_CURSED)
setConditionParam(death, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(death, 10, 1000, -10)
setCombatCondition(combat1, death)
setCombatCondition(combat2, death)
local fire = createConditionObject(CONDITION_FIRE)
setConditionParam(fire, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(fire, 10, 1000, -10)
setCombatCondition(combat1, fire)
setCombatCondition(combat2, fire)
local energy = createConditionObject(CONDITION_ENERGY)
setConditionParam(energy, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(energy, 10, 1000, -10)
setCombatCondition(combat1, energy)
setCombatCondition(combat2, energy)
local poison = createConditionObject(CONDITION_POISON)
setConditionParam(poison, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(poison, 10, 1000, -10)
setCombatCondition(combat1, poison)
setCombatCondition(combat2, poison)
local arr1 = {
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 1, 0, 1, 1, 0},
{1, 1, 1, 0, 1, 1, 1},
{1, 0, 0, 2, 0, 0, 1},
{1, 1, 1, 0, 1, 1, 1},
{0, 1, 1, 0, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 0}
}
local arr2 = {
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 1, 1, 2, 1, 1, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0}
}
setCombatArea(combat1, createCombatArea(arr1))
setCombatArea(combat2, createCombatArea(arr2))
local function onCastSpell1(parameters)
return isPlayer(parameters.cid) == TRUE and doCombat(parameters.cid, parameters.combat1, parameters.var) and doCreatureSetNoMove(parameters.cid, true)
end
local function onFinishSpell1(parameters)
return isPlayer(parameters.cid) == TRUE and doCreatureSetNoMove(parameters.cid, false)
end
local function onCastSpell2(parameters)
return isPlayer(parameters.cid) == TRUE and doCombat(parameters.cid, parameters.combat2, parameters.var)
end
local inst = {3957, 3952, 2070, 2071, 2072}
function onCastSpell(cid, var)
local dir = getPlayerSlotItem(cid, CONST_SLOT_RIGHT)
local esq = getPlayerSlotItem(cid, CONST_SLOT_LEFT)
if getPlayerStorageValue(cid, 89456) == 1 then
doPlayerSendCancel(cid, "voce esta impossibilitado de gastar mana.")
else
local parameters = {cid = cid, var = var, combat1 = combat1, combat2 = combat2, death = death, fire = fire, energy = energy, paralyze = paralyze, drunk = drunk, poison = poison}
if isInArray(inst, dir.itemid) == true or isInArray(inst, esq.itemid) == true then
for i = 1, 61 do
addEvent(onCastSpell1, i == 1 and 100 or i * 500 - 500, parameters)
addEvent(onCastSpell2, i == 1 and 100 or i * 500 - 500, parameters)
end
addEvent(onFinishSpell1, 31000, parameters)
else
doPlayerSendCancel(cid, "voce precisa esta equipado com um instrumento musical para tocar essa musica")
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
return FALSE
end
return true
end
end
I need a talkaction to make it stop, make character move again and make stop the exausted.
i'm sorry but I have no idea how to do