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

[Rune] How to make Ultimate healing rune ( UH) for only knights?

Dalale

GX
Joined
Jun 13, 2008
Messages
718
Reaction score
2
Location
Sweden
As the topic says i want a UH rune that only can be used of knights.

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)

function onGetFormulaValues(cid, level, maglevel)
	min = (level * 1 + maglevel * 4) * 2.5
	max = (level * 1 + maglevel * 4) * 2.8
	if min < 250 then
		min = 250
	end
	return min, max
end

setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

function onCastSpell(cid, var)
	return doCombat(cid, combat, var)
end

Thanks.
 
Spells.xml
PHP:
<rune name="Ultimate Healing Rune" id="UH ID" allowfaruse="1" charges="1" lvl="100" maglv="10" exhaustion="1000" aggressive="0" needtarget="1" blocktype="solid" script="healing/healing rune.lua">

    <vocation name="Knight"/>

</rune>
 
Spells.xml
PHP:
<rune name="Ultimate Healing Rune" id="UH ID" allowfaruse="1" charges="1" lvl="100" maglv="10" exhaustion="1000" aggressive="0" needtarget="1" blocktype="solid" script="healing/healing rune.lua">

    <vocation name="Knight"/>

</rune>

thanks gonna try it.
very fast respond :D



EDIT : IT DIDNT WORK!! :S
 
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)

function onGetFormulaValues(cid, level, maglevel)
	min = (level * 1 + maglevel * 4) * 2.5
	max = (level * 1 + maglevel * 4) * 2.8
	if min < 250 then
		min = 250
	end
	return min, max
end

setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

function onCastSpell(cid, var)
if(isInArray({4,8}, getPlayerVocation(cid)) == TRUE) then
	return doCombat(cid, combat, var)
	else
    	doPlayerSendTextMessage(cid,22,"Only knights can use this rune.")
    	doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
  end
  	return TRUE
end
 
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)

function onGetFormulaValues(cid, level, maglevel)
	min = (level * 1 + maglevel * 4) * 2.5
	max = (level * 1 + maglevel * 4) * 2.8
	if min < 250 then
		min = 250
	end
	return min, max
end

setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

function onCastSpell(cid, var)
if(isInArray({4,8}, getPlayerVocation(cid)) == TRUE) then
	return doCombat(cid, combat, var)
	else
    	doPlayerSendTextMessage(cid,22,"Only knights can use this rune.")
    	doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
  end
  	return TRUE
end


Thank you.
if(isInArray({4,8}, getPlayerVocation(cid)) == TRUE) then
Is it here i change vocation?
since in my server you can be Super Voc's?


EDIIIT : FIXXED IT THANKS!!
 
Last edited:
Back
Top