summaryrefslogtreecommitdiff
path: root/src/map/skill.c
diff options
context:
space:
mode:
authorInkfish <Inkfish@54d463be-8e91-2dee-dedb-b68131a5f0ec>2009-05-19 10:34:43 +0000
committerInkfish <Inkfish@54d463be-8e91-2dee-dedb-b68131a5f0ec>2009-05-19 10:34:43 +0000
commit7e6ec6039ede7ccbe920cce0070df0d2dd05aef8 (patch)
treec269432c92309e7727b8dbe2ffad95a01586ed2f /src/map/skill.c
parentcdd0a876e5a310ced0c716cd66614a960375cb3b (diff)
downloadhercules-7e6ec6039ede7ccbe920cce0070df0d2dd05aef8.tar.gz
hercules-7e6ec6039ede7ccbe920cce0070df0d2dd05aef8.tar.bz2
hercules-7e6ec6039ede7ccbe920cce0070df0d2dd05aef8.tar.xz
hercules-7e6ec6039ede7ccbe920cce0070df0d2dd05aef8.zip
Fixed the three hits of EarthQuake not being calculated seperately.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13794 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/skill.c')
-rw-r--r--src/map/skill.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index 8fd559cba..f9d982922 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -2226,7 +2226,14 @@ static int skill_timerskill(int tid, unsigned int tick, int id, intptr data)
map_foreachinarea(skill_frostjoke_scream,skl->map,skl->x-range,skl->y-range,
skl->x+range,skl->y+range,BL_CHAR,src,skl->skill_id,skl->skill_lv,tick);
break;
-
+ case NPC_EARTHQUAKE:
+ skill_area_temp[0] = map_foreachinrange(skill_area_sub, src, skill_get_splash(skl->skill_id, skl->skill_lv), BL_CHAR, src, skl->skill_id, skl->skill_lv, tick, BCT_ENEMY, skill_area_sub_count);
+ skill_area_temp[1] = src->id;
+ skill_area_temp[2] = 0;
+ map_foreachinrange(skill_area_sub, src, skill_get_splash(skl->skill_id, skl->skill_lv), splash_target(src), src, skl->skill_id, skl->skill_lv, tick, skl->flag, skill_castend_damage_id);
+ if( skl->type > 1 )
+ skill_addtimerskill(src,tick+250,src->id,0,0,skl->skill_id,skl->skill_lv,skl->type-1,skl->flag);
+ break;
case WZ_WATERBALL:
if (!status_isdead(target))
skill_attack(BF_MAGIC,src,src,target,skl->skill_id,skl->skill_lv,tick,skl->flag);
@@ -2698,6 +2705,10 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, int
// recursive invocation of skill_castend_damage_id() with flag|1
map_foreachinrange(skill_area_sub, bl, skill_get_splash(skillid, skilllv), splash_target(src), src, skillid, skilllv, tick, flag|BCT_ENEMY|SD_SPLASH|1, skill_castend_damage_id);
+ //FIXME: Isn't EarthQuake a ground skill after all?
+ if( skillid == NPC_EARTHQUAKE )
+ skill_addtimerskill(src,tick+250,src->id,0,0,skillid,skilllv,2,flag|BCT_ENEMY|SD_SPLASH|1);
+
//FIXME: move this to skill_additional_effect or some such? [ultramage]
if( skillid == SM_MAGNUM || skillid == MS_MAGNUM )
{ // Initiate 10% of your damage becomes fire element.