mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2026-01-27 08:46:00 +00:00
fix for generated sprites in pokedex sprites page + colored background for current sprite
This commit is contained in:
15
Credits.txt
15
Credits.txt
@@ -50,27 +50,12 @@ their sprites.
|
||||
###########################################################
|
||||
Maruno (http://pokemonessentials.wikia.com/wiki/Pok%C3%A9mon_Essentials_Wiki)
|
||||
|
||||
###########################################################
|
||||
### Postgame add-ons ###
|
||||
###########################################################
|
||||
Endgame Challenge:
|
||||
DemICE (https://www.rebornevo.com/forum/index.php?/profile/62307-demice/)
|
||||
Adapted from the infinity fusion endgame challenge mod
|
||||
https://www.rebornevo.com/forum/index.php?/messenger/30070/&tab=comments#comment-297286
|
||||
|
||||
Bill's Battletower:
|
||||
barafanatic
|
||||
###########################################################
|
||||
### Playtesting ###
|
||||
###########################################################
|
||||
Playtesting was done by various members of the Discord channel.
|
||||
Special thanks to all of you!
|
||||
###########################################################
|
||||
### Social media ###
|
||||
###########################################################
|
||||
ChippyYYZ (Discord. reddit)
|
||||
qt314xxx (Discord)
|
||||
###########################################################
|
||||
### Graphics #
|
||||
###########################################################
|
||||
Title screen background and logo by Doctor Miawoo
|
||||
|
||||
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.
@@ -47,6 +47,7 @@ module GameData
|
||||
attr_accessor :front_sprite_altitude
|
||||
attr_accessor :shadow_x
|
||||
attr_accessor :shadow_size
|
||||
attr_accessor :alwaysUseGeneratedSprite
|
||||
|
||||
DATA = {}
|
||||
DATA_FILENAME = "species.dat"
|
||||
@@ -178,8 +179,16 @@ module GameData
|
||||
@front_sprite_altitude = hash[:front_sprite_altitude] || 0
|
||||
@shadow_x = hash[:shadow_x] || 0
|
||||
@shadow_size = hash[:shadow_size] || 2
|
||||
@alwaysUseGeneratedSprite=false
|
||||
end
|
||||
|
||||
def set_always_use_generated_sprite(useGeneratedSprite)
|
||||
@alwaysUseGeneratedSprite=useGeneratedSprite
|
||||
end
|
||||
|
||||
def always_use_generated
|
||||
return @alwaysUseGeneratedSprite
|
||||
end
|
||||
# @return [String] the translated name of this species
|
||||
def name
|
||||
return pbGetMessage(MessageTypes::Species, @id_number)
|
||||
|
||||
@@ -78,7 +78,7 @@ Pokémon Gold and Silver.
|
||||
Both games are made by Game Freak.
|
||||
|
||||
ALl of the custom fused Pokémon sprites
|
||||
were madeby various members of the
|
||||
were madeby various members of the sp
|
||||
Pokémon Infinite Fusion Discord
|
||||
|
||||
Other custom graphics:
|
||||
|
||||
@@ -104,8 +104,12 @@ module GameData
|
||||
end
|
||||
end
|
||||
customPath = pbResolveBitmap(Settings::CUSTOM_BATTLERS_FOLDER + filename)
|
||||
regularPath = Settings::BATTLERS_FOLDER + folder + "/" + filename
|
||||
return customPath ? customPath : pbResolveBitmap(regularPath)
|
||||
species = getSpecies(dex_number)
|
||||
use_custom = customPath && !species.always_use_generated
|
||||
if use_custom
|
||||
return customPath
|
||||
end
|
||||
return Settings::BATTLERS_FOLDER + folder + "/" + filename
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
@@ -4,12 +4,15 @@ class PokemonPokedexInfo_Scene
|
||||
|
||||
Y_POSITION_SMALL = 40
|
||||
Y_POSITION_BIG = 50
|
||||
|
||||
X_POSITION_PREVIOUS = -20
|
||||
X_POSITION_SELECTED = 120
|
||||
X_POSITION_NEXT = 340
|
||||
|
||||
|
||||
Y_POSITION_BG_SMALL = 70
|
||||
Y_POSITION_BG_BIG = 93
|
||||
X_POSITION_BG_PREVIOUS = -1
|
||||
X_POSITION_BG_SELECTED = 145
|
||||
X_POSITION_BG_NEXT = 363
|
||||
|
||||
def drawPageForms
|
||||
#@selected_index=0
|
||||
@@ -24,8 +27,30 @@ class PokemonPokedexInfo_Scene
|
||||
update_displayed
|
||||
end
|
||||
|
||||
def init_selected_bg
|
||||
@sprites["bgSelected_previous"] = IconSprite.new(0, 0, @viewport)
|
||||
@sprites["bgSelected_previous"].x = X_POSITION_BG_PREVIOUS
|
||||
@sprites["bgSelected_previous"].y = Y_POSITION_BG_SMALL
|
||||
@sprites["bgSelected_previous"].setBitmap(_INTL("Graphics/Pictures/Pokedex/bg_forms_selected_small"))
|
||||
@sprites["bgSelected_previous"].visible = false
|
||||
|
||||
@sprites["bgSelected_center"] = IconSprite.new(0, 0, @viewport)
|
||||
@sprites["bgSelected_center"].x = X_POSITION_BG_SELECTED
|
||||
@sprites["bgSelected_center"].y = Y_POSITION_BG_BIG
|
||||
@sprites["bgSelected_center"].setBitmap(_INTL("Graphics/Pictures/Pokedex/bg_forms_selected_large"))
|
||||
@sprites["bgSelected_center"].visible = false
|
||||
|
||||
@sprites["bgSelected_next"] = IconSprite.new(0, 0, @viewport)
|
||||
@sprites["bgSelected_next"].x = X_POSITION_BG_NEXT
|
||||
@sprites["bgSelected_next"].y = Y_POSITION_BG_SMALL
|
||||
@sprites["bgSelected_next"].setBitmap(_INTL("Graphics/Pictures/Pokedex/bg_forms_selected_small"))
|
||||
@sprites["bgSelected_next"].visible = false
|
||||
|
||||
end
|
||||
|
||||
def initializeSpritesPage(altsList)
|
||||
init_selected_bg
|
||||
@speciesData = getSpecies(@species)
|
||||
@selected_index = 0
|
||||
@sprites["selectedSprite"] = IconSprite.new(0, 0, @viewport)
|
||||
@sprites["selectedSprite"].x = X_POSITION_SELECTED
|
||||
@@ -53,7 +78,6 @@ class PokemonPokedexInfo_Scene
|
||||
@sprites["previousSprite"].z = 9999999
|
||||
@sprites["nextSprite"].z = 9999999
|
||||
|
||||
|
||||
@sprites["selectedSprite"].setBitmap(altsList[@selected_index])
|
||||
|
||||
if altsList.size >= 2
|
||||
@@ -67,12 +91,26 @@ class PokemonPokedexInfo_Scene
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
POSSIBLE_ALTS = %w[a b c d e f g h i j k x]
|
||||
|
||||
def pbGetAvailableForms
|
||||
return pbGetAvailableAlts
|
||||
end
|
||||
|
||||
def update_selected
|
||||
@sprites["bgSelected_previous"].visible = false
|
||||
@sprites["bgSelected_center"].visible = false
|
||||
@sprites["bgSelected_next"].visible = false
|
||||
|
||||
previous_index = @selected_index == 0 ? @available.size - 1 : @selected_index - 1
|
||||
next_index = @selected_index == @available.size - 1 ? 0 : @selected_index + 1
|
||||
|
||||
@sprites["bgSelected_previous"].visible = true if is_main_sprite(previous_index) && @available.size > 2
|
||||
@sprites["bgSelected_center"].visible = true if is_main_sprite(@selected_index)
|
||||
@sprites["bgSelected_next"].visible = true if is_main_sprite(next_index) && @available.size > 1
|
||||
end
|
||||
|
||||
def update_displayed
|
||||
@sprites["selectedSprite"].setBitmap(@available[@selected_index])
|
||||
nextIndex = @selected_index + 1
|
||||
@@ -90,6 +128,7 @@ class PokemonPokedexInfo_Scene
|
||||
@sprites["selectedSprite"].setBitmap(@available[@selected_index])
|
||||
@sprites["nextSprite"].setBitmap(@available[nextIndex])
|
||||
|
||||
update_selected
|
||||
end
|
||||
|
||||
def pbGetAvailableAlts
|
||||
@@ -119,8 +158,6 @@ class PokemonPokedexInfo_Scene
|
||||
return ret
|
||||
end
|
||||
|
||||
|
||||
|
||||
def pbChooseForm
|
||||
loop do
|
||||
@sprites["uparrow"].visible = true
|
||||
@@ -157,11 +194,18 @@ class PokemonPokedexInfo_Scene
|
||||
@sprites["downarrow"].visible = false
|
||||
end
|
||||
|
||||
def is_main_sprite
|
||||
return @selected_index == 0
|
||||
def is_main_sprite(index = nil)
|
||||
return false if !@available
|
||||
if index == nil
|
||||
index = @selected_index
|
||||
end
|
||||
return true if @available.size <= 1
|
||||
if @speciesData.always_use_generated
|
||||
selected_sprite = @available[index]
|
||||
return selected_sprite.start_with?(Settings::BATTLERS_FOLDER)
|
||||
end
|
||||
return index == 0
|
||||
end
|
||||
|
||||
|
||||
|
||||
def select_sprite
|
||||
if is_main_sprite
|
||||
@@ -176,33 +220,40 @@ class PokemonPokedexInfo_Scene
|
||||
end
|
||||
|
||||
def swap_main_sprite
|
||||
begin
|
||||
#begin
|
||||
old_main_sprite = @available[0]
|
||||
new_main_sprite = @available[@selected_index]
|
||||
|
||||
if main_sprite_is_non_custom(old_main_sprite)
|
||||
new_name_without_ext = File.basename(old_main_sprite, ".png")
|
||||
new_name_without_letter=new_name_without_ext.chop
|
||||
File.rename(new_main_sprite, Settings::CUSTOM_BATTLERS_FOLDER+new_name_without_letter + ".png")
|
||||
if main_sprite_is_non_custom()
|
||||
@speciesData.set_always_use_generated_sprite(false)
|
||||
return
|
||||
# new_name_without_ext = File.basename(old_main_sprite, ".png")
|
||||
# new_name_without_letter=new_name_without_ext.chop
|
||||
# File.rename(new_main_sprite, Settings::CUSTOM_BATTLERS_FOLDER+new_name_without_letter + ".png")
|
||||
end
|
||||
|
||||
if new_main_sprite.start_with?(Settings::BATTLERS_FOLDER)
|
||||
new_name_without_ext = File.basename(old_main_sprite, ".png")
|
||||
File.rename(old_main_sprite, Settings::CUSTOM_BATTLERS_FOLDER+new_name_without_ext+"x" + ".png")
|
||||
@speciesData.set_always_use_generated_sprite(true)
|
||||
return
|
||||
# new_name_without_ext = File.basename(old_main_sprite, ".png")
|
||||
# File.rename(old_main_sprite, Settings::CUSTOM_BATTLERS_FOLDER+new_name_without_ext+"x" + ".png")x
|
||||
# return
|
||||
end
|
||||
File.rename(new_main_sprite, new_main_sprite + "temp")
|
||||
File.rename(old_main_sprite, new_main_sprite)
|
||||
File.rename(new_main_sprite + "temp", old_main_sprite)
|
||||
rescue
|
||||
pbMessage("There was an error while swapping the sprites. Please save and restart the game as soon as possible.")
|
||||
end
|
||||
# rescue
|
||||
# pbMessage("There was an error while swapping the sprites. Please save and restart the game as soon as possible.")
|
||||
# end
|
||||
# code here
|
||||
end
|
||||
|
||||
def main_sprite_is_non_custom()
|
||||
speciesData = getSpecies(@species)
|
||||
return speciesData.always_use_generated || @available.size <= 1
|
||||
#dégueu, je sais - si le 1er element de la liste finit par une lettre (le 1er element devrait etre considéré comme le main), ça veut dire que le main est non-custom
|
||||
def main_sprite_is_non_custom(old_main_sprite)
|
||||
return POSSIBLE_ALTS.include?(File.basename(old_main_sprite, ".png")[-1])
|
||||
# speciesData.set_always_use_generated_sprite(true)
|
||||
# return POSSIBLE_ALTS.include?(File.basename(old_main_sprite, ".png")[-1])
|
||||
end
|
||||
|
||||
end
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user