Olá usuários do Tibia King, eu criei 3 spells de transformação que dão buffs ao char, a minha duvida é como
torna-las dependentes entre si, por exemplo, para usar a transformação "B" você tem que ter se transformado na "A" e para se transformar na "C" tem que ter passado pela "B".
Vou deixar aqui o script das spells na ordem da dependência:
Spell "A":
local time = 180 * 1000 -- 180 * 1000 = 3 min
local addShielding = 40 -- quanto de defesa aumenta
local skillfist = 50 -- quantos ira aumentar o skill de Fist
local cloth = {lookType = 82, lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0, lookTypeEx = 0, lookAddons = 0}
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, 5)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)
local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, time)
setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist)
setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, addShielding)
setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE)
setCombatCondition(combat, condition)
local condition = createConditionObject(CONDITION_HASTE)
setConditionParam(condition, CONDITION_PARAM_SPEED, 250)
setConditionParam(condition, CONDITION_PARAM_TICKS, time)
setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE)
setCombatCondition(combat, condition)
local outfit = createConditionObject(CONDITION_OUTFIT)
setConditionParam(outfit, CONDITION_PARAM_TICKS, time)
addOutfitCondition(outfit, cloth)
setCombatCondition(combat, outfit)
function onCastSpell(cid, var)
return doCombat(cid, combat, var)
end
Spell "B":
local time = 120 * 1000 -- 120 * 1000 = 2 min
local addShielding = 50 -- quanto de defesa aumenta
local skillfist = 70 -- quantos ira aumentar o skill de Fist
local cloth = {lookType = 83, lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0, lookTypeEx = 0, lookAddons = 0}
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, 5)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)
local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, time)
setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist)
setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, addShielding)
setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE)
setCombatCondition(combat, condition)
local condition = createConditionObject(CONDITION_HASTE)
setConditionParam(condition, CONDITION_PARAM_SPEED, 500)
setConditionParam(condition, CONDITION_PARAM_TICKS, time)
setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE)
setCombatCondition(combat, condition)
local outfit = createConditionObject(CONDITION_OUTFIT)
setConditionParam(outfit, CONDITION_PARAM_TICKS, time)
addOutfitCondition(outfit, cloth)
setCombatCondition(combat, outfit)
function onCastSpell(cid, var)
return doCombat(cid, combat, var)
end
Spell "C":
local time = 60 * 1000 -- 60 * 1000 = 1 min
local addShielding = 60 -- quanto de defesa aumenta
local skillfist = 90 -- quantos ira aumentar o skill de Fist
local health = 130 -- A cada 1 segundo quantos aumentar de vida
local cloth = {lookType = 330, lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0, lookTypeEx = 0, lookAddons = 0}
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, 5)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)
local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, time)
setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist)
setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, addShielding)
setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE)
setCombatCondition(combat, condition)
local condition = createConditionObject(CONDITION_HASTE)
setConditionParam(condition, CONDITION_PARAM_SPEED, 750)
setConditionParam(condition, CONDITION_PARAM_TICKS, time)
setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE)
setCombatCondition(combat, condition)
local outfit = createConditionObject(CONDITION_OUTFIT)
setConditionParam(outfit, CONDITION_PARAM_TICKS, time)
addOutfitCondition(outfit, cloth)
setCombatCondition(combat, outfit)
function onCastSpell(cid, var)
return doCombat(cid, combat, var)
end
Eu sou novo aqui, peço que me perdoem se cometi algum erro em relação ao post, desde já agradeço atenção!