• 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!

Making a spell take in effect your weapon

  • Thread starter Thread starter Deleted member 49793
  • Start date Start date
D

Deleted member 49793

Guest
Basicly like the title, I want to make this spell (Exura san) look at level, magic level and the weapon your wielding (I.E better weapons = better heals) Make it 50% weapon based, 30% level based and 20% magic level based. thank you :)


Code:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)
setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)
setHealingFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 18.5, 25)

function onCastSpell(cid, var)
	return doCombat(cid, combat, var)
end
 
hmmm i dunno how to explain any better...

Like atm it has setHealingFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 18.5, 25)

I believe that takes into effect a players magic level and level right? Well i want it to take in effect like this

function onGetFormulaValues(cid, level, skill, attack, factor)
local skillTotal = (skill*0.2) + (attack*0.5) + (level*0.3)
return -(skillTotal * 2.1), -(skillTotal * 3.5) --3.5 is better, believe...
end

Thats an example someone did for exori gran for me

But i want it to be like that for that healing spell also :D
 
Something like this, I guess ... ... ...
LUA:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)
setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)

function onGetFormulaValues(cid, level, skill, attack, factor)
	local v = getPlayerMagLevel(cid)*0.2 + attack*0.5 + level*0.3
	return v * 2.1, v * 3.5
end 

setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")

function onCastSpell(cid, var)
	return doCombat(cid, combat, var)
end
It'll probably need tweaking.
 
Back
Top