Fixed Focus Band only triggering at full HP, made more text translatable

This commit is contained in:
Maruno17
2024-09-30 21:44:36 +01:00
parent b80de83b0d
commit fc538a09f7
3 changed files with 17 additions and 20 deletions

View File

@@ -571,7 +571,6 @@ class Window_AdvancedTextPokemon < SpriteWindow_Base
end end
end end
# TODO: Why is this called 4 times per loop in pbMessageDisplay?
def update def update
super super
@pausesprite.update if @pausesprite&.visible @pausesprite.update if @pausesprite&.visible

View File

@@ -785,17 +785,17 @@ class Battle
when :HarshSun when :HarshSun
if !pbCheckGlobalAbility(:DESOLATELAND) if !pbCheckGlobalAbility(:DESOLATELAND)
@field.weather = :None @field.weather = :None
pbDisplay("The harsh sunlight faded!") pbDisplay(_INTL("The harsh sunlight faded!"))
end end
when :HeavyRain when :HeavyRain
if !pbCheckGlobalAbility(:PRIMORDIALSEA) if !pbCheckGlobalAbility(:PRIMORDIALSEA)
@field.weather = :None @field.weather = :None
pbDisplay("The heavy rain has lifted!") pbDisplay(_INTL("The heavy rain has lifted!"))
end end
when :StrongWinds when :StrongWinds
if !pbCheckGlobalAbility(:DELTASTREAM) if !pbCheckGlobalAbility(:DELTASTREAM)
@field.weather = :None @field.weather = :None
pbDisplay("The mysterious air current has dissipated!") pbDisplay(_INTL("The mysterious air current has dissipated!"))
end end
end end
if @field.weather != oldWeather if @field.weather != oldWeather

View File

@@ -209,23 +209,21 @@ class Battle::Move
elsif target.effects[PBEffects::Endure] elsif target.effects[PBEffects::Endure]
target.damageState.endured = true target.damageState.endured = true
damage -= 1 damage -= 1
elsif damage == target.totalhp elsif target.hasActiveAbility?(:STURDY) && !target.beingMoldBroken? && target.hp == target.totalhp
if target.hasActiveAbility?(:STURDY) && !target.beingMoldBroken? target.damageState.sturdy = true
target.damageState.sturdy = true damage -= 1
elsif target.hasActiveItem?(:FOCUSSASH) && target.hp == target.totalhp
target.damageState.focusSash = true
damage -= 1
elsif target.hasActiveItem?(:FOCUSBAND) && @battle.pbRandom(100) < 10
target.damageState.focusBand = true
damage -= 1
elsif Settings::AFFECTION_EFFECTS && @battle.internalBattle &&
target.pbOwnedByPlayer? && !target.mega?
chance = [0, 0, 0, 10, 15, 25][target.affection_level]
if chance > 0 && @battle.pbRandom(100) < chance
target.damageState.affection_endured = true
damage -= 1 damage -= 1
elsif target.hasActiveItem?(:FOCUSSASH) && target.hp == target.totalhp
target.damageState.focusSash = true
damage -= 1
elsif target.hasActiveItem?(:FOCUSBAND) && @battle.pbRandom(100) < 10
target.damageState.focusBand = true
damage -= 1
elsif Settings::AFFECTION_EFFECTS && @battle.internalBattle &&
target.pbOwnedByPlayer? && !target.mega?
chance = [0, 0, 0, 10, 15, 25][target.affection_level]
if chance > 0 && @battle.pbRandom(100) < chance
target.damageState.affection_endured = true
damage -= 1
end
end end
end end
end end