• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!
  • 2026 staff recruitment is open! Check it out and consider applying!

Solved SPELL isPlayer(target)

Status
Not open for further replies.

Garuh066

New Member
Joined
Apr 11, 2013
Messages
19
Reaction score
1
TFS 0.3.6.pl1

Hello everyone, I´ve a problem trying to make a spell, what i want is simple:
If isPlayer(target) then
target addmana -5
end

but i´ve continue problems with target function.
anyone can help me to fix my spell?

Code:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, 31)

function onGetFormulaValues(cid, level, maglevel)
    local min = -(((level/5)+(maglevel*1.4))+7)
    local max = -(((level/5)+(maglevel*2.1))+17)
    return min, max
end

setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

function onCastSpell(cid, var, target)
    local mlvl,lvl = getPlayerMagLevel(cid),getPlayerLevel(target)
    local min = mlvl * 0.8 + lvl * 0.5
    local max = mlvl * 1.2 + lvl * 0.9
    doCreatureAddMana(target, -(math.random(min,max)))
    return doCombat(cid, combat, var)   
end
 
I suck greatly with spells.
This took me like an hour to figure out. :(
Code:
06:52 You lose 94 mana.
06:52 You lose 73 hitpoints due to an attack by Xikini.
Added this part.. in case yours is different.
Code:
<instant name="mana_test" words="mana_test" lvl="10" mana="10" prem="0" range="1" needtarget="1" blockwalls="1" exhaustion="1000" groups="1,1000" icon="59" needlearn="0" event="script" value="mana_test.lua">
       <vocation id="2"/>
       <vocation id="5"/>
</instant>
Code:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, 31)

function onGetFormulaValues(cid, level, maglevel)
       local min = -(((level/5)+(maglevel*1.4))+7)
       local max = -(((level/5)+(maglevel*2.1))+17)
       return min, max
end

setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

function onCastSpell(cid, var)
       local target = var.number
       if isPlayer(target) then
               local mlvl, lvl = getPlayerMagLevel(cid), getPlayerLevel(target)
               local min = mlvl * 0.8 + lvl * 0.5
               local max = mlvl * 1.2 + lvl * 0.9
               local mana = math.random(min,max)
               doCreatureAddMana(target, -mana)
       end
       return doCombat(cid, combat, var)
end
 
Last edited by a moderator:
Status
Not open for further replies.
Back
Top