From c67b60e37515434f15c94ea5e80d331e58d9c52b Mon Sep 17 00:00:00 2001 From: Aleos Date: Mon, 29 Jun 2020 11:18:14 -0400 Subject: [PATCH] Corrects Power Swing and Axe Boomerang behavior (#5123) * Fixes #5109. * Power Swing should only cast Axe Boomerang when an axe is equipped. Thanks to @Haydrich! --- src/map/skill.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/map/skill.cpp b/src/map/skill.cpp index 57d36bc041..0b974e2228 100755 --- a/src/map/skill.cpp +++ b/src/map/skill.cpp @@ -1765,8 +1765,9 @@ int skill_additional_effect(struct block_list* src, struct block_list *bl, uint1 break; case NC_POWERSWING: sc_start(src,bl, SC_STUN, 10, skill_lv, skill_get_time(skill_id, skill_lv)); - if( rnd()%100 < 5*skill_lv ) - skill_castend_damage_id(src, bl, NC_AXEBOOMERANG, ((sd) ? pc_checkskill(sd, NC_AXEBOOMERANG) : skill_get_max(NC_AXEBOOMERANG)), tick, 1); + skill = pc_checkskill(sd, NC_AXEBOOMERANG); + if (sd && skill > 0 && (sd->status.weapon == W_1HAXE || sd->status.weapon == W_2HAXE) && rnd() % 100 < 5 * skill_lv) + skill_castend_damage_id(src, bl, NC_AXEBOOMERANG, skill, tick, 1); break; case GC_WEAPONCRUSH: skill_castend_nodamage_id(src,bl,skill_id,skill_lv,tick,BCT_ENEMY);