diff --git a/Data/.~lock.credits.csv# b/Data/.~lock.credits.csv# new file mode 100644 index 000000000..ab81d9c78 --- /dev/null +++ b/Data/.~lock.credits.csv# @@ -0,0 +1 @@ +Charles Dubois,DESKTOP-U5METSR/charl,DESKTOP-U5METSR,07.04.2023 22:25,file:///C:/Users/charl/AppData/Roaming/OpenOffice/4; \ No newline at end of file diff --git a/Data/Actors.rxdata b/Data/Actors.rxdata index 7967a5432..41edc8e26 100644 Binary files a/Data/Actors.rxdata and b/Data/Actors.rxdata differ diff --git a/Data/Animations.rxdata b/Data/Animations.rxdata index 8e67182ba..826e1e8a6 100644 Binary files a/Data/Animations.rxdata and b/Data/Animations.rxdata differ diff --git a/Data/Armors.rxdata b/Data/Armors.rxdata index 2249bec14..901f2bb2b 100644 Binary files a/Data/Armors.rxdata and b/Data/Armors.rxdata differ diff --git a/Data/CommonEvents.rxdata b/Data/CommonEvents.rxdata index 8af865203..3a99093c5 100644 Binary files a/Data/CommonEvents.rxdata and b/Data/CommonEvents.rxdata differ diff --git a/Data/Enemies.rxdata b/Data/Enemies.rxdata index 004ee903d..be622f513 100644 Binary files a/Data/Enemies.rxdata and b/Data/Enemies.rxdata differ diff --git a/Data/Items.rxdata b/Data/Items.rxdata index 3e62ba6d2..fe767fa0b 100644 Binary files a/Data/Items.rxdata and b/Data/Items.rxdata differ diff --git a/Data/Map095.rxdata b/Data/Map095.rxdata index 92abc3449..a79bab6af 100644 Binary files a/Data/Map095.rxdata and b/Data/Map095.rxdata differ diff --git a/Data/MapInfos.rxdata b/Data/MapInfos.rxdata index 74fad41d0..291816351 100644 Binary files a/Data/MapInfos.rxdata and b/Data/MapInfos.rxdata differ diff --git a/Data/Scripts/001_Settings.rb b/Data/Scripts/001_Settings.rb index fb4508df0..37e1afe47 100644 --- a/Data/Scripts/001_Settings.rb +++ b/Data/Scripts/001_Settings.rb @@ -26,6 +26,7 @@ module Settings BATTLERS_FOLDER = "Graphics/Battlers/" DOWNLOADED_SPRITES_FOLDER = "Graphics/temp/" DEFAULT_SPRITE_PATH = "Graphics/Battlers/Special/000.png" + CREDITS_FILE_PATH = "Data/credits.csv" FRONTSPRITE_POSITION_OFFSET = 20 FRONTSPRITE_SCALE = 0.6666666666 BACKRPSPRITE_SCALE = 1 diff --git a/Data/Scripts/007_Objects and windows/007_SpriteWrapper.rb b/Data/Scripts/007_Objects and windows/007_SpriteWrapper.rb index ffdfeb2e8..5e37cbda7 100644 --- a/Data/Scripts/007_Objects and windows/007_SpriteWrapper.rb +++ b/Data/Scripts/007_Objects and windows/007_SpriteWrapper.rb @@ -414,6 +414,10 @@ class IconSprite < SpriteWrapper end end + def getBitmap + return @_iconbitmap + end + def clearBitmaps @_iconbitmap.dispose if @_iconbitmap @_iconbitmap = nil diff --git a/Data/Scripts/007_Objects and windows/010_DrawText.rb b/Data/Scripts/007_Objects and windows/010_DrawText.rb index 55f8e6ef9..2ede6cdfc 100644 --- a/Data/Scripts/007_Objects and windows/010_DrawText.rb +++ b/Data/Scripts/007_Objects and windows/010_DrawText.rb @@ -1195,6 +1195,7 @@ end def pbDrawTextPositions(bitmap,textpos) for i in textpos textsize = bitmap.text_size(i[0]) + x = i[1] y = i[2] + 6 if i[3]==true || i[3]==1 # right align diff --git a/Data/Scripts/014_Pokemon/001_Pokemon-related/003_Pokemon_Sprites.rb b/Data/Scripts/014_Pokemon/001_Pokemon-related/003_Pokemon_Sprites.rb index 4d44eeae7..56eca12ac 100644 --- a/Data/Scripts/014_Pokemon/001_Pokemon-related/003_Pokemon_Sprites.rb +++ b/Data/Scripts/014_Pokemon/001_Pokemon-related/003_Pokemon_Sprites.rb @@ -25,6 +25,10 @@ class PokemonSprite < SpriteWrapper changeOrigin end + def filename + return @bitmap + end + def changeOrigin return if !self.bitmap @offset = PictureOrigin::Center if !@offset @@ -76,6 +80,10 @@ class PokemonSprite < SpriteWrapper changeOrigin end + def getBitmap + return @_iconbitmap + end + def update super if @_iconbitmap diff --git a/Data/Scripts/048_Fusion/PokemonFusion.rb b/Data/Scripts/048_Fusion/PokemonFusion.rb index e20fdfa1b..b83a8f75b 100644 --- a/Data/Scripts/048_Fusion/PokemonFusion.rb +++ b/Data/Scripts/048_Fusion/PokemonFusion.rb @@ -688,9 +688,12 @@ class PokemonFusionScene newspeciesname = newSpecies.real_name oldspeciesname = GameData::Species.get(@pokemon1.species).real_name + overlay = BitmapSprite.new(Graphics.width, Graphics.height, @viewport).bitmap + drawSpriteCredits(@sprites["rsprite2"].getBitmap.filename, overlay) Kernel.pbMessageDisplay(@sprites["msgwindow"], _INTL("\\se[]Congratulations! Your Pokémon were fused into {2}!\\wt[80]", @pokemon1.name, newspeciesname)) + #exp @pokemon1.exp_when_fused_head = @pokemon2.exp @pokemon1.exp_when_fused_body = @pokemon1.exp @@ -705,7 +708,7 @@ class PokemonFusionScene @pokemon1.debug_shiny = true if @pokemon1.debug_shiny || @pokemon2.debug_shiny setFusionIVs(superSplicer) - #add to pokedex + #add to pokedex if !$Trainer.pokedex.owned?(newSpecies) $Trainer.pokedex.set_seen(newSpecies) $Trainer.pokedex.set_owned(newSpecies) @@ -713,6 +716,7 @@ class PokemonFusionScene _INTL("{1}'s data was added to the Pokédex", newspeciesname)) @scene.pbShowPokedex(@newspecies) end + overlay.dispose #first check if hidden ability # getAbilityList format: [[:ABILITY, index],...] hiddenAbility1 = @pokemon1.ability == @pokemon1.getAbilityList[-1][0] @@ -763,6 +767,25 @@ class PokemonFusionScene end end +def drawSpriteCredits(filename,overlay) + x= Graphics.width/2 + y=240 + spritename = File.basename(filename,'.*') + discord_name = getSpriteCredits(spritename) + return if !discord_name + + author_name = File.basename(discord_name,'#*') + return if author_name == nil + + label_base_color = Color.new(98, 231, 110) + label_shadow_color = Color.new(27, 169, 40) + + #label_shadow_color = Color.new(33, 209, 50) + text = _INTL("Sprite by {1}",author_name) + textpos = [[text, x, y, 2, label_base_color, label_shadow_color]] + pbDrawTextPositions(overlay, textpos) +end + def clearUIForMoves addBackgroundOrColoredPlane(@sprites, "background", "DNAbg", Color.new(248, 248, 248), @viewport) diff --git a/Data/Scripts/050_AddOns/GeneralUtils.rb b/Data/Scripts/050_AddOns/GeneralUtils.rb index d466e3e4c..4ea1963e7 100644 --- a/Data/Scripts/050_AddOns/GeneralUtils.rb +++ b/Data/Scripts/050_AddOns/GeneralUtils.rb @@ -412,6 +412,15 @@ def customSpriteExistsBase(body,head) return download_custom_sprite(head, body) != nil end +def getSpriteCredits(spriteName) + File.foreach(Settings::CREDITS_FILE_PATH) do |line| + row = line.split(';') + if row[0].include?(spriteName) + return row[1] + end + end + return nil +end def getArceusPlateType(heldItem) return :NORMAL if heldItem == nil diff --git a/Data/Scripts/050_AddOns/UI_Pokedex_SpritesPage.rb b/Data/Scripts/050_AddOns/UI_Pokedex_SpritesPage.rb index 9d7529cf9..c93b03187 100644 --- a/Data/Scripts/050_AddOns/UI_Pokedex_SpritesPage.rb +++ b/Data/Scripts/050_AddOns/UI_Pokedex_SpritesPage.rb @@ -46,6 +46,8 @@ class PokemonPokedexInfo_Scene @sprites["bgSelected_next"].setBitmap(_INTL("Graphics/Pictures/Pokedex/bg_forms_selected_small")) @sprites["bgSelected_next"].visible = false + @creditsOverlay = BitmapSprite.new(Graphics.width, Graphics.height, @viewport).bitmap + end def initializeSpritesPage(altsList) @@ -129,10 +131,27 @@ class PokemonPokedexInfo_Scene @sprites["previousSprite"].setBitmap(@available[previousIndex]) if previousIndex != nextIndex @sprites["selectedSprite"].setBitmap(@available[@selected_index]) @sprites["nextSprite"].setBitmap(@available[nextIndex]) - + showSpriteCredits(@sprites["selectedSprite"].getBitmap.filename) update_selected end + def showSpriteCredits(filename) + @creditsOverlay.dispose + + x= Graphics.width/2 -60 + y=Graphics.height - 60 + spritename = File.basename(filename,'.*') + discord_name = getSpriteCredits(spritename) + return if !discord_name + + author_name = File.basename(discord_name,'#*') + + label_base_color = Color.new(248, 248, 248) + label_shadow_color = Color.new(104, 104, 104) + @creditsOverlay = BitmapSprite.new(Graphics.width, Graphics.height, @viewport).bitmap + textpos = [[author_name, x, y, 0, label_base_color, label_shadow_color]] + pbDrawTextPositions(@creditsOverlay, textpos) + end def pbChooseForm diff --git a/Data/Skills.rxdata b/Data/Skills.rxdata index 61cba7ea2..a45219f5e 100644 Binary files a/Data/Skills.rxdata and b/Data/Skills.rxdata differ diff --git a/Data/States.rxdata b/Data/States.rxdata index 0f9b4ae5d..868d49e59 100644 Binary files a/Data/States.rxdata and b/Data/States.rxdata differ diff --git a/Data/System.rxdata b/Data/System.rxdata index eaadb83e4..3bc01f285 100644 Binary files a/Data/System.rxdata and b/Data/System.rxdata differ diff --git a/Data/Tilesets.rxdata b/Data/Tilesets.rxdata index ec292660a..acaa59516 100644 Binary files a/Data/Tilesets.rxdata and b/Data/Tilesets.rxdata differ diff --git a/Data/Weapons.rxdata b/Data/Weapons.rxdata index d9bd35260..c7ea19a7a 100644 Binary files a/Data/Weapons.rxdata and b/Data/Weapons.rxdata differ