Playing ME is stopped if a battle is skipped, fixed bug in Encounters Editor, sprite renamer now recognises 4+ digit ID numbers

This commit is contained in:
Maruno17
2021-05-18 20:01:01 +01:00
parent 6d7bae913e
commit be61441755
5 changed files with 23 additions and 19 deletions

View File

@@ -102,15 +102,15 @@ module MessageConfig
#----------------------------------------------------------------------------- #-----------------------------------------------------------------------------
def self.pbDefaultSystemFontName def self.pbDefaultSystemFontName
return MessageConfig.pbTryFonts(FONT_NAME, "Arial Narrow", "Arial") return MessageConfig.pbTryFonts(FONT_NAME)
end end
def self.pbDefaultSmallFontName def self.pbDefaultSmallFontName
return MessageConfig.pbTryFonts(SMALL_FONT_NAME, "Arial Narrow", "Arial") return MessageConfig.pbTryFonts(SMALL_FONT_NAME)
end end
def self.pbDefaultNarrowFontName def self.pbDefaultNarrowFontName
return MessageConfig.pbTryFonts(NARROW_FONT_NAME, "Arial Narrow", "Arial") return MessageConfig.pbTryFonts(NARROW_FONT_NAME)
end end
def self.pbGetSystemFontName def self.pbGetSystemFontName

View File

@@ -217,6 +217,7 @@ def pbWildBattleCore(*args)
$PokemonGlobal.nextBattleME = nil $PokemonGlobal.nextBattleME = nil
$PokemonGlobal.nextBattleCaptureME = nil $PokemonGlobal.nextBattleCaptureME = nil
$PokemonGlobal.nextBattleBack = nil $PokemonGlobal.nextBattleBack = nil
pbMEStop
return 1 # Treat it as a win return 1 # Treat it as a win
end end
# Record information about party Pokémon to be used at the end of battle (e.g. # Record information about party Pokémon to be used at the end of battle (e.g.
@@ -355,6 +356,7 @@ def pbTrainerBattleCore(*args)
$PokemonGlobal.nextBattleME = nil $PokemonGlobal.nextBattleME = nil
$PokemonGlobal.nextBattleCaptureME = nil $PokemonGlobal.nextBattleCaptureME = nil
$PokemonGlobal.nextBattleBack = nil $PokemonGlobal.nextBattleBack = nil
pbMEStop
return ($Trainer.able_pokemon_count == 0) ? 0 : 1 # Treat it as undecided/a win return ($Trainer.able_pokemon_count == 0) ? 0 : 1 # Treat it as undecided/a win
end end
# Record information about party Pokémon to be used at the end of battle (e.g. # Record information about party Pokémon to be used at the end of battle (e.g.

View File

@@ -44,6 +44,7 @@ def pbOrganizedBattleEx(opponent, challengedata, endspeech, endspeechwin)
pbMessage(_INTL("AFTER WINNING...")) pbMessage(_INTL("AFTER WINNING..."))
pbMessage(endspeech || "...") pbMessage(endspeech || "...")
$PokemonTemp.lastbattle = nil $PokemonTemp.lastbattle = nil
pbMEStop
return true return true
end end
$Trainer.heal_party $Trainer.heal_party

View File

@@ -256,6 +256,7 @@ def pbEncounterTypeEditor(enc_data, enc_type)
help_window = Window_UnformattedTextPokemon.newWithSize(_INTL("Edit encounter slots"), help_window = Window_UnformattedTextPokemon.newWithSize(_INTL("Edit encounter slots"),
Graphics.width / 2, 0, Graphics.width / 2, 96) Graphics.width / 2, 0, Graphics.width / 2, 96)
help_window.z = 99999 help_window.z = 99999
enc_type_name = ""
ret = 0 ret = 0
need_refresh = true need_refresh = true
loop do loop do
@@ -316,7 +317,7 @@ def pbEncounterTypeEditor(enc_data, enc_type)
need_refresh = true need_refresh = true
end end
when 1 # Copy when 1 # Copy
enc_data.types[enc_type].insert(ret, enc_data.types[enc_type][ret - 2].clone) enc_data.types[enc_type].insert(ret - 1, enc_data.types[enc_type][ret - 2].clone)
ret += 1 ret += 1
need_refresh = true need_refresh = true
when 2 # Delete when 2 # Delete

View File

@@ -43,10 +43,10 @@ module SpriteRenamer
def convert_pokemon_filename(full_name, default_prefix = "") def convert_pokemon_filename(full_name, default_prefix = "")
name = full_name name = full_name
extension = nil extension = ".png"
if full_name[/^(.+)\.([^\.]+)$/] # Of the format something.abc if full_name[/^(.+)\.([^\.]+)$/] # Of the format something.abc
name = $~[1] name = $~[1]
extension = $~[2] extension = "." + $~[2]
end end
prefix = default_prefix prefix = default_prefix
form = female = shadow = crack = "" form = female = shadow = crack = ""
@@ -61,12 +61,12 @@ module SpriteRenamer
end end
if name[/000/] if name[/000/]
species = "000" species = "000"
else elsif name[/^(\d+)$/] || name[/^(\d+)\D/]
species_number = name[0, 3].to_i species_number = $~[1].to_i
species_data = GameData::Species.try_get(species_number) species_data = GameData::Species.try_get(species_number)
raise _INTL("Species {1} is not defined (trying to rename Pokémon graphic {2}).", species_number, full_name) if !species_data raise _INTL("Species {1} is not defined (trying to rename Pokémon graphic {2}).", species_number, full_name) if !species_data
species = species_data.id.to_s species = species_data.id.to_s
form = "_" + $~[1].to_s if name[/_(\d+)/] form = "_" + $~[1].to_s if name[/_(\d+)$/] || name[/_(\d+)\D/]
female = "_female" if name[/f/] female = "_female" if name[/f/]
shadow = "_shadow" if name[/_shadow/] shadow = "_shadow" if name[/_shadow/]
if name[/egg/] if name[/egg/]
@@ -75,7 +75,7 @@ module SpriteRenamer
crack = "_cracks" if name[/eggCracks/] crack = "_cracks" if name[/eggCracks/]
end end
end end
return prefix + species + form + female + shadow + crack + ((extension) ? "." + extension : ".png") return prefix + species + form + female + shadow + crack + extension)
end end
def convert_pokemon_sprites(src_dir, dest_dir) def convert_pokemon_sprites(src_dir, dest_dir)
@@ -94,7 +94,7 @@ module SpriteRenamer
when "eggCracks.png" when "eggCracks.png"
File.move(src_dir + file, dest_dir + "Eggs/000_cracks.png") File.move(src_dir + file, dest_dir + "Eggs/000_cracks.png")
else else
next if !file[/^\d{3}[^\.]*\.[^\.]*$/] next if !file[/^\d+[^\.]*\.[^\.]*$/]
new_filename = convert_pokemon_filename(file) new_filename = convert_pokemon_filename(file)
# moves the files into their appropriate folders # moves the files into their appropriate folders
File.move(src_dir + file, dest_dir + new_filename) File.move(src_dir + file, dest_dir + new_filename)
@@ -115,7 +115,7 @@ module SpriteRenamer
when "iconEgg.png" when "iconEgg.png"
File.move(src_dir + file, dest_dir + "Eggs/000_egg.png") File.move(src_dir + file, dest_dir + "Eggs/000_egg.png")
else else
next if !file[/^icon\d{3}[^\.]*\.[^\.]*$/] next if !file[/^icon\d+[^\.]*\.[^\.]*$/]
new_filename = convert_pokemon_filename(file.sub(/^icon/, ''), "Icons/") new_filename = convert_pokemon_filename(file.sub(/^icon/, ''), "Icons/")
# moves the files into their appropriate folders # moves the files into their appropriate folders
File.move(src_dir + file, dest_dir + new_filename) File.move(src_dir + file, dest_dir + new_filename)
@@ -131,7 +131,7 @@ module SpriteRenamer
files.each_with_index do |file, i| files.each_with_index do |file, i|
Graphics.update if i % 100 == 0 Graphics.update if i % 100 == 0
pbSetWindowText(_INTL("Converting footprints {1}/{2}...", i, files.length)) if i % 50 == 0 pbSetWindowText(_INTL("Converting footprints {1}/{2}...", i, files.length)) if i % 50 == 0
next if !file[/^footprint\d{3}[^\.]*\.[^\.]*$/] next if !file[/^footprint\d+[^\.]*\.[^\.]*$/]
new_filename = convert_pokemon_filename(file.sub(/^footprint/, ''), "Footprints/") new_filename = convert_pokemon_filename(file.sub(/^footprint/, ''), "Footprints/")
# moves the files into their appropriate folders # moves the files into their appropriate folders
File.move(src_dir + file, dest_dir + new_filename) File.move(src_dir + file, dest_dir + new_filename)
@@ -157,7 +157,7 @@ module SpriteRenamer
type = $~[1] type = $~[1]
extension = $~[2] extension = $~[2]
File.move(src_dir + file, dest_dir + "machine_" + type + "." + extension) File.move(src_dir + file, dest_dir + "machine_" + type + "." + extension)
elsif file[/^item(\d{3})[^\.]*\.([^\.]*)$/] elsif file[/^item(\d+)\.([^\.]*)$/]
item_number = $~[1].to_i item_number = $~[1].to_i
extension = $~[2] extension = $~[2]
item_data = GameData::Item.try_get(item_number) item_data = GameData::Item.try_get(item_number)
@@ -178,7 +178,7 @@ module SpriteRenamer
files.each_with_index do |file, i| files.each_with_index do |file, i|
Graphics.update if i % 100 == 0 Graphics.update if i % 100 == 0
pbSetWindowText(_INTL("Converting Pokémon cries {1}/{2}...", i, files.length)) if i % 50 == 0 pbSetWindowText(_INTL("Converting Pokémon cries {1}/{2}...", i, files.length)) if i % 50 == 0
if file[/^(\d{3})Cry[^\.]*\.([^\.]*)$/] if file[/^(\d+)Cry[^\.]*\.([^\.]*)$/]
species_number = $~[1].to_i species_number = $~[1].to_i
extension = $~[2] extension = $~[2]
form = (file[/Cry_(\d+)\./]) ? sprintf("_%s", $~[1]) : "" form = (file[/Cry_(\d+)\./]) ? sprintf("_%s", $~[1]) : ""
@@ -203,7 +203,7 @@ module SpriteRenamer
Graphics.update if i % 100 == 0 Graphics.update if i % 100 == 0
pbSetWindowText(_INTL("Converting trainer sprites {1}/{2}...", i, files.length)) if i % 50 == 0 pbSetWindowText(_INTL("Converting trainer sprites {1}/{2}...", i, files.length)) if i % 50 == 0
if src_dir == "Graphics/Characters/" if src_dir == "Graphics/Characters/"
if file[/^trchar(\d{3})\.([^\.]*)$/] if file[/^trchar(\d+)\.([^\.]*)$/]
tr_type_number = $~[1].to_i tr_type_number = $~[1].to_i
extension = $~[2] extension = $~[2]
tr_type_data = GameData::TrainerType.try_get(tr_type_number) tr_type_data = GameData::TrainerType.try_get(tr_type_number)
@@ -212,14 +212,14 @@ module SpriteRenamer
File.move(src_dir + file, src_dir + "trainer_" + tr_type + "." + extension) File.move(src_dir + file, src_dir + "trainer_" + tr_type + "." + extension)
end end
else else
if file[/^trainer(\d{3})\.([^\.]*)$/] if file[/^trainer(\d+)\.([^\.]*)$/]
tr_type_number = $~[1].to_i tr_type_number = $~[1].to_i
extension = $~[2] extension = $~[2]
tr_type_data = GameData::TrainerType.try_get(tr_type_number) tr_type_data = GameData::TrainerType.try_get(tr_type_number)
raise _INTL("Trainer type {1} is not defined (trying to rename trainer sprite {2}).", tr_type_number, file) if !tr_type_data raise _INTL("Trainer type {1} is not defined (trying to rename trainer sprite {2}).", tr_type_number, file) if !tr_type_data
tr_type = tr_type_data.id.to_s tr_type = tr_type_data.id.to_s
File.move(src_dir + file, src_dir + tr_type + "." + extension) File.move(src_dir + file, src_dir + tr_type + "." + extension)
elsif file[/^trback(\d{3})\.([^\.]*)$/] elsif file[/^trback(\d+)\.([^\.]*)$/]
tr_type_number = $~[1].to_i tr_type_number = $~[1].to_i
extension = $~[2] extension = $~[2]
tr_type_data = GameData::TrainerType.try_get(tr_type_number) tr_type_data = GameData::TrainerType.try_get(tr_type_number)
@@ -236,7 +236,7 @@ module SpriteRenamer
for i in 0...8 for i in 0...8
metadata = GameData::Metadata.get_player(i) metadata = GameData::Metadata.get_player(i)
next if !metadata next if !metadata
if metadata[1][/^trchar(\d{3})$/] if metadata[1][/^trchar(\d+)$/]
tr_type_number = $~[1].to_i tr_type_number = $~[1].to_i
tr_type_data = GameData::TrainerType.try_get(tr_type_number) tr_type_data = GameData::TrainerType.try_get(tr_type_number)
raise _INTL("Trainer type {1} is not defined (trying to rename player metadata filename {2}).", tr_type_number, metadata[1]) if !tr_type_data raise _INTL("Trainer type {1} is not defined (trying to rename player metadata filename {2}).", tr_type_number, metadata[1]) if !tr_type_data