diff options
author | cookiecrumbs <cookiecrumbs@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-08-17 17:44:16 +0000 |
---|---|---|
committer | cookiecrumbs <cookiecrumbs@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-08-17 17:44:16 +0000 |
commit | 2edfe235206b66e77d8f6af7c414b4423e98aec9 (patch) | |
tree | f6c0165528d92f64a7a2d4eb1f5e46d1200a6af5 /src | |
parent | c33744d4e47421bb0eb3f3e86a4555e6d35518a2 (diff) | |
download | hercules-2edfe235206b66e77d8f6af7c414b4423e98aec9.tar.gz hercules-2edfe235206b66e77d8f6af7c414b4423e98aec9.tar.bz2 hercules-2edfe235206b66e77d8f6af7c414b4423e98aec9.tar.xz hercules-2edfe235206b66e77d8f6af7c414b4423e98aec9.zip |
Follow up to r16647, fixed bugreport:5534. Moved the fix from skill.c to status.c.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16654 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src')
-rw-r--r-- | src/map/skill.c | 10 | ||||
-rw-r--r-- | src/map/status.c | 6 |
2 files changed, 7 insertions, 9 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index cf35fc624..fff7902d9 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -5170,15 +5170,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in case NPC_MAGICMIRROR: case ST_PRESERVE: case NPC_INVINCIBLE: - /* if invincible, end the SC for off state */ - if(skillid == NPC_INVINCIBLE) - status_change_end(bl, SC_INVINCIBLEOFF, INVALID_TIMER); - - /* if invincible off, end the SC for on state */ - case NPC_INVINCIBLEOFF: - if(skillid == NPC_INVINCIBLEOFF) - status_change_end(bl, SC_INVINCIBLE, INVALID_TIMER); - + case NPC_INVINCIBLEOFF: case RK_DEATHBOUND: case AB_RENOVATIO: case AB_EXPIATIO: diff --git a/src/map/status.c b/src/map/status.c index 18b5a343b..c314aae3f 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -6824,6 +6824,12 @@ int status_change_start(struct block_list* bl,enum sc_type type,int rate,int val if( type != SC_GT_CHANGE ) status_change_end(bl, SC_GT_CHANGE, INVALID_TIMER); break; + case SC_INVINCIBLE: + status_change_end(bl, SC_INVINCIBLEOFF, INVALID_TIMER); + break; + case SC_INVINCIBLEOFF: + status_change_end(bl, SC_INVINCIBLE, INVALID_TIMER); + break; } //Check for overlapping fails |