From f853816d63a260fa758c01ddeaad1c3b1a118dc9 Mon Sep 17 00:00:00 2001 From: Maruno17 Date: Sat, 8 Jan 2022 18:11:02 +0000 Subject: [PATCH] =?UTF-8?q?Fixed=20visual=20glitch=20where=20a=20Pok=C3=A9?= =?UTF-8?q?mon's=20HP=20would=20raise=20then=20lower=20if=20its=20substitu?= =?UTF-8?q?te=20took=20damage?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Data/Scripts/011_Battle/003_Move/002_Move_Usage.rb | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/Data/Scripts/011_Battle/003_Move/002_Move_Usage.rb b/Data/Scripts/011_Battle/003_Move/002_Move_Usage.rb index 082d96c7a..cbd3dcbf6 100644 --- a/Data/Scripts/011_Battle/003_Move/002_Move_Usage.rb +++ b/Data/Scripts/011_Battle/003_Move/002_Move_Usage.rb @@ -245,8 +245,14 @@ class Battle::Move targets.each do |b| next if b.damageState.unaffected || b.damageState.hpLost == 0 next if (side == 0 && b.opposes?(user)) || (side == 1 && !b.opposes?(user)) - oldHP = b.hp + b.damageState.hpLost - PBDebug.log("[Move damage] #{b.pbThis} lost #{b.damageState.hpLost} HP (#{oldHP}=>#{b.hp})") + oldHP = b.hp + if b.damageState.substitute + old_sub_hp = b.effects[PBEffects::Substitute] + b.damageState.hpLost + PBDebug.log("[Move damage] #{b.pbThis}'s substitute lost #{b.damageState.hpLost} HP (#{old_sub_hp}=>#{b.effects[PBEffects::Substitute]})") + else + oldHP += b.damageState.hpLost + PBDebug.log("[Move damage] #{b.pbThis} lost #{b.damageState.hpLost} HP (#{oldHP}=>#{b.hp})") + end effectiveness = 0 if Effectiveness.resistant?(b.damageState.typeMod) effectiveness = 1