summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/map/skill.c7
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;