summaryrefslogtreecommitdiff
path: root/src/map/skill.c
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-06-19 16:10:19 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-06-19 16:10:19 +0000
commit49c3ba9aa1f9e52bdf0fe6756637c52bf686c84a (patch)
tree446951d0573e4e9b01819f25e1ab1bc2c161a70c /src/map/skill.c
parent9e3fbfa0e80cf09bc47c841134bda8bdd898df43 (diff)
downloadhercules-49c3ba9aa1f9e52bdf0fe6756637c52bf686c84a.tar.gz
hercules-49c3ba9aa1f9e52bdf0fe6756637c52bf686c84a.tar.bz2
hercules-49c3ba9aa1f9e52bdf0fe6756637c52bf686c84a.tar.xz
hercules-49c3ba9aa1f9e52bdf0fe6756637c52bf686c84a.zip
- Moved back Soul Drain code from mob_dead to skill_counter_additional_effect. Now we are back to where the skill animation does not shows, but you DO get SP T.T' (fixing this is turning out so difficult...)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7253 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/skill.c')
-rw-r--r--src/map/skill.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index 9cd8f58ce..894dbf2fb 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -1436,6 +1436,15 @@ int skill_counter_additional_effect (struct block_list* src, struct block_list *
sc_start(src,SkillStatusChangeTable(skillid),100,skilllv,skill_get_time2(skillid,skilllv));
break;
}
+
+ if(sd && skillid && attack_type&BF_MAGIC && status_isdead(bl) &&
+ skill_get_inf(skillid)!=INF_GROUND_SKILL &&
+ (rate=pc_checkskill(sd,HW_SOULDRAIN))>0
+ ){ //Soul Drain should only work on targetted spells [Skotlex]
+ if (pc_issit(sd)) pc_setstand(sd); //Character stuck in attacking animation while 'sitting' fix. [Skotlex]
+ clif_skill_nodamage(src,bl,HW_SOULDRAIN,rate,1);
+ status_heal(src, 0, status_get_lv(bl)*(95+15*rate)/100, 2);
+ }
if((sd||dstsd) && skillid != MC_CARTREVOLUTION && attack_type&BF_WEAPON){ /* カードによる追加効果 */
int i, type;