diff --git a/Data/Scripts/011_Data/002_Hardcoded data/010_BattleWeather.rb b/Data/Scripts/011_Data/002_Hardcoded data/010_BattleWeather.rb new file mode 100644 index 000000000..35408ee3e --- /dev/null +++ b/Data/Scripts/011_Data/002_Hardcoded data/010_BattleWeather.rb @@ -0,0 +1,79 @@ +module GameData + class BattleWeather + attr_reader :id + attr_reader :real_name + attr_reader :animation + + DATA = {} + + extend ClassMethodsSymbols + include InstanceMethods + + def self.load; end + def self.save; end + + def initialize(hash) + @id = hash[:id] + @real_name = hash[:name] || "Unnamed" + @animation = hash[:animation] + end + + # @return [String] the translated name of this battle weather + def name + return _INTL(@real_name) + end + end +end + +GameData::BattleWeather.register({ + :id => :None, + :name => _INTL("None") +}) + +GameData::BattleWeather.register({ + :id => :Sun, + :name => _INTL("Sun"), + :animation => "Sun" +}) + +GameData::BattleWeather.register({ + :id => :Rain, + :name => _INTL("Rain"), + :animation => "Rain" +}) + +GameData::BattleWeather.register({ + :id => :Sandstorm, + :name => _INTL("Sandstorm"), + :animation => "Sandstorm" +}) + +GameData::BattleWeather.register({ + :id => :Hail, + :name => _INTL("Hail"), + :animation => "Hail" +}) + +GameData::BattleWeather.register({ + :id => :HarshSun, + :name => _INTL("Harsh Sun"), + :animation => "HarshSun" +}) + +GameData::BattleWeather.register({ + :id => :HeavyRain, + :name => _INTL("Heavy Rain"), + :animation => "HeavyRain" +}) + +GameData::BattleWeather.register({ + :id => :StrongWinds, + :name => _INTL("Strong Winds"), + :animation => "StrongWinds" +}) + +GameData::BattleWeather.register({ + :id => :ShadowSky, + :name => _INTL("Shadow Sky"), + :animation => "ShadowSky" +}) diff --git a/Data/Scripts/011_Data/002_Hardcoded data/010_PBWeather.rb b/Data/Scripts/011_Data/002_Hardcoded data/010_PBWeather.rb deleted file mode 100644 index c0131b1da..000000000 --- a/Data/Scripts/011_Data/002_Hardcoded data/010_PBWeather.rb +++ /dev/null @@ -1,32 +0,0 @@ -begin - module PBWeather - None = 0 - Sun = 1 - Rain = 2 - Sandstorm = 3 - Hail = 4 - HarshSun = 5 - HeavyRain = 6 - StrongWinds = 7 - ShadowSky = 8 - - def self.animationName(weather) - case weather - when Sun then return "Sun" - when Rain then return "Rain" - when Sandstorm then return "Sandstorm" - when Hail then return "Hail" - when HarshSun then return "HarshSun" - when HeavyRain then return "HeavyRain" - when StrongWinds then return "StrongWinds" - when ShadowSky then return "ShadowSky" - end - return nil - end - end - -rescue Exception - if $!.is_a?(SystemExit) || "#{$!.class}"=="Reset" - raise $! - end -end diff --git a/Data/Scripts/012_Battle/001_Battler/003_Battler_ChangeSelf.rb b/Data/Scripts/012_Battle/001_Battler/003_Battler_ChangeSelf.rb index ad4ab752c..8464261c8 100644 --- a/Data/Scripts/012_Battle/001_Battler/003_Battler_ChangeSelf.rb +++ b/Data/Scripts/012_Battle/001_Battler/003_Battler_ChangeSelf.rb @@ -170,9 +170,9 @@ class PokeBattle_Battler if hasActiveAbility?(:FORECAST) newForm = 0 case @battle.pbWeather - when PBWeather::Sun, PBWeather::HarshSun then newForm = 1 - when PBWeather::Rain, PBWeather::HeavyRain then newForm = 2 - when PBWeather::Hail then newForm = 3 + when :Sun, :HarshSun then newForm = 1 + when :Rain, :HeavyRain then newForm = 2 + when :Hail then newForm = 3 end if @form!=newForm @battle.pbShowAbilitySplash(self,true) @@ -187,7 +187,7 @@ class PokeBattle_Battler if isSpecies?(:CHERRIM) if hasActiveAbility?(:FLOWERGIFT) newForm = 0 - newForm = 1 if [PBWeather::Sun, PBWeather::HarshSun].include?(@battle.pbWeather) + newForm = 1 if [:Sun, :HarshSun].include?(@battle.pbWeather) if @form!=newForm @battle.pbShowAbilitySplash(self,true) @battle.pbHideAbilitySplash(self) diff --git a/Data/Scripts/012_Battle/001_Battler/004_Battler_Statuses.rb b/Data/Scripts/012_Battle/001_Battler/004_Battler_Statuses.rb index dbaacdb57..6d50e7078 100644 --- a/Data/Scripts/012_Battle/001_Battler/004_Battler_Statuses.rb +++ b/Data/Scripts/012_Battle/001_Battler/004_Battler_Statuses.rb @@ -52,8 +52,7 @@ class PokeBattle_Battler return false end # Weather immunity - if newStatus == :FROZEN && - (@battle.pbWeather==PBWeather::Sun || @battle.pbWeather==PBWeather::HarshSun) + if newStatus == :FROZEN && [:Sun, :HarshSun].include?(@battle.pbWeather) @battle.pbDisplay(_INTL("It doesn't affect {1}...",pbThis(true))) if showMessages return false end diff --git a/Data/Scripts/012_Battle/001_Battler/007_Battler_UseMove.rb b/Data/Scripts/012_Battle/001_Battler/007_Battler_UseMove.rb index d14a680a2..99ee63edc 100644 --- a/Data/Scripts/012_Battle/001_Battler/007_Battler_UseMove.rb +++ b/Data/Scripts/012_Battle/001_Battler/007_Battler_UseMove.rb @@ -323,8 +323,7 @@ class PokeBattle_Battler @battle.pbCommonAnimation("Powder",user) @battle.pbDisplay(_INTL("When the flame touched the powder on the Pokémon, it exploded!")) user.lastMoveFailed = true - w = @battle.pbWeather - if w!=PBWeather::Rain && w!=PBWeather::HeavyRain && user.takesIndirectDamage? + if ![:Rain, :HeavyRain].include?(@battle.pbWeather) && user.takesIndirectDamage? oldHP = user.hp user.pbReduceHP((user.totalhp/4.0).round,false) user.pbFaint if user.fainted? @@ -341,7 +340,7 @@ class PokeBattle_Battler # Primordial Sea, Desolate Land if move.damagingMove? case @battle.pbWeather - when PBWeather::HeavyRain + when :HeavyRain if move.calcType == :FIRE @battle.pbDisplay(_INTL("The Fire-type attack fizzled out in the heavy rain!")) user.lastMoveFailed = true @@ -349,7 +348,7 @@ class PokeBattle_Battler pbEndTurn(choice) return end - when PBWeather::HarshSun + when :HarshSun if move.calcType == :WATER @battle.pbDisplay(_INTL("The Water-type attack evaporated in the harsh sunlight!")) user.lastMoveFailed = true diff --git a/Data/Scripts/012_Battle/002_Move/003_Move_Usage_Calculations.rb b/Data/Scripts/012_Battle/002_Move/003_Move_Usage_Calculations.rb index d394cf257..539c6040a 100644 --- a/Data/Scripts/012_Battle/002_Move/003_Move_Usage_Calculations.rb +++ b/Data/Scripts/012_Battle/002_Move/003_Move_Usage_Calculations.rb @@ -46,7 +46,7 @@ class PokeBattle_Move PBTypes.ineffective?(moveType,defType) end # Delta Stream's weather - if @battle.pbWeather==PBWeather::StrongWinds + if @battle.pbWeather == :StrongWinds ret = PBTypeEffectiveness::NORMAL_EFFECTIVE_ONE if defType == :FLYING && PBTypes.superEffective?(moveType,defType) end @@ -373,19 +373,19 @@ class PokeBattle_Move end # Weather case @battle.pbWeather - when PBWeather::Sun, PBWeather::HarshSun + when :Sun, :HarshSun if type == :FIRE multipliers[:final_damage_multiplier] *= 1.5 elsif type == :WATER multipliers[:final_damage_multiplier] /= 2 end - when PBWeather::Rain, PBWeather::HeavyRain + when :Rain, :HeavyRain if type == :FIRE multipliers[:final_damage_multiplier] /= 2 elsif type == :WATER multipliers[:final_damage_multiplier] *= 1.5 end - when PBWeather::Sandstorm + when :Sandstorm if target.pbHasType?(:ROCK) && specialMove? && @function != "122" # Psyshock multipliers[:defense_multiplier] *= 1.5 end diff --git a/Data/Scripts/012_Battle/002_Move/004_Move_Effects_Generic.rb b/Data/Scripts/012_Battle/002_Move/004_Move_Effects_Generic.rb index 03ddcce04..eb6d55e49 100644 --- a/Data/Scripts/012_Battle/002_Move/004_Move_Effects_Generic.rb +++ b/Data/Scripts/012_Battle/002_Move/004_Move_Effects_Generic.rb @@ -596,17 +596,18 @@ end class PokeBattle_WeatherMove < PokeBattle_Move def initialize(battle,move) super - @weatherType = PBWeather::None + @weatherType = :None end + def pbMoveFailed?(user,targets) case @battle.field.weather - when PBWeather::HarshSun + when :HarshSun @battle.pbDisplay(_INTL("The extremely harsh sunlight was not lessened at all!")) return true - when PBWeather::HeavyRain + when :HeavyRain @battle.pbDisplay(_INTL("There is no relief from this heavy rain!")) return true - when PBWeather::StrongWinds + when :StrongWinds @battle.pbDisplay(_INTL("The mysterious air current blows on regardless!")) return true when @weatherType diff --git a/Data/Scripts/012_Battle/002_Move/005_Move_Effects_000-07F.rb b/Data/Scripts/012_Battle/002_Move/005_Move_Effects_000-07F.rb index ab7e30e36..617995bd0 100644 --- a/Data/Scripts/012_Battle/002_Move/005_Move_Effects_000-07F.rb +++ b/Data/Scripts/012_Battle/002_Move/005_Move_Effects_000-07F.rb @@ -131,9 +131,9 @@ class PokeBattle_Move_008 < PokeBattle_ParalysisMove def pbBaseAccuracy(user,target) case @battle.pbWeather - when PBWeather::Sun, PBWeather::HarshSun + when :Sun, :HarshSun return 50 - when PBWeather::Rain, PBWeather::HeavyRain + when :Rain, :HeavyRain return 0 end return super @@ -201,7 +201,7 @@ end #=============================================================================== class PokeBattle_Move_00D < PokeBattle_FreezeMove def pbBaseAccuracy(user,target) - return 0 if @battle.pbWeather==PBWeather::Hail + return 0 if @battle.pbWeather == :Hail return super end end @@ -308,9 +308,9 @@ class PokeBattle_Move_015 < PokeBattle_ConfuseMove def pbBaseAccuracy(user,target) case @battle.pbWeather - when PBWeather::Sun, PBWeather::HarshSun + when :Sun, :HarshSun return 50 - when PBWeather::Rain, PBWeather::HeavyRain + when :Rain, :HeavyRain return 0 end return super @@ -731,10 +731,7 @@ class PokeBattle_Move_028 < PokeBattle_MultiStatUpMove def pbOnStartUse(user,targets) increment = 1 - if @battle.pbWeather==PBWeather::Sun || - @battle.pbWeather==PBWeather::HarshSun - increment = 2 - end + increment = 2 if [:Sun, :HarshSun].include?(@battle.pbWeather) @statUp[1] = @statUp[3] = increment end end diff --git a/Data/Scripts/012_Battle/002_Move/006_Move_Effects_080-0FF.rb b/Data/Scripts/012_Battle/002_Move/006_Move_Effects_080-0FF.rb index 1d46422b1..826205626 100644 --- a/Data/Scripts/012_Battle/002_Move/006_Move_Effects_080-0FF.rb +++ b/Data/Scripts/012_Battle/002_Move/006_Move_Effects_080-0FF.rb @@ -105,20 +105,20 @@ end #=============================================================================== class PokeBattle_Move_087 < PokeBattle_Move def pbBaseDamage(baseDmg,user,target) - baseDmg *= 2 if @battle.pbWeather!=PBWeather::None + baseDmg *= 2 if @battle.pbWeather != :None return baseDmg end def pbBaseType(user) ret = :NORMAL case @battle.pbWeather - when PBWeather::Sun, PBWeather::HarshSun + when :Sun, :HarshSun ret = :FIRE if GameData::Type.exists?(:FIRE) - when PBWeather::Rain, PBWeather::HeavyRain + when :Rain, :HeavyRain ret = :WATER if GameData::Type.exists?(:WATER) - when PBWeather::Sandstorm + when :Sandstorm ret = :ROCK if GameData::Type.exists?(:ROCK) - when PBWeather::Hail + when :Hail ret = :ICE if GameData::Type.exists?(:ICE) end return ret @@ -2035,8 +2035,7 @@ class PokeBattle_Move_0C4 < PokeBattle_TwoTurnMove def pbIsChargingTurn?(user) ret = super if !user.effects[PBEffects::TwoTurnAttack] - w = @battle.pbWeather - if w==PBWeather::Sun || w==PBWeather::HarshSun + if [:Sun, :HarshSun].include?(@battle.pbWeather) @powerHerb = false @chargingTurn = true @damagingTurn = true @@ -2051,8 +2050,7 @@ class PokeBattle_Move_0C4 < PokeBattle_TwoTurnMove end def pbBaseDamageMultiplier(damageMult,user,target) - w = @battle.pbWeather - damageMult /= 2 if w>0 && w!=PBWeather::Sun && w!=PBWeather::HarshSun + damageMult /= 2 if ![:None, :Sun, :HarshSun].include?(@battle.pbWeather) return damageMult end end @@ -2533,9 +2531,9 @@ end class PokeBattle_Move_0D8 < PokeBattle_HealingMove def pbOnStartUse(user,targets) case @battle.pbWeather - when PBWeather::Sun, PBWeather::HarshSun + when :Sun, :HarshSun @healAmount = (user.totalhp*2/3.0).round - when PBWeather::None, PBWeather::StrongWinds + when :None, :StrongWinds @healAmount = (user.totalhp/2.0).round else @healAmount = (user.totalhp/4.0).round @@ -3717,6 +3715,6 @@ end class PokeBattle_Move_0FF < PokeBattle_WeatherMove def initialize(battle,move) super - @weatherType = PBWeather::Sun + @weatherType = :Sun end end diff --git a/Data/Scripts/012_Battle/002_Move/007_Move_Effects_100-17F.rb b/Data/Scripts/012_Battle/002_Move/007_Move_Effects_100-17F.rb index d9f4d64d1..52bde08fd 100644 --- a/Data/Scripts/012_Battle/002_Move/007_Move_Effects_100-17F.rb +++ b/Data/Scripts/012_Battle/002_Move/007_Move_Effects_100-17F.rb @@ -4,7 +4,7 @@ class PokeBattle_Move_100 < PokeBattle_WeatherMove def initialize(battle,move) super - @weatherType = PBWeather::Rain + @weatherType = :Rain end end @@ -16,7 +16,7 @@ end class PokeBattle_Move_101 < PokeBattle_WeatherMove def initialize(battle,move) super - @weatherType = PBWeather::Sandstorm + @weatherType = :Sandstorm end end @@ -28,7 +28,7 @@ end class PokeBattle_Move_102 < PokeBattle_WeatherMove def initialize(battle,move) super - @weatherType = PBWeather::Hail + @weatherType = :Hail end end @@ -2210,7 +2210,7 @@ end #=============================================================================== class PokeBattle_Move_167 < PokeBattle_Move def pbMoveFailed?(user,targets) - if @battle.pbWeather!=PBWeather::Hail + if @battle.pbWeather != :Hail @battle.pbDisplay(_INTL("But it failed!")) return true end @@ -2382,7 +2382,7 @@ end #=============================================================================== class PokeBattle_Move_16D < PokeBattle_HealingMove def pbHealAmount(user) - return (user.totalhp*2/3.0).round if @battle.pbWeather==PBWeather::Sandstorm + return (user.totalhp*2/3.0).round if @battle.pbWeather == :Sandstorm return (user.totalhp/2.0).round end end diff --git a/Data/Scripts/012_Battle/003_Battle/002_PokeBattle_Battle.rb b/Data/Scripts/012_Battle/003_Battle/002_PokeBattle_Battle.rb index 33af922c7..12605e95b 100644 --- a/Data/Scripts/012_Battle/003_Battle/002_PokeBattle_Battle.rb +++ b/Data/Scripts/012_Battle/003_Battle/002_PokeBattle_Battle.rb @@ -642,7 +642,7 @@ class PokeBattle_Battle # Returns the effective weather (note that weather effects can be negated) def pbWeather - eachBattler { |b| return PBWeather::None if b.hasActiveAbility?([:CLOUDNINE,:AIRLOCK]) } + eachBattler { |b| return :None if b.hasActiveAbility?([:CLOUDNINE, :AIRLOCK]) } return @field.weather end @@ -656,17 +656,18 @@ class PokeBattle_Battle @field.weather,duration,user,self) end @field.weatherDuration = duration - pbCommonAnimation(PBWeather.animationName(@field.weather)) if showAnim + weather_data = GameData::BattleWeather.try_get(@field.weather) + pbCommonAnimation(weather_data.animation) if showAnim && weather_data pbHideAbilitySplash(user) if user case @field.weather - when PBWeather::Sun then pbDisplay(_INTL("The sunlight turned harsh!")) - when PBWeather::Rain then pbDisplay(_INTL("It started to rain!")) - when PBWeather::Sandstorm then pbDisplay(_INTL("A sandstorm brewed!")) - when PBWeather::Hail then pbDisplay(_INTL("It started to hail!")) - when PBWeather::HarshSun then pbDisplay(_INTL("The sunlight turned extremely harsh!")) - when PBWeather::HeavyRain then pbDisplay(_INTL("A heavy rain began to fall!")) - when PBWeather::StrongWinds then pbDisplay(_INTL("Mysterious strong winds are protecting Flying-type Pokémon!")) - when PBWeather::ShadowSky then pbDisplay(_INTL("A shadow sky appeared!")) + when :Sun then pbDisplay(_INTL("The sunlight turned harsh!")) + when :Rain then pbDisplay(_INTL("It started to rain!")) + when :Sandstorm then pbDisplay(_INTL("A sandstorm brewed!")) + when :Hail then pbDisplay(_INTL("It started to hail!")) + when :HarshSun then pbDisplay(_INTL("The sunlight turned extremely harsh!")) + when :HeavyRain then pbDisplay(_INTL("A heavy rain began to fall!")) + when :StrongWinds then pbDisplay(_INTL("Mysterious strong winds are protecting Flying-type Pokémon!")) + when :ShadowSky then pbDisplay(_INTL("A shadow sky appeared!")) end # Check for end of primordial weather, and weather-triggered form changes eachBattler { |b| b.pbCheckFormOnWeatherChange } @@ -677,19 +678,19 @@ class PokeBattle_Battle oldWeather = @field.weather # End Primordial Sea, Desolate Land, Delta Stream case @field.weather - when PBWeather::HarshSun + when :HarshSun if !pbCheckGlobalAbility(:DESOLATELAND) - @field.weather = PBWeather::None + @field.weather = :None pbDisplay("The harsh sunlight faded!") end - when PBWeather::HeavyRain + when :HeavyRain if !pbCheckGlobalAbility(:PRIMORDIALSEA) - @field.weather = PBWeather::None + @field.weather = :None pbDisplay("The heavy rain has lifted!") end - when PBWeather::StrongWinds + when :StrongWinds if !pbCheckGlobalAbility(:DELTASTREAM) - @field.weather = PBWeather::None + @field.weather = :None pbDisplay("The mysterious air current has dissipated!") end end @@ -697,7 +698,7 @@ class PokeBattle_Battle # Check for form changes caused by the weather changing eachBattler { |b| b.pbCheckFormOnWeatherChange } # Start up the default weather - pbStartWeather(nil,@field.defaultWeather) if @field.defaultWeather!=PBWeather::None + pbStartWeather(nil,@field.defaultWeather) if @field.defaultWeather != :None end end diff --git a/Data/Scripts/012_Battle/003_Battle/003_Battle_StartAndEnd.rb b/Data/Scripts/012_Battle/003_Battle/003_Battle_StartAndEnd.rb index b6489ef05..d685d54ca 100644 --- a/Data/Scripts/012_Battle/003_Battle/003_Battle_StartAndEnd.rb +++ b/Data/Scripts/012_Battle/003_Battle/003_Battle_StartAndEnd.rb @@ -271,16 +271,17 @@ class PokeBattle_Battle # Show trainers on both sides sending out Pokémon pbStartBattleSendOut(sendOuts) # Weather announcement - pbCommonAnimation(PBWeather.animationName(@field.weather)) + weather_data = GameData::BattleWeather.try_get(@field.weather) + pbCommonAnimation(weather_data.animation) if weather_data case @field.weather - when PBWeather::Sun then pbDisplay(_INTL("The sunlight is strong.")) - when PBWeather::Rain then pbDisplay(_INTL("It is raining.")) - when PBWeather::Sandstorm then pbDisplay(_INTL("A sandstorm is raging.")) - when PBWeather::Hail then pbDisplay(_INTL("Hail is falling.")) - when PBWeather::HarshSun then pbDisplay(_INTL("The sunlight is extremely harsh.")) - when PBWeather::HeavyRain then pbDisplay(_INTL("It is raining heavily.")) - when PBWeather::StrongWinds then pbDisplay(_INTL("The wind is strong.")) - when PBWeather::ShadowSky then pbDisplay(_INTL("The sky is shadowy.")) + when :Sun then pbDisplay(_INTL("The sunlight is strong.")) + when :Rain then pbDisplay(_INTL("It is raining.")) + when :Sandstorm then pbDisplay(_INTL("A sandstorm is raging.")) + when :Hail then pbDisplay(_INTL("Hail is falling.")) + when :HarshSun then pbDisplay(_INTL("The sunlight is extremely harsh.")) + when :HeavyRain then pbDisplay(_INTL("It is raining heavily.")) + when :StrongWinds then pbDisplay(_INTL("The wind is strong.")) + when :ShadowSky then pbDisplay(_INTL("The sky is shadowy.")) end # Terrain announcement terrain_data = GameData::BattleTerrain.try_get(@field.terrain) diff --git a/Data/Scripts/012_Battle/003_Battle/012_Battle_Phase_EndOfRound.rb b/Data/Scripts/012_Battle/003_Battle/012_Battle_Phase_EndOfRound.rb index 1ef4f5cdc..ab90bcf9e 100644 --- a/Data/Scripts/012_Battle/003_Battle/012_Battle_Phase_EndOfRound.rb +++ b/Data/Scripts/012_Battle/003_Battle/012_Battle_Phase_EndOfRound.rb @@ -40,35 +40,31 @@ class PokeBattle_Battle # Weather wears off if @field.weatherDuration==0 case @field.weather - when PBWeather::Sun - pbDisplay(_INTL("The sunlight faded.")) - when PBWeather::Rain - pbDisplay(_INTL("The rain stopped.")) - when PBWeather::Sandstorm - pbDisplay(_INTL("The sandstorm subsided.")) - when PBWeather::Hail - pbDisplay(_INTL("The hail stopped.")) - when PBWeather::ShadowSky - pbDisplay(_INTL("The shadow sky faded.")) + when :Sun then pbDisplay(_INTL("The sunlight faded.")) + when :Rain then pbDisplay(_INTL("The rain stopped.")) + when :Sandstorm then pbDisplay(_INTL("The sandstorm subsided.")) + when :Hail then pbDisplay(_INTL("The hail stopped.")) + when :ShadowSky then pbDisplay(_INTL("The shadow sky faded.")) end - @field.weather = PBWeather::None + @field.weather = :None # Check for form changes caused by the weather changing eachBattler { |b| b.pbCheckFormOnWeatherChange } # Start up the default weather - pbStartWeather(nil,@field.defaultWeather) if @field.defaultWeather!=PBWeather::None - return if @field.weather==PBWeather::None + pbStartWeather(nil,@field.defaultWeather) if @field.defaultWeather != :None + return if @field.weather == :None end # Weather continues - pbCommonAnimation(PBWeather.animationName(@field.weather)) + weather_data = GameData::BattleWeather.try_get(@field.weather) + pbCommonAnimation(weather_data.animation) if weather_data case @field.weather -# when PBWeather::Sun then pbDisplay(_INTL("The sunlight is strong.")) -# when PBWeather::Rain then pbDisplay(_INTL("Rain continues to fall.")) - when PBWeather::Sandstorm then pbDisplay(_INTL("The sandstorm is raging.")) - when PBWeather::Hail then pbDisplay(_INTL("The hail is crashing down.")) -# when PBWeather::HarshSun then pbDisplay(_INTL("The sunlight is extremely harsh.")) -# when PBWeather::HeavyRain then pbDisplay(_INTL("It is raining heavily.")) -# when PBWeather::StrongWinds then pbDisplay(_INTL("The wind is strong.")) - when PBWeather::ShadowSky then pbDisplay(_INTL("The shadow sky continues.")) +# when :Sun then pbDisplay(_INTL("The sunlight is strong.")) +# when :Rain then pbDisplay(_INTL("Rain continues to fall.")) + when :Sandstorm then pbDisplay(_INTL("The sandstorm is raging.")) + when :Hail then pbDisplay(_INTL("The hail is crashing down.")) +# when :HarshSun then pbDisplay(_INTL("The sunlight is extremely harsh.")) +# when :HeavyRain then pbDisplay(_INTL("It is raining heavily.")) +# when :StrongWinds then pbDisplay(_INTL("The wind is strong.")) + when :ShadowSky then pbDisplay(_INTL("The shadow sky continues.")) end # Effects due to weather curWeather = pbWeather @@ -81,21 +77,21 @@ class PokeBattle_Battle # Weather damage # NOTE: case curWeather - when PBWeather::Sandstorm + when :Sandstorm next if !b.takesSandstormDamage? pbDisplay(_INTL("{1} is buffeted by the sandstorm!",b.pbThis)) @scene.pbDamageAnimation(b) b.pbReduceHP(b.totalhp/16,false) b.pbItemHPHealCheck b.pbFaint if b.fainted? - when PBWeather::Hail + when :Hail next if !b.takesHailDamage? pbDisplay(_INTL("{1} is buffeted by the hail!",b.pbThis)) @scene.pbDamageAnimation(b) b.pbReduceHP(b.totalhp/16,false) b.pbItemHPHealCheck b.pbFaint if b.fainted? - when PBWeather::ShadowSky + when :ShadowSky next if !b.takesShadowSkyDamage? pbDisplay(_INTL("{1} is hurt by the shadow sky!",b.pbThis)) @scene.pbDamageAnimation(b) @@ -264,7 +260,7 @@ class PokeBattle_Battle curWeather = pbWeather for side in 0...2 next if sides[side].effects[PBEffects::SeaOfFire]==0 - next if curWeather==PBWeather::Rain || curWeather==PBWeather::HeavyRain + next if [:Rain, :HeavyRain].include?(curWeather) @battle.pbCommonAnimation("SeaOfFire") if side==0 @battle.pbCommonAnimation("SeaOfFireOpp") if side==1 priority.each do |b| diff --git a/Data/Scripts/012_Battle/004_AI/005_AI_Move_EffectScores.rb b/Data/Scripts/012_Battle/004_AI/005_AI_Move_EffectScores.rb index 3a2624b97..b00421bf9 100644 --- a/Data/Scripts/012_Battle/004_AI/005_AI_Move_EffectScores.rb +++ b/Data/Scripts/012_Battle/004_AI/005_AI_Move_EffectScores.rb @@ -455,8 +455,7 @@ class PokeBattle_AI end end if move.function=="028" # Growth - score += 20 if @battle.pbWeather==PBWeather::Sun || - @battle.pbWeather==PBWeather::HarshSun + score += 20 if [:Sun, :HarshSun].include?(@battle.pbWeather) end end #--------------------------------------------------------------------------- @@ -1854,9 +1853,9 @@ class PokeBattle_AI score -= 90 else case @battle.pbWeather - when PBWeather::Sun, PBWeather::HarshSun + when :Sun, :HarshSun score += 30 - when PBWeather::None + when :None else score -= 30 end @@ -2143,7 +2142,7 @@ class PokeBattle_AI if @battle.pbCheckGlobalAbility(:AIRLOCK) || @battle.pbCheckGlobalAbility(:CLOUDNINE) score -= 90 - elsif @battle.pbWeather==PBWeather::Sun + elsif @battle.pbWeather == :Sun score -= 90 else user.eachMove do |m| @@ -2156,7 +2155,7 @@ class PokeBattle_AI if @battle.pbCheckGlobalAbility(:AIRLOCK) || @battle.pbCheckGlobalAbility(:CLOUDNINE) score -= 90 - elsif @battle.pbWeather==PBWeather::Rain + elsif @battle.pbWeather == :Rain score -= 90 else user.eachMove do |m| @@ -2169,7 +2168,7 @@ class PokeBattle_AI if @battle.pbCheckGlobalAbility(:AIRLOCK) || @battle.pbCheckGlobalAbility(:CLOUDNINE) score -= 90 - elsif @battle.pbWeather==PBWeather::Sandstorm + elsif @battle.pbWeather == :Sandstorm score -= 90 end #--------------------------------------------------------------------------- @@ -2177,7 +2176,7 @@ class PokeBattle_AI if @battle.pbCheckGlobalAbility(:AIRLOCK) || @battle.pbCheckGlobalAbility(:CLOUDNINE) score -= 90 - elsif @battle.pbWeather==PBWeather::Hail + elsif @battle.pbWeather == :Hail score -= 90 end #--------------------------------------------------------------------------- @@ -2506,7 +2505,7 @@ class PokeBattle_AI if @battle.pbCheckGlobalAbility(:AIRLOCK) || @battle.pbCheckGlobalAbility(:CLOUDNINE) score -= 90 - elsif @battle.pbWeather==PBWeather::ShadowSky + elsif @battle.pbWeather == :ShadowSky score -= 90 end #--------------------------------------------------------------------------- @@ -2913,7 +2912,7 @@ class PokeBattle_AI when "166" #--------------------------------------------------------------------------- when "167" - if user.pbOwnSide.effects[PBEffects::AuroraVeil]>0 || @battle.pbWeather!=PBWeather::Hail + if user.pbOwnSide.effects[PBEffects::AuroraVeil]>0 || @battle.pbWeather != :Hail score -= 90 else score += 40 @@ -2972,7 +2971,7 @@ class PokeBattle_AI else score += 50 score -= user.hp*100/user.totalhp - score += 30 if @battle.pbWeather==PBWeather::Sandstorm + score += 30 if @battle.pbWeather == :Sandstorm end #--------------------------------------------------------------------------- when "16E" diff --git a/Data/Scripts/012_Battle/004_AI/006_AI_Move_Utilities.rb b/Data/Scripts/012_Battle/004_AI/006_AI_Move_Utilities.rb index 22c1ca0f9..a64fdb292 100644 --- a/Data/Scripts/012_Battle/004_AI/006_AI_Move_Utilities.rb +++ b/Data/Scripts/012_Battle/004_AI/006_AI_Move_Utilities.rb @@ -44,7 +44,7 @@ class PokeBattle_AI PBTypes.ineffective?(moveType,defType) end # Delta Stream's weather - if @battle.pbWeather==PBWeather::StrongWinds + if @battle.pbWeather == :StrongWinds ret = PBTypeEffectiveness::NORMAL_EFFECTIVE_ONE if defType == :FLYING && PBTypes.superEffective?(moveType,defType) end @@ -432,19 +432,19 @@ class PokeBattle_AI # Weather if skill>=PBTrainerAI.mediumSkill case @battle.pbWeather - when PBWeather::Sun, PBWeather::HarshSun + when :Sun, :HarshSun if type == :FIRE multipliers[:final_damage_multiplier] *= 1.5 elsif type == :WATER multipliers[:final_damage_multiplier] /= 2 end - when PBWeather::Rain, PBWeather::HeavyRain + when :Rain, :HeavyRain if type == :FIRE multipliers[:final_damage_multiplier] /= 2 elsif type == :WATER multipliers[:final_damage_multiplier] *= 1.5 end - when PBWeather::Sandstorm + when :Sandstorm if target.pbHasType?(:ROCK) && move.specialMove?(type) && move.function != "122" # Psyshock multipliers[:defense_multiplier] *= 1.5 end diff --git a/Data/Scripts/012_Battle/006_BattleHandlers.rb b/Data/Scripts/012_Battle/006_BattleHandlers.rb index 334c99033..64de7c05a 100644 --- a/Data/Scripts/012_Battle/006_BattleHandlers.rb +++ b/Data/Scripts/012_Battle/006_BattleHandlers.rb @@ -588,10 +588,7 @@ def pbBattleTypeWeakingBerry(type,moveType,target,mults) end def pbBattleWeatherAbility(weather,battler,battle,ignorePrimal=false) - return if !ignorePrimal && - (battle.field.weather==PBWeather::HarshSun || - battle.field.weather==PBWeather::HeavyRain || - battle.field.weather==PBWeather::StrongWinds) + return if !ignorePrimal && [:HarshSun, :HeavyRain, :StrongWinds].include?(battle.field.weather) return if battle.field.weather==weather battle.pbShowAbilitySplash(battler) if !PokeBattle_SceneConstants::USE_ABILITY_SPLASH @@ -599,9 +596,7 @@ def pbBattleWeatherAbility(weather,battler,battle,ignorePrimal=false) end fixedDuration = false fixedDuration = true if Settings::FIXED_DURATION_WEATHER_FROM_ABILITY && - weather != PBWeather::HarshSun && - weather != PBWeather::HeavyRain && - weather != PBWeather::StrongWinds + ![:HarshSun, :HeavyRain, :StrongWinds].include?(weather) battle.pbStartWeather(battler,weather,fixedDuration) # NOTE: The ability splash is hidden again in def pbStartWeather. end diff --git a/Data/Scripts/012_Battle/006_Other battle types/002_PokeBattle_SafariZone.rb b/Data/Scripts/012_Battle/006_Other battle types/002_PokeBattle_SafariZone.rb index ebc3757b5..cbb5e6a73 100644 --- a/Data/Scripts/012_Battle/006_Other battle types/002_PokeBattle_SafariZone.rb +++ b/Data/Scripts/012_Battle/006_Other battle types/002_PokeBattle_SafariZone.rb @@ -322,7 +322,7 @@ class PokeBattle_SafariZone @backdropBase = nil @time = 0 @environment = :None # e.g. Tall grass, cave, still water - @weather = PBWeather::None + @weather = :None @decision = 0 @caughtPokemon = [] @player = [player] @@ -426,7 +426,8 @@ class PokeBattle_SafariZone @scene.pbStartBattle(self) pbDisplayPaused(_INTL("Wild {1} appeared!",pkmn.name)) @scene.pbSafariStart - @scene.pbCommonAnimation(PBWeather.animationName(@weather)) + weather_data = GameData::BattleWeather.try_get(@weather) + @scene.pbCommonAnimation(weather_data.animation) if weather_data safariBall = GameData::Item.get(:SAFARIBALL).id catch_rate = pkmn.species_data.catch_rate catchFactor = (catch_rate*100)/1275 @@ -485,7 +486,8 @@ class PokeBattle_SafariZone pbDisplay(_INTL("{1} is watching carefully!",pkmn.name)) end # Weather continues - @scene.pbCommonAnimation(PBWeather.animationName(@weather)) + weather_data = GameData::BattleWeather.try_get(@weather) + @scene.pbCommonAnimation(weather_data.animation) if weather_data end break if @decision > 0 end diff --git a/Data/Scripts/012_Battle/007_BattleHandlers_Abilities.rb b/Data/Scripts/012_Battle/007_BattleHandlers_Abilities.rb index 1bcfe498c..eb5624e9f 100644 --- a/Data/Scripts/012_Battle/007_BattleHandlers_Abilities.rb +++ b/Data/Scripts/012_Battle/007_BattleHandlers_Abilities.rb @@ -4,8 +4,7 @@ BattleHandlers::SpeedCalcAbility.add(:CHLOROPHYLL, proc { |ability,battler,mult| - w = battler.battle.pbWeather - next mult*2 if w==PBWeather::Sun || w==PBWeather::HarshSun + next mult * 2 if [:Sun, :HarshSun].include?(battler.battle.pbWeather) } ) @@ -17,8 +16,7 @@ BattleHandlers::SpeedCalcAbility.add(:QUICKFEET, BattleHandlers::SpeedCalcAbility.add(:SANDRUSH, proc { |ability,battler,mult| - w = battler.battle.pbWeather - next mult*2 if w==PBWeather::Sandstorm + next mult * 2 if [:Sandstorm].include?(battler.battle.pbWeather) } ) @@ -30,8 +28,7 @@ BattleHandlers::SpeedCalcAbility.add(:SLOWSTART, BattleHandlers::SpeedCalcAbility.add(:SLUSHRUSH, proc { |ability,battler,mult| - w = battler.battle.pbWeather - next mult*2 if w==PBWeather::Hail + next mult * 2 if [:Hail].include?(battler.battle.pbWeather) } ) @@ -43,8 +40,7 @@ BattleHandlers::SpeedCalcAbility.add(:SURGESURFER, BattleHandlers::SpeedCalcAbility.add(:SWIFTSWIM, proc { |ability,battler,mult| - w = battler.battle.pbWeather - next mult*2 if w==PBWeather::Rain || w==PBWeather::HeavyRain + next mult * 2 if [:Rain, :HeavyRain].include?(battler.battle.pbWeather) } ) @@ -151,8 +147,7 @@ BattleHandlers::StatusImmunityAbility.copy(:INSOMNIA,:SWEETVEIL,:VITALSPIRIT) BattleHandlers::StatusImmunityAbility.add(:LEAFGUARD, proc { |ability,battler,status| - w = battler.battle.pbWeather - next true if w==PBWeather::Sun || w==PBWeather::HarshSun + next true if [:Sun, :HarshSun].include?(battler.battle.pbWeather) } ) @@ -830,17 +825,13 @@ BattleHandlers::AccuracyCalcTargetAbility.add(:NOGUARD, BattleHandlers::AccuracyCalcTargetAbility.add(:SANDVEIL, proc { |ability,mods,user,target,move,type| - if target.battle.pbWeather==PBWeather::Sandstorm - mods[:evasion_multiplier] *= 1.25 - end + mods[:evasion_multiplier] *= 1.25 if target.battle.pbWeather == :Sandstorm } ) BattleHandlers::AccuracyCalcTargetAbility.add(:SNOWCLOAK, proc { |ability,mods,user,target,move,type| - if target.battle.pbWeather==PBWeather::Hail - mods[:evasion_multiplier] *= 1.25 - end + mods[:evasion_multiplier] *= 1.25 if target.battle.pbWeather == :Hail } ) @@ -924,8 +915,7 @@ BattleHandlers::DamageCalcUserAbility.add(:FLASHFIRE, BattleHandlers::DamageCalcUserAbility.add(:FLOWERGIFT, proc { |ability,user,target,move,mults,baseDmg,type| - w = user.battle.pbWeather - if move.physicalMove? && (w==PBWeather::Sun || w==PBWeather::HarshSun) + if move.physicalMove? && [:Sun, :HarshSun].include?(user.battle.pbWeather) mults[:attack_multiplier] *= 1.5 end } @@ -1014,7 +1004,7 @@ BattleHandlers::DamageCalcUserAbility.add(:RIVALRY, BattleHandlers::DamageCalcUserAbility.add(:SANDFORCE, proc { |ability,user,target,move,mults,baseDmg,type| - if user.battle.pbWeather==PBWeather::Sandstorm && + if user.battle.pbWeather == :Sandstorm && [:ROCK, :GROUND, :STEEL].include?(type) mults[:base_damage_multiplier] *= 1.3 end @@ -1035,8 +1025,7 @@ BattleHandlers::DamageCalcUserAbility.add(:SLOWSTART, BattleHandlers::DamageCalcUserAbility.add(:SOLARPOWER, proc { |ability,user,target,move,mults,baseDmg,type| - w = user.battle.pbWeather - if move.specialMove? && (w == PBWeather::Sun || w == PBWeather::HarshSun) + if move.specialMove? && [:Sun, :HarshSun].include?(user.battle.pbWeather) mults[:attack_multiplier] *= 1.5 end } @@ -1132,8 +1121,7 @@ BattleHandlers::DamageCalcUserAllyAbility.add(:BATTERY, BattleHandlers::DamageCalcUserAllyAbility.add(:FLOWERGIFT, proc { |ability,user,target,move,mults,baseDmg,type| - w = user.battle.pbWeather - if move.physicalMove? && (w == PBWeather::Sun || w == PBWeather::HarshSun) + if move.physicalMove? && [:Sun, :HarshSun].include?(user.battle.pbWeather) mults[:attack_multiplier] *= 1.5 end } @@ -1161,8 +1149,7 @@ BattleHandlers::DamageCalcTargetAbility.copy(:FILTER,:SOLIDROCK) BattleHandlers::DamageCalcTargetAbility.add(:FLOWERGIFT, proc { |ability,user,target,move,mults,baseDmg,type| - w = user.battle.pbWeather - if move.specialMove? && (w == PBWeather::Sun || w == PBWeather::HarshSun) + if move.specialMove? && [:Sun, :HarshSun].include?(user.battle.pbWeather) mults[:defense_multiplier] *= 1.5 end } @@ -1247,8 +1234,7 @@ BattleHandlers::DamageCalcTargetAbilityNonIgnorable.add(:SHADOWSHIELD, BattleHandlers::DamageCalcTargetAllyAbility.add(:FLOWERGIFT, proc { |ability,user,target,move,mults,baseDmg,type| - w = user.battle.pbWeather - if move.specialMove? && (w == PBWeather::Sun || w == PBWeather::HarshSun) + if move.specialMove? && [:Sun, :HarshSun].include?(user.battle.pbWeather) mults[:defense_multiplier] *= 1.5 end } @@ -1778,14 +1764,14 @@ BattleHandlers::TargetAbilityAfterMoveUse.add(:PICKPOCKET, BattleHandlers::EORWeatherAbility.add(:DRYSKIN, proc { |ability,weather,battler,battle| case weather - when PBWeather::Sun, PBWeather::HarshSun + when :Sun, :HarshSun battle.pbShowAbilitySplash(battler) battle.scene.pbDamageAnimation(battler) battler.pbReduceHP(battler.totalhp/8,false) battle.pbDisplay(_INTL("{1} was hurt by the sunlight!",battler.pbThis)) battle.pbHideAbilitySplash(battler) battler.pbItemHPHealCheck - when PBWeather::Rain, PBWeather::HeavyRain + when :Rain, :HeavyRain next if !battler.canHeal? battle.pbShowAbilitySplash(battler) battler.pbRecoverHP(battler.totalhp/8) @@ -1801,7 +1787,7 @@ BattleHandlers::EORWeatherAbility.add(:DRYSKIN, BattleHandlers::EORWeatherAbility.add(:ICEBODY, proc { |ability,weather,battler,battle| - next unless weather==PBWeather::Hail + next unless weather == :Hail next if !battler.canHeal? battle.pbShowAbilitySplash(battler) battler.pbRecoverHP(battler.totalhp/16) @@ -1816,7 +1802,7 @@ BattleHandlers::EORWeatherAbility.add(:ICEBODY, BattleHandlers::EORWeatherAbility.add(:RAINDISH, proc { |ability,weather,battler,battle| - next unless weather==PBWeather::Rain || weather==PBWeather::HeavyRain + next unless [:Rain, :HeavyRain].include?(weather) next if !battler.canHeal? battle.pbShowAbilitySplash(battler) battler.pbRecoverHP(battler.totalhp/16) @@ -1831,7 +1817,7 @@ BattleHandlers::EORWeatherAbility.add(:RAINDISH, BattleHandlers::EORWeatherAbility.add(:SOLARPOWER, proc { |ability,weather,battler,battle| - next unless weather==PBWeather::Sun || weather==PBWeather::HarshSun + next unless [:Sun, :HarshSun].include?(weather) battle.pbShowAbilitySplash(battler) battle.scene.pbDamageAnimation(battler) battler.pbReduceHP(battler.totalhp/8,false) @@ -1875,8 +1861,7 @@ BattleHandlers::EORHealingAbility.add(:HEALER, BattleHandlers::EORHealingAbility.add(:HYDRATION, proc { |ability,battler,battle| next if battler.status == :NONE - curWeather = battle.pbWeather - next if curWeather!=PBWeather::Rain && curWeather!=PBWeather::HeavyRain + next if ![:Rain, :HeavyRain].include?(battle.pbWeather) battle.pbShowAbilitySplash(battler) oldStatus = battler.status battler.pbCureStatus(PokeBattle_SceneConstants::USE_ABILITY_SPLASH) @@ -1990,8 +1975,7 @@ BattleHandlers::EORGainItemAbility.add(:HARVEST, proc { |ability,battler,battle| next if battler.item next if !battler.recycleItem || !GameData::Item.get(battler.recycleItem).is_berry? - curWeather = battle.pbWeather - if curWeather!=PBWeather::Sun && curWeather!=PBWeather::HarshSun + if ![:Sun, :HarshSun].include?(battle.pbWeather) next unless battle.pbRandom(100)<50 end battle.pbShowAbilitySplash(battler) @@ -2137,13 +2121,13 @@ BattleHandlers::AbilityOnSwitchIn.add(:DARKAURA, BattleHandlers::AbilityOnSwitchIn.add(:DELTASTREAM, proc { |ability,battler,battle| - pbBattleWeatherAbility(PBWeather::StrongWinds,battler,battle,true) + pbBattleWeatherAbility(:StrongWinds, battler, battle, true) } ) BattleHandlers::AbilityOnSwitchIn.add(:DESOLATELAND, proc { |ability,battler,battle| - pbBattleWeatherAbility(PBWeather::HarshSun,battler,battle,true) + pbBattleWeatherAbility(:HarshSun, battler, battle, true) } ) @@ -2161,13 +2145,13 @@ BattleHandlers::AbilityOnSwitchIn.add(:DOWNLOAD, BattleHandlers::AbilityOnSwitchIn.add(:DRIZZLE, proc { |ability,battler,battle| - pbBattleWeatherAbility(PBWeather::Rain,battler,battle) + pbBattleWeatherAbility(:Rain, battler, battle) } ) BattleHandlers::AbilityOnSwitchIn.add(:DROUGHT, proc { |ability,battler,battle| - pbBattleWeatherAbility(PBWeather::Sun,battler,battle) + pbBattleWeatherAbility(:Sun, battler, battle) } ) @@ -2317,7 +2301,7 @@ BattleHandlers::AbilityOnSwitchIn.add(:PRESSURE, BattleHandlers::AbilityOnSwitchIn.add(:PRIMORDIALSEA, proc { |ability,battler,battle| - pbBattleWeatherAbility(PBWeather::HeavyRain,battler,battle,true) + pbBattleWeatherAbility(:HeavyRain, battler, battle, true) } ) @@ -2332,7 +2316,7 @@ BattleHandlers::AbilityOnSwitchIn.add(:PSYCHICSURGE, BattleHandlers::AbilityOnSwitchIn.add(:SANDSTREAM, proc { |ability,battler,battle| - pbBattleWeatherAbility(PBWeather::Sandstorm,battler,battle) + pbBattleWeatherAbility(:Sandstorm, battler, battle) } ) @@ -2352,7 +2336,7 @@ BattleHandlers::AbilityOnSwitchIn.add(:SLOWSTART, BattleHandlers::AbilityOnSwitchIn.add(:SNOWWARNING, proc { |ability,battler,battle| - pbBattleWeatherAbility(PBWeather::Hail,battler,battle) + pbBattleWeatherAbility(:Hail, battler, battle) } ) diff --git a/Data/Scripts/012_Battle/008_BattleHandlers_Items.rb b/Data/Scripts/012_Battle/008_BattleHandlers_Items.rb index cf17cae1b..4e5fa76ad 100644 --- a/Data/Scripts/012_Battle/008_BattleHandlers_Items.rb +++ b/Data/Scripts/012_Battle/008_BattleHandlers_Items.rb @@ -1394,25 +1394,25 @@ BattleHandlers::EVGainModifierItem.add(:POWERWEIGHT, BattleHandlers::WeatherExtenderItem.add(:DAMPROCK, proc { |item,weather,duration,battler,battle| - next 8 if weather==PBWeather::Rain + next 8 if weather == :Rain } ) BattleHandlers::WeatherExtenderItem.add(:HEATROCK, proc { |item,weather,duration,battler,battle| - next 8 if weather==PBWeather::Sun + next 8 if weather == :Sun } ) BattleHandlers::WeatherExtenderItem.add(:ICYROCK, proc { |item,weather,duration,battler,battle| - next 8 if weather==PBWeather::Hail + next 8 if weather == :Hail } ) BattleHandlers::WeatherExtenderItem.add(:SMOOTHROCK, proc { |item,weather,duration,battler,battle| - next 8 if weather==PBWeather::Sandstorm + next 8 if weather == :Sandstorm } ) diff --git a/Data/Scripts/012_Battle/010_PokeBattle_ActiveField.rb b/Data/Scripts/012_Battle/010_PokeBattle_ActiveField.rb index 2cdcc473c..e1121d71a 100644 --- a/Data/Scripts/012_Battle/010_PokeBattle_ActiveField.rb +++ b/Data/Scripts/012_Battle/010_PokeBattle_ActiveField.rb @@ -23,8 +23,8 @@ begin @effects[PBEffects::TrickRoom] = 0 @effects[PBEffects::WaterSportField] = 0 @effects[PBEffects::WonderRoom] = 0 - @defaultWeather = PBWeather::None - @weather = PBWeather::None + @defaultWeather = :None + @weather = :None @weatherDuration = 0 @defaultTerrain = :None @terrain = :None diff --git a/Data/Scripts/013_Overworld/006_PField_Battles.rb b/Data/Scripts/013_Overworld/006_PField_Battles.rb index 145a318d7..1b622b959 100644 --- a/Data/Scripts/013_Overworld/006_PField_Battles.rb +++ b/Data/Scripts/013_Overworld/006_PField_Battles.rb @@ -44,7 +44,9 @@ class PokemonTemp when "terrain" terrain_data = GameData::BattleTerrain.try_get(var) rules["defaultTerrain"] = (terrain_data) ? terrain_data.id : nil - when "weather" then rules["defaultWeather"] = getID(PBWeather, var) + when "weather" + weather_data = GameData::BattleWeather.try_get(var) + rules["defaultWeather"] = (weather_data) ? weather_data.id : nil when "environment", "environ" environment_data = GameData::Environment.try_get(var) rules["environment"] = (environment_data) ? environment_data.id : nil @@ -110,13 +112,13 @@ def pbPrepareBattle(battle) if battleRules["defaultWeather"].nil? case $game_screen.weather_type when PBFieldWeather::Rain, PBFieldWeather::HeavyRain, PBFieldWeather::Storm - battle.defaultWeather = PBWeather::Rain + battle.defaultWeather = :Rain when PBFieldWeather::Snow, PBFieldWeather::Blizzard - battle.defaultWeather = PBWeather::Hail + battle.defaultWeather = :Hail when PBFieldWeather::Sandstorm - battle.defaultWeather = PBWeather::Sandstorm + battle.defaultWeather = :Sandstorm when PBFieldWeather::Sun - battle.defaultWeather = PBWeather::Sun + battle.defaultWeather = :Sun end else battle.defaultWeather = battleRules["defaultWeather"] diff --git a/Data/Scripts/016_Pokemon/001_Pokemon-related/004_Pokemon_ShadowPokemon.rb b/Data/Scripts/016_Pokemon/001_Pokemon-related/004_Pokemon_ShadowPokemon.rb index d7077410e..8c60f05f1 100644 --- a/Data/Scripts/016_Pokemon/001_Pokemon-related/004_Pokemon_ShadowPokemon.rb +++ b/Data/Scripts/016_Pokemon/001_Pokemon-related/004_Pokemon_ShadowPokemon.rb @@ -450,7 +450,7 @@ end class PokeBattle_Move_131 < PokeBattle_WeatherMove def initialize(battle,move) super - @weatherType = PBWeather::ShadowSky + @weatherType = :ShadowSky end end