summaryrefslogtreecommitdiff
path: root/npc
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2021-12-30 11:20:06 -0300
committerJesusaves <cpntb1@ymail.com>2021-12-30 11:20:06 -0300
commit930cccb7c211f065aaf241689487550353e29cfb (patch)
tree99f1436b36fd0839777d2ef32d82732005c63b7f /npc
parent19908928495fbdaf8b8d6284af3177f2680f6712 (diff)
downloadserverdata-930cccb7c211f065aaf241689487550353e29cfb.tar.gz
serverdata-930cccb7c211f065aaf241689487550353e29cfb.tar.bz2
serverdata-930cccb7c211f065aaf241689487550353e29cfb.tar.xz
serverdata-930cccb7c211f065aaf241689487550353e29cfb.zip
Replace homun skills BLOODLUST, MOON, SPEED and FLEET.
Diffstat (limited to 'npc')
-rw-r--r--npc/functions/hub.txt37
1 files changed, 37 insertions, 0 deletions
diff --git a/npc/functions/hub.txt b/npc/functions/hub.txt
index d63d4247b..9d5cdfeaf 100644
--- a/npc/functions/hub.txt
+++ b/npc/functions/hub.txt
@@ -409,6 +409,43 @@ function script HUB_SkillInvoke {
SC_Bonus(.@t, SC_INCVIT, .@p);
sc_start SC_INCVIT, .@t * 1000, .@p, 10000, SCFLAG_NOAVOID, @skillCaster;
break;
+ case TMW2_BLOODLUST:
+ // SC_HAMI_BLOODLUST (val1, % ATK Bonus, % Drain Cth, % Drain Rate)
+ .@t = (50 + (@skillLv * 10)) * 1000;
+ .@atk = 10+(@skillLv * 10);
+ .@drc = 2 * @skillLv;
+ .@drn = 15 + @skillLv;
+ sc_start4 SC_HAMI_BLOODLUST, .@t, 100, .@atk, .@drc, .@drn, 10000, SCFLAG_NOAVOID, @skillCaster;
+ break;
+ case TMW2_MOON:
+ .@gid = @skillCaster; // gethominfo(0);
+ .@ak1 = getunitdata(.@gid, UDT_ATKMIN);
+ .@ak2 = getunitdata(.@gid, UDT_ATKMAX);
+ .@hit = 1 + (@skillLv / 2);
+ .@dmg = rand2(.@ak1, .@ak2) / .@hit;
+ .@dmg += .@dmg * @skillLv / 3; // +33% DMG per level
+ for (.@i=0; .@i < .@hit; .@i++) {
+ // 5% special "crit" chance
+ if (rand2(20) == 14)
+ harm(@skillTarget, .@dmg+10, HARM_MISC, Ele_Neutral, .@gid);
+ else
+ harm(@skillTarget, .@dmg, HARM_MAGI, Ele_Neutral, .@gid);
+ sleep2(100);
+ }
+ break;
+ case TMW2_FLEET:
+ // SC_HLIF_FLEET (val1, % ASPD, % ATK)
+ .@t = (65 - (@skillLv * 5)) * 1000;
+ .@atk = 5+(@skillLv * 5);
+ .@asp = 3 * @skillLv;
+ sc_start4 SC_HLIF_FLEET, .@t, 100, .@asp, .@atk, 0, 10000, SCFLAG_NOAVOID, @skillCaster;
+ break;
+ case TMW2_SPEED:
+ // SC_INCFLEE (int flee)
+ .@t = (65 - (@skillLv * 5)) * 1000;
+ .@val = 15+(@skillLv * 10);
+ sc_start SC_INCFLEE, .@t, .@val, 10000, SCFLAG_NOAVOID, @skillCaster;
+ break;
}
return;
}