diff options
author | cookiecrumbs <cookiecrumbs@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-07-22 22:55:15 +0000 |
---|---|---|
committer | cookiecrumbs <cookiecrumbs@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-07-22 22:55:15 +0000 |
commit | 19e9032d813623294128b6a2ad02037116c1d5b7 (patch) | |
tree | 5f2b46f353009675390514ea9496877ae7b58528 /src/map/skill.c | |
parent | 740f7131f70e75c76c41d0449eda16188655ee3e (diff) | |
download | hercules-19e9032d813623294128b6a2ad02037116c1d5b7.tar.gz hercules-19e9032d813623294128b6a2ad02037116c1d5b7.tar.bz2 hercules-19e9032d813623294128b6a2ad02037116c1d5b7.tar.xz hercules-19e9032d813623294128b6a2ad02037116c1d5b7.zip |
Fixed a bug where Storm Gust and other miscellaneous skills were not sending the packets to the client; prior to this revision, if you used, SG for example, you wouldn't see the mobs push until you @refresh. Storm Gust was also not pushing mobs as per the official mechanic (randomly) as it was pushing one cell backwards (prior to this revision). bugreport:6225
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16477 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/skill.c')
-rw-r--r-- | src/map/skill.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index 006018d47..15c03590b 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -2038,7 +2038,7 @@ int skill_blown(struct block_list* src, struct block_list* target, int count, in dy = -diry[direction]; } - return unit_blown(target, dx, dy, count, flag&0x1); + return unit_blown(target, dx, dy, count, flag); // send over the proper flag } @@ -2520,7 +2520,6 @@ int skill_attack (int attack_type, struct block_list* src, struct block_list *ds int direction = -1; // default switch(skillid) {//direction case MG_FIREWALL: - case WZ_STORMGUST: case PR_SANCTUARY: case SC_TRIANGLESHOT: case LG_OVERBRAND: @@ -2529,6 +2528,10 @@ int skill_attack (int attack_type, struct block_list* src, struct block_list *ds case EL_FIRE_MANTLE: direction = unit_getdir(bl);// backwards break; + // This ensures the storm randomly pushes instead of exactly a cell backwards per official mechanics. + case WZ_STORMGUST: + direction = rand()%8; + break; case WL_CRIMSONROCK: direction = map_calc_dir(bl,skill_area_temp[4],skill_area_temp[5]); break; |