Guiaki
Member
- Joined
- Jan 3, 2011
- Messages
- 137
- Reaction score
- 8
Well, I was trying to do a "upgradeable" spell, a fireball which can be upgraded, so I tought.. why not using a storage? you have a npc that will change the storage and the spell check what it is, but actually it didn't work... can someone help me? here is the script:
i am using TFS 0.4 dev 4101 or something like it
Code:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREATTACK)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_FIRE)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -10, -10, -20, -20, 5, 7, 1.5, 2.0)
local combat2 = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREATTACK)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_FIRE)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -20, -20, -40, -40, 7, 9, 2.0, 2.5)
local combat3 = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREATTACK)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_FIRE)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -30, -30, -50, -50, 9, 11, 2.5, 3.0)
local combat4 = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREATTACK)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_FIRE)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -40, -40, -70, -70, 11, 15, 3.0, 4.0)
function onCastSpell(cid, var)
storage = 6172
local fireball = getPlayerStorageValue(cid,storage)
if fireball == 1 then
return doCombat(cid, combat, var)
elseif fireball == 2 then
return doCombat(cid, combat2, var)
elseif fireball == 3 then
return doCombat(cid, combat3, var)
elseif fireball == 4 then
return doCombat(cid, combat4, var)
end
end