6.7.2 patch

This commit is contained in:
chardub
2025-10-02 10:35:46 -04:00
parent e5406179bf
commit 5b85e72cb2
42 changed files with 3096 additions and 181 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -5,8 +5,7 @@
#==============================================================================# #==============================================================================#
module Settings module Settings
# The version of your game. It has to adhere to the MAJOR.MINOR.PATCH format. # The version of your game. It has to adhere to the MAJOR.MINOR.PATCH format.
GAME_VERSION = '6.7.1' GAME_VERSION_NUMBER = "6.7.2"
GAME_VERSION_NUMBER = GAME_VERSION #kinda used interchangibly #todo: refactor
LATEST_GAME_RELEASE = "6.6" LATEST_GAME_RELEASE = "6.6"
KANTO = GAME_ID == :IF_KANTO KANTO = GAME_ID == :IF_KANTO

View File

@@ -203,7 +203,7 @@ module SaveData
end end
echoln '' if conversions_to_run.length > 0 echoln '' if conversions_to_run.length > 0
save_data[:essentials_version] = Essentials::VERSION save_data[:essentials_version] = Essentials::VERSION
save_data[:game_version] = Settings::GAME_VERSION save_data[:game_version] = Settings::GAME_VERSION_NUMBER
return true return true
end end

View File

@@ -129,7 +129,7 @@ end
SaveData.register(:game_version) do SaveData.register(:game_version) do
load_in_bootup load_in_bootup
ensure_class :String ensure_class :String
save_value { Settings::GAME_VERSION } save_value { Settings::GAME_VERSION_NUMBER }
load_value { |value| $game_version = value } load_value { |value| $game_version = value }
new_game_value { Settings::GAME_VERSION } new_game_value { Settings::GAME_VERSION_NUMBER }
end end

View File

@@ -8,7 +8,7 @@ SaveData.register_conversion(:v19_define_versions) do
save_data[:essentials_version] = Essentials::VERSION save_data[:essentials_version] = Essentials::VERSION
end end
unless save_data.has_key?(:game_version) unless save_data.has_key?(:game_version)
save_data[:game_version] = Settings::GAME_VERSION save_data[:game_version] = Settings::GAME_VERSION_NUMBER
end end
end end
end end

View File

@@ -745,6 +745,7 @@ def addBackgroundPlane(sprites,planename,background,viewport=nil)
end end
end end
end end
return sprites[planename]
end end
# Adds a background to the sprite hash. # Adds a background to the sprite hash.

View File

@@ -48,8 +48,10 @@ class HallOfFame_Scene
@viewport = Viewport.new(0, 0, Graphics.width, Graphics.height) @viewport = Viewport.new(0, 0, Graphics.width, Graphics.height)
@viewport.z = 99999 @viewport.z = 99999
# Comment the below line to doesn't use a background # Comment the below line to doesn't use a background
bgFile = @singlerow ? "hallfamebg" : "hallfamebg_multiline" @sprites["bg"] = IconSprite.new(@viewport)
addBackgroundPlane(@sprites, "bg", bgFile, @viewport) @sprites["bg"].setBitmap(getHallOfFameBackground)
@sprites["bg"].z = 0
@sprites["hallbars"] = IconSprite.new(@viewport) @sprites["hallbars"] = IconSprite.new(@viewport)
@sprites["hallbars"].setBitmap("Graphics/Pictures/hallfamebars") @sprites["hallbars"].setBitmap("Graphics/Pictures/hallfamebars")
@sprites["overlay"] = BitmapSprite.new(Graphics.width, Graphics.height, @viewport) @sprites["overlay"] = BitmapSprite.new(Graphics.width, Graphics.height, @viewport)
@@ -73,12 +75,25 @@ class HallOfFame_Scene
pbFadeInAndShow(@sprites) { pbUpdate } pbFadeInAndShow(@sprites) { pbUpdate }
end end
def getHallOfFameBackground
if @singlerow #in the e4
rank = pbGet(VAR_LEAGUE_REMATCH_TIER)
background = "Graphics/Pictures/HallOfFame/hallfamebg"
else #from PC
rank = $PokemonGlobal.hallOfFame[@hallIndex][:TIER]
background = "Graphics/Pictures/HallOfFame/hallfamebg_multiline"
end
if rank && rank.to_i > 0
background += "_#{rank}"
end
return background
end
def pbStartScenePC def pbStartScenePC
@singlerow = false @singlerow = false
pbStartScene
@hallIndex = $PokemonGlobal.hallOfFame.size - 1 @hallIndex = $PokemonGlobal.hallOfFame.size - 1
echoln $PokemonGlobal.hallOfFame[-1] pbStartScene
@hallEntry = $PokemonGlobal.hallOfFame[-1][:TEAM] @hallEntry = $PokemonGlobal.hallOfFame[-1][:TEAM]
createBattlers(false) createBattlers(false)
pbFadeInAndShow(@sprites) { pbUpdate } pbFadeInAndShow(@sprites) { pbUpdate }
@@ -136,6 +151,7 @@ class HallOfFame_Scene
entryData[:DIFFICULTY] = getDifficulty entryData[:DIFFICULTY] = getDifficulty
entryData[:MODE] = getCurrentGameMode() entryData[:MODE] = getCurrentGameMode()
entryData[:DATE] = getCurrentDate() entryData[:DATE] = getCurrentDate()
entryData[:TIER] = getCurrentE4Tier()
#Save trainer data (unused for now) #Save trainer data (unused for now)
entryData[:TRAINER_HAT] = $Trainer.hat entryData[:TRAINER_HAT] = $Trainer.hat
@@ -381,7 +397,12 @@ class HallOfFame_Scene
def writeWelcomePC def writeWelcomePC
overlay = @sprites["overlay"].bitmap overlay = @sprites["overlay"].bitmap
overlay.clear overlay.clear
pbDrawTextPositions(overlay, [[_INTL("Entered the Hall of Fame!"), text = _INTL("Entered the Hall of Fame!")
rank = $PokemonGlobal.hallOfFame[@hallIndex][:TIER]
if rank && rank.to_i > 0
text += _INTL(" (Rematch Tier {1})",rank.to_i)
end
pbDrawTextPositions(overlay, [[text,
Graphics.width / 2, Graphics.height - 80, 2, BASECOLOR, SHADOWCOLOR]]) Graphics.width / 2, Graphics.height - 80, 2, BASECOLOR, SHADOWCOLOR]])
date = $PokemonGlobal.hallOfFame[@hallIndex][:DATE] date = $PokemonGlobal.hallOfFame[@hallIndex][:DATE]
@@ -397,11 +418,17 @@ class HallOfFame_Scene
pbDrawTextPositions(overlay, [[_INTL("{1}", timeString), x, y, 2, BASECOLOR, SHADOWCOLOR]]) pbDrawTextPositions(overlay, [[_INTL("{1}", timeString), x, y, 2, BASECOLOR, SHADOWCOLOR]])
end end
def getCurrentDate() def getCurrentDate()
currentTime = Time.new currentTime = Time.new
return currentTime.year.to_s + "-" + ("%02d" % currentTime.month) + "-" + ("%02d" % currentTime.day) return currentTime.year.to_s + "-" + ("%02d" % currentTime.month) + "-" + ("%02d" % currentTime.day)
end end
def getCurrentE4Tier()
return pbGet(VAR_LEAGUE_REMATCH_TIER)
end
def getCurrentGameMode() def getCurrentGameMode()
gameMode = "Classic mode" gameMode = "Classic mode"
if $game_switches[SWITCH_MODERN_MODE] if $game_switches[SWITCH_MODERN_MODE]
@@ -563,6 +590,7 @@ class HallOfFame_Scene
@battlerIndex = @hallEntry.size - 1 @battlerIndex = @hallEntry.size - 1
createBattlers(false) createBattlers(false)
end end
@sprites["bg"].setBitmap(getHallOfFameBackground)
# Change the pokemon # Change the pokemon
@hallEntry[@battlerIndex].play_cry @hallEntry[@battlerIndex].play_cry
setPokemonSpritesOpacity(@battlerIndex, OPACITY) setPokemonSpritesOpacity(@battlerIndex, OPACITY)

View File

@@ -24,7 +24,11 @@ class MoveRelearner_Scene
@pokemon=pokemon @pokemon=pokemon
@moves=moves @moves=moves
moveCommands=[] moveCommands=[]
moves.each { |m| moveCommands.push(GameData::Move.get(m).name) } echoln moves
moves.each do |m|
echoln m.name
moveCommands.push(GameData::Move.get(m).name)
end
# Create sprite hash # Create sprite hash
@viewport=Viewport.new(0,0,Graphics.width,Graphics.height) @viewport=Viewport.new(0,0,Graphics.width,Graphics.height)
@viewport.z=99999 @viewport.z=99999
@@ -169,7 +173,9 @@ class MoveRelearnerScreen
end end
pkmn.learned_moves.each do |move| pkmn.learned_moves.each do |move|
moves.push(move) if !moves.include?(move) move_id = move.is_a?(Symbol) ? move : move.id
next if pkmn.hasMove?(move_id)
moves.push(move_id) if !moves.include?(move_id)
end end
tmoves = [] tmoves = []
@@ -178,6 +184,7 @@ class MoveRelearnerScreen
tmoves.push(i) if !pkmn.hasMove?(i) && !moves.include?(i) tmoves.push(i) if !pkmn.hasMove?(i) && !moves.include?(i)
end end
end end
moves = tmoves + moves moves = tmoves + moves
return moves | [] # remove duplicates return moves | [] # remove duplicates
end end

View File

@@ -41,6 +41,7 @@ SWITCH_GOT_BADGE_14 = 44
SWITCH_GOT_BADGE_15 = 45 SWITCH_GOT_BADGE_15 = 45
SWITCH_GOT_BADGE_16 = 50 SWITCH_GOT_BADGE_16 = 50
SWITCH_LEAGUE_TIER_1= 1155
SWITCH_LEAGUE_TIER_2= 1151 SWITCH_LEAGUE_TIER_2= 1151
SWITCH_LEAGUE_TIER_3= 1152 SWITCH_LEAGUE_TIER_3= 1152
SWITCH_LEAGUE_TIER_4= 1153 SWITCH_LEAGUE_TIER_4= 1153

View File

@@ -43,7 +43,7 @@ end
def getCurrentLevelCap() def getCurrentLevelCap()
current_max_level = Settings::LEVEL_CAPS[$Trainer.badge_count] current_max_level = Settings::LEVEL_CAPS[$Trainer.badge_count]
current_max_level *= Settings::HARD_MODE_LEVEL_MODIFIER if $game_switches[SWITCH_GAME_DIFFICULTY_HARD] current_max_level *= Settings::HARD_MODE_LEVEL_MODIFIER if $game_switches[SWITCH_GAME_DIFFICULTY_HARD]
return current_max_level return current_max_level.floor
end end
def pokemonExceedsLevelCap(pokemon) def pokemonExceedsLevelCap(pokemon)

View File

@@ -156,7 +156,7 @@ def addLegendaryEggsToPC()
legendaries_species = LEGENDARIES_LIST.shuffle legendaries_species = LEGENDARIES_LIST.shuffle
legendaries_species.each do |species| legendaries_species.each do |species|
pokemon = Pokemon.new(species, Settings::EGG_LEVEL) pokemon = Pokemon.new(species, Settings::EGG_LEVEL)
pokemon.steps_to_hatch = pokemon.species_data.hatch_steps pokemon.steps_to_hatch = pokemon.species_data.hatch_steps/2
pokemon.name = "Egg" pokemon.name = "Egg"
$PokemonStorage.pbStoreCaught(pokemon) $PokemonStorage.pbStoreCaught(pokemon)
end end

View File

@@ -225,7 +225,7 @@ module SaveData
end end
echoln '' if conversions_to_run.length > 0 echoln '' if conversions_to_run.length > 0
save_data[:essentials_version] = Essentials::VERSION save_data[:essentials_version] = Essentials::VERSION
save_data[:game_version] = Settings::GAME_VERSION save_data[:game_version] = Settings::GAME_VERSION_NUMBER
return true return true
end end
end end

View File

@@ -99,7 +99,7 @@ end
def list_unlocked_league_tiers def list_unlocked_league_tiers
unlocked_tiers =[] unlocked_tiers =[]
unlocked_tiers << 1 if $game_switches[SWITCH_BEAT_THE_LEAGUE] unlocked_tiers << 1 if $game_switches[SWITCH_LEAGUE_TIER_1]
unlocked_tiers << 2 if $game_switches[SWITCH_LEAGUE_TIER_2] unlocked_tiers << 2 if $game_switches[SWITCH_LEAGUE_TIER_2]
unlocked_tiers << 3 if $game_switches[SWITCH_LEAGUE_TIER_3] unlocked_tiers << 3 if $game_switches[SWITCH_LEAGUE_TIER_3]
unlocked_tiers << 4 if $game_switches[SWITCH_LEAGUE_TIER_4] unlocked_tiers << 4 if $game_switches[SWITCH_LEAGUE_TIER_4]
@@ -111,7 +111,7 @@ def select_league_tier
#validateE4Data #validateE4Data
available_tiers = list_unlocked_league_tiers available_tiers = list_unlocked_league_tiers
return 0 if available_tiers.empty? return 0 if available_tiers.empty?
return available_tiers[0] if available_tiers.length == 1 #return available_tiers[0] if available_tiers.length == 1
available_tiers.reverse! available_tiers.reverse!
commands = [] commands = []
@@ -139,17 +139,16 @@ def unlock_new_league_tiers
tiers_to_unlock << 3 if current_tier == 2 && $game_switches[SWITCH_BEAT_MT_SILVER] tiers_to_unlock << 3 if current_tier == 2 && $game_switches[SWITCH_BEAT_MT_SILVER]
tiers_to_unlock << 4 if current_tier == 3 && $game_variables[VAR_NB_GYM_REMATCHES] >= 16 tiers_to_unlock << 4 if current_tier == 3 && $game_variables[VAR_NB_GYM_REMATCHES] >= 16
tiers_to_unlock << 5 if current_tier == 4 tiers_to_unlock << 5 if current_tier == 4
tiers_to_unlock.each do |tier| tiers_to_unlock.each do |tier|
next if tier == 1 || tier == 0 next if tier == 0
$game_switches[SWITCH_LEAGUE_TIER_1] = true if tiers_to_unlock.include?(1)
$game_switches[SWITCH_LEAGUE_TIER_2] = true if tiers_to_unlock.include?(2) $game_switches[SWITCH_LEAGUE_TIER_2] = true if tiers_to_unlock.include?(2)
$game_switches[SWITCH_LEAGUE_TIER_3] = true if tiers_to_unlock.include?(3) $game_switches[SWITCH_LEAGUE_TIER_3] = true if tiers_to_unlock.include?(3)
$game_switches[SWITCH_LEAGUE_TIER_4] = true if tiers_to_unlock.include?(4) $game_switches[SWITCH_LEAGUE_TIER_4] = true if tiers_to_unlock.include?(4)
$game_switches[SWITCH_LEAGUE_TIER_5] = true if tiers_to_unlock.include?(5) $game_switches[SWITCH_LEAGUE_TIER_5] = true if tiers_to_unlock.include?(5)
unless currently_unlocked_tiers.include?(tier) unless currently_unlocked_tiers.include?(tier)
pbMEPlay("Key item get") pbMEPlay("Key item get")
pbMessage(_INTL("{1} unlocked the \\C[1]Tier {2} League Rematches\\C[0]!",$Trainer.name,tier)) pbMessage(_INTL("{1} unlocked \\C[1]Tier {2} League Rematches\\C[0]!",$Trainer.name,tier))
end end
end end
end end

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View File

Before

Width:  |  Height:  |  Size: 743 B

After

Width:  |  Height:  |  Size: 743 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB