summaryrefslogtreecommitdiff
path: root/src/map/skill.c
diff options
context:
space:
mode:
authormalufett <malufett.eat.my.binaries@gmail.com>2015-01-12 02:12:55 +0800
committermalufett <malufett.eat.my.binaries@gmail.com>2015-01-12 02:12:55 +0800
commit819bc0c5bb225c51be77e585d5e1c8af00850657 (patch)
treecd1a6b2e6b32a4d0a135edab6190cdb8a6133577 /src/map/skill.c
parent670fca4c54445440c25e1114e64170e3934645f1 (diff)
downloadhercules-819bc0c5bb225c51be77e585d5e1c8af00850657.tar.gz
hercules-819bc0c5bb225c51be77e585d5e1c8af00850657.tar.bz2
hercules-819bc0c5bb225c51be77e585d5e1c8af00850657.tar.xz
hercules-819bc0c5bb225c51be77e585d5e1c8af00850657.zip
Fixed Bug where skill timer is not properly terminated/clear when the caster dies.
-Thanks to GM Nihad. Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
Diffstat (limited to 'src/map/skill.c')
-rw-r--r--src/map/skill.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index 38b9097cd..db675d7f4 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -3460,9 +3460,8 @@ int skill_cleartimerskill (struct block_list *src)
case SR_SKYNETBLOW:
continue;
default:
- skill->cleartimerskill_unknown(ud->skilltimerskill[i]->skill_id);
- continue;
-
+ if(skill->cleartimerskill_exception(ud->skilltimerskill[i]->skill_id))
+ continue;
}
timer->delete(ud->skilltimerskill[i]->timer, skill->timerskill);
ers_free(skill->timer_ers, ud->skilltimerskill[i]);
@@ -3472,8 +3471,9 @@ int skill_cleartimerskill (struct block_list *src)
return 1;
}
-void skill_cleartimerskill_unknown(int skill_id)
+bool skill_cleartimerskill_exception(int skill_id)
{
+ return false;
}
int skill_activate_reverberation(struct block_list *bl, va_list ap) {
@@ -19318,7 +19318,7 @@ void skill_defaults(void) {
skill->timerskill_dead_unknown = skill_timerskill_dead_unknown;
skill->timerskill_target_unknown = skill_timerskill_target_unknown;
skill->timerskill_notarget_unknown = skill_timerskill_notarget_unknown;
- skill->cleartimerskill_unknown = skill_cleartimerskill_unknown;
+ skill->cleartimerskill_exception = skill_cleartimerskill_exception;
skill->castend_damage_id_unknown = skill_castend_damage_id_unknown;
skill->castend_id_unknown = skill_castend_id_unknown;
skill->castend_nodamage_id_dead_unknown = skill_castend_nodamage_id_dead_unknown;