From 0eca88efc69becc591428fbb6b9fddd9237afd3d Mon Sep 17 00:00:00 2001 From: skotlex Date: Mon, 26 Feb 2007 04:09:58 +0000 Subject: - indent cleanups - Fixed Self Destruction causing double-free'd errors and triggering twice when a self-destruct cast makes other objects trigger self destruct as well git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9924 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/skill.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/map/skill.c') diff --git a/src/map/skill.c b/src/map/skill.c index a1e7a3e01..5e5cee3ac 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -4096,10 +4096,12 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in i = ((!md || md->special_state.ai == 2) && !map_flag_vs(src->m))? BCT_ENEMY:BCT_ALL; clif_skill_nodamage(src, src, skillid, -1, 1); + map_delblock(src); //Required to prevent chain-self-destructions hitting back. map_foreachinrange(skill_area_sub, bl, skill_get_splash(skillid, skilllv), BL_CHAR, src, skillid, skilllv, tick, flag|i, skill_castend_damage_id); + map_addblock(src); status_damage(src, src, sstatus->max_hp,0,0,1); break; -- cgit v1.2.3-70-g09d2