6.7.1 patch fixes

This commit is contained in:
chardub
2025-10-01 11:28:13 -04:00
parent 1271d7e8f0
commit e5406179bf
49 changed files with 72 additions and 44 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.

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.

Binary file not shown.

Binary file not shown.

View File

@@ -5,8 +5,8 @@
#==============================================================================# #==============================================================================#
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.0' GAME_VERSION = '6.7.1'
GAME_VERSION_NUMBER = "6.7.0" 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

@@ -634,7 +634,7 @@ class PokemonBattlerSprite < RPG::Sprite
@_iconBitmap.scale_bitmap(scale) @_iconBitmap.scale_bitmap(scale)
self.bitmap = (@_iconBitmap) ? @_iconBitmap.bitmap : nil self.bitmap = (@_iconBitmap) ? @_iconBitmap.bitmap : nil
add_hat_to_bitmap(self.bitmap,pkmn.hat,pkmn.hat_x,pkmn.hat_y,scale,self.mirror) if self.bitmap && pkmn.hat add_hat_to_bitmap(self.bitmap,pkmn.hat,pkmn.hat_x,pkmn.hat_y,scale,pkmn.hat_mirrored_horizontal,pkmn.hat_mirrored_vertical) if self.bitmap && pkmn.hat
pbSetPosition pbSetPosition
end end

View File

@@ -244,7 +244,7 @@ class PokeBattle_Scene
trainer = pbAddSprite("trainer_#{idxTrainer + 1}", spriteX, spriteY, trainerFile, @viewport) trainer = pbAddSprite("trainer_#{idxTrainer + 1}", spriteX, spriteY, trainerFile, @viewport)
spriteOverrideBitmap = setTrainerSpriteOverrides(trainerType) spriteOverrideBitmap = setTrainerSpriteOverrides(trainerType)
trainer.bitmap = spriteOverrideBitmap if spriteOverrideBitmap trainer.bitmap = spriteOverrideBitmap if spriteOverrideBitmap
trainer.bitmap = generate_front_trainer_sprite_bitmap_from_appearance(custom_appearance).bitmap if custom_appearance trainer.bitmap = generate_front_trainer_sprite_bitmap_from_appearance(custom_appearance,true).bitmap if custom_appearance
return if !trainer.bitmap return if !trainer.bitmap
# Alter position of sprite # Alter position of sprite
trainer.z = 7 + idxTrainer trainer.z = 7 + idxTrainer
@@ -254,7 +254,7 @@ class PokeBattle_Scene
def setTrainerSpriteOverrides(trainer_type) def setTrainerSpriteOverrides(trainer_type)
if TYPE_EXPERTS_APPEARANCES.keys.include?(trainer_type) if TYPE_EXPERTS_APPEARANCES.keys.include?(trainer_type)
return generate_front_trainer_sprite_bitmap_from_appearance(TYPE_EXPERTS_APPEARANCES[trainer_type]).bitmap return generate_front_trainer_sprite_bitmap_from_appearance(TYPE_EXPERTS_APPEARANCES[trainer_type],false).bitmap
end end
end end

View File

@@ -59,7 +59,7 @@ class PokemonSprite < SpriteWrapper
if pokemon.hat if pokemon.hat
new_bitmap = Bitmap.new(base_bitmap.width, base_bitmap.height) new_bitmap = Bitmap.new(base_bitmap.width, base_bitmap.height)
new_bitmap.blt(0, 0, base_bitmap.bitmap, base_bitmap.bitmap.rect) new_bitmap.blt(0, 0, base_bitmap.bitmap, base_bitmap.bitmap.rect)
add_hat_to_bitmap(new_bitmap, pokemon.hat, pokemon.hat_x, pokemon.hat_y) add_hat_to_bitmap(new_bitmap, pokemon.hat, pokemon.hat_x, pokemon.hat_y, 1, pokemon.hat_mirrored_horizontal,pokemon.hat_mirrored_vertical)
@_iconbitmap = SpriteWrapper.new @_iconbitmap = SpriteWrapper.new
@_iconbitmap.bitmap = new_bitmap @_iconbitmap.bitmap = new_bitmap
else else

View File

@@ -139,29 +139,30 @@ def getCurrentPokeball(allowEasterEgg=true)
return nil return nil
end end
def generate_front_trainer_sprite_bitmap_from_appearance(trainerAppearance) def generate_front_trainer_sprite_bitmap_from_appearance(trainerAppearance,is_trainer=true)
echoln trainerAppearance.hat echoln trainerAppearance.hat
return generate_front_trainer_sprite_bitmap(false,nil,trainerAppearance.clothes,trainerAppearance.hat,trainerAppearance.hat2, return generate_front_trainer_sprite_bitmap(false,nil,trainerAppearance.clothes,trainerAppearance.hat,trainerAppearance.hat2,
trainerAppearance.hair,trainerAppearance.skin_color, trainerAppearance.hair,trainerAppearance.skin_color,
trainerAppearance.hair_color,trainerAppearance.hat_color,trainerAppearance.clothes_color, trainerAppearance.hair_color,trainerAppearance.hat_color,trainerAppearance.clothes_color,
trainerAppearance.hat2_color) trainerAppearance.hat2_color,
is_trainer)
end end
def generate_front_trainer_sprite_bitmap(allowEasterEgg=true, pokeball = nil, def generate_front_trainer_sprite_bitmap(allowEasterEgg=true, pokeball = nil,
clothes_id = nil, hat_id = nil, hat2_id=nil, hair_id = nil, clothes_id = nil, hat_id = nil, hat2_id=nil, hair_id = nil,
skin_tone_id = nil, hair_color = nil, hat_color = nil, clothes_color = nil, skin_tone_id = nil, hair_color = nil, hat_color = nil, clothes_color = nil,
hat2_color = nil) hat2_color = nil, is_trainer=true)
clothes_id = $Trainer.clothes if !clothes_id clothes_id = $Trainer.clothes if !clothes_id && is_trainer
hat_id = $Trainer.hat if !hat_id hat_id = $Trainer.hat if !hat_id && is_trainer
hat2_id = $Trainer.hat2 if !hat2_id hat2_id = $Trainer.hat2 if !hat2_id && is_trainer
hair_id = $Trainer.hair if !hair_id hair_id = $Trainer.hair if !hair_id && is_trainer
skin_tone_id = $Trainer.skin_tone if !skin_tone_id skin_tone_id = $Trainer.skin_tone if !skin_tone_id && is_trainer
hair_color = $Trainer.hair_color if !hair_color hair_color = $Trainer.hair_color if !hair_color && is_trainer
hat_color = $Trainer.hat_color if !hat_color hat_color = $Trainer.hat_color if !hat_color && is_trainer
hat2_color = $Trainer.hat2_color if !hat2_color hat2_color = $Trainer.hat2_color if !hat2_color && is_trainer
clothes_color = $Trainer.clothes_color if !clothes_color clothes_color = $Trainer.clothes_color if !clothes_color && is_trainer
hairFilename = getTrainerSpriteHairFilename(hair_id) #_INTL(Settings::PLAYER_GRAPHICS_FOLDER + Settings::PLAYER_HAIR_FOLDER + "/hair_trainer_{1}", $Trainer.hair) hairFilename = getTrainerSpriteHairFilename(hair_id) #_INTL(Settings::PLAYER_GRAPHICS_FOLDER + Settings::PLAYER_HAIR_FOLDER + "/hair_trainer_{1}", $Trainer.hair)
outfitFilename = getTrainerSpriteOutfitFilename(clothes_id) #_INTL(Settings::PLAYER_GRAPHICS_FOLDER + Settings::PLAYER_CLOTHES_FOLDER + "/clothes_trainer_{1}", $Trainer.clothes) outfitFilename = getTrainerSpriteOutfitFilename(clothes_id) #_INTL(Settings::PLAYER_GRAPHICS_FOLDER + Settings::PLAYER_CLOTHES_FOLDER + "/clothes_trainer_{1}", $Trainer.clothes)
@@ -375,13 +376,14 @@ def duplicateHatForFrames(hatBitmap, frame_count)
return duplicatedBitmap return duplicatedBitmap
end end
def add_hat_to_bitmap(bitmap, hat_id, x_pos, y_pos, scale = 1, mirrored = false) def add_hat_to_bitmap(bitmap, hat_id, x_pos, y_pos, scale = 1, mirrored_horizontal = false, mirrored_vertical = false)
base_scale = 1.5 #coz hat & poke sprites aren't the same size base_scale = 1.5 #coz hat & poke sprites aren't the same size
adjusted_scale = base_scale * scale adjusted_scale = base_scale * scale
hat_filename = getTrainerSpriteHatFilename(hat_id) hat_filename = getTrainerSpriteHatFilename(hat_id)
hatBitmapWrapper = AnimatedBitmap.new(hat_filename, 0) if pbResolveBitmap(hat_filename) hatBitmapWrapper = AnimatedBitmap.new(hat_filename, 0) if pbResolveBitmap(hat_filename)
hatBitmapWrapper.scale_bitmap(adjusted_scale) if hatBitmapWrapper hatBitmapWrapper.scale_bitmap(adjusted_scale) if hatBitmapWrapper
hatBitmapWrapper.mirror if hatBitmapWrapper && mirrored hatBitmapWrapper.mirror_horizontally if hatBitmapWrapper && mirrored_horizontal
hatBitmapWrapper.mirror_vertically if hatBitmapWrapper && mirrored_vertical
bitmap.blt(x_pos * adjusted_scale, y_pos * adjusted_scale, hatBitmapWrapper.bitmap, hatBitmapWrapper.bitmap.rect) if hatBitmapWrapper bitmap.blt(x_pos * adjusted_scale, y_pos * adjusted_scale, hatBitmapWrapper.bitmap, hatBitmapWrapper.bitmap.rect) if hatBitmapWrapper
end end

View File

@@ -24,6 +24,10 @@ CLOTHES_WAITER = "butler"
CLOTHES_LASS_YELLOW ="lass" CLOTHES_LASS_YELLOW ="lass"
CLOTHES_LASS_BLUE ="lass2" CLOTHES_LASS_BLUE ="lass2"
CLOTHES_ROCKET_WHITE_M ="RocketJames"
CLOTHES_ROCKET_WHITE_F ="RocketJessie"
DEFAULT_OUTFIT_MALE = "red" DEFAULT_OUTFIT_MALE = "red"
DEFAULT_OUTFIT_FEMALE = "leaf" DEFAULT_OUTFIT_FEMALE = "leaf"
STARTING_OUTFIT = "pikajamas" STARTING_OUTFIT = "pikajamas"
@@ -47,7 +51,7 @@ HAT_ORAN = "orange"
HAT_FLOWERS = "grassexpert" HAT_FLOWERS = "grassexpert"
HAT_LUCHA = "hawluchamask" HAT_LUCHA = "hawluchamask"
HAT_EEVEE_EARS = "eeveeears"
HAT_PARASHROOM = "parashroom" HAT_PARASHROOM = "parashroom"
HAT_AERODACTYL = "aerodactylSkull" HAT_AERODACTYL = "aerodactylSkull"
HAT_DUSKULL_MASK = "duskullmask" HAT_DUSKULL_MASK = "duskullmask"

View File

@@ -21,7 +21,8 @@ class PokemonHatPresenter
@min_y, @max_y = -120, 120 # Safe symmetric range @min_y, @max_y = -120, 120 # Safe symmetric range
@hatBitmapWrapper = AnimatedBitmap.new(@hatFilename, 0) if pbResolveBitmap(@hatFilename) @hatBitmapWrapper = AnimatedBitmap.new(@hatFilename, 0) if pbResolveBitmap(@hatFilename)
@hatBitmapWrapper.mirror_horizontally if @hatBitmapWrapper && @hat_mirrored_horizontal
@hatBitmapWrapper.mirror_vertically if @hatBitmapWrapper && @hat_mirrored_vertical
end end
def pbStartScreen def pbStartScreen
@@ -66,7 +67,7 @@ class PokemonHatPresenter
return false if Input.trigger?(Input::BACK) return false if Input.trigger?(Input::BACK)
@view.update() @view.update()
end end
@pokemon.hat = @hat_id updatePokemonHatPosition
@view.hide_select_arrows @view.hide_select_arrows
end end
@@ -89,13 +90,21 @@ class PokemonHatPresenter
return false if Input.trigger?(Input::BACK) return false if Input.trigger?(Input::BACK)
@view.update() @view.update()
end end
resetHatVisualFlip
@view.hide_move_arrows @view.hide_move_arrows
return true return true
end end
#Let the sprite display stuff handle the actual flipping
def resetHatVisualFlip
return unless @hatBitmapWrapper
@hatBitmapWrapper.mirror_horizontally if @hat_mirrored_horizontal
@hatBitmapWrapper.mirror_vertically if @hat_mirrored_vertical
end
def flipHatHorizontally() def flipHatHorizontally()
return unless @hatBitmapWrapper
@hat_mirrored_horizontal = !@hat_mirrored_horizontal @hat_mirrored_horizontal = !@hat_mirrored_horizontal
pbSEPlay("GUI storage pick up") pbSEPlay("GUI storage pick up")
@hatBitmapWrapper.mirror_horizontally @hatBitmapWrapper.mirror_horizontally
@@ -104,6 +113,7 @@ class PokemonHatPresenter
def flipHatVertically() def flipHatVertically()
return unless @hatBitmapWrapper
pbSEPlay("GUI storage pick up") pbSEPlay("GUI storage pick up")
@hat_mirrored_vertical = !@hat_mirrored_vertical @hat_mirrored_vertical = !@hat_mirrored_vertical
@hatBitmapWrapper.mirror_vertically @hatBitmapWrapper.mirror_vertically

View File

@@ -63,8 +63,8 @@ TYPE_EXPERT_TRAINERS = {
:ROCK => ["Slate", _INTL("Looks like Ive hit rock bottom...")], :ROCK => ["Slate", _INTL("Looks like Ive hit rock bottom...")],
:WATER => ["Marina", _INTL("You really made a splash!")], :WATER => ["Marina", _INTL("You really made a splash!")],
:FLYING => ["Gale", _INTL("I guess Im grounded for now.")], :FLYING => ["Gale", _INTL("I guess Im grounded for now.")],
:DARK => ["Raven", _INTL("Ill slip back into the shadows")], :DARK => ["Gerard", _INTL("I guess I'll slip back into the shadows...")],
:STEEL => ["Silvia", _INTL("I guess I was a bit rusty...")], :STEEL => ["Silvia", _INTL("I was a bit rusty...")],
:PSYCHIC => ["Carl", _INTL("I could not foresee this defeat.")], :PSYCHIC => ["Carl", _INTL("I could not foresee this defeat.")],
:GHOST => ["Evangeline", _INTL("I can feel myself disappearing into thin air!")], :GHOST => ["Evangeline", _INTL("I can feel myself disappearing into thin air!")],
:POISON => ["Marie", _INTL("I got a taste of my own medicine!")], :POISON => ["Marie", _INTL("I got a taste of my own medicine!")],

View File

@@ -94,7 +94,7 @@ VAR_ROCKET_NAME=25
VAR_NB_CRIMES_REPORTED=300 VAR_NB_CRIMES_REPORTED=300
VAR_EXOTIC_POKEMON_ID=327 VAR_EXOTIC_POKEMON_ID=327
VAR_TYPE_EXPERTS_BEATEN=332 VAR_TYPE_EXPERTS_BEATEN=332
TOTAL_NB_TYPE_EXPERTS=331 #TOTAL_NB_TYPE_EXPERTS=331
#Randomizer #Randomizer
VAR_RANDOMIZER_WILD_POKE_BST=197 VAR_RANDOMIZER_WILD_POKE_BST=197

View File

@@ -1118,8 +1118,8 @@ ItemHandlers::UseOnPokemon.add(:POISONMUSHROOM, proc { |item, pkmn, scene|
next pbHPItem(pkmn, 10, scene) next pbHPItem(pkmn, 10, scene)
}) })
ItemHandlers::BattleUseOnPokemon.add(:POISONMUSHROOM, proc { |item, pokemon, battler, choices, scene| ItemHandlers::BattleUseOnPokemon.add(:POISONMUSHROOM, proc { |item, pokemon, battler, choices, scene|
if battler.status != :POISON if pokemon.status != :POISON
battler.status = :POISON pokemon.status = :POISON
scene.pbRefresh scene.pbRefresh
scene.pbDisplay(_INTL("{1} was poisoned from eating the mushroom.", pokemon.name)) scene.pbDisplay(_INTL("{1} was poisoned from eating the mushroom.", pokemon.name))
end end
@@ -1331,6 +1331,7 @@ ItemHandlers::BattleUseOnPokemon.add(:ROCKETMEAL, proc { |item, pokemon, battler
}) })
ItemHandlers::UseOnPokemon.add(:FANCYMEAL, proc { |item, pokemon, scene| ItemHandlers::UseOnPokemon.add(:FANCYMEAL, proc { |item, pokemon, scene|
next pbHPItem(pokemon, 100, scene) next pbHPItem(pokemon, 100, scene)
}) })
@@ -1343,6 +1344,7 @@ ItemHandlers::UseOnPokemon.add(:COFFEE, proc { |item, pokemon, scene|
}) })
ItemHandlers::BattleUseOnPokemon.add(:COFFEE, proc { |item, pokemon, battler, choices, scene| ItemHandlers::BattleUseOnPokemon.add(:COFFEE, proc { |item, pokemon, battler, choices, scene|
battler.pbRaiseStatStage(:SPEED,(Settings::X_STAT_ITEMS_RAISE_BY_TWO_STAGES) ? 2 : 1,battler) if battler
pbBattleHPItem(pokemon, battler, 50, scene) pbBattleHPItem(pokemon, battler, 50, scene)
}) })

View File

@@ -50,7 +50,7 @@ QUESTS = {
#Celadon City #Celadon City
"celadon_1" => Quest.new("celadon_1", _INTL("Sun or Moon"), _INTL("Show the Pokémon that Eevee evolves when exposed to a Moon or Sun stone to help the scientist with her research."), "BW (82)", _INTL("Celadon City"), HotelQuestColor), "celadon_1" => Quest.new("celadon_1", _INTL("Sun or Moon"), _INTL("Show the Pokémon that Eevee evolves when exposed to a Moon or Sun stone to help the scientist with her research."), "BW (82)", _INTL("Celadon City"), HotelQuestColor),
"celadon_2" => Quest.new("celadon_2", _INTL("For Whom the Bell Tolls"), _INTL("Ring Lavender Town's bell when the time is right to reveal its secret."), "BW (40)", _INTL("Lavender Town"), HotelQuestColor), "celadon_2" => Quest.new("celadon_2", _INTL("For Whom the Bell Tolls"), _INTL("Ring Lavender Town's bell when the time is right to reveal its secret."), "BW (40)", _INTL("Lavender Town"), HotelQuestColor),
"celadon_3" => Quest.new("celadon_3", _INTL("Hardboiled"), _INTL("A lady wants you to give her an egg to make an omelette.", "BW (24)"), _INTL("Celadon City"), HotelQuestColor), "celadon_3" => Quest.new("celadon_3", _INTL("Hardboiled"), _INTL("A lady wants you to give her an egg to make an omelette."), "BW (24)", _INTL("Celadon City"), HotelQuestColor),
"celadon_field_1" => Quest.new("celadon_field_1", _INTL("A stroll with Eevee!"), _INTL("Walk Eevee around for a while until it gets tired."), "BW (37)", _INTL("Celadon City"), FieldQuestColor), "celadon_field_1" => Quest.new("celadon_field_1", _INTL("A stroll with Eevee!"), _INTL("Walk Eevee around for a while until it gets tired."), "BW (37)", _INTL("Celadon City"), FieldQuestColor),
#Fuchsia City #Fuchsia City

View File

@@ -2,7 +2,7 @@ def spriteOptionsMenu
commands = [] commands = []
cmd_manual_update= _INTL("Update sprites manually") cmd_manual_update= _INTL("Update sprites manually")
cmd_clear_sprite_cache = _INTL("Clear sprite cache") cmd_clear_sprite_cache = _INTL("Clear sprite cache")
cmd_reset_alt_sprites = _INTL("Reset selected sprites") cmd_reset_alt_sprites = _INTL("Reset displayed alt sprites")
cmd_cancel = _INTL("Cancel") cmd_cancel = _INTL("Cancel")
commands << cmd_manual_update commands << cmd_manual_update
commands << cmd_clear_sprite_cache commands << cmd_clear_sprite_cache

View File

@@ -133,25 +133,26 @@ class PokemonStorageScreen
def multipleSelectedPokemonCommands(selected, pokemonCount) def multipleSelectedPokemonCommands(selected, pokemonCount)
commands = [] commands = []
cmdMove = -1 cmdMove = _INTL("Move")
cmdRelease = -1 cmdRelease = _INTL("Release")
cmdCancel = -1 cmdCancel = _INTL("Cancel")
cmdSort = -1 cmdSort = _INTL("Sort")
helptext = _INTL("Selected {1} Pokémon.", pokemonCount) helptext = _INTL("Selected {1} Pokémon.", pokemonCount)
commands[cmdMove = commands.length] = _INTL("Move") commands << cmdMove
commands[cmdSort = commands.length] = _INTL("Sort") commands << cmdSort
commands[cmdRelease = commands.length] = _INTL("Release") if $DEBUG commands << cmdRelease if $DEBUG
commands[cmdCancel = commands.length] = _INTL("Cancel") commands << cmdCancel
command = pbShowCommands(helptext, commands) chosen = pbShowCommands(helptext, commands)
if command == cmdMove case commands[chosen]
when cmdMove
pbHoldMulti(selected[0], selected[1]) pbHoldMulti(selected[0], selected[1])
elsif command == cmdSort when cmdSort
pbSortMulti(selected[0]) pbSortMulti(selected[0])
elsif command == cmdRelease when cmdRelease
pbReleaseMulti(selected[0]) pbReleaseMulti(selected[0])
end end
end end

View File

@@ -1,4 +1,13 @@
def exportTeamForShowdown()
message = ""
for pokemon in $Trainer.party
message << exportFusedPokemonForShowdown(pokemon)
message << "\n"
end
Input.clipboard = message
end
# Output example # Output example
# Clefnair (Clefable) @ Life Orb # Clefnair (Clefable) @ Life Orb
# Ability: Magic Guard # Ability: Magic Guard

View File

@@ -27,7 +27,7 @@ def initializeLegendaryMode()
$game_switches[SWITCH_GYM_RANDOM_EACH_BATTLE] = false $game_switches[SWITCH_GYM_RANDOM_EACH_BATTLE] = false
$game_switches[SWITCH_RANDOM_GYM_PERSIST_TEAMS] = true $game_switches[SWITCH_RANDOM_GYM_PERSIST_TEAMS] = true
$game_switches[SWITCH_LEGENDARY_MODE] = true $game_switches[SWITCH_LEGENDARY_MODE] = true
$game_switches[SWITCH_RANDOMIZED_AT_LEAST_ONCE] = true
addLegendaryEggsToPC addLegendaryEggsToPC
$PokemonSystem.hide_custom_eggs = true $PokemonSystem.hide_custom_eggs = true
$PokemonSystem.type_icons = true $PokemonSystem.type_icons = true

View File

@@ -47,7 +47,7 @@ module Settings
AI_ENTRIES_RATE_LOG_FILE = 'Data/pokedex/rate_limit.log' # Path to the log file AI_ENTRIES_RATE_LOG_FILE = 'Data/pokedex/rate_limit.log' # Path to the log file
#Spritepack #Spritepack
NEWEST_SPRITEPACK_MONTH = 8 NEWEST_SPRITEPACK_MONTH = 9
NEWEST_SPRITEPACK_YEAR = 2025 NEWEST_SPRITEPACK_YEAR = 2025

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 671 B