Spo teh pro
New Member
- Joined
- Jan 3, 2008
- Messages
- 319
- Reaction score
- 1
Hello. I have this script (credits to nanondalt)
The script should usually make you (in this case) 30% residence against all type of attacks and those 30% should return to the attacker
example; A guy hits 100 with SD usually to me, I'll get hit 70 and he 30
but the script just makes the damager receive those 30% damage, I don't have any residence and I get the whole 100%
Help please
+repp!
Here is the scipt
The script should usually make you (in this case) 30% residence against all type of attacks and those 30% should return to the attacker
example; A guy hits 100 with SD usually to me, I'll get hit 70 and he 30
but the script just makes the damager receive those 30% damage, I don't have any residence and I get the whole 100%
Help please
+repp!
Here is the scipt
Code:
<?xml version="1.0" encoding="UTF-8"?>
<mod name="Vengeance" version="1.0" author="Nandonalt" contact="[email protected]" enabled="yes">
<config name="vengeconf"><![CDATA[
config = {
storage = 4328,
time = 15,
percent_min = 20,
percent_max = 30,
manaused = 800
}
]]></config>
<event type="statschange" name="VengeanceV" event="script"><![CDATA[
function onStatsChange(cid, attacker, type, combat, value)
domodlib('vengeconf')
if type == STATSCHANGE_HEALTHLOSS and value >= 1 then
local percentage = math.random(config.percent_min, config.percent_max)
local formula = math.floor((percentage * value) / 100)
if getPlayerStorageValue(cid,config.storage) == 1 and isCreature(attacker) then
doSendAnimatedText(getCreaturePosition(attacker),"-"..formula,COLOR_RED)
doCreatureSay(cid,"Taste Vengeance!",19)
doSendMagicEffect(getCreaturePosition(cid),17)
doSendMagicEffect(getCreaturePosition(attacker),29)
doCreatureAddHealth(attacker,-formula)
end
end
return 1
end
]]></event>
<event type="login" name="VengeanceLogin" event="script"><![CDATA[
function onLogin(cid)
registerCreatureEvent(cid,"VengeanceV")
local storage = 4328
if getPlayerStorageValue(cid,storage) == 1 then
doPlayerSendCancel(cid,"Vengeance effect ended.")
setPlayerStorageValue(cid,storage,-1)
doSendMagicEffect(getCreaturePosition(cid),17)
else
end
return 1
end
]]></event>
<instant name="Vengeance" words="vengeance" lvl="85" mana="800" exhaustion="10000" needlearn="0" event="script" ><![CDATA[
domodlib('vengeconf')
local secs = config.time * 1000
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, 17)
function no_vengeance(param)
domodlib('vengeconf')
pid = getPlayerByNameWildcard(param.name)
if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then
else
doPlayerSendCancel(pid,"Vengeance effect ended.")
setPlayerStorageValue(pid,config.storage,-1)
doSendMagicEffect(getCreaturePosition(pid),17)
end
return 1
end
function onCastSpell(cid, var)
domodlib('vengeconf')
if getPlayerStorageValue(cid,config.storage) == -1 then
doCreatureSay(cid,"Vengeance!",19)
setPlayerStorageValue(cid,config.storage,1)
addEvent(no_vengeance,secs,{cid = cid, name = getPlayerName(cid)})
doCombat(cid, combat, var)
else
doPlayerSendCancel(cid,"This spell is already active.")
doPlayerAddMana(cid,config.manaused)
end
return 1
end
]]>
</instant></mod>