summaryrefslogtreecommitdiff
path: root/npc
diff options
context:
space:
mode:
Diffstat (limited to 'npc')
-rw-r--r--npc/functions/main.txt21
-rw-r--r--npc/magic/config.txt4
2 files changed, 23 insertions, 2 deletions
diff --git a/npc/functions/main.txt b/npc/functions/main.txt
index 25d20edc..bb1887d2 100644
--- a/npc/functions/main.txt
+++ b/npc/functions/main.txt
@@ -633,6 +633,27 @@ function script learnskill {
return;
}
+// Delayed healing. Takes 3~5 seconds. Variates with Vit up to +100%.
+// The vit can have an additional 20% bonus as well.
+function script itheal {
+ .@bas=getarg(0);
+ .@vit=readbattleparam(getcharid(3), UDT_VIT);
+ .@vit=cap_value(.@vit-1, 0, 100);
+ if (getargcount() > 2)
+ .@tim=getarg(3);
+ else
+ .@tim=rand2(3,5);
+ .@min=.@bas*(100+.@vit)/100;
+ .@max=.@bas*(100+.@vit*120/100)/100;
+ // Now divide the HP values by the time
+ .@min=max(1, .@min/.@tim);
+ .@max=max(1, .@max/.@tim);
+ callfunc("SC_Bonus", .@tim, SC_S_LIFEPOTION, .@min, .@max);
+ if (getarg(1,0) > 0)
+ heal 0, getarg(1, 0);
+ return;
+}
+
// sqldate({day variation, month variation})
function script sqldate {
.@d=gettime(GETTIME_DAYOFMONTH)+getarg(0, 0);
diff --git a/npc/magic/config.txt b/npc/magic/config.txt
index 6286c2a6..c0f00cec 100644
--- a/npc/magic/config.txt
+++ b/npc/magic/config.txt
@@ -23,7 +23,7 @@ function script AdjustSpellpower {
// Calculation FIX
if (.@type == HARM_MAGI) {
- .@power+=(readparam2(bInt)/2);
+ .@power+=(readparam2(UDT_INT)/2);
.@dmg=rand2(
getunitdata(getcharid(3), UDT_MATKMIN),
getunitdata(getcharid(3), UDT_MATKMAX));
@@ -31,7 +31,7 @@ function script AdjustSpellpower {
//if (.@target)
// .@dmg=max(0, .@dmg-getunitdata(.@target, UDT_MDEF));
} else if (.@type == HARM_PHYS) {
- .@power+=(readparam2(bStr)/2);
+ .@power+=(readparam2(UDT_STR)/2);
.@dmg=rand2(
getunitdata(getcharid(3), UDT_ATKMIN),
getunitdata(getcharid(3), UDT_ATKMAX));