Check for invalid Reject Sword cases (#7174)

* If the target is dead, break out of the remaining checks and calculations.
Thanks to @Lemongrass3110!
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
This commit is contained in:
Kanin Temsrisuk
2022-09-12 23:36:49 +07:00
committed by GitHub
parent f490aeb6fa
commit 421e49e1c4

View File

@@ -6099,8 +6099,10 @@ static void battle_calc_weapon_final_atk_modifiers(struct Damage* wd, struct blo
)
{
ATK_RATER(wd->damage, 50)
status_fix_damage(target,src,wd->damage,clif_damage(target,src,gettick(),0,0,wd->damage,0,DMG_NORMAL,0,false),ST_REJECTSWORD);
clif_skill_nodamage(target,target,ST_REJECTSWORD,tsc->data[SC_REJECTSWORD]->val1,1);
status_fix_damage(target,src,wd->damage,clif_damage(target,src,gettick(),0,0,wd->damage,0,DMG_NORMAL,0,false),ST_REJECTSWORD);
if (status_isdead(target))
return;
if( --(tsc->data[SC_REJECTSWORD]->val3) <= 0 )
status_change_end(target, SC_REJECTSWORD);
}