summaryrefslogtreecommitdiff
path: root/src/map/skill.c
diff options
context:
space:
mode:
authorDastgir Pojee <dastgirp@gmail.com>2016-10-02 21:08:34 +0530
committerhemagx <ibrahem.h.basyone@gmail.com>2016-10-22 02:21:52 +0200
commit72cd2379541e67f1fbb3fd88132cbabb61874647 (patch)
treecf2ee7cc1afde38e328771d3eeaa96a481696645 /src/map/skill.c
parent7b270b403ea24811305631d55da5f9d30252ca85 (diff)
downloadhercules-72cd2379541e67f1fbb3fd88132cbabb61874647.tar.gz
hercules-72cd2379541e67f1fbb3fd88132cbabb61874647.tar.bz2
hercules-72cd2379541e67f1fbb3fd88132cbabb61874647.tar.xz
hercules-72cd2379541e67f1fbb3fd88132cbabb61874647.zip
Implemented SU_STOOP Skill.
Reduces Incoming Damange by 90% for 6 seconds. When Knock Back, the effect disappears.
Diffstat (limited to 'src/map/skill.c')
-rw-r--r--src/map/skill.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index 5efe74825..4d901236a 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -2141,6 +2141,9 @@ int skill_blown(struct block_list* src, struct block_list* target, int count, in
dy = -diry[dir];
}
+ if (tsc && tsc->data[SC_SU_STOOP]) // Any knockback will cancel it.
+ status_change_end(target, SC_SU_STOOP, INVALID_TIMER);
+
return unit->blown(target, dx, dy, count, flag); // send over the proper flag
}
@@ -6023,6 +6026,13 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin
clif->skill_nodamage(src,bl,skill_id,skill_lv,
sc_start(src,bl,type,100,skill_lv,skill->get_time(skill_id,skill_lv)));
break;
+ // Works just like the above list of skills, except animation caused by
+ // status must trigger AFTER the skill cast animation or it will cancel
+ // out the status's animation.
+ case SU_STOOP:
+ clif->skill_nodamage(src,bl,skill_id,skill_lv,1);
+ sc_start(src,bl,type,100,skill_lv,skill->get_time(skill_id,skill_lv));
+ break;
case KN_AUTOCOUNTER:
sc_start(src,bl,type,100,skill_lv,skill->get_time(skill_id,skill_lv));
skill->addtimerskill(src, tick + 100, bl->id, 0, 0, skill_id, skill_lv, BF_WEAPON, flag);