diff --git a/Data/Actors.rxdata b/Data/Actors.rxdata index 41edc8e26..7967a5432 100644 Binary files a/Data/Actors.rxdata and b/Data/Actors.rxdata differ diff --git a/Data/Animations.rxdata b/Data/Animations.rxdata index 71336e1f0..a900929a9 100644 Binary files a/Data/Animations.rxdata and b/Data/Animations.rxdata differ diff --git a/Data/Armors.rxdata b/Data/Armors.rxdata index 901f2bb2b..2249bec14 100644 Binary files a/Data/Armors.rxdata and b/Data/Armors.rxdata differ diff --git a/Data/CommonEvents.rxdata b/Data/CommonEvents.rxdata index 2af9e8509..28e9dfed8 100644 Binary files a/Data/CommonEvents.rxdata and b/Data/CommonEvents.rxdata differ diff --git a/Data/Enemies.rxdata b/Data/Enemies.rxdata index be622f513..004ee903d 100644 Binary files a/Data/Enemies.rxdata and b/Data/Enemies.rxdata differ diff --git a/Data/Items.rxdata b/Data/Items.rxdata index fe767fa0b..3e62ba6d2 100644 Binary files a/Data/Items.rxdata and b/Data/Items.rxdata differ diff --git a/Data/MapInfos.rxdata b/Data/MapInfos.rxdata index 5a7859345..aab9398f2 100644 Binary files a/Data/MapInfos.rxdata and b/Data/MapInfos.rxdata differ diff --git a/Data/Scripts/012_Overworld/002_Battle triggering/001_Overworld_BattleStarting.rb b/Data/Scripts/012_Overworld/002_Battle triggering/001_Overworld_BattleStarting.rb index 5466eb601..6fef157aa 100644 --- a/Data/Scripts/012_Overworld/002_Battle triggering/001_Overworld_BattleStarting.rb +++ b/Data/Scripts/012_Overworld/002_Battle triggering/001_Overworld_BattleStarting.rb @@ -750,6 +750,7 @@ Events.onEndBattle += proc { |_sender,e| pbHoneyGather(pkmn) end pickUpTypeItemSetBonus() + qmarkMaskCheck() when 2, 5 # Lose, draw if !canLose $game_system.bgm_unpause diff --git a/Data/Scripts/015_Trainers and player/004_Player.rb b/Data/Scripts/015_Trainers and player/004_Player.rb index 7fa3eef2b..2b0504053 100644 --- a/Data/Scripts/015_Trainers and player/004_Player.rb +++ b/Data/Scripts/015_Trainers and player/004_Player.rb @@ -32,6 +32,8 @@ class Player < Trainer attr_accessor :card_background attr_accessor :unlocked_card_backgrounds + attr_accessor :seen_qmarks_sprite + # @return [Array] the player's Gym Badges (true if owned) attr_accessor :badges @@ -293,5 +295,7 @@ class Player < Trainer @card_background = Settings::DEFAULT_TRAINER_CARD_BG @unlocked_card_backgrounds = [@card_background] + + @seen_qmarks_sprite = false end end diff --git a/Data/Scripts/048_Fusion/Sprites/BattleSpriteLoader.rb b/Data/Scripts/048_Fusion/Sprites/BattleSpriteLoader.rb index 8fb7ed77c..d25521ff1 100644 --- a/Data/Scripts/048_Fusion/Sprites/BattleSpriteLoader.rb +++ b/Data/Scripts/048_Fusion/Sprites/BattleSpriteLoader.rb @@ -119,6 +119,7 @@ class BattleSpriteLoader new_extractor = get_sprite_extractor_instance(:AUTOGEN) return new_extractor.load_sprite(pif_sprite) else + $Trainer.seen_qmarks_sprite=true if $Trainer #If autogen or base sprite aren't able to load a sprite then we have nothing else to load -> show a ? instead. return AnimatedBitmap.new(Settings::DEFAULT_SPRITE_PATH) end diff --git a/Data/Scripts/050_Outfits/OutfitIds.rb b/Data/Scripts/050_Outfits/OutfitIds.rb index d12470524..ddd03dfe9 100644 --- a/Data/Scripts/050_Outfits/OutfitIds.rb +++ b/Data/Scripts/050_Outfits/OutfitIds.rb @@ -48,7 +48,7 @@ HAT_SLOWKING_SHELL = "slowking" HAT_ZOROARK = "banefulfoxmask" HAT_FROG = "froghat" HAT_SANTA = "santa" - +HAT_QMARKS = "glitzerset" HAT_BREEDER_1="breedervisor" HAT_BREEDER_2="breederbandana" diff --git a/Data/Scripts/052_AddOns/FusionSprites.rb b/Data/Scripts/052_AddOns/FusionSprites.rb index 210441cd3..90cb3d85b 100644 --- a/Data/Scripts/052_AddOns/FusionSprites.rb +++ b/Data/Scripts/052_AddOns/FusionSprites.rb @@ -9,7 +9,7 @@ module GameData else ret = self.front_sprite_bitmap(species, pkmn.shiny?, pkmn.bodyShiny?, pkmn.headShiny?) end - ret.scale_bitmap(pkmn.sprite_scale) #for pokemon with size differences + ret.scale_bitmap(pkmn.sprite_scale) if ret #for pokemon with size differences return ret end diff --git a/Data/Scripts/052_AddOns/GameplayUtils.rb b/Data/Scripts/052_AddOns/GameplayUtils.rb index 41af72aab..140517178 100644 --- a/Data/Scripts/052_AddOns/GameplayUtils.rb +++ b/Data/Scripts/052_AddOns/GameplayUtils.rb @@ -1698,4 +1698,12 @@ def failAllIncompleteRocketQuests() finishTRQuest("tr_celadon_3", :FAILURE) if trainer_quest.id == "tr_celadon_3" && !pbCompletedQuest?("tr_celadon_3") finishTRQuest("tr_celadon_4", :FAILURE) if trainer_quest.id == "tr_celadon_4" && !pbCompletedQuest?("tr_celadon_4") end +end + +def qmarkMaskCheck() + if $Trainer.seen_qmarks_sprite + unless hasHat?(HAT_QMARKS) + obtainHat(HAT_QMARKS) + end + end end \ No newline at end of file diff --git a/Data/Scripts/052_AddOns/IntroScreen.rb b/Data/Scripts/052_AddOns/IntroScreen.rb index 1c1696680..8b9711098 100644 --- a/Data/Scripts/052_AddOns/IntroScreen.rb +++ b/Data/Scripts/052_AddOns/IntroScreen.rb @@ -227,7 +227,11 @@ class GenOneStyle @sprites["2poke"].y = 100 @sprites["fpoke"] = Sprite.new(@viewport) - @sprites["fpoke"].bitmap = @spriteLoader.load_pif_sprite(random_fusion).bitmap + + fusedPoke = @spriteLoader.load_pif_sprite(random_fusion) + if fusedPoke + @sprites["fpoke"].bitmap = fusedPoke.bitmap + end @sprites["fpoke"].x = 125 @sprites["fpoke"].y = 100 @sprites["fpoke"].z = 999 @@ -401,8 +405,10 @@ class GenOneStyle @sprites["2poke"].bitmap = @spriteLoader.load_base_sprite(random_fusion_head).bitmap wait(150) - - @sprites["fpoke"].bitmap = @spriteLoader.load_pif_sprite(random_fusion).bitmap + fusedPoke = @spriteLoader.load_pif_sprite(random_fusion) + if fusedPoke + @sprites["fpoke"].bitmap = fusedPoke.bitmap + end end @sprites["fpoke"].opacity -= 10 diff --git a/Data/Skills.rxdata b/Data/Skills.rxdata index a45219f5e..61cba7ea2 100644 Binary files a/Data/Skills.rxdata and b/Data/Skills.rxdata differ diff --git a/Data/States.rxdata b/Data/States.rxdata index 868d49e59..0f9b4ae5d 100644 Binary files a/Data/States.rxdata and b/Data/States.rxdata differ diff --git a/Data/System.rxdata b/Data/System.rxdata index abe266be3..6af4e75e9 100644 Binary files a/Data/System.rxdata and b/Data/System.rxdata differ diff --git a/Data/Tilesets.rxdata b/Data/Tilesets.rxdata index 81118b37b..6fd4dee80 100644 Binary files a/Data/Tilesets.rxdata and b/Data/Tilesets.rxdata differ diff --git a/Data/Weapons.rxdata b/Data/Weapons.rxdata index c7ea19a7a..d9bd35260 100644 Binary files a/Data/Weapons.rxdata and b/Data/Weapons.rxdata differ diff --git a/Data/outfits/hats_data.json b/Data/outfits/hats_data.json index 95677a39c..f6f1e6def 100644 --- a/Data/outfits/hats_data.json +++ b/Data/outfits/hats_data.json @@ -366,6 +366,13 @@ "tags": "hat,trainer", "howToGet": "gym reward" }, + { + "id": "glitzerset", + "name": "Glitched Mask", + "description": "An odd mask that makes you look like you just stepped out of a corrupted save file. ", + "price": 10000, + "tags": "mask" + }, { "id": "glasses", "name": "Round Glasses", @@ -432,9 +439,14 @@ "done": "yes", "len": 63, "price": 10000, - "tags": "floating,", + "tags": "floating,pokemon-shedinja", "howToGet": "reward for beating the ilex forest shedinja encounter? reward for showing a shedinja to someone?" }, + { + "id": "headlacecovering", + "name": "Lace Covering", + "description": "A delicate seet-hrough lace covering that is worn over the head." + }, { "id": "headparas", "name": "Head Paras", @@ -813,7 +825,7 @@ }, { "id": "pikhatchuf", - "name": "Head Pikachu", + "name": "Head Pikachu (F)", "description": "A female Pikachu that has taken a liking to perching atop a trainer's head.", "done": "yes", "len": 75, @@ -823,7 +835,7 @@ }, { "id": "pikhatchum", - "name": "Head Pikachu", + "name": "Head Pikachu (M)", "description": "A male Pikachu that has taken a liking to perching atop a trainer's head.", "done": "yes", "len": 73, @@ -958,6 +970,12 @@ "price": 4500, "tags": "glasses,mask,pokemon-budew,pokemon-roselia,pokemon-roserade,celadon" }, + { + "id": "sableyemask", + "name": "Sableye Mask", + "price": 4500, + "tags": "mask,pokemon-sableye" + }, { "id": "sabrinasballs", "name": "Levitating Balls", @@ -1023,6 +1041,11 @@ "price": 3500, "tags": "hat,weather-cold,blackthorn,mahogany" }, + { + "id": "skittyTV", + "name": "Skitty TV", + "price": 5000 + }, { "id": "sleepmask", "name": "Mareep Sleep Mask", @@ -1140,6 +1163,13 @@ "price": 2500, "tags": "glasses,violet," }, + { + "id": "tvhead", + "name": "TV Head", + "description": "A TV worn as a helmet that could be used to watch replays of your Pokémon battles... If only it worked!", + "price": 4500, + "tags": "hat," + }, { "id": "veteranM", "name": "Black Flat Cap",