From 003bd54600679d3bacdd40a0919fdf5723b855a6 Mon Sep 17 00:00:00 2001 From: Bassoonian Date: Sat, 13 Jul 2024 12:02:18 +0200 Subject: [PATCH 01/11] Rename battle terrain to environment --- asm/macros/battle_script.inc | 4 +- data/battle_anim_scripts.s | 38 +-- data/battle_scripts_1.s | 4 +- .../building/anim_map.bin | Bin .../building/anim_tiles.png | Bin .../building/map.bin | Bin .../building/palette.pal | 0 .../building/palette2.pal | 0 .../building/palette3.pal | 0 .../building/tiles.png | Bin .../cave/anim_map.bin | Bin .../cave/anim_tiles.png | Bin .../cave/groudon.pal | 0 .../cave/map.bin | Bin .../cave/palette.pal | 0 .../cave/tiles.png | Bin .../long_grass/anim_map.bin | Bin .../long_grass/anim_tiles.png | Bin .../long_grass/map.bin | Bin .../long_grass/palette.pal | 0 .../long_grass/tiles.png | Bin .../plain/palette.pal | 0 .../pond_water/anim_map.bin | Bin .../pond_water/anim_tiles.png | Bin .../pond_water/map.bin | Bin .../pond_water/palette.pal | 0 .../pond_water/tiles.png | Bin .../rock/anim_map.bin | Bin .../rock/anim_tiles.png | Bin .../rock/map.bin | Bin .../rock/palette.pal | 0 .../rock/tiles.png | Bin .../sand/anim_map.bin | Bin .../sand/anim_tiles.png | Bin .../sand/map.bin | Bin .../sand/palette.pal | 0 .../sand/tiles.png | Bin .../sky/anim_map.bin | Bin .../sky/anim_tiles.png | Bin .../sky/map.bin | Bin .../sky/palette.pal | 0 .../sky/tiles.png | Bin .../stadium/battle_frontier.pal | 0 .../stadium/map.bin | Bin .../stadium/palette1.pal | 0 .../stadium/palette2.pal | 0 .../stadium/palette3.pal | 0 .../stadium/palette4.pal | 0 .../stadium/palette5.pal | 0 .../stadium/palette6.pal | 0 .../stadium/palette7.pal | 0 .../stadium/tiles.png | Bin .../tall_grass/anim_map.bin | Bin .../tall_grass/anim_tiles.png | Bin .../tall_grass/map.bin | Bin .../tall_grass/palette.pal | 0 .../tall_grass/tiles.png | Bin .../underwater/anim_map.bin | Bin .../underwater/anim_tiles.png | Bin .../underwater/map.bin | Bin .../underwater/palette.pal | 0 .../underwater/tiles.png | Bin .../water/anim_map.bin | Bin .../water/anim_tiles.png | Bin .../water/kyogre.pal | 0 .../water/map.bin | Bin .../water/palette.pal | 0 .../water/tiles.png | Bin include/battle.h | 2 +- include/battle_anim.h | 2 +- include/battle_controllers.h | 2 +- include/battle_setup.h | 2 +- include/constants/battle.h | 2 +- include/graphics.h | 132 ++++---- src/battle_anim_ground.c | 14 +- src/battle_anim_normal.c | 32 +- src/battle_anim_utility_funcs.c | 6 +- src/battle_bg.c | 306 +++++++++--------- src/battle_controllers.c | 4 +- src/battle_intro.c | 16 +- src/battle_main.c | 8 +- src/battle_script_commands.c | 24 +- src/battle_setup.c | 2 +- src/data/graphics/battle_environment.h | 88 +++++ src/data/graphics/battle_terrain.h | 88 ----- src/evolution_scene.c | 4 +- src/graphics.c | 2 +- src/pokeblock_feed.c | 4 +- 88 files changed, 393 insertions(+), 393 deletions(-) rename graphics/{battle_terrain => battle_environment}/building/anim_map.bin (100%) rename graphics/{battle_terrain => battle_environment}/building/anim_tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/building/map.bin (100%) rename graphics/{battle_terrain => battle_environment}/building/palette.pal (100%) rename graphics/{battle_terrain => battle_environment}/building/palette2.pal (100%) rename graphics/{battle_terrain => battle_environment}/building/palette3.pal (100%) rename graphics/{battle_terrain => battle_environment}/building/tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/cave/anim_map.bin (100%) rename graphics/{battle_terrain => battle_environment}/cave/anim_tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/cave/groudon.pal (100%) rename graphics/{battle_terrain => battle_environment}/cave/map.bin (100%) rename graphics/{battle_terrain => battle_environment}/cave/palette.pal (100%) rename graphics/{battle_terrain => battle_environment}/cave/tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/long_grass/anim_map.bin (100%) rename graphics/{battle_terrain => battle_environment}/long_grass/anim_tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/long_grass/map.bin (100%) rename graphics/{battle_terrain => battle_environment}/long_grass/palette.pal (100%) rename graphics/{battle_terrain => battle_environment}/long_grass/tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/plain/palette.pal (100%) rename graphics/{battle_terrain => battle_environment}/pond_water/anim_map.bin (100%) rename graphics/{battle_terrain => battle_environment}/pond_water/anim_tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/pond_water/map.bin (100%) rename graphics/{battle_terrain => battle_environment}/pond_water/palette.pal (100%) rename graphics/{battle_terrain => battle_environment}/pond_water/tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/rock/anim_map.bin (100%) rename graphics/{battle_terrain => battle_environment}/rock/anim_tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/rock/map.bin (100%) rename graphics/{battle_terrain => battle_environment}/rock/palette.pal (100%) rename graphics/{battle_terrain => battle_environment}/rock/tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/sand/anim_map.bin (100%) rename graphics/{battle_terrain => battle_environment}/sand/anim_tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/sand/map.bin (100%) rename graphics/{battle_terrain => battle_environment}/sand/palette.pal (100%) rename graphics/{battle_terrain => battle_environment}/sand/tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/sky/anim_map.bin (100%) rename graphics/{battle_terrain => battle_environment}/sky/anim_tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/sky/map.bin (100%) rename graphics/{battle_terrain => battle_environment}/sky/palette.pal (100%) rename graphics/{battle_terrain => battle_environment}/sky/tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/stadium/battle_frontier.pal (100%) rename graphics/{battle_terrain => battle_environment}/stadium/map.bin (100%) rename graphics/{battle_terrain => battle_environment}/stadium/palette1.pal (100%) rename graphics/{battle_terrain => battle_environment}/stadium/palette2.pal (100%) rename graphics/{battle_terrain => battle_environment}/stadium/palette3.pal (100%) rename graphics/{battle_terrain => battle_environment}/stadium/palette4.pal (100%) rename graphics/{battle_terrain => battle_environment}/stadium/palette5.pal (100%) rename graphics/{battle_terrain => battle_environment}/stadium/palette6.pal (100%) rename graphics/{battle_terrain => battle_environment}/stadium/palette7.pal (100%) rename graphics/{battle_terrain => battle_environment}/stadium/tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/tall_grass/anim_map.bin (100%) rename graphics/{battle_terrain => battle_environment}/tall_grass/anim_tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/tall_grass/map.bin (100%) rename graphics/{battle_terrain => battle_environment}/tall_grass/palette.pal (100%) rename graphics/{battle_terrain => battle_environment}/tall_grass/tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/underwater/anim_map.bin (100%) rename graphics/{battle_terrain => battle_environment}/underwater/anim_tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/underwater/map.bin (100%) rename graphics/{battle_terrain => battle_environment}/underwater/palette.pal (100%) rename graphics/{battle_terrain => battle_environment}/underwater/tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/water/anim_map.bin (100%) rename graphics/{battle_terrain => battle_environment}/water/anim_tiles.png (100%) rename graphics/{battle_terrain => battle_environment}/water/kyogre.pal (100%) rename graphics/{battle_terrain => battle_environment}/water/map.bin (100%) rename graphics/{battle_terrain => battle_environment}/water/palette.pal (100%) rename graphics/{battle_terrain => battle_environment}/water/tiles.png (100%) create mode 100644 src/data/graphics/battle_environment.h delete mode 100644 src/data/graphics/battle_terrain.h diff --git a/asm/macros/battle_script.inc b/asm/macros/battle_script.inc index ccb887327f..0bb9e072be 100644 --- a/asm/macros/battle_script.inc +++ b/asm/macros/battle_script.inc @@ -1044,7 +1044,7 @@ .byte 0xcb .endm - .macro callterrainattack + .macro callenvironmentattack .byte 0xcc .endm @@ -1192,7 +1192,7 @@ .4byte \ptr .endm - .macro settypetoterrain ptr:req + .macro settypetoenvironment ptr:req .byte 0xeb .4byte \ptr .endm diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index 4519761845..5fe714b58a 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -2097,7 +2097,7 @@ Move_MEAN_LOOK: Move_ROCK_THROW: loadspritegfx ANIM_TAG_ROCKS - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_TARGET, 2, 6, 1, 15, 1 + createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_TARGET, 2, 6, 1, 15, 1 createsprite gFallingRockSpriteTemplate, ANIM_TARGET, 2, 0, 1, 0, 0 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 6 @@ -2119,7 +2119,7 @@ Move_ROCK_THROW: Move_ROCK_SLIDE: loadspritegfx ANIM_TAG_ROCKS monbg ANIM_DEF_PARTNER - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, 7, 1, 11, 1 + createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, 7, 1, 11, 1 createsprite gFallingRockSpriteTemplate, ANIM_TARGET, 2, -5, 1, -5, 1 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 @@ -2909,7 +2909,7 @@ Move_BARRAGE: createvisualtask AnimTask_BarrageBall, 3 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER delay 24 - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, 8, 1, 40, 1 + createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, 8, 1, 40, 1 createvisualtask AnimTask_ShakeMon, 3, ANIM_TARGET, 0, 4, 20, 1 createvisualtask AnimTask_ShakeMon, 3, ANIM_DEF_PARTNER, 0, 4, 20, 1 loopsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET, 8, 2 @@ -3660,7 +3660,7 @@ Move_SUPERPOWER: createsprite gSuperpowerOrbSpriteTemplate, ANIM_TARGET, 2, ANIM_ATTACKER playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER delay 20 - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 180, 1 + createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 180, 1 createvisualtask SoundTask_PlaySE2WithPanning, 5, SE_M_EARTHQUAKE, 0 delay 40 createsprite gSuperpowerRockSpriteTemplate, ANIM_ATTACKER, 41, 200, 96, 1, 120 @@ -5011,7 +5011,7 @@ SnoreEffect: playsewithpan SE_M_SNORE, SOUND_PAN_ATTACKER createvisualtask AnimTask_ScaleMonAndRestore, 5, -7, -7, 7, ANIM_ATTACKER, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 7, 1 - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, 6, 1, 14, 0, 0 + createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, 6, 1, 14, 0, 0 createsprite gSnoreZSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, -42, -38, 24, 0, 0 createsprite gSnoreZSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 0, -42, 24, 0, 0 createsprite gSnoreZSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 42, -38, 24, 0, 0 @@ -6871,7 +6871,7 @@ Move_ANCIENT_POWER: loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER setalpha 12, 8 - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 10, 1 + createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 10, 1 createsprite gAncientPowerRockSpriteTemplate, ANIM_ATTACKER, 2, 20, 32, -48, 50, 2 createsprite gAncientPowerRockSpriteTemplate, ANIM_ATTACKER, 2, 0, 32, -38, 25, 5 createsprite gAncientPowerRockSpriteTemplate, ANIM_ATTACKER, 2, 32, 32, -28, 40, 3 @@ -7292,14 +7292,14 @@ Move_METAL_CLAW: playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, -10, -10, 0 createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, -10, 10, 0 - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 + createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 delay 8 createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 6, 4 delay 2 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, 10, -10, 1 createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, 10, 10, 1 - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 + createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 waitforvisualfinish end @@ -8515,7 +8515,7 @@ HyperVoiceEffect: createsprite gHyperVoiceRingSpriteTemplate, ANIM_ATTACKER, 0, 45, 0, 0, 0, 0, 0, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 6, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 1, 0, 6, 1 - createvisualtask AnimTask_ShakeBattleTerrain, 2, 1, 0, 6, 1 + createvisualtask AnimTask_ShakeBattleEnvironment, 2, 1, 0, 6, 1 createvisualtask SoundTask_WaitForCry, 5 return @@ -8637,7 +8637,7 @@ Move_DRAGON_CLAW: createvisualtask SoundTask_PlaySE1WithPanning, 5, SE_M_RAZOR_WIND, SOUND_PAN_TARGET createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, -10, -10, 0 createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, -10, 10, 0 - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 + createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 32, 480, 20, 16, -46, ANIM_ATTACKER delay 2 createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 33, 576, 20, 8, 42, ANIM_ATTACKER @@ -8650,7 +8650,7 @@ Move_DRAGON_CLAW: createvisualtask SoundTask_PlaySE1WithPanning, 5, SE_M_RAZOR_WIND, SOUND_PAN_TARGET createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, 10, -10, 1 createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, 10, 10, 1 - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 + createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 33, 464, 30, 15, -50, ANIM_ATTACKER delay 2 createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 528, 30, 13, 50, ANIM_ATTACKER @@ -9111,7 +9111,7 @@ Move_BLAST_BURN: createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 70, 60, -30, 24, 0, 0, 0 createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 2, -4, 3, ANIM_TARGET, 0 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 12, 0, 20, 1 - createvisualtask AnimTask_ShakeBattleTerrain, 2, 2, 0, 10, 1 + createvisualtask AnimTask_ShakeBattleEnvironment, 2, 2, 0, 10, 1 createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 96, 0, 24, 0, 0, 0 createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 60, 30, 24, 0, 0, 0 createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, 0, 48, 24, 0, 0, 0 @@ -9125,32 +9125,32 @@ Move_BLAST_BURN: Move_ROCK_TOMB: loadspritegfx ANIM_TAG_X_SIGN loadspritegfx ANIM_TAG_ROCKS - createvisualtask AnimTask_ShakeBattleTerrain, 2, 2, 0, 10, 1 + createvisualtask AnimTask_ShakeBattleEnvironment, 2, 2, 0, 10, 1 waitforvisualfinish createsprite gRockTombRockSpriteTemplate, ANIM_TARGET, 2, 20, 12, 64, 114, 0 delay 8 - createvisualtask AnimTask_ShakeBattleTerrain, 2, 0, 2, 3, 1 + createvisualtask AnimTask_ShakeBattleEnvironment, 2, 0, 2, 3, 1 playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET delay 8 createsprite gRockTombRockSpriteTemplate, ANIM_TARGET, 2, -20, 12, 64, 98, 0 delay 8 - createvisualtask AnimTask_ShakeBattleTerrain, 2, 0, 2, 3, 1 + createvisualtask AnimTask_ShakeBattleEnvironment, 2, 0, 2, 3, 1 playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET delay 8 createsprite gRockTombRockSpriteTemplate, ANIM_TARGET, 66, 3, 6, 64, 82, 0 delay 8 - createvisualtask AnimTask_ShakeBattleTerrain, 2, 0, 2, 3, 1 + createvisualtask AnimTask_ShakeBattleEnvironment, 2, 0, 2, 3, 1 playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET delay 8 createsprite gRockTombRockSpriteTemplate, ANIM_TARGET, 2, -3, 13, 64, 66, 0 delay 8 - createvisualtask AnimTask_ShakeBattleTerrain, 2, 0, 2, 3, 1 + createvisualtask AnimTask_ShakeBattleEnvironment, 2, 0, 2, 3, 1 playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET delay 24 playsewithpan SE_M_HYPER_BEAM, SOUND_PAN_TARGET createsprite gRedXSpriteTemplate, ANIM_TARGET, 5, ANIM_TARGET, 50 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 3, 0, 20, 1 - createvisualtask AnimTask_ShakeBattleTerrain, 2, 2, 0, 10, 1 + createvisualtask AnimTask_ShakeBattleEnvironment, 2, 2, 0, 10, 1 waitforvisualfinish end @@ -9635,7 +9635,7 @@ Move_SKY_UPPERCUT: end Move_SECRET_POWER: - createvisualtask AnimTask_GetBattleTerrain, 5 + createvisualtask AnimTask_GetBattleEnvironment, 5 jumpargeq 0, BATTLE_TERRAIN_GRASS, Move_NEEDLE_ARM jumpargeq 0, BATTLE_TERRAIN_LONG_GRASS, Move_MAGICAL_LEAF jumpargeq 0, BATTLE_TERRAIN_SAND, Move_MUD_SHOT diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 0c0dc72831..00a40fbbb0 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -2289,7 +2289,7 @@ BattleScript_EffectNaturePower:: attackcanceler attackstring pause B_WAIT_TIME_SHORT - callterrainattack + callenvironmentattack printstring STRINGID_NATUREPOWERTURNEDINTO waitmessage B_WAIT_TIME_LONG return @@ -2799,7 +2799,7 @@ BattleScript_EffectCamouflage:: attackcanceler attackstring ppreduce - settypetoterrain BattleScript_ButItFailed + settypetoenvironment BattleScript_ButItFailed attackanimation waitanimation printstring STRINGID_PKMNCHANGEDTYPE diff --git a/graphics/battle_terrain/building/anim_map.bin b/graphics/battle_environment/building/anim_map.bin similarity index 100% rename from graphics/battle_terrain/building/anim_map.bin rename to graphics/battle_environment/building/anim_map.bin diff --git a/graphics/battle_terrain/building/anim_tiles.png b/graphics/battle_environment/building/anim_tiles.png similarity index 100% rename from graphics/battle_terrain/building/anim_tiles.png rename to graphics/battle_environment/building/anim_tiles.png diff --git a/graphics/battle_terrain/building/map.bin b/graphics/battle_environment/building/map.bin similarity index 100% rename from graphics/battle_terrain/building/map.bin rename to graphics/battle_environment/building/map.bin diff --git a/graphics/battle_terrain/building/palette.pal b/graphics/battle_environment/building/palette.pal similarity index 100% rename from graphics/battle_terrain/building/palette.pal rename to graphics/battle_environment/building/palette.pal diff --git a/graphics/battle_terrain/building/palette2.pal b/graphics/battle_environment/building/palette2.pal similarity index 100% rename from graphics/battle_terrain/building/palette2.pal rename to graphics/battle_environment/building/palette2.pal diff --git a/graphics/battle_terrain/building/palette3.pal b/graphics/battle_environment/building/palette3.pal similarity index 100% rename from graphics/battle_terrain/building/palette3.pal rename to graphics/battle_environment/building/palette3.pal diff --git a/graphics/battle_terrain/building/tiles.png b/graphics/battle_environment/building/tiles.png similarity index 100% rename from graphics/battle_terrain/building/tiles.png rename to graphics/battle_environment/building/tiles.png diff --git a/graphics/battle_terrain/cave/anim_map.bin b/graphics/battle_environment/cave/anim_map.bin similarity index 100% rename from graphics/battle_terrain/cave/anim_map.bin rename to graphics/battle_environment/cave/anim_map.bin diff --git a/graphics/battle_terrain/cave/anim_tiles.png b/graphics/battle_environment/cave/anim_tiles.png similarity index 100% rename from graphics/battle_terrain/cave/anim_tiles.png rename to graphics/battle_environment/cave/anim_tiles.png diff --git a/graphics/battle_terrain/cave/groudon.pal b/graphics/battle_environment/cave/groudon.pal similarity index 100% rename from graphics/battle_terrain/cave/groudon.pal rename to graphics/battle_environment/cave/groudon.pal diff --git a/graphics/battle_terrain/cave/map.bin b/graphics/battle_environment/cave/map.bin similarity index 100% rename from graphics/battle_terrain/cave/map.bin rename to graphics/battle_environment/cave/map.bin diff --git a/graphics/battle_terrain/cave/palette.pal b/graphics/battle_environment/cave/palette.pal similarity index 100% rename from graphics/battle_terrain/cave/palette.pal rename to graphics/battle_environment/cave/palette.pal diff --git a/graphics/battle_terrain/cave/tiles.png b/graphics/battle_environment/cave/tiles.png similarity index 100% rename from graphics/battle_terrain/cave/tiles.png rename to graphics/battle_environment/cave/tiles.png diff --git a/graphics/battle_terrain/long_grass/anim_map.bin b/graphics/battle_environment/long_grass/anim_map.bin similarity index 100% rename from graphics/battle_terrain/long_grass/anim_map.bin rename to graphics/battle_environment/long_grass/anim_map.bin diff --git a/graphics/battle_terrain/long_grass/anim_tiles.png b/graphics/battle_environment/long_grass/anim_tiles.png similarity index 100% rename from graphics/battle_terrain/long_grass/anim_tiles.png rename to graphics/battle_environment/long_grass/anim_tiles.png diff --git a/graphics/battle_terrain/long_grass/map.bin b/graphics/battle_environment/long_grass/map.bin similarity index 100% rename from graphics/battle_terrain/long_grass/map.bin rename to graphics/battle_environment/long_grass/map.bin diff --git a/graphics/battle_terrain/long_grass/palette.pal b/graphics/battle_environment/long_grass/palette.pal similarity index 100% rename from graphics/battle_terrain/long_grass/palette.pal rename to graphics/battle_environment/long_grass/palette.pal diff --git a/graphics/battle_terrain/long_grass/tiles.png b/graphics/battle_environment/long_grass/tiles.png similarity index 100% rename from graphics/battle_terrain/long_grass/tiles.png rename to graphics/battle_environment/long_grass/tiles.png diff --git a/graphics/battle_terrain/plain/palette.pal b/graphics/battle_environment/plain/palette.pal similarity index 100% rename from graphics/battle_terrain/plain/palette.pal rename to graphics/battle_environment/plain/palette.pal diff --git a/graphics/battle_terrain/pond_water/anim_map.bin b/graphics/battle_environment/pond_water/anim_map.bin similarity index 100% rename from graphics/battle_terrain/pond_water/anim_map.bin rename to graphics/battle_environment/pond_water/anim_map.bin diff --git a/graphics/battle_terrain/pond_water/anim_tiles.png b/graphics/battle_environment/pond_water/anim_tiles.png similarity index 100% rename from graphics/battle_terrain/pond_water/anim_tiles.png rename to graphics/battle_environment/pond_water/anim_tiles.png diff --git a/graphics/battle_terrain/pond_water/map.bin b/graphics/battle_environment/pond_water/map.bin similarity index 100% rename from graphics/battle_terrain/pond_water/map.bin rename to graphics/battle_environment/pond_water/map.bin diff --git a/graphics/battle_terrain/pond_water/palette.pal b/graphics/battle_environment/pond_water/palette.pal similarity index 100% rename from graphics/battle_terrain/pond_water/palette.pal rename to graphics/battle_environment/pond_water/palette.pal diff --git a/graphics/battle_terrain/pond_water/tiles.png b/graphics/battle_environment/pond_water/tiles.png similarity index 100% rename from graphics/battle_terrain/pond_water/tiles.png rename to graphics/battle_environment/pond_water/tiles.png diff --git a/graphics/battle_terrain/rock/anim_map.bin b/graphics/battle_environment/rock/anim_map.bin similarity index 100% rename from graphics/battle_terrain/rock/anim_map.bin rename to graphics/battle_environment/rock/anim_map.bin diff --git a/graphics/battle_terrain/rock/anim_tiles.png b/graphics/battle_environment/rock/anim_tiles.png similarity index 100% rename from graphics/battle_terrain/rock/anim_tiles.png rename to graphics/battle_environment/rock/anim_tiles.png diff --git a/graphics/battle_terrain/rock/map.bin b/graphics/battle_environment/rock/map.bin similarity index 100% rename from graphics/battle_terrain/rock/map.bin rename to graphics/battle_environment/rock/map.bin diff --git a/graphics/battle_terrain/rock/palette.pal b/graphics/battle_environment/rock/palette.pal similarity index 100% rename from graphics/battle_terrain/rock/palette.pal rename to graphics/battle_environment/rock/palette.pal diff --git a/graphics/battle_terrain/rock/tiles.png b/graphics/battle_environment/rock/tiles.png similarity index 100% rename from graphics/battle_terrain/rock/tiles.png rename to graphics/battle_environment/rock/tiles.png diff --git a/graphics/battle_terrain/sand/anim_map.bin b/graphics/battle_environment/sand/anim_map.bin similarity index 100% rename from graphics/battle_terrain/sand/anim_map.bin rename to graphics/battle_environment/sand/anim_map.bin diff --git a/graphics/battle_terrain/sand/anim_tiles.png b/graphics/battle_environment/sand/anim_tiles.png similarity index 100% rename from graphics/battle_terrain/sand/anim_tiles.png rename to graphics/battle_environment/sand/anim_tiles.png diff --git a/graphics/battle_terrain/sand/map.bin b/graphics/battle_environment/sand/map.bin similarity index 100% rename from graphics/battle_terrain/sand/map.bin rename to graphics/battle_environment/sand/map.bin diff --git a/graphics/battle_terrain/sand/palette.pal b/graphics/battle_environment/sand/palette.pal similarity index 100% rename from graphics/battle_terrain/sand/palette.pal rename to graphics/battle_environment/sand/palette.pal diff --git a/graphics/battle_terrain/sand/tiles.png b/graphics/battle_environment/sand/tiles.png similarity index 100% rename from graphics/battle_terrain/sand/tiles.png rename to graphics/battle_environment/sand/tiles.png diff --git a/graphics/battle_terrain/sky/anim_map.bin b/graphics/battle_environment/sky/anim_map.bin similarity index 100% rename from graphics/battle_terrain/sky/anim_map.bin rename to graphics/battle_environment/sky/anim_map.bin diff --git a/graphics/battle_terrain/sky/anim_tiles.png b/graphics/battle_environment/sky/anim_tiles.png similarity index 100% rename from graphics/battle_terrain/sky/anim_tiles.png rename to graphics/battle_environment/sky/anim_tiles.png diff --git a/graphics/battle_terrain/sky/map.bin b/graphics/battle_environment/sky/map.bin similarity index 100% rename from graphics/battle_terrain/sky/map.bin rename to graphics/battle_environment/sky/map.bin diff --git a/graphics/battle_terrain/sky/palette.pal b/graphics/battle_environment/sky/palette.pal similarity index 100% rename from graphics/battle_terrain/sky/palette.pal rename to graphics/battle_environment/sky/palette.pal diff --git a/graphics/battle_terrain/sky/tiles.png b/graphics/battle_environment/sky/tiles.png similarity index 100% rename from graphics/battle_terrain/sky/tiles.png rename to graphics/battle_environment/sky/tiles.png diff --git a/graphics/battle_terrain/stadium/battle_frontier.pal b/graphics/battle_environment/stadium/battle_frontier.pal similarity index 100% rename from graphics/battle_terrain/stadium/battle_frontier.pal rename to graphics/battle_environment/stadium/battle_frontier.pal diff --git a/graphics/battle_terrain/stadium/map.bin b/graphics/battle_environment/stadium/map.bin similarity index 100% rename from graphics/battle_terrain/stadium/map.bin rename to graphics/battle_environment/stadium/map.bin diff --git a/graphics/battle_terrain/stadium/palette1.pal b/graphics/battle_environment/stadium/palette1.pal similarity index 100% rename from graphics/battle_terrain/stadium/palette1.pal rename to graphics/battle_environment/stadium/palette1.pal diff --git a/graphics/battle_terrain/stadium/palette2.pal b/graphics/battle_environment/stadium/palette2.pal similarity index 100% rename from graphics/battle_terrain/stadium/palette2.pal rename to graphics/battle_environment/stadium/palette2.pal diff --git a/graphics/battle_terrain/stadium/palette3.pal b/graphics/battle_environment/stadium/palette3.pal similarity index 100% rename from graphics/battle_terrain/stadium/palette3.pal rename to graphics/battle_environment/stadium/palette3.pal diff --git a/graphics/battle_terrain/stadium/palette4.pal b/graphics/battle_environment/stadium/palette4.pal similarity index 100% rename from graphics/battle_terrain/stadium/palette4.pal rename to graphics/battle_environment/stadium/palette4.pal diff --git a/graphics/battle_terrain/stadium/palette5.pal b/graphics/battle_environment/stadium/palette5.pal similarity index 100% rename from graphics/battle_terrain/stadium/palette5.pal rename to graphics/battle_environment/stadium/palette5.pal diff --git a/graphics/battle_terrain/stadium/palette6.pal b/graphics/battle_environment/stadium/palette6.pal similarity index 100% rename from graphics/battle_terrain/stadium/palette6.pal rename to graphics/battle_environment/stadium/palette6.pal diff --git a/graphics/battle_terrain/stadium/palette7.pal b/graphics/battle_environment/stadium/palette7.pal similarity index 100% rename from graphics/battle_terrain/stadium/palette7.pal rename to graphics/battle_environment/stadium/palette7.pal diff --git a/graphics/battle_terrain/stadium/tiles.png b/graphics/battle_environment/stadium/tiles.png similarity index 100% rename from graphics/battle_terrain/stadium/tiles.png rename to graphics/battle_environment/stadium/tiles.png diff --git a/graphics/battle_terrain/tall_grass/anim_map.bin b/graphics/battle_environment/tall_grass/anim_map.bin similarity index 100% rename from graphics/battle_terrain/tall_grass/anim_map.bin rename to graphics/battle_environment/tall_grass/anim_map.bin diff --git a/graphics/battle_terrain/tall_grass/anim_tiles.png b/graphics/battle_environment/tall_grass/anim_tiles.png similarity index 100% rename from graphics/battle_terrain/tall_grass/anim_tiles.png rename to graphics/battle_environment/tall_grass/anim_tiles.png diff --git a/graphics/battle_terrain/tall_grass/map.bin b/graphics/battle_environment/tall_grass/map.bin similarity index 100% rename from graphics/battle_terrain/tall_grass/map.bin rename to graphics/battle_environment/tall_grass/map.bin diff --git a/graphics/battle_terrain/tall_grass/palette.pal b/graphics/battle_environment/tall_grass/palette.pal similarity index 100% rename from graphics/battle_terrain/tall_grass/palette.pal rename to graphics/battle_environment/tall_grass/palette.pal diff --git a/graphics/battle_terrain/tall_grass/tiles.png b/graphics/battle_environment/tall_grass/tiles.png similarity index 100% rename from graphics/battle_terrain/tall_grass/tiles.png rename to graphics/battle_environment/tall_grass/tiles.png diff --git a/graphics/battle_terrain/underwater/anim_map.bin b/graphics/battle_environment/underwater/anim_map.bin similarity index 100% rename from graphics/battle_terrain/underwater/anim_map.bin rename to graphics/battle_environment/underwater/anim_map.bin diff --git a/graphics/battle_terrain/underwater/anim_tiles.png b/graphics/battle_environment/underwater/anim_tiles.png similarity index 100% rename from graphics/battle_terrain/underwater/anim_tiles.png rename to graphics/battle_environment/underwater/anim_tiles.png diff --git a/graphics/battle_terrain/underwater/map.bin b/graphics/battle_environment/underwater/map.bin similarity index 100% rename from graphics/battle_terrain/underwater/map.bin rename to graphics/battle_environment/underwater/map.bin diff --git a/graphics/battle_terrain/underwater/palette.pal b/graphics/battle_environment/underwater/palette.pal similarity index 100% rename from graphics/battle_terrain/underwater/palette.pal rename to graphics/battle_environment/underwater/palette.pal diff --git a/graphics/battle_terrain/underwater/tiles.png b/graphics/battle_environment/underwater/tiles.png similarity index 100% rename from graphics/battle_terrain/underwater/tiles.png rename to graphics/battle_environment/underwater/tiles.png diff --git a/graphics/battle_terrain/water/anim_map.bin b/graphics/battle_environment/water/anim_map.bin similarity index 100% rename from graphics/battle_terrain/water/anim_map.bin rename to graphics/battle_environment/water/anim_map.bin diff --git a/graphics/battle_terrain/water/anim_tiles.png b/graphics/battle_environment/water/anim_tiles.png similarity index 100% rename from graphics/battle_terrain/water/anim_tiles.png rename to graphics/battle_environment/water/anim_tiles.png diff --git a/graphics/battle_terrain/water/kyogre.pal b/graphics/battle_environment/water/kyogre.pal similarity index 100% rename from graphics/battle_terrain/water/kyogre.pal rename to graphics/battle_environment/water/kyogre.pal diff --git a/graphics/battle_terrain/water/map.bin b/graphics/battle_environment/water/map.bin similarity index 100% rename from graphics/battle_terrain/water/map.bin rename to graphics/battle_environment/water/map.bin diff --git a/graphics/battle_terrain/water/palette.pal b/graphics/battle_environment/water/palette.pal similarity index 100% rename from graphics/battle_terrain/water/palette.pal rename to graphics/battle_environment/water/palette.pal diff --git a/graphics/battle_terrain/water/tiles.png b/graphics/battle_environment/water/tiles.png similarity index 100% rename from graphics/battle_terrain/water/tiles.png rename to graphics/battle_environment/water/tiles.png diff --git a/include/battle.h b/include/battle.h index 6c4d780186..8031d808a7 100644 --- a/include/battle.h +++ b/include/battle.h @@ -626,7 +626,7 @@ extern u8 gBattleTextBuff1[TEXT_BUFF_ARRAY_COUNT]; extern u8 gBattleTextBuff2[TEXT_BUFF_ARRAY_COUNT]; extern u8 gBattleTextBuff3[TEXT_BUFF_ARRAY_COUNT]; extern u32 gBattleTypeFlags; -extern u8 gBattleTerrain; +extern u8 gBattleEnvironment; extern u32 gUnusedFirstBattleVar1; extern u8 *gBattleAnimBgTileBuffer; extern u8 *gBattleAnimBgTilemapBuffer; diff --git a/include/battle_anim.h b/include/battle_anim.h index 455bf5f4cd..ffb63bde61 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -70,7 +70,7 @@ void ResetBattleAnimBg(bool8); // battle_intro.c void SetAnimBgAttribute(u8 bgId, u8 attributeId, u8 value); void DrawBattlerOnBg(int bgId, u8 x, u8 y, u8 battlerPosition, u8 paletteId, u8 *tiles, u16 *tilemap, u16 tilesOffset); -void HandleIntroSlide(u8 terrainId); +void HandleIntroSlide(u8 environmentId); int GetAnimBgAttribute(u8 bgId, u8 attributeId); // battle_anim_mons.c diff --git a/include/battle_controllers.h b/include/battle_controllers.h index 064c080f61..04cc613f85 100644 --- a/include/battle_controllers.h +++ b/include/battle_controllers.h @@ -233,7 +233,7 @@ void BtlController_EmitCantSwitch(u8 bufferId); void BtlController_EmitPlaySE(u8 bufferId, u16 songId); void BtlController_EmitPlayFanfareOrBGM(u8 bufferId, u16 songId, bool8 playBGM); void BtlController_EmitFaintingCry(u8 bufferId); -void BtlController_EmitIntroSlide(u8 bufferId, u8 terrainId); +void BtlController_EmitIntroSlide(u8 bufferId, u8 environmentId); void BtlController_EmitIntroTrainerBallThrow(u8 bufferId); void BtlController_EmitDrawPartyStatusSummary(u8 bufferId, struct HpAndStatus* hpAndStatus, u8 flags); void BtlController_EmitHidePartyStatusSummary(u8 bufferId); diff --git a/include/battle_setup.h b/include/battle_setup.h index ee2837927b..41ab138115 100644 --- a/include/battle_setup.h +++ b/include/battle_setup.h @@ -27,7 +27,7 @@ void BattleSetup_StartLatiBattle(void); void BattleSetup_StartLegendaryBattle(void); void StartGroudonKyogreBattle(void); void StartRegiBattle(void); -u8 BattleSetup_GetTerrainId(void); +u8 BattleSetup_GetEnvironmentId(void); u8 GetSpecialBattleTransition(s32 id); void ChooseStarter(void); void ResetTrainerOpponentIds(void); diff --git a/include/constants/battle.h b/include/constants/battle.h index 50c93083f8..a64dd347bc 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -296,7 +296,7 @@ #define MOVE_EFFECT_AFFECTS_USER (1 << 6) // 64 #define MOVE_EFFECT_CERTAIN (1 << 7) // 128 -// Battle terrain defines for gBattleTerrain. +// Battle environment defines for gBattleEnvironment. #define BATTLE_TERRAIN_GRASS 0 #define BATTLE_TERRAIN_LONG_GRASS 1 #define BATTLE_TERRAIN_SAND 2 diff --git a/include/graphics.h b/include/graphics.h index 9e2fb79539..c69326c39d 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -3215,72 +3215,72 @@ extern const u32 gBattleVSFrame_Tilemap[]; extern const u32 gMultiBattleIntroBg_Opponent_Tilemap[]; extern const u32 gMultiBattleIntroBg_Player_Tilemap[]; -// battle terrains -extern const u32 gBattleTerrainTiles_TallGrass[]; -extern const u32 gBattleTerrainTilemap_TallGrass[]; -extern const u32 gBattleTerrainAnimTiles_TallGrass[]; -extern const u32 gBattleTerrainAnimTilemap_TallGrass[]; -extern const u32 gBattleTerrainPalette_TallGrass[]; -extern const u32 gBattleTerrainTiles_LongGrass[]; -extern const u32 gBattleTerrainTilemap_LongGrass[]; -extern const u32 gBattleTerrainAnimTiles_LongGrass[]; -extern const u32 gBattleTerrainAnimTilemap_LongGrass[]; -extern const u32 gBattleTerrainPalette_LongGrass[]; -extern const u32 gBattleTerrainTiles_Sand[]; -extern const u32 gBattleTerrainTilemap_Sand[]; -extern const u32 gBattleTerrainAnimTiles_Sand[]; -extern const u32 gBattleTerrainAnimTilemap_Sand[]; -extern const u32 gBattleTerrainPalette_Sand[]; -extern const u32 gBattleTerrainTiles_Underwater[]; -extern const u32 gBattleTerrainTilemap_Underwater[]; -extern const u32 gBattleTerrainAnimTiles_Underwater[]; -extern const u32 gBattleTerrainAnimTilemap_Underwater[]; -extern const u32 gBattleTerrainPalette_Underwater[]; -extern const u32 gBattleTerrainTiles_Water[]; -extern const u32 gBattleTerrainTilemap_Water[]; -extern const u32 gBattleTerrainAnimTiles_Water[]; -extern const u32 gBattleTerrainAnimTilemap_Water[]; -extern const u32 gBattleTerrainPalette_Water[]; -extern const u32 gBattleTerrainTiles_PondWater[]; -extern const u32 gBattleTerrainTilemap_PondWater[]; -extern const u32 gBattleTerrainAnimTiles_PondWater[]; -extern const u32 gBattleTerrainAnimTilemap_PondWater[]; -extern const u32 gBattleTerrainPalette_PondWater[]; -extern const u32 gBattleTerrainTiles_Rock[]; -extern const u32 gBattleTerrainTilemap_Rock[]; -extern const u32 gBattleTerrainAnimTiles_Rock[]; -extern const u32 gBattleTerrainAnimTilemap_Rock[]; -extern const u32 gBattleTerrainPalette_Rock[]; -extern const u32 gBattleTerrainTiles_Cave[]; -extern const u32 gBattleTerrainTilemap_Cave[]; -extern const u32 gBattleTerrainAnimTiles_Cave[]; -extern const u32 gBattleTerrainAnimTilemap_Cave[]; -extern const u32 gBattleTerrainPalette_Cave[]; -extern const u32 gBattleTerrainTiles_Building[]; -extern const u32 gBattleTerrainTilemap_Building[]; -extern const u32 gBattleTerrainAnimTiles_Building[]; -extern const u32 gBattleTerrainAnimTilemap_Building[]; -extern const u32 gBattleTerrainPalette_Building[]; -extern const u32 gBattleTerrainPalette_Plain[]; -extern const u32 gBattleTerrainPalette_Frontier[]; -extern const u32 gBattleTerrainTiles_Stadium[]; -extern const u32 gBattleTerrainTilemap_Stadium[]; -extern const u32 gBattleTerrainTiles_Rayquaza[]; -extern const u32 gBattleTerrainTilemap_Rayquaza[]; -extern const u32 gBattleTerrainAnimTiles_Rayquaza[]; -extern const u32 gBattleTerrainAnimTilemap_Rayquaza[]; -extern const u32 gBattleTerrainPalette_Rayquaza[]; -extern const u32 gBattleTerrainPalette_Kyogre[]; -extern const u32 gBattleTerrainPalette_Groudon[]; -extern const u32 gBattleTerrainPalette_BuildingGym[]; -extern const u32 gBattleTerrainPalette_BuildingLeader[]; -extern const u32 gBattleTerrainPalette_StadiumAqua[]; -extern const u32 gBattleTerrainPalette_StadiumMagma[]; -extern const u32 gBattleTerrainPalette_StadiumSidney[]; -extern const u32 gBattleTerrainPalette_StadiumPhoebe[]; -extern const u32 gBattleTerrainPalette_StadiumGlacia[]; -extern const u32 gBattleTerrainPalette_StadiumDrake[]; -extern const u32 gBattleTerrainPalette_StadiumWallace[]; +// battle environments +extern const u32 gBattleEnvironmentTiles_TallGrass[]; +extern const u32 gBattleEnvironmentTilemap_TallGrass[]; +extern const u32 gBattleEnvironmentAnimTiles_TallGrass[]; +extern const u32 gBattleEnvironmentAnimTilemap_TallGrass[]; +extern const u32 gBattleEnvironmentPalette_TallGrass[]; +extern const u32 gBattleEnvironmentTiles_LongGrass[]; +extern const u32 gBattleEnvironmentTilemap_LongGrass[]; +extern const u32 gBattleEnvironmentAnimTiles_LongGrass[]; +extern const u32 gBattleEnvironmentAnimTilemap_LongGrass[]; +extern const u32 gBattleEnvironmentPalette_LongGrass[]; +extern const u32 gBattleEnvironmentTiles_Sand[]; +extern const u32 gBattleEnvironmentTilemap_Sand[]; +extern const u32 gBattleEnvironmentAnimTiles_Sand[]; +extern const u32 gBattleEnvironmentAnimTilemap_Sand[]; +extern const u32 gBattleEnvironmentPalette_Sand[]; +extern const u32 gBattleEnvironmentTiles_Underwater[]; +extern const u32 gBattleEnvironmentTilemap_Underwater[]; +extern const u32 gBattleEnvironmentAnimTiles_Underwater[]; +extern const u32 gBattleEnvironmentAnimTilemap_Underwater[]; +extern const u32 gBattleEnvironmentPalette_Underwater[]; +extern const u32 gBattleEnvironmentTiles_Water[]; +extern const u32 gBattleEnvironmentTilemap_Water[]; +extern const u32 gBattleEnvironmentAnimTiles_Water[]; +extern const u32 gBattleEnvironmentAnimTilemap_Water[]; +extern const u32 gBattleEnvironmentPalette_Water[]; +extern const u32 gBattleEnvironmentTiles_PondWater[]; +extern const u32 gBattleEnvironmentTilemap_PondWater[]; +extern const u32 gBattleEnvironmentAnimTiles_PondWater[]; +extern const u32 gBattleEnvironmentAnimTilemap_PondWater[]; +extern const u32 gBattleEnvironmentPalette_PondWater[]; +extern const u32 gBattleEnvironmentTiles_Rock[]; +extern const u32 gBattleEnvironmentTilemap_Rock[]; +extern const u32 gBattleEnvironmentAnimTiles_Rock[]; +extern const u32 gBattleEnvironmentAnimTilemap_Rock[]; +extern const u32 gBattleEnvironmentPalette_Rock[]; +extern const u32 gBattleEnvironmentTiles_Cave[]; +extern const u32 gBattleEnvironmentTilemap_Cave[]; +extern const u32 gBattleEnvironmentAnimTiles_Cave[]; +extern const u32 gBattleEnvironmentAnimTilemap_Cave[]; +extern const u32 gBattleEnvironmentPalette_Cave[]; +extern const u32 gBattleEnvironmentTiles_Building[]; +extern const u32 gBattleEnvironmentTilemap_Building[]; +extern const u32 gBattleEnvironmentAnimTiles_Building[]; +extern const u32 gBattleEnvironmentAnimTilemap_Building[]; +extern const u32 gBattleEnvironmentPalette_Building[]; +extern const u32 gBattleEnvironmentPalette_Plain[]; +extern const u32 gBattleEnvironmentPalette_Frontier[]; +extern const u32 gBattleEnvironmentTiles_Stadium[]; +extern const u32 gBattleEnvironmentTilemap_Stadium[]; +extern const u32 gBattleEnvironmentTiles_Rayquaza[]; +extern const u32 gBattleEnvironmentTilemap_Rayquaza[]; +extern const u32 gBattleEnvironmentAnimTiles_Rayquaza[]; +extern const u32 gBattleEnvironmentAnimTilemap_Rayquaza[]; +extern const u32 gBattleEnvironmentPalette_Rayquaza[]; +extern const u32 gBattleEnvironmentPalette_Kyogre[]; +extern const u32 gBattleEnvironmentPalette_Groudon[]; +extern const u32 gBattleEnvironmentPalette_BuildingGym[]; +extern const u32 gBattleEnvironmentPalette_BuildingLeader[]; +extern const u32 gBattleEnvironmentPalette_StadiumAqua[]; +extern const u32 gBattleEnvironmentPalette_StadiumMagma[]; +extern const u32 gBattleEnvironmentPalette_StadiumSidney[]; +extern const u32 gBattleEnvironmentPalette_StadiumPhoebe[]; +extern const u32 gBattleEnvironmentPalette_StadiumGlacia[]; +extern const u32 gBattleEnvironmentPalette_StadiumDrake[]; +extern const u32 gBattleEnvironmentPalette_StadiumWallace[]; // Pokédex extern const u32 gPokedexInterface_Gfx[]; diff --git a/src/battle_anim_ground.c b/src/battle_anim_ground.c index d6d8137bcd..d6234e5f96 100644 --- a/src/battle_anim_ground.c +++ b/src/battle_anim_ground.c @@ -22,7 +22,7 @@ static void AnimTask_DigEndBounceMovementSetInvisible(u8); static void AnimTask_DigSetVisibleUnderground(u8); static void AnimTask_DigRiseUpFromHole(u8); static void SetDigScanlineEffect(u8, s16, s16); -static void AnimTask_ShakeTerrain(u8); +static void AnimTask_ShakeEnvironment(u8); static void AnimTask_ShakeBattlers(u8); static void SetBattlersXOffsetForShake(struct Task *); static void WaitForFissureCompletion(u8); @@ -564,12 +564,12 @@ static void AnimDigDirtMound(struct Sprite *sprite) #define tMaxTime data[3] #define tbattlerSpriteIds(i) data[9 + (i)] #define tNumBattlers data[13] // AnimTask_ShakeBattlers -#define tInitialX data[13] // AnimTask_ShakeTerrain +#define tInitialX data[13] // AnimTask_ShakeEnvironment #define tHorizOffset data[14] #define tInitHorizOffset data[15] -// Shakes battler(s) or the battle terrain back and forth horizontally. Used by e.g. Earthquake, Eruption -// arg0: What to shake. 0-3 for any specific battler, MAX_BATTLERS_COUNT for all battlers, MAX_BATTLERS_COUNT + 1 for the terrain +// Shakes battler(s) or the battle environment back and forth horizontally. Used by e.g. Earthquake, Eruption +// arg0: What to shake. 0-3 for any specific battler, MAX_BATTLERS_COUNT for all battlers, MAX_BATTLERS_COUNT + 1 for the environment // arg1: Shake intensity, used to calculate horizontal pixel offset (if 0, use move power instead) // arg2: Length of time to shake for void AnimTask_HorizontalShake(u8 taskId) @@ -585,9 +585,9 @@ void AnimTask_HorizontalShake(u8 taskId) task->tMaxTime = gBattleAnimArgs[2]; switch (gBattleAnimArgs[0]) { - case MAX_BATTLERS_COUNT + 1: // Shake terrain + case MAX_BATTLERS_COUNT + 1: // Shake environment task->tInitialX = gBattle_BG3_X; - task->func = AnimTask_ShakeTerrain; + task->func = AnimTask_ShakeEnvironment; break; case MAX_BATTLERS_COUNT: // Shake all battlers task->tNumBattlers = 0; @@ -616,7 +616,7 @@ void AnimTask_HorizontalShake(u8 taskId) } } -static void AnimTask_ShakeTerrain(u8 taskId) +static void AnimTask_ShakeEnvironment(u8 taskId) { struct Task *task = &gTasks[taskId]; diff --git a/src/battle_anim_normal.c b/src/battle_anim_normal.c index 94bbb6ee4e..72d8a0745d 100644 --- a/src/battle_anim_normal.c +++ b/src/battle_anim_normal.c @@ -13,9 +13,9 @@ static void AnimComplexPaletteBlend(struct Sprite *); static void AnimComplexPaletteBlend_Step1(struct Sprite *); static void AnimComplexPaletteBlend_Step2(struct Sprite *); static void AnimCirclingSparkle(struct Sprite *); -static void AnimShakeMonOrBattleTerrain(struct Sprite *); -static void AnimShakeMonOrBattleTerrain_Step(struct Sprite *); -static void AnimShakeMonOrBattleTerrain_UpdateCoordOffsetEnabled(void); +static void AnimShakeMonOrBattleEnvironment(struct Sprite *); +static void AnimShakeMonOrBattleEnvironment_Step(struct Sprite *); +static void AnimShakeMonOrBattleEnvironment_UpdateCoordOffsetEnabled(void); static void AnimHitSplatBasic(struct Sprite *); static void AnimHitSplatPersistent(struct Sprite *); static void AnimHitSplatHandleInvert(struct Sprite *); @@ -33,7 +33,7 @@ static void BlendColorCycleByTag(u8, u8, u8); static void AnimTask_BlendColorCycleByTagLoop(u8); static void AnimTask_FlashAnimTagWithColor_Step1(u8); static void AnimTask_FlashAnimTagWithColor_Step2(u8); -static void AnimTask_ShakeBattleTerrain_Step(u8); +static void AnimTask_ShakeBattleEnvironment_Step(u8); static const union AnimCmd sAnim_ConfusionDuck_0[] = { @@ -119,7 +119,7 @@ static const struct SpriteTemplate sCirclingSparkleSpriteTemplate = .callback = AnimCirclingSparkle, }; -const struct SpriteTemplate gShakeMonOrTerrainSpriteTemplate = +const struct SpriteTemplate gShakeMonOrEnvironmentSpriteTemplate = { .tileTag = 0, .paletteTag = 0, @@ -127,7 +127,7 @@ const struct SpriteTemplate gShakeMonOrTerrainSpriteTemplate = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimShakeMonOrBattleTerrain, + .callback = AnimShakeMonOrBattleEnvironment, }; static const union AffineAnimCmd sAffineAnim_HitSplat_0[] = @@ -795,7 +795,7 @@ void AnimTask_TintPalettes(u8 taskId) #undef tColorG #undef tColorB -static void AnimShakeMonOrBattleTerrain(struct Sprite *sprite) +static void AnimShakeMonOrBattleEnvironment(struct Sprite *sprite) { u16 var0; @@ -825,12 +825,12 @@ static void AnimShakeMonOrBattleTerrain(struct Sprite *sprite) sprite->data[5] = gBattleAnimArgs[3]; var0 = sprite->data[5] - 2; if (var0 < 2) - AnimShakeMonOrBattleTerrain_UpdateCoordOffsetEnabled(); + AnimShakeMonOrBattleEnvironment_UpdateCoordOffsetEnabled(); - sprite->callback = AnimShakeMonOrBattleTerrain_Step; + sprite->callback = AnimShakeMonOrBattleEnvironment_Step; } -static void AnimShakeMonOrBattleTerrain_Step(struct Sprite *sprite) +static void AnimShakeMonOrBattleEnvironment_Step(struct Sprite *sprite) { u8 i; u16 var0; @@ -863,7 +863,7 @@ static void AnimShakeMonOrBattleTerrain_Step(struct Sprite *sprite) } } -static void AnimShakeMonOrBattleTerrain_UpdateCoordOffsetEnabled(void) +static void AnimShakeMonOrBattleEnvironment_UpdateCoordOffsetEnabled(void) { gSprites[gBattlerSpriteIds[gBattleAnimAttacker]].coordOffsetEnabled = FALSE; gSprites[gBattlerSpriteIds[gBattleAnimTarget]].coordOffsetEnabled = FALSE; @@ -882,19 +882,19 @@ static void AnimShakeMonOrBattleTerrain_UpdateCoordOffsetEnabled(void) } } -// Task data for AnimTask_ShakeBattleTerrain +// Task data for AnimTask_ShakeBattleEnvironment #define tXOffset data[0] #define tYOffset data[1] #define tNumShakes data[2] #define tTimer data[3] #define tShakeDelay data[8] -// Can shake battle terrain back and forth on the X or down and back to original pos on Y (cant shake up from orig pos) +// Can shake battle environment back and forth on the X or down and back to original pos on Y (cant shake up from orig pos) // arg0: x offset of shake // arg1: y offset of shake // arg2: number of shakes // arg3: time between shakes -void AnimTask_ShakeBattleTerrain(u8 taskId) +void AnimTask_ShakeBattleEnvironment(u8 taskId) { gTasks[taskId].tXOffset = gBattleAnimArgs[0]; gTasks[taskId].tYOffset = gBattleAnimArgs[1]; @@ -903,11 +903,11 @@ void AnimTask_ShakeBattleTerrain(u8 taskId) gTasks[taskId].tShakeDelay = gBattleAnimArgs[3]; gBattle_BG3_X = gBattleAnimArgs[0]; gBattle_BG3_Y = gBattleAnimArgs[1]; - gTasks[taskId].func = AnimTask_ShakeBattleTerrain_Step; + gTasks[taskId].func = AnimTask_ShakeBattleEnvironment_Step; gTasks[taskId].func(taskId); } -static void AnimTask_ShakeBattleTerrain_Step(u8 taskId) +static void AnimTask_ShakeBattleEnvironment_Step(u8 taskId) { if (gTasks[taskId].tTimer == 0) { diff --git a/src/battle_anim_utility_funcs.c b/src/battle_anim_utility_funcs.c index 18a599a4c1..5b50c43500 100644 --- a/src/battle_anim_utility_funcs.c +++ b/src/battle_anim_utility_funcs.c @@ -109,7 +109,7 @@ void AnimTask_BlendBattleAnimPalExclude(u8 taskId) void AnimTask_SetCamouflageBlend(u8 taskId) { u32 selectedPalettes = UnpackSelectedBattlePalettes(gBattleAnimArgs[0]); - switch (gBattleTerrain) + switch (gBattleEnvironment) { case BATTLE_TERRAIN_GRASS: gBattleAnimArgs[4] = RGB(12, 24, 2); @@ -937,9 +937,9 @@ static void UpdateMonScrollingBgMask(u8 taskId) } } -void AnimTask_GetBattleTerrain(u8 taskId) +void AnimTask_GetBattleEnvironment(u8 taskId) { - gBattleAnimArgs[0] = gBattleTerrain; + gBattleAnimArgs[0] = gBattleEnvironment; DestroyAnimVisualTask(taskId); } diff --git a/src/battle_bg.c b/src/battle_bg.c index 05073db96d..183e8f3b90 100644 --- a/src/battle_bg.c +++ b/src/battle_bg.c @@ -599,96 +599,96 @@ const struct WindowTemplate * const gBattleWindowTemplates[] = [B_WIN_TYPE_ARENA] = sBattleArenaWindowTemplates, }; -static const struct BattleBackground sBattleTerrainTable[] = +static const struct BattleBackground sBattleEnvironmentTable[] = { [BATTLE_TERRAIN_GRASS] = { - .tileset = gBattleTerrainTiles_TallGrass, - .tilemap = gBattleTerrainTilemap_TallGrass, - .entryTileset = gBattleTerrainAnimTiles_TallGrass, - .entryTilemap = gBattleTerrainAnimTilemap_TallGrass, - .palette = gBattleTerrainPalette_TallGrass, + .tileset = gBattleEnvironmentTiles_TallGrass, + .tilemap = gBattleEnvironmentTilemap_TallGrass, + .entryTileset = gBattleEnvironmentAnimTiles_TallGrass, + .entryTilemap = gBattleEnvironmentAnimTilemap_TallGrass, + .palette = gBattleEnvironmentPalette_TallGrass, }, [BATTLE_TERRAIN_LONG_GRASS] = { - .tileset = gBattleTerrainTiles_LongGrass, - .tilemap = gBattleTerrainTilemap_LongGrass, - .entryTileset = gBattleTerrainAnimTiles_LongGrass, - .entryTilemap = gBattleTerrainAnimTilemap_LongGrass, - .palette = gBattleTerrainPalette_LongGrass, + .tileset = gBattleEnvironmentTiles_LongGrass, + .tilemap = gBattleEnvironmentTilemap_LongGrass, + .entryTileset = gBattleEnvironmentAnimTiles_LongGrass, + .entryTilemap = gBattleEnvironmentAnimTilemap_LongGrass, + .palette = gBattleEnvironmentPalette_LongGrass, }, [BATTLE_TERRAIN_SAND] = { - .tileset = gBattleTerrainTiles_Sand, - .tilemap = gBattleTerrainTilemap_Sand, - .entryTileset = gBattleTerrainAnimTiles_Sand, - .entryTilemap = gBattleTerrainAnimTilemap_Sand, - .palette = gBattleTerrainPalette_Sand, + .tileset = gBattleEnvironmentTiles_Sand, + .tilemap = gBattleEnvironmentTilemap_Sand, + .entryTileset = gBattleEnvironmentAnimTiles_Sand, + .entryTilemap = gBattleEnvironmentAnimTilemap_Sand, + .palette = gBattleEnvironmentPalette_Sand, }, [BATTLE_TERRAIN_UNDERWATER] = { - .tileset = gBattleTerrainTiles_Underwater, - .tilemap = gBattleTerrainTilemap_Underwater, - .entryTileset = gBattleTerrainAnimTiles_Underwater, - .entryTilemap = gBattleTerrainAnimTilemap_Underwater, - .palette = gBattleTerrainPalette_Underwater, + .tileset = gBattleEnvironmentTiles_Underwater, + .tilemap = gBattleEnvironmentTilemap_Underwater, + .entryTileset = gBattleEnvironmentAnimTiles_Underwater, + .entryTilemap = gBattleEnvironmentAnimTilemap_Underwater, + .palette = gBattleEnvironmentPalette_Underwater, }, [BATTLE_TERRAIN_WATER] = { - .tileset = gBattleTerrainTiles_Water, - .tilemap = gBattleTerrainTilemap_Water, - .entryTileset = gBattleTerrainAnimTiles_Water, - .entryTilemap = gBattleTerrainAnimTilemap_Water, - .palette = gBattleTerrainPalette_Water, + .tileset = gBattleEnvironmentTiles_Water, + .tilemap = gBattleEnvironmentTilemap_Water, + .entryTileset = gBattleEnvironmentAnimTiles_Water, + .entryTilemap = gBattleEnvironmentAnimTilemap_Water, + .palette = gBattleEnvironmentPalette_Water, }, [BATTLE_TERRAIN_POND] = { - .tileset = gBattleTerrainTiles_PondWater, - .tilemap = gBattleTerrainTilemap_PondWater, - .entryTileset = gBattleTerrainAnimTiles_PondWater, - .entryTilemap = gBattleTerrainAnimTilemap_PondWater, - .palette = gBattleTerrainPalette_PondWater, + .tileset = gBattleEnvironmentTiles_PondWater, + .tilemap = gBattleEnvironmentTilemap_PondWater, + .entryTileset = gBattleEnvironmentAnimTiles_PondWater, + .entryTilemap = gBattleEnvironmentAnimTilemap_PondWater, + .palette = gBattleEnvironmentPalette_PondWater, }, [BATTLE_TERRAIN_MOUNTAIN] = { - .tileset = gBattleTerrainTiles_Rock, - .tilemap = gBattleTerrainTilemap_Rock, - .entryTileset = gBattleTerrainAnimTiles_Rock, - .entryTilemap = gBattleTerrainAnimTilemap_Rock, - .palette = gBattleTerrainPalette_Rock, + .tileset = gBattleEnvironmentTiles_Rock, + .tilemap = gBattleEnvironmentTilemap_Rock, + .entryTileset = gBattleEnvironmentAnimTiles_Rock, + .entryTilemap = gBattleEnvironmentAnimTilemap_Rock, + .palette = gBattleEnvironmentPalette_Rock, }, [BATTLE_TERRAIN_CAVE] = { - .tileset = gBattleTerrainTiles_Cave, - .tilemap = gBattleTerrainTilemap_Cave, - .entryTileset = gBattleTerrainAnimTiles_Cave, - .entryTilemap = gBattleTerrainAnimTilemap_Cave, - .palette = gBattleTerrainPalette_Cave, + .tileset = gBattleEnvironmentTiles_Cave, + .tilemap = gBattleEnvironmentTilemap_Cave, + .entryTileset = gBattleEnvironmentAnimTiles_Cave, + .entryTilemap = gBattleEnvironmentAnimTilemap_Cave, + .palette = gBattleEnvironmentPalette_Cave, }, [BATTLE_TERRAIN_BUILDING] = { - .tileset = gBattleTerrainTiles_Building, - .tilemap = gBattleTerrainTilemap_Building, - .entryTileset = gBattleTerrainAnimTiles_Building, - .entryTilemap = gBattleTerrainAnimTilemap_Building, - .palette = gBattleTerrainPalette_Building, + .tileset = gBattleEnvironmentTiles_Building, + .tilemap = gBattleEnvironmentTilemap_Building, + .entryTileset = gBattleEnvironmentAnimTiles_Building, + .entryTilemap = gBattleEnvironmentAnimTilemap_Building, + .palette = gBattleEnvironmentPalette_Building, }, [BATTLE_TERRAIN_PLAIN] = { - .tileset = gBattleTerrainTiles_Building, - .tilemap = gBattleTerrainTilemap_Building, - .entryTileset = gBattleTerrainAnimTiles_Building, - .entryTilemap = gBattleTerrainAnimTilemap_Building, - .palette = gBattleTerrainPalette_Plain, + .tileset = gBattleEnvironmentTiles_Building, + .tilemap = gBattleEnvironmentTilemap_Building, + .entryTileset = gBattleEnvironmentAnimTiles_Building, + .entryTilemap = gBattleEnvironmentAnimTilemap_Building, + .palette = gBattleEnvironmentPalette_Plain, }, }; @@ -761,27 +761,27 @@ void DrawMainBattleBackground(void) { if (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_FRONTIER | BATTLE_TYPE_EREADER_TRAINER | BATTLE_TYPE_RECORDED_LINK)) { - LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); - LoadCompressedPalette(gBattleTerrainPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LZDecompressVram(gBattleEnvironmentTiles_Building, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); + LoadCompressedPalette(gBattleEnvironmentPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); } else if (gBattleTypeFlags & BATTLE_TYPE_GROUDON) { - LZDecompressVram(gBattleTerrainTiles_Cave, (void *)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Cave, (void *)(BG_SCREEN_ADDR(26))); - LoadCompressedPalette(gBattleTerrainPalette_Groudon, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LZDecompressVram(gBattleEnvironmentTiles_Cave, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTilemap_Cave, (void *)(BG_SCREEN_ADDR(26))); + LoadCompressedPalette(gBattleEnvironmentPalette_Groudon, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); } else if (gBattleTypeFlags & BATTLE_TYPE_KYOGRE) { - LZDecompressVram(gBattleTerrainTiles_Water, (void *)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Water, (void *)(BG_SCREEN_ADDR(26))); - LoadCompressedPalette(gBattleTerrainPalette_Kyogre, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LZDecompressVram(gBattleEnvironmentTiles_Water, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTilemap_Water, (void *)(BG_SCREEN_ADDR(26))); + LoadCompressedPalette(gBattleEnvironmentPalette_Kyogre, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); } else if (gBattleTypeFlags & BATTLE_TYPE_RAYQUAZA) { - LZDecompressVram(gBattleTerrainTiles_Rayquaza, (void *)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Rayquaza, (void *)(BG_SCREEN_ADDR(26))); - LoadCompressedPalette(gBattleTerrainPalette_Rayquaza, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LZDecompressVram(gBattleEnvironmentTiles_Rayquaza, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTilemap_Rayquaza, (void *)(BG_SCREEN_ADDR(26))); + LoadCompressedPalette(gBattleEnvironmentPalette_Rayquaza, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); } else { @@ -790,16 +790,16 @@ void DrawMainBattleBackground(void) u8 trainerClass = gTrainers[gTrainerBattleOpponent_A].trainerClass; if (trainerClass == TRAINER_CLASS_LEADER) { - LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); - LoadCompressedPalette(gBattleTerrainPalette_BuildingLeader, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LZDecompressVram(gBattleEnvironmentTiles_Building, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); + LoadCompressedPalette(gBattleEnvironmentPalette_BuildingLeader, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); return; } else if (trainerClass == TRAINER_CLASS_CHAMPION) { - LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); - LoadCompressedPalette(gBattleTerrainPalette_StadiumWallace, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); + LoadCompressedPalette(gBattleEnvironmentPalette_StadiumWallace, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); return; } } @@ -808,49 +808,49 @@ void DrawMainBattleBackground(void) { default: case MAP_BATTLE_SCENE_NORMAL: - LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tileset, (void *)(BG_CHAR_ADDR(2))); - LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tilemap, (void *)(BG_SCREEN_ADDR(26))); - LoadCompressedPalette(sBattleTerrainTable[gBattleTerrain].palette, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LZDecompressVram(sBattleEnvironmentTable[gBattleEnvironment].tileset, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(sBattleEnvironmentTable[gBattleEnvironment].tilemap, (void *)(BG_SCREEN_ADDR(26))); + LoadCompressedPalette(sBattleEnvironmentTable[gBattleEnvironment].palette, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; case MAP_BATTLE_SCENE_GYM: - LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); - LoadCompressedPalette(gBattleTerrainPalette_BuildingGym, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LZDecompressVram(gBattleEnvironmentTiles_Building, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); + LoadCompressedPalette(gBattleEnvironmentPalette_BuildingGym, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; case MAP_BATTLE_SCENE_MAGMA: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); - LoadCompressedPalette(gBattleTerrainPalette_StadiumMagma, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); + LoadCompressedPalette(gBattleEnvironmentPalette_StadiumMagma, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; case MAP_BATTLE_SCENE_AQUA: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); - LoadCompressedPalette(gBattleTerrainPalette_StadiumAqua, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); + LoadCompressedPalette(gBattleEnvironmentPalette_StadiumAqua, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; case MAP_BATTLE_SCENE_SIDNEY: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); - LoadCompressedPalette(gBattleTerrainPalette_StadiumSidney, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); + LoadCompressedPalette(gBattleEnvironmentPalette_StadiumSidney, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; case MAP_BATTLE_SCENE_PHOEBE: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); - LoadCompressedPalette(gBattleTerrainPalette_StadiumPhoebe, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); + LoadCompressedPalette(gBattleEnvironmentPalette_StadiumPhoebe, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; case MAP_BATTLE_SCENE_GLACIA: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); - LoadCompressedPalette(gBattleTerrainPalette_StadiumGlacia, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); + LoadCompressedPalette(gBattleEnvironmentPalette_StadiumGlacia, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; case MAP_BATTLE_SCENE_DRAKE: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); - LoadCompressedPalette(gBattleTerrainPalette_StadiumDrake, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); + LoadCompressedPalette(gBattleEnvironmentPalette_StadiumDrake, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; case MAP_BATTLE_SCENE_FRONTIER: - LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2))); - LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); - LoadCompressedPalette(gBattleTerrainPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LZDecompressVram(gBattleEnvironmentTiles_Building, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); + LoadCompressedPalette(gBattleEnvironmentPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; } } @@ -1144,8 +1144,8 @@ void DrawBattleEntryBackground(void) { if (!(gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER) || gPartnerTrainerId == TRAINER_STEVEN_PARTNER) { - LZDecompressVram(gBattleTerrainAnimTiles_Building, (void *)(BG_CHAR_ADDR(1))); - LZDecompressVram(gBattleTerrainAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28))); + LZDecompressVram(gBattleEnvironmentAnimTiles_Building, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gBattleEnvironmentAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28))); } else { @@ -1161,18 +1161,18 @@ void DrawBattleEntryBackground(void) } else if (gBattleTypeFlags & BATTLE_TYPE_GROUDON) { - LZDecompressVram(gBattleTerrainAnimTiles_Cave, (void *)(BG_CHAR_ADDR(1))); - LZDecompressVram(gBattleTerrainAnimTilemap_Cave, (void *)(BG_SCREEN_ADDR(28))); + LZDecompressVram(gBattleEnvironmentAnimTiles_Cave, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gBattleEnvironmentAnimTilemap_Cave, (void *)(BG_SCREEN_ADDR(28))); } else if (gBattleTypeFlags & BATTLE_TYPE_KYOGRE) { - LZDecompressVram(gBattleTerrainAnimTiles_Underwater, (void *)(BG_CHAR_ADDR(1))); - LZDecompressVram(gBattleTerrainAnimTilemap_Underwater, (void *)(BG_SCREEN_ADDR(28))); + LZDecompressVram(gBattleEnvironmentAnimTiles_Underwater, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gBattleEnvironmentAnimTilemap_Underwater, (void *)(BG_SCREEN_ADDR(28))); } else if (gBattleTypeFlags & BATTLE_TYPE_RAYQUAZA) { - LZDecompressVram(gBattleTerrainAnimTiles_Rayquaza, (void *)(BG_CHAR_ADDR(1))); - LZDecompressVram(gBattleTerrainAnimTilemap_Rayquaza, (void *)(BG_SCREEN_ADDR(28))); + LZDecompressVram(gBattleEnvironmentAnimTiles_Rayquaza, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gBattleEnvironmentAnimTilemap_Rayquaza, (void *)(BG_SCREEN_ADDR(28))); } else { @@ -1181,27 +1181,27 @@ void DrawBattleEntryBackground(void) u8 trainerClass = gTrainers[gTrainerBattleOpponent_A].trainerClass; if (trainerClass == TRAINER_CLASS_LEADER) { - LZDecompressVram(gBattleTerrainAnimTiles_Building, (void *)(BG_CHAR_ADDR(1))); - LZDecompressVram(gBattleTerrainAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28))); + LZDecompressVram(gBattleEnvironmentAnimTiles_Building, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gBattleEnvironmentAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28))); return; } else if (trainerClass == TRAINER_CLASS_CHAMPION) { - LZDecompressVram(gBattleTerrainAnimTiles_Building, (void *)(BG_CHAR_ADDR(1))); - LZDecompressVram(gBattleTerrainAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28))); + LZDecompressVram(gBattleEnvironmentAnimTiles_Building, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gBattleEnvironmentAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28))); return; } } if (GetCurrentMapBattleScene() == MAP_BATTLE_SCENE_NORMAL) { - LZDecompressVram(sBattleTerrainTable[gBattleTerrain].entryTileset, (void *)(BG_CHAR_ADDR(1))); - LZDecompressVram(sBattleTerrainTable[gBattleTerrain].entryTilemap, (void *)(BG_SCREEN_ADDR(28))); + LZDecompressVram(sBattleEnvironmentTable[gBattleEnvironment].entryTileset, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(sBattleEnvironmentTable[gBattleEnvironment].entryTilemap, (void *)(BG_SCREEN_ADDR(28))); } else { - LZDecompressVram(gBattleTerrainAnimTiles_Building, (void *)(BG_CHAR_ADDR(1))); - LZDecompressVram(gBattleTerrainAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28))); + LZDecompressVram(gBattleEnvironmentAnimTiles_Building, (void *)(BG_CHAR_ADDR(1))); + LZDecompressVram(gBattleEnvironmentAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28))); } } } @@ -1225,11 +1225,11 @@ bool8 LoadChosenBattleElement(u8 caseId) case 3: if (gBattleTypeFlags & (BATTLE_TYPE_FRONTIER | BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED_LINK | BATTLE_TYPE_EREADER_TRAINER)) { - LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTiles_Building, (void *)(BG_CHAR_ADDR(2))); } else if (gBattleTypeFlags & BATTLE_TYPE_GROUDON) { - LZDecompressVram(gBattleTerrainTiles_Cave, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTiles_Cave, (void *)(BG_CHAR_ADDR(2))); } else { @@ -1238,12 +1238,12 @@ bool8 LoadChosenBattleElement(u8 caseId) u8 trainerClass = gTrainers[gTrainerBattleOpponent_A].trainerClass; if (trainerClass == TRAINER_CLASS_LEADER) { - LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTiles_Building, (void *)(BG_CHAR_ADDR(2))); break; } else if (trainerClass == TRAINER_CLASS_CHAMPION) { - LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); break; } } @@ -1252,31 +1252,31 @@ bool8 LoadChosenBattleElement(u8 caseId) { default: case MAP_BATTLE_SCENE_NORMAL: - LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tileset, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(sBattleEnvironmentTable[gBattleEnvironment].tileset, (void *)(BG_CHAR_ADDR(2))); break; case MAP_BATTLE_SCENE_GYM: - LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTiles_Building, (void *)(BG_CHAR_ADDR(2))); break; case MAP_BATTLE_SCENE_MAGMA: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); break; case MAP_BATTLE_SCENE_AQUA: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); break; case MAP_BATTLE_SCENE_SIDNEY: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); break; case MAP_BATTLE_SCENE_PHOEBE: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); break; case MAP_BATTLE_SCENE_GLACIA: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); break; case MAP_BATTLE_SCENE_DRAKE: - LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2))); break; case MAP_BATTLE_SCENE_FRONTIER: - LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2))); + LZDecompressVram(gBattleEnvironmentTiles_Building, (void *)(BG_CHAR_ADDR(2))); break; } } @@ -1284,14 +1284,14 @@ bool8 LoadChosenBattleElement(u8 caseId) case 4: if (gBattleTypeFlags & (BATTLE_TYPE_FRONTIER | BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED_LINK | BATTLE_TYPE_EREADER_TRAINER)) { - LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleEnvironmentTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); } else if (gBattleTypeFlags & BATTLE_TYPE_KYOGRE_GROUDON) { if (gGameVersion == VERSION_RUBY) - LZDecompressVram(gBattleTerrainTilemap_Cave, (void *)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleEnvironmentTilemap_Cave, (void *)(BG_SCREEN_ADDR(26))); else - LZDecompressVram(gBattleTerrainTilemap_Water, (void *)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleEnvironmentTilemap_Water, (void *)(BG_SCREEN_ADDR(26))); } else { @@ -1300,12 +1300,12 @@ bool8 LoadChosenBattleElement(u8 caseId) u8 trainerClass = gTrainers[gTrainerBattleOpponent_A].trainerClass; if (trainerClass == TRAINER_CLASS_LEADER) { - LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleEnvironmentTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); break; } else if (trainerClass == TRAINER_CLASS_CHAMPION) { - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); break; } } @@ -1314,31 +1314,31 @@ bool8 LoadChosenBattleElement(u8 caseId) { default: case MAP_BATTLE_SCENE_NORMAL: - LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tilemap, (void *)(BG_SCREEN_ADDR(26))); + LZDecompressVram(sBattleEnvironmentTable[gBattleEnvironment].tilemap, (void *)(BG_SCREEN_ADDR(26))); break; case MAP_BATTLE_SCENE_GYM: - LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleEnvironmentTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); break; case MAP_BATTLE_SCENE_MAGMA: - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); break; case MAP_BATTLE_SCENE_AQUA: - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); break; case MAP_BATTLE_SCENE_SIDNEY: - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); break; case MAP_BATTLE_SCENE_PHOEBE: - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); break; case MAP_BATTLE_SCENE_GLACIA: - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); break; case MAP_BATTLE_SCENE_DRAKE: - LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26))); break; case MAP_BATTLE_SCENE_FRONTIER: - LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); + LZDecompressVram(gBattleEnvironmentTilemap_Building, (void *)(BG_SCREEN_ADDR(26))); break; } } @@ -1346,14 +1346,14 @@ bool8 LoadChosenBattleElement(u8 caseId) case 5: if (gBattleTypeFlags & (BATTLE_TYPE_FRONTIER | BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED_LINK | BATTLE_TYPE_EREADER_TRAINER)) { - LoadCompressedPalette(gBattleTerrainPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LoadCompressedPalette(gBattleEnvironmentPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); } else if (gBattleTypeFlags & BATTLE_TYPE_KYOGRE_GROUDON) { if (gGameVersion == VERSION_RUBY) - LoadCompressedPalette(gBattleTerrainPalette_Groudon, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LoadCompressedPalette(gBattleEnvironmentPalette_Groudon, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); else - LoadCompressedPalette(gBattleTerrainPalette_Kyogre, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LoadCompressedPalette(gBattleEnvironmentPalette_Kyogre, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); } else { @@ -1362,12 +1362,12 @@ bool8 LoadChosenBattleElement(u8 caseId) u8 trainerClass = gTrainers[gTrainerBattleOpponent_A].trainerClass; if (trainerClass == TRAINER_CLASS_LEADER) { - LoadCompressedPalette(gBattleTerrainPalette_BuildingLeader, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LoadCompressedPalette(gBattleEnvironmentPalette_BuildingLeader, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; } else if (trainerClass == TRAINER_CLASS_CHAMPION) { - LoadCompressedPalette(gBattleTerrainPalette_StadiumWallace, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LoadCompressedPalette(gBattleEnvironmentPalette_StadiumWallace, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; } } @@ -1376,31 +1376,31 @@ bool8 LoadChosenBattleElement(u8 caseId) { default: case MAP_BATTLE_SCENE_NORMAL: - LoadCompressedPalette(sBattleTerrainTable[gBattleTerrain].palette, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LoadCompressedPalette(sBattleEnvironmentTable[gBattleEnvironment].palette, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; case MAP_BATTLE_SCENE_GYM: - LoadCompressedPalette(gBattleTerrainPalette_BuildingGym, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LoadCompressedPalette(gBattleEnvironmentPalette_BuildingGym, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; case MAP_BATTLE_SCENE_MAGMA: - LoadCompressedPalette(gBattleTerrainPalette_StadiumMagma, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LoadCompressedPalette(gBattleEnvironmentPalette_StadiumMagma, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; case MAP_BATTLE_SCENE_AQUA: - LoadCompressedPalette(gBattleTerrainPalette_StadiumAqua, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LoadCompressedPalette(gBattleEnvironmentPalette_StadiumAqua, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; case MAP_BATTLE_SCENE_SIDNEY: - LoadCompressedPalette(gBattleTerrainPalette_StadiumSidney, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LoadCompressedPalette(gBattleEnvironmentPalette_StadiumSidney, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; case MAP_BATTLE_SCENE_PHOEBE: - LoadCompressedPalette(gBattleTerrainPalette_StadiumPhoebe, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LoadCompressedPalette(gBattleEnvironmentPalette_StadiumPhoebe, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; case MAP_BATTLE_SCENE_GLACIA: - LoadCompressedPalette(gBattleTerrainPalette_StadiumGlacia, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LoadCompressedPalette(gBattleEnvironmentPalette_StadiumGlacia, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; case MAP_BATTLE_SCENE_DRAKE: - LoadCompressedPalette(gBattleTerrainPalette_StadiumDrake, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LoadCompressedPalette(gBattleEnvironmentPalette_StadiumDrake, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; case MAP_BATTLE_SCENE_FRONTIER: - LoadCompressedPalette(gBattleTerrainPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LoadCompressedPalette(gBattleEnvironmentPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; } } diff --git a/src/battle_controllers.c b/src/battle_controllers.c index 2ba5d4329d..02276a7e14 100644 --- a/src/battle_controllers.c +++ b/src/battle_controllers.c @@ -1417,10 +1417,10 @@ void BtlController_EmitFaintingCry(u8 bufferId) PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4); } -void BtlController_EmitIntroSlide(u8 bufferId, u8 terrainId) +void BtlController_EmitIntroSlide(u8 bufferId, u8 environmentId) { sBattleBuffersTransferData[0] = CONTROLLER_INTROSLIDE; - sBattleBuffersTransferData[1] = terrainId; + sBattleBuffersTransferData[1] = environmentId; PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2); } diff --git a/src/battle_intro.c b/src/battle_intro.c index 571c5e85a2..d31d3da398 100644 --- a/src/battle_intro.c +++ b/src/battle_intro.c @@ -100,9 +100,9 @@ int GetAnimBgAttribute(u8 bgId, u8 attributeId) } #define tState data[0] -#define tTerrain data[1] +#define tEnvironment data[1] -void HandleIntroSlide(u8 terrain) +void HandleIntroSlide(u8 environment) { u8 taskId; @@ -120,16 +120,16 @@ void HandleIntroSlide(u8 terrain) } else if ((gBattleTypeFlags & BATTLE_TYPE_KYOGRE_GROUDON) && gGameVersion != VERSION_RUBY) { - terrain = BATTLE_TERRAIN_UNDERWATER; + environment = BATTLE_TERRAIN_UNDERWATER; taskId = CreateTask(BattleIntroSlide2, 0); } else { - taskId = CreateTask(sBattleIntroSlideFuncs[terrain], 0); + taskId = CreateTask(sBattleIntroSlideFuncs[environment], 0); } gTasks[taskId].tState = 0; - gTasks[taskId].tTerrain = terrain; + gTasks[taskId].tEnvironment = environment; gTasks[taskId].data[2] = 0; gTasks[taskId].data[3] = 0; gTasks[taskId].data[4] = 0; @@ -194,7 +194,7 @@ static void BattleIntroSlide1(u8 taskId) } else { - if (gTasks[taskId].tTerrain == BATTLE_TERRAIN_LONG_GRASS) + if (gTasks[taskId].tEnvironment == BATTLE_TERRAIN_LONG_GRASS) { if (gBattle_BG1_Y != (u16)(-80)) gBattle_BG1_Y -= 2; @@ -240,7 +240,7 @@ static void BattleIntroSlide2(u8 taskId) { int i; - switch (gTasks[taskId].tTerrain) + switch (gTasks[taskId].tEnvironment) { case BATTLE_TERRAIN_SAND: case BATTLE_TERRAIN_WATER: @@ -251,7 +251,7 @@ static void BattleIntroSlide2(u8 taskId) break; } - if (gTasks[taskId].tTerrain == BATTLE_TERRAIN_WATER) + if (gTasks[taskId].tEnvironment == BATTLE_TERRAIN_WATER) { gBattle_BG1_Y = Cos2(gTasks[taskId].data[6]) / 512 - 8; if (gTasks[taskId].data[6] < 180) diff --git a/src/battle_main.c b/src/battle_main.c index c19089deb0..f964bbd458 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -144,7 +144,7 @@ EWRAM_DATA u8 gBattleTextBuff3[TEXT_BUFF_ARRAY_COUNT] = {0}; // it will instead overflow into useful data. EWRAM_DATA static u32 sFlickerArray[25] = {0}; EWRAM_DATA u32 gBattleTypeFlags = 0; -EWRAM_DATA u8 gBattleTerrain = 0; +EWRAM_DATA u8 gBattleEnvironment = 0; EWRAM_DATA u32 gUnusedFirstBattleVar1 = 0; // Never read EWRAM_DATA struct MultiPartnerMenuPokemon gMultiPartnerParty[MULTI_PARTY_SIZE] = {0}; EWRAM_DATA static struct MultiPartnerMenuPokemon* sMultiPartnerPartyBuffer = NULL; @@ -669,9 +669,9 @@ static void CB2_InitBattleInternal(void) gBattle_BG3_X = 0; gBattle_BG3_Y = 0; - gBattleTerrain = BattleSetup_GetTerrainId(); + gBattleEnvironment = BattleSetup_GetEnvironmentId(); if (gBattleTypeFlags & BATTLE_TYPE_RECORDED) - gBattleTerrain = BATTLE_TERRAIN_BUILDING; + gBattleEnvironment = BATTLE_TERRAIN_BUILDING; InitBattleBgsVideo(); LoadBattleTextboxAndBackground(); @@ -3378,7 +3378,7 @@ static void BattleIntroPrepareBackgroundSlide(void) if (gBattleControllerExecFlags == 0) { gActiveBattler = GetBattlerAtPosition(0); - BtlController_EmitIntroSlide(BUFFER_A, gBattleTerrain); + BtlController_EmitIntroSlide(BUFFER_A, gBattleEnvironment); MarkBattlerForControllerExec(gActiveBattler); gBattleMainFunc = BattleIntroDrawTrainersOrMonsSprites; gBattleCommunication[MULTIUSE_STATE] = 0; diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 49279bdb9c..976415c8b4 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -280,7 +280,7 @@ static void Cmd_sethail(void); static void Cmd_trymemento(void); static void Cmd_setforcedtarget(void); static void Cmd_setcharge(void); -static void Cmd_callterrainattack(void); +static void Cmd_callenvironmentattack(void); static void Cmd_cureifburnedparalysedorpoisoned(void); static void Cmd_settorment(void); static void Cmd_jumpifnodamage(void); @@ -311,7 +311,7 @@ static void Cmd_trycastformdatachange(void); static void Cmd_settypebasedhalvers(void); static void Cmd_setweatherballtype(void); static void Cmd_tryrecycleitem(void); -static void Cmd_settypetoterrain(void); +static void Cmd_settypetoenvironment(void); static void Cmd_pursuitdoubles(void); static void Cmd_snatchsetbattlers(void); static void Cmd_removelightscreenreflect(void); @@ -532,7 +532,7 @@ void (* const gBattleScriptingCommandsTable[])(void) = Cmd_trymemento, //0xC9 Cmd_setforcedtarget, //0xCA Cmd_setcharge, //0xCB - Cmd_callterrainattack, //0xCC + Cmd_callenvironmentattack, //0xCC Cmd_cureifburnedparalysedorpoisoned, //0xCD Cmd_settorment, //0xCE Cmd_jumpifnodamage, //0xCF @@ -563,7 +563,7 @@ void (* const gBattleScriptingCommandsTable[])(void) = Cmd_settypebasedhalvers, //0xE8 Cmd_setweatherballtype, //0xE9 Cmd_tryrecycleitem, //0xEA - Cmd_settypetoterrain, //0xEB + Cmd_settypetoenvironment, //0xEB Cmd_pursuitdoubles, //0xEC Cmd_snatchsetbattlers, //0xED Cmd_removelightscreenreflect, //0xEE @@ -823,7 +823,7 @@ static const u8 sPickupProbabilities[] = 30, 40, 50, 60, 70, 80, 90, 94, 98 }; -static const u8 sTerrainToType[] = +static const u8 sEnvironmentToType[] = { [BATTLE_TERRAIN_GRASS] = TYPE_GRASS, [BATTLE_TERRAIN_LONG_GRASS] = TYPE_GRASS, @@ -9033,10 +9033,10 @@ static void Cmd_setcharge(void) } // Nature Power -static void Cmd_callterrainattack(void) +static void Cmd_callenvironmentattack(void) { gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; - gCurrentMove = sNaturePowerMoves[gBattleTerrain]; + gCurrentMove = sNaturePowerMoves[gBattleEnvironment]; gBattlerTarget = GetMoveTarget(gCurrentMove, NO_TARGET_OVERRIDE); BattleScriptPush(gBattleScriptsForMoveEffects[gBattleMoves[gCurrentMove].effect]); gBattlescriptCurrInstr++; @@ -9545,7 +9545,7 @@ static void Cmd_jumpifhasnohp(void) static void Cmd_getsecretpowereffect(void) { - switch (gBattleTerrain) + switch (gBattleEnvironment) { case BATTLE_TERRAIN_GRASS: gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_POISON; @@ -9755,12 +9755,12 @@ static void Cmd_tryrecycleitem(void) } } -static void Cmd_settypetoterrain(void) +static void Cmd_settypetoenvironment(void) { - if (!IS_BATTLER_OF_TYPE(gBattlerAttacker, sTerrainToType[gBattleTerrain])) + if (!IS_BATTLER_OF_TYPE(gBattlerAttacker, sEnvironmentToType[gBattleEnvironment])) { - SET_BATTLER_TYPE(gBattlerAttacker, sTerrainToType[gBattleTerrain]); - PREPARE_TYPE_BUFFER(gBattleTextBuff1, sTerrainToType[gBattleTerrain]); + SET_BATTLER_TYPE(gBattlerAttacker, sEnvironmentToType[gBattleEnvironment]); + PREPARE_TYPE_BUFFER(gBattleTextBuff1, sEnvironmentToType[gBattleEnvironment]); gBattlescriptCurrInstr += 5; } diff --git a/src/battle_setup.c b/src/battle_setup.c index e87ce6dd27..63a3e9b585 100644 --- a/src/battle_setup.c +++ b/src/battle_setup.c @@ -632,7 +632,7 @@ static void CB2_EndScriptedWildBattle(void) } } -u8 BattleSetup_GetTerrainId(void) +u8 BattleSetup_GetEnvironmentId(void) { u16 tileBehavior; s16 x, y; diff --git a/src/data/graphics/battle_environment.h b/src/data/graphics/battle_environment.h new file mode 100644 index 0000000000..d1abc026de --- /dev/null +++ b/src/data/graphics/battle_environment.h @@ -0,0 +1,88 @@ +const u32 gBattleEnvironmentTiles_TallGrass[] = INCBIN_U32("graphics/battle_environment/tall_grass/tiles.4bpp.lz"); +const u32 gBattleEnvironmentPalette_TallGrass[] = INCBIN_U32("graphics/battle_environment/tall_grass/palette.gbapal.lz"); +const u32 gBattleEnvironmentTilemap_TallGrass[] = INCBIN_U32("graphics/battle_environment/tall_grass/map.bin.lz"); + +const u32 gBattleEnvironmentTiles_LongGrass[] = INCBIN_U32("graphics/battle_environment/long_grass/tiles.4bpp.lz"); +const u32 gBattleEnvironmentPalette_LongGrass[] = INCBIN_U32("graphics/battle_environment/long_grass/palette.gbapal.lz"); +const u32 gBattleEnvironmentTilemap_LongGrass[] = INCBIN_U32("graphics/battle_environment/long_grass/map.bin.lz"); + +const u32 gBattleEnvironmentTiles_Sand[] = INCBIN_U32("graphics/battle_environment/sand/tiles.4bpp.lz"); +const u32 gBattleEnvironmentPalette_Sand[] = INCBIN_U32("graphics/battle_environment/sand/palette.gbapal.lz"); +const u32 gBattleEnvironmentTilemap_Sand[] = INCBIN_U32("graphics/battle_environment/sand/map.bin.lz"); + +const u32 gBattleEnvironmentTiles_Underwater[] = INCBIN_U32("graphics/battle_environment/underwater/tiles.4bpp.lz"); +const u32 gBattleEnvironmentPalette_Underwater[] = INCBIN_U32("graphics/battle_environment/underwater/palette.gbapal.lz"); +const u32 gBattleEnvironmentTilemap_Underwater[] = INCBIN_U32("graphics/battle_environment/underwater/map.bin.lz"); + +const u32 gBattleEnvironmentTiles_Water[] = INCBIN_U32("graphics/battle_environment/water/tiles.4bpp.lz"); +const u32 gBattleEnvironmentPalette_Water[] = INCBIN_U32("graphics/battle_environment/water/palette.gbapal.lz"); +const u32 gBattleEnvironmentTilemap_Water[] = INCBIN_U32("graphics/battle_environment/water/map.bin.lz"); + +const u32 gBattleEnvironmentTiles_PondWater[] = INCBIN_U32("graphics/battle_environment/pond_water/tiles.4bpp.lz"); +const u32 gBattleEnvironmentPalette_PondWater[] = INCBIN_U32("graphics/battle_environment/pond_water/palette.gbapal.lz"); +const u32 gBattleEnvironmentTilemap_PondWater[] = INCBIN_U32("graphics/battle_environment/pond_water/map.bin.lz"); + +const u32 gBattleEnvironmentTiles_Rock[] = INCBIN_U32("graphics/battle_environment/rock/tiles.4bpp.lz"); +const u32 gBattleEnvironmentPalette_Rock[] = INCBIN_U32("graphics/battle_environment/rock/palette.gbapal.lz"); +const u32 gBattleEnvironmentTilemap_Rock[] = INCBIN_U32("graphics/battle_environment/rock/map.bin.lz"); + +const u32 gBattleEnvironmentTiles_Cave[] = INCBIN_U32("graphics/battle_environment/cave/tiles.4bpp.lz"); +const u32 gBattleEnvironmentPalette_Cave[] = INCBIN_U32("graphics/battle_environment/cave/palette.gbapal.lz"); +const u32 gBattleEnvironmentTilemap_Cave[] = INCBIN_U32("graphics/battle_environment/cave/map.bin.lz"); + +const u32 gBattleEnvironmentPalette_Plain[] = INCBIN_U32("graphics/battle_environment/plain/palette.gbapal.lz"); + +const u32 gBattleEnvironmentTiles_Building[] = INCBIN_U32("graphics/battle_environment/building/tiles.4bpp.lz"); +const u32 gBattleEnvironmentPalette_Frontier[] = INCBIN_U32("graphics/battle_environment/stadium/battle_frontier.gbapal.lz"); // this is also used for link battles +const u32 gBattleEnvironmentTilemap_Building[] = INCBIN_U32("graphics/battle_environment/building/map.bin.lz"); + +const u32 gBattleEnvironmentTiles_Stadium[] = INCBIN_U32("graphics/battle_environment/stadium/tiles.4bpp.lz"); +const u32 gBattleEnvironmentTilemap_Stadium[] = INCBIN_U32("graphics/battle_environment/stadium/map.bin.lz"); + +const u32 gBattleEnvironmentTiles_Rayquaza[] = INCBIN_U32("graphics/battle_environment/sky/tiles.4bpp.lz"); +const u32 gBattleEnvironmentTilemap_Rayquaza[] = INCBIN_U32("graphics/battle_environment/sky/map.bin.lz"); + +const u32 gBattleEnvironmentPalette_Building[] = INCBIN_U32("graphics/battle_environment/building/palette.gbapal.lz"); + +const u32 gBattleEnvironmentPalette_Kyogre[] = INCBIN_U32("graphics/battle_environment/water/kyogre.gbapal.lz"); +const u32 gBattleEnvironmentPalette_Groudon[] = INCBIN_U32("graphics/battle_environment/cave/groudon.gbapal.lz"); +const u32 gBattleEnvironmentPalette_BuildingGym[] = INCBIN_U32("graphics/battle_environment/building/palette2.gbapal.lz"); +const u32 gBattleEnvironmentPalette_BuildingLeader[] = INCBIN_U32("graphics/battle_environment/building/palette3.gbapal.lz"); +const u32 gBattleEnvironmentPalette_StadiumAqua[] = INCBIN_U32("graphics/battle_environment/stadium/palette1.gbapal.lz"); +const u32 gBattleEnvironmentPalette_StadiumMagma[] = INCBIN_U32("graphics/battle_environment/stadium/palette2.gbapal.lz"); +const u32 gBattleEnvironmentPalette_StadiumSidney[] = INCBIN_U32("graphics/battle_environment/stadium/palette3.gbapal.lz"); +const u32 gBattleEnvironmentPalette_StadiumPhoebe[] = INCBIN_U32("graphics/battle_environment/stadium/palette4.gbapal.lz"); +const u32 gBattleEnvironmentPalette_StadiumGlacia[] = INCBIN_U32("graphics/battle_environment/stadium/palette5.gbapal.lz"); +const u32 gBattleEnvironmentPalette_StadiumDrake[] = INCBIN_U32("graphics/battle_environment/stadium/palette6.gbapal.lz"); +const u32 gBattleEnvironmentPalette_StadiumWallace[] = INCBIN_U32("graphics/battle_environment/stadium/palette7.gbapal.lz"); +const u32 gBattleEnvironmentPalette_Rayquaza[] = INCBIN_U32("graphics/battle_environment/sky/palette.gbapal.lz"); + +const u32 gBattleEnvironmentAnimTiles_TallGrass[] = INCBIN_U32("graphics/battle_environment/tall_grass/anim_tiles.4bpp.lz"); +const u32 gBattleEnvironmentAnimTilemap_TallGrass[] = INCBIN_U32("graphics/battle_environment/tall_grass/anim_map.bin.lz"); + +const u32 gBattleEnvironmentAnimTiles_LongGrass[] = INCBIN_U32("graphics/battle_environment/long_grass/anim_tiles.4bpp.lz"); +const u32 gBattleEnvironmentAnimTilemap_LongGrass[] = INCBIN_U32("graphics/battle_environment/long_grass/anim_map.bin.lz"); + +const u32 gBattleEnvironmentAnimTiles_Sand[] = INCBIN_U32("graphics/battle_environment/sand/anim_tiles.4bpp.lz"); +const u32 gBattleEnvironmentAnimTilemap_Sand[] = INCBIN_U32("graphics/battle_environment/sand/anim_map.bin.lz"); + +const u32 gBattleEnvironmentAnimTiles_Underwater[] = INCBIN_U32("graphics/battle_environment/underwater/anim_tiles.4bpp.lz"); +const u32 gBattleEnvironmentAnimTilemap_Underwater[] = INCBIN_U32("graphics/battle_environment/underwater/anim_map.bin.lz"); + +const u32 gBattleEnvironmentAnimTiles_Water[] = INCBIN_U32("graphics/battle_environment/water/anim_tiles.4bpp.lz"); +const u32 gBattleEnvironmentAnimTilemap_Water[] = INCBIN_U32("graphics/battle_environment/water/anim_map.bin.lz"); + +const u32 gBattleEnvironmentAnimTiles_PondWater[] = INCBIN_U32("graphics/battle_environment/pond_water/anim_tiles.4bpp.lz"); +const u32 gBattleEnvironmentAnimTilemap_PondWater[] = INCBIN_U32("graphics/battle_environment/pond_water/anim_map.bin.lz"); + +const u32 gBattleEnvironmentAnimTiles_Rock[] = INCBIN_U32("graphics/battle_environment/rock/anim_tiles.4bpp.lz"); +const u32 gBattleEnvironmentAnimTilemap_Rock[] = INCBIN_U32("graphics/battle_environment/rock/anim_map.bin.lz"); + +const u32 gBattleEnvironmentAnimTiles_Cave[] = INCBIN_U32("graphics/battle_environment/cave/anim_tiles.4bpp.lz"); +const u32 gBattleEnvironmentAnimTilemap_Cave[] = INCBIN_U32("graphics/battle_environment/cave/anim_map.bin.lz"); + +const u32 gBattleEnvironmentAnimTiles_Building[] = INCBIN_U32("graphics/battle_environment/building/anim_tiles.4bpp.lz"); +const u32 gBattleEnvironmentAnimTilemap_Building[] = INCBIN_U32("graphics/battle_environment/building/anim_map.bin.lz"); + +const u32 gBattleEnvironmentAnimTiles_Rayquaza[] = INCBIN_U32("graphics/battle_environment/sky/anim_tiles.4bpp.lz"); +const u32 gBattleEnvironmentAnimTilemap_Rayquaza[] = INCBIN_U32("graphics/battle_environment/sky/anim_map.bin.lz"); diff --git a/src/data/graphics/battle_terrain.h b/src/data/graphics/battle_terrain.h deleted file mode 100644 index e719fafe3c..0000000000 --- a/src/data/graphics/battle_terrain.h +++ /dev/null @@ -1,88 +0,0 @@ -const u32 gBattleTerrainTiles_TallGrass[] = INCBIN_U32("graphics/battle_terrain/tall_grass/tiles.4bpp.lz"); -const u32 gBattleTerrainPalette_TallGrass[] = INCBIN_U32("graphics/battle_terrain/tall_grass/palette.gbapal.lz"); -const u32 gBattleTerrainTilemap_TallGrass[] = INCBIN_U32("graphics/battle_terrain/tall_grass/map.bin.lz"); - -const u32 gBattleTerrainTiles_LongGrass[] = INCBIN_U32("graphics/battle_terrain/long_grass/tiles.4bpp.lz"); -const u32 gBattleTerrainPalette_LongGrass[] = INCBIN_U32("graphics/battle_terrain/long_grass/palette.gbapal.lz"); -const u32 gBattleTerrainTilemap_LongGrass[] = INCBIN_U32("graphics/battle_terrain/long_grass/map.bin.lz"); - -const u32 gBattleTerrainTiles_Sand[] = INCBIN_U32("graphics/battle_terrain/sand/tiles.4bpp.lz"); -const u32 gBattleTerrainPalette_Sand[] = INCBIN_U32("graphics/battle_terrain/sand/palette.gbapal.lz"); -const u32 gBattleTerrainTilemap_Sand[] = INCBIN_U32("graphics/battle_terrain/sand/map.bin.lz"); - -const u32 gBattleTerrainTiles_Underwater[] = INCBIN_U32("graphics/battle_terrain/underwater/tiles.4bpp.lz"); -const u32 gBattleTerrainPalette_Underwater[] = INCBIN_U32("graphics/battle_terrain/underwater/palette.gbapal.lz"); -const u32 gBattleTerrainTilemap_Underwater[] = INCBIN_U32("graphics/battle_terrain/underwater/map.bin.lz"); - -const u32 gBattleTerrainTiles_Water[] = INCBIN_U32("graphics/battle_terrain/water/tiles.4bpp.lz"); -const u32 gBattleTerrainPalette_Water[] = INCBIN_U32("graphics/battle_terrain/water/palette.gbapal.lz"); -const u32 gBattleTerrainTilemap_Water[] = INCBIN_U32("graphics/battle_terrain/water/map.bin.lz"); - -const u32 gBattleTerrainTiles_PondWater[] = INCBIN_U32("graphics/battle_terrain/pond_water/tiles.4bpp.lz"); -const u32 gBattleTerrainPalette_PondWater[] = INCBIN_U32("graphics/battle_terrain/pond_water/palette.gbapal.lz"); -const u32 gBattleTerrainTilemap_PondWater[] = INCBIN_U32("graphics/battle_terrain/pond_water/map.bin.lz"); - -const u32 gBattleTerrainTiles_Rock[] = INCBIN_U32("graphics/battle_terrain/rock/tiles.4bpp.lz"); -const u32 gBattleTerrainPalette_Rock[] = INCBIN_U32("graphics/battle_terrain/rock/palette.gbapal.lz"); -const u32 gBattleTerrainTilemap_Rock[] = INCBIN_U32("graphics/battle_terrain/rock/map.bin.lz"); - -const u32 gBattleTerrainTiles_Cave[] = INCBIN_U32("graphics/battle_terrain/cave/tiles.4bpp.lz"); -const u32 gBattleTerrainPalette_Cave[] = INCBIN_U32("graphics/battle_terrain/cave/palette.gbapal.lz"); -const u32 gBattleTerrainTilemap_Cave[] = INCBIN_U32("graphics/battle_terrain/cave/map.bin.lz"); - -const u32 gBattleTerrainPalette_Plain[] = INCBIN_U32("graphics/battle_terrain/plain/palette.gbapal.lz"); - -const u32 gBattleTerrainTiles_Building[] = INCBIN_U32("graphics/battle_terrain/building/tiles.4bpp.lz"); -const u32 gBattleTerrainPalette_Frontier[] = INCBIN_U32("graphics/battle_terrain/stadium/battle_frontier.gbapal.lz"); // this is also used for link battles -const u32 gBattleTerrainTilemap_Building[] = INCBIN_U32("graphics/battle_terrain/building/map.bin.lz"); - -const u32 gBattleTerrainTiles_Stadium[] = INCBIN_U32("graphics/battle_terrain/stadium/tiles.4bpp.lz"); -const u32 gBattleTerrainTilemap_Stadium[] = INCBIN_U32("graphics/battle_terrain/stadium/map.bin.lz"); - -const u32 gBattleTerrainTiles_Rayquaza[] = INCBIN_U32("graphics/battle_terrain/sky/tiles.4bpp.lz"); -const u32 gBattleTerrainTilemap_Rayquaza[] = INCBIN_U32("graphics/battle_terrain/sky/map.bin.lz"); - -const u32 gBattleTerrainPalette_Building[] = INCBIN_U32("graphics/battle_terrain/building/palette.gbapal.lz"); - -const u32 gBattleTerrainPalette_Kyogre[] = INCBIN_U32("graphics/battle_terrain/water/kyogre.gbapal.lz"); -const u32 gBattleTerrainPalette_Groudon[] = INCBIN_U32("graphics/battle_terrain/cave/groudon.gbapal.lz"); -const u32 gBattleTerrainPalette_BuildingGym[] = INCBIN_U32("graphics/battle_terrain/building/palette2.gbapal.lz"); -const u32 gBattleTerrainPalette_BuildingLeader[] = INCBIN_U32("graphics/battle_terrain/building/palette3.gbapal.lz"); -const u32 gBattleTerrainPalette_StadiumAqua[] = INCBIN_U32("graphics/battle_terrain/stadium/palette1.gbapal.lz"); -const u32 gBattleTerrainPalette_StadiumMagma[] = INCBIN_U32("graphics/battle_terrain/stadium/palette2.gbapal.lz"); -const u32 gBattleTerrainPalette_StadiumSidney[] = INCBIN_U32("graphics/battle_terrain/stadium/palette3.gbapal.lz"); -const u32 gBattleTerrainPalette_StadiumPhoebe[] = INCBIN_U32("graphics/battle_terrain/stadium/palette4.gbapal.lz"); -const u32 gBattleTerrainPalette_StadiumGlacia[] = INCBIN_U32("graphics/battle_terrain/stadium/palette5.gbapal.lz"); -const u32 gBattleTerrainPalette_StadiumDrake[] = INCBIN_U32("graphics/battle_terrain/stadium/palette6.gbapal.lz"); -const u32 gBattleTerrainPalette_StadiumWallace[] = INCBIN_U32("graphics/battle_terrain/stadium/palette7.gbapal.lz"); -const u32 gBattleTerrainPalette_Rayquaza[] = INCBIN_U32("graphics/battle_terrain/sky/palette.gbapal.lz"); - -const u32 gBattleTerrainAnimTiles_TallGrass[] = INCBIN_U32("graphics/battle_terrain/tall_grass/anim_tiles.4bpp.lz"); -const u32 gBattleTerrainAnimTilemap_TallGrass[] = INCBIN_U32("graphics/battle_terrain/tall_grass/anim_map.bin.lz"); - -const u32 gBattleTerrainAnimTiles_LongGrass[] = INCBIN_U32("graphics/battle_terrain/long_grass/anim_tiles.4bpp.lz"); -const u32 gBattleTerrainAnimTilemap_LongGrass[] = INCBIN_U32("graphics/battle_terrain/long_grass/anim_map.bin.lz"); - -const u32 gBattleTerrainAnimTiles_Sand[] = INCBIN_U32("graphics/battle_terrain/sand/anim_tiles.4bpp.lz"); -const u32 gBattleTerrainAnimTilemap_Sand[] = INCBIN_U32("graphics/battle_terrain/sand/anim_map.bin.lz"); - -const u32 gBattleTerrainAnimTiles_Underwater[] = INCBIN_U32("graphics/battle_terrain/underwater/anim_tiles.4bpp.lz"); -const u32 gBattleTerrainAnimTilemap_Underwater[] = INCBIN_U32("graphics/battle_terrain/underwater/anim_map.bin.lz"); - -const u32 gBattleTerrainAnimTiles_Water[] = INCBIN_U32("graphics/battle_terrain/water/anim_tiles.4bpp.lz"); -const u32 gBattleTerrainAnimTilemap_Water[] = INCBIN_U32("graphics/battle_terrain/water/anim_map.bin.lz"); - -const u32 gBattleTerrainAnimTiles_PondWater[] = INCBIN_U32("graphics/battle_terrain/pond_water/anim_tiles.4bpp.lz"); -const u32 gBattleTerrainAnimTilemap_PondWater[] = INCBIN_U32("graphics/battle_terrain/pond_water/anim_map.bin.lz"); - -const u32 gBattleTerrainAnimTiles_Rock[] = INCBIN_U32("graphics/battle_terrain/rock/anim_tiles.4bpp.lz"); -const u32 gBattleTerrainAnimTilemap_Rock[] = INCBIN_U32("graphics/battle_terrain/rock/anim_map.bin.lz"); - -const u32 gBattleTerrainAnimTiles_Cave[] = INCBIN_U32("graphics/battle_terrain/cave/anim_tiles.4bpp.lz"); -const u32 gBattleTerrainAnimTilemap_Cave[] = INCBIN_U32("graphics/battle_terrain/cave/anim_map.bin.lz"); - -const u32 gBattleTerrainAnimTiles_Building[] = INCBIN_U32("graphics/battle_terrain/building/anim_tiles.4bpp.lz"); -const u32 gBattleTerrainAnimTilemap_Building[] = INCBIN_U32("graphics/battle_terrain/building/anim_map.bin.lz"); - -const u32 gBattleTerrainAnimTiles_Rayquaza[] = INCBIN_U32("graphics/battle_terrain/sky/anim_tiles.4bpp.lz"); -const u32 gBattleTerrainAnimTilemap_Rayquaza[] = INCBIN_U32("graphics/battle_terrain/sky/anim_map.bin.lz"); diff --git a/src/evolution_scene.c b/src/evolution_scene.c index 133afe3b0d..e6cb2c914a 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -237,7 +237,7 @@ void EvolutionScene(struct Pokemon *mon, u16 postEvoSpecies, bool8 canStopEvo, u gBattle_BG3_X = 256; gBattle_BG3_Y = 0; - gBattleTerrain = BATTLE_TERRAIN_PLAIN; + gBattleEnvironment = BATTLE_TERRAIN_PLAIN; InitBattleBgsVideo(); LoadBattleTextboxAndBackground(); @@ -343,7 +343,7 @@ static void CB2_EvolutionSceneLoadGraphics(void) gBattle_BG3_X = 256; gBattle_BG3_Y = 0; - gBattleTerrain = BATTLE_TERRAIN_PLAIN; + gBattleEnvironment = BATTLE_TERRAIN_PLAIN; InitBattleBgsVideo(); LoadBattleTextboxAndBackground(); diff --git a/src/graphics.c b/src/graphics.c index 2612022695..22d390fa72 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -942,7 +942,7 @@ const u32 gBattleVSFrame_Pal[] = INCBIN_U32("graphics/battle_transitions/vs_fram const u32 gVsLettersGfx[] = INCBIN_U32("graphics/battle_transitions/vs.4bpp.lz"); -#include "data/graphics/battle_terrain.h" +#include "data/graphics/battle_environment.h" // Battle Dome const u32 gDomeTourneyTree_Gfx[] = INCBIN_U32("graphics/battle_frontier/tourney_tree.4bpp.lz"); diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c index a334038d8d..f274077554 100644 --- a/src/pokeblock_feed.c +++ b/src/pokeblock_feed.c @@ -760,7 +760,7 @@ static bool8 LoadMonAndSceneGfx(struct Pokemon *mon) break; case 6: ResetTempTileDataBuffers(); - DecompressAndCopyTileDataToVram(1, gBattleTerrainTiles_Building, 0, 0, 0); + DecompressAndCopyTileDataToVram(1, gBattleEnvironmentTiles_Building, 0, 0, 0); sPokeblockFeed->loadGfxState++; break; case 7: @@ -771,7 +771,7 @@ static bool8 LoadMonAndSceneGfx(struct Pokemon *mon) } break; case 8: - LoadCompressedPalette(gBattleTerrainPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); + LoadCompressedPalette(gBattleEnvironmentPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); sPokeblockFeed->loadGfxState = 0; return TRUE; } From 367f6dc8fd6d844b7f6e3b782a2918d0dccb5e9b Mon Sep 17 00:00:00 2001 From: Bassoonian Date: Sat, 13 Jul 2024 18:01:54 +0200 Subject: [PATCH 02/11] Address concerns --- data/battle_anim_scripts.s | 54 ++++++++++++++--------------- include/constants/battle.h | 20 +++++------ src/battle_anim_ground.c | 14 ++++---- src/battle_anim_normal.c | 32 +++++++++--------- src/battle_anim_utility_funcs.c | 20 +++++------ src/battle_bg.c | 20 +++++------ src/battle_intro.c | 32 +++++++++--------- src/battle_main.c | 2 +- src/battle_script_commands.c | 60 ++++++++++++++++----------------- src/battle_setup.c | 36 ++++++++++---------- src/evolution_scene.c | 4 +-- 11 files changed, 147 insertions(+), 147 deletions(-) diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index 5fe714b58a..489bffb207 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -2097,7 +2097,7 @@ Move_MEAN_LOOK: Move_ROCK_THROW: loadspritegfx ANIM_TAG_ROCKS - createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_TARGET, 2, 6, 1, 15, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_TARGET, 2, 6, 1, 15, 1 createsprite gFallingRockSpriteTemplate, ANIM_TARGET, 2, 0, 1, 0, 0 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 6 @@ -2119,7 +2119,7 @@ Move_ROCK_THROW: Move_ROCK_SLIDE: loadspritegfx ANIM_TAG_ROCKS monbg ANIM_DEF_PARTNER - createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, 7, 1, 11, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 7, 1, 11, 1 createsprite gFallingRockSpriteTemplate, ANIM_TARGET, 2, -5, 1, -5, 1 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 @@ -2909,7 +2909,7 @@ Move_BARRAGE: createvisualtask AnimTask_BarrageBall, 3 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER delay 24 - createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, 8, 1, 40, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 8, 1, 40, 1 createvisualtask AnimTask_ShakeMon, 3, ANIM_TARGET, 0, 4, 20, 1 createvisualtask AnimTask_ShakeMon, 3, ANIM_DEF_PARTNER, 0, 4, 20, 1 loopsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET, 8, 2 @@ -3660,7 +3660,7 @@ Move_SUPERPOWER: createsprite gSuperpowerOrbSpriteTemplate, ANIM_TARGET, 2, ANIM_ATTACKER playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER delay 20 - createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 180, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 180, 1 createvisualtask SoundTask_PlaySE2WithPanning, 5, SE_M_EARTHQUAKE, 0 delay 40 createsprite gSuperpowerRockSpriteTemplate, ANIM_ATTACKER, 41, 200, 96, 1, 120 @@ -5011,7 +5011,7 @@ SnoreEffect: playsewithpan SE_M_SNORE, SOUND_PAN_ATTACKER createvisualtask AnimTask_ScaleMonAndRestore, 5, -7, -7, 7, ANIM_ATTACKER, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 7, 1 - createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, 6, 1, 14, 0, 0 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 6, 1, 14, 0, 0 createsprite gSnoreZSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, -42, -38, 24, 0, 0 createsprite gSnoreZSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 0, -42, 24, 0, 0 createsprite gSnoreZSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 42, -38, 24, 0, 0 @@ -6871,7 +6871,7 @@ Move_ANCIENT_POWER: loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER setalpha 12, 8 - createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 10, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 10, 1 createsprite gAncientPowerRockSpriteTemplate, ANIM_ATTACKER, 2, 20, 32, -48, 50, 2 createsprite gAncientPowerRockSpriteTemplate, ANIM_ATTACKER, 2, 0, 32, -38, 25, 5 createsprite gAncientPowerRockSpriteTemplate, ANIM_ATTACKER, 2, 32, 32, -28, 40, 3 @@ -7292,14 +7292,14 @@ Move_METAL_CLAW: playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, -10, -10, 0 createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, -10, 10, 0 - createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 delay 8 createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 6, 4 delay 2 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, 10, -10, 1 createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, 10, 10, 1 - createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 waitforvisualfinish end @@ -8515,7 +8515,7 @@ HyperVoiceEffect: createsprite gHyperVoiceRingSpriteTemplate, ANIM_ATTACKER, 0, 45, 0, 0, 0, 0, 0, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 6, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 1, 0, 6, 1 - createvisualtask AnimTask_ShakeBattleEnvironment, 2, 1, 0, 6, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 1, 0, 6, 1 createvisualtask SoundTask_WaitForCry, 5 return @@ -8637,7 +8637,7 @@ Move_DRAGON_CLAW: createvisualtask SoundTask_PlaySE1WithPanning, 5, SE_M_RAZOR_WIND, SOUND_PAN_TARGET createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, -10, -10, 0 createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, -10, 10, 0 - createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 32, 480, 20, 16, -46, ANIM_ATTACKER delay 2 createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 33, 576, 20, 8, 42, ANIM_ATTACKER @@ -8650,7 +8650,7 @@ Move_DRAGON_CLAW: createvisualtask SoundTask_PlaySE1WithPanning, 5, SE_M_RAZOR_WIND, SOUND_PAN_TARGET createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, 10, -10, 1 createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, 10, 10, 1 - createsprite gShakeMonOrEnvironmentSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 33, 464, 30, 15, -50, ANIM_ATTACKER delay 2 createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 528, 30, 13, 50, ANIM_ATTACKER @@ -9111,7 +9111,7 @@ Move_BLAST_BURN: createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 70, 60, -30, 24, 0, 0, 0 createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 2, -4, 3, ANIM_TARGET, 0 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 12, 0, 20, 1 - createvisualtask AnimTask_ShakeBattleEnvironment, 2, 2, 0, 10, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 2, 0, 10, 1 createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 96, 0, 24, 0, 0, 0 createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 60, 30, 24, 0, 0, 0 createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, 0, 48, 24, 0, 0, 0 @@ -9125,32 +9125,32 @@ Move_BLAST_BURN: Move_ROCK_TOMB: loadspritegfx ANIM_TAG_X_SIGN loadspritegfx ANIM_TAG_ROCKS - createvisualtask AnimTask_ShakeBattleEnvironment, 2, 2, 0, 10, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 2, 0, 10, 1 waitforvisualfinish createsprite gRockTombRockSpriteTemplate, ANIM_TARGET, 2, 20, 12, 64, 114, 0 delay 8 - createvisualtask AnimTask_ShakeBattleEnvironment, 2, 0, 2, 3, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 0, 2, 3, 1 playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET delay 8 createsprite gRockTombRockSpriteTemplate, ANIM_TARGET, 2, -20, 12, 64, 98, 0 delay 8 - createvisualtask AnimTask_ShakeBattleEnvironment, 2, 0, 2, 3, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 0, 2, 3, 1 playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET delay 8 createsprite gRockTombRockSpriteTemplate, ANIM_TARGET, 66, 3, 6, 64, 82, 0 delay 8 - createvisualtask AnimTask_ShakeBattleEnvironment, 2, 0, 2, 3, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 0, 2, 3, 1 playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET delay 8 createsprite gRockTombRockSpriteTemplate, ANIM_TARGET, 2, -3, 13, 64, 66, 0 delay 8 - createvisualtask AnimTask_ShakeBattleEnvironment, 2, 0, 2, 3, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 0, 2, 3, 1 playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET delay 24 playsewithpan SE_M_HYPER_BEAM, SOUND_PAN_TARGET createsprite gRedXSpriteTemplate, ANIM_TARGET, 5, ANIM_TARGET, 50 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 3, 0, 20, 1 - createvisualtask AnimTask_ShakeBattleEnvironment, 2, 2, 0, 10, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 2, 0, 10, 1 waitforvisualfinish end @@ -9636,15 +9636,15 @@ Move_SKY_UPPERCUT: Move_SECRET_POWER: createvisualtask AnimTask_GetBattleEnvironment, 5 - jumpargeq 0, BATTLE_TERRAIN_GRASS, Move_NEEDLE_ARM - jumpargeq 0, BATTLE_TERRAIN_LONG_GRASS, Move_MAGICAL_LEAF - jumpargeq 0, BATTLE_TERRAIN_SAND, Move_MUD_SHOT - jumpargeq 0, BATTLE_TERRAIN_UNDERWATER, Move_WATERFALL - jumpargeq 0, BATTLE_TERRAIN_WATER, Move_SURF - jumpargeq 0, BATTLE_TERRAIN_POND, Move_BUBBLE_BEAM - jumpargeq 0, BATTLE_TERRAIN_MOUNTAIN, Move_ROCK_THROW - jumpargeq 0, BATTLE_TERRAIN_CAVE, Move_BITE - jumpargeq 0, BATTLE_TERRAIN_BUILDING, Move_STRENGTH + jumpargeq 0, BATTLE_ENVIRONMENT_GRASS, Move_NEEDLE_ARM + jumpargeq 0, BATTLE_ENVIRONMENT_LONG_GRASS, Move_MAGICAL_LEAF + jumpargeq 0, BATTLE_ENVIRONMENT_SAND, Move_MUD_SHOT + jumpargeq 0, BATTLE_ENVIRONMENT_UNDERWATER, Move_WATERFALL + jumpargeq 0, BATTLE_ENVIRONMENT_WATER, Move_SURF + jumpargeq 0, BATTLE_ENVIRONMENT_POND, Move_BUBBLE_BEAM + jumpargeq 0, BATTLE_ENVIRONMENT_MOUNTAIN, Move_ROCK_THROW + jumpargeq 0, BATTLE_ENVIRONMENT_CAVE, Move_BITE + jumpargeq 0, BATTLE_ENVIRONMENT_BUILDING, Move_STRENGTH goto Move_SLAM Move_TWISTER: diff --git a/include/constants/battle.h b/include/constants/battle.h index a64dd347bc..e00008de71 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -297,16 +297,16 @@ #define MOVE_EFFECT_CERTAIN (1 << 7) // 128 // Battle environment defines for gBattleEnvironment. -#define BATTLE_TERRAIN_GRASS 0 -#define BATTLE_TERRAIN_LONG_GRASS 1 -#define BATTLE_TERRAIN_SAND 2 -#define BATTLE_TERRAIN_UNDERWATER 3 -#define BATTLE_TERRAIN_WATER 4 -#define BATTLE_TERRAIN_POND 5 -#define BATTLE_TERRAIN_MOUNTAIN 6 -#define BATTLE_TERRAIN_CAVE 7 -#define BATTLE_TERRAIN_BUILDING 8 -#define BATTLE_TERRAIN_PLAIN 9 +#define BATTLE_ENVIRONMENT_GRASS 0 +#define BATTLE_ENVIRONMENT_LONG_GRASS 1 +#define BATTLE_ENVIRONMENT_SAND 2 +#define BATTLE_ENVIRONMENT_UNDERWATER 3 +#define BATTLE_ENVIRONMENT_WATER 4 +#define BATTLE_ENVIRONMENT_POND 5 +#define BATTLE_ENVIRONMENT_MOUNTAIN 6 +#define BATTLE_ENVIRONMENT_CAVE 7 +#define BATTLE_ENVIRONMENT_BUILDING 8 +#define BATTLE_ENVIRONMENT_PLAIN 9 #define B_WAIT_TIME_LONG 64 #define B_WAIT_TIME_MED 48 diff --git a/src/battle_anim_ground.c b/src/battle_anim_ground.c index d6234e5f96..b3591544ec 100644 --- a/src/battle_anim_ground.c +++ b/src/battle_anim_ground.c @@ -22,7 +22,7 @@ static void AnimTask_DigEndBounceMovementSetInvisible(u8); static void AnimTask_DigSetVisibleUnderground(u8); static void AnimTask_DigRiseUpFromHole(u8); static void SetDigScanlineEffect(u8, s16, s16); -static void AnimTask_ShakeEnvironment(u8); +static void AnimTask_ShakePlatforms(u8); static void AnimTask_ShakeBattlers(u8); static void SetBattlersXOffsetForShake(struct Task *); static void WaitForFissureCompletion(u8); @@ -564,12 +564,12 @@ static void AnimDigDirtMound(struct Sprite *sprite) #define tMaxTime data[3] #define tbattlerSpriteIds(i) data[9 + (i)] #define tNumBattlers data[13] // AnimTask_ShakeBattlers -#define tInitialX data[13] // AnimTask_ShakeEnvironment +#define tInitialX data[13] // AnimTask_ShakePlatforms #define tHorizOffset data[14] #define tInitHorizOffset data[15] -// Shakes battler(s) or the battle environment back and forth horizontally. Used by e.g. Earthquake, Eruption -// arg0: What to shake. 0-3 for any specific battler, MAX_BATTLERS_COUNT for all battlers, MAX_BATTLERS_COUNT + 1 for the environment +// Shakes battler(s) or the battle platforms back and forth horizontally. Used by e.g. Earthquake, Eruption +// arg0: What to shake. 0-3 for any specific battler, MAX_BATTLERS_COUNT for all battlers, MAX_BATTLERS_COUNT + 1 for the platforms // arg1: Shake intensity, used to calculate horizontal pixel offset (if 0, use move power instead) // arg2: Length of time to shake for void AnimTask_HorizontalShake(u8 taskId) @@ -585,9 +585,9 @@ void AnimTask_HorizontalShake(u8 taskId) task->tMaxTime = gBattleAnimArgs[2]; switch (gBattleAnimArgs[0]) { - case MAX_BATTLERS_COUNT + 1: // Shake environment + case MAX_BATTLERS_COUNT + 1: // Shake platforms task->tInitialX = gBattle_BG3_X; - task->func = AnimTask_ShakeEnvironment; + task->func = AnimTask_ShakePlatforms; break; case MAX_BATTLERS_COUNT: // Shake all battlers task->tNumBattlers = 0; @@ -616,7 +616,7 @@ void AnimTask_HorizontalShake(u8 taskId) } } -static void AnimTask_ShakeEnvironment(u8 taskId) +static void AnimTask_ShakePlatforms(u8 taskId) { struct Task *task = &gTasks[taskId]; diff --git a/src/battle_anim_normal.c b/src/battle_anim_normal.c index 72d8a0745d..fa6bd69343 100644 --- a/src/battle_anim_normal.c +++ b/src/battle_anim_normal.c @@ -13,9 +13,9 @@ static void AnimComplexPaletteBlend(struct Sprite *); static void AnimComplexPaletteBlend_Step1(struct Sprite *); static void AnimComplexPaletteBlend_Step2(struct Sprite *); static void AnimCirclingSparkle(struct Sprite *); -static void AnimShakeMonOrBattleEnvironment(struct Sprite *); -static void AnimShakeMonOrBattleEnvironment_Step(struct Sprite *); -static void AnimShakeMonOrBattleEnvironment_UpdateCoordOffsetEnabled(void); +static void AnimShakeMonOrBattlePlatforms(struct Sprite *); +static void AnimShakeMonOrBattlePlatforms_Step(struct Sprite *); +static void AnimShakeMonOrBattlePlatforms_UpdateCoordOffsetEnabled(void); static void AnimHitSplatBasic(struct Sprite *); static void AnimHitSplatPersistent(struct Sprite *); static void AnimHitSplatHandleInvert(struct Sprite *); @@ -33,7 +33,7 @@ static void BlendColorCycleByTag(u8, u8, u8); static void AnimTask_BlendColorCycleByTagLoop(u8); static void AnimTask_FlashAnimTagWithColor_Step1(u8); static void AnimTask_FlashAnimTagWithColor_Step2(u8); -static void AnimTask_ShakeBattleEnvironment_Step(u8); +static void AnimTask_ShakeBattlePlatforms_Step(u8); static const union AnimCmd sAnim_ConfusionDuck_0[] = { @@ -119,7 +119,7 @@ static const struct SpriteTemplate sCirclingSparkleSpriteTemplate = .callback = AnimCirclingSparkle, }; -const struct SpriteTemplate gShakeMonOrEnvironmentSpriteTemplate = +const struct SpriteTemplate gShakeMonOrPlatformSpriteTemplate = { .tileTag = 0, .paletteTag = 0, @@ -127,7 +127,7 @@ const struct SpriteTemplate gShakeMonOrEnvironmentSpriteTemplate = .anims = gDummySpriteAnimTable, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimShakeMonOrBattleEnvironment, + .callback = AnimShakeMonOrBattlePlatforms, }; static const union AffineAnimCmd sAffineAnim_HitSplat_0[] = @@ -795,7 +795,7 @@ void AnimTask_TintPalettes(u8 taskId) #undef tColorG #undef tColorB -static void AnimShakeMonOrBattleEnvironment(struct Sprite *sprite) +static void AnimShakeMonOrBattlePlatforms(struct Sprite *sprite) { u16 var0; @@ -825,12 +825,12 @@ static void AnimShakeMonOrBattleEnvironment(struct Sprite *sprite) sprite->data[5] = gBattleAnimArgs[3]; var0 = sprite->data[5] - 2; if (var0 < 2) - AnimShakeMonOrBattleEnvironment_UpdateCoordOffsetEnabled(); + AnimShakeMonOrBattlePlatforms_UpdateCoordOffsetEnabled(); - sprite->callback = AnimShakeMonOrBattleEnvironment_Step; + sprite->callback = AnimShakeMonOrBattlePlatforms_Step; } -static void AnimShakeMonOrBattleEnvironment_Step(struct Sprite *sprite) +static void AnimShakeMonOrBattlePlatforms_Step(struct Sprite *sprite) { u8 i; u16 var0; @@ -863,7 +863,7 @@ static void AnimShakeMonOrBattleEnvironment_Step(struct Sprite *sprite) } } -static void AnimShakeMonOrBattleEnvironment_UpdateCoordOffsetEnabled(void) +static void AnimShakeMonOrBattlePlatforms_UpdateCoordOffsetEnabled(void) { gSprites[gBattlerSpriteIds[gBattleAnimAttacker]].coordOffsetEnabled = FALSE; gSprites[gBattlerSpriteIds[gBattleAnimTarget]].coordOffsetEnabled = FALSE; @@ -882,19 +882,19 @@ static void AnimShakeMonOrBattleEnvironment_UpdateCoordOffsetEnabled(void) } } -// Task data for AnimTask_ShakeBattleEnvironment +// Task data for AnimTask_ShakeBattlePlatforms #define tXOffset data[0] #define tYOffset data[1] #define tNumShakes data[2] #define tTimer data[3] #define tShakeDelay data[8] -// Can shake battle environment back and forth on the X or down and back to original pos on Y (cant shake up from orig pos) +// Can shake battle platforms back and forth on the X or down and back to original pos on Y (cant shake up from orig pos) // arg0: x offset of shake // arg1: y offset of shake // arg2: number of shakes // arg3: time between shakes -void AnimTask_ShakeBattleEnvironment(u8 taskId) +void AnimTask_ShakeBattlePlatforms(u8 taskId) { gTasks[taskId].tXOffset = gBattleAnimArgs[0]; gTasks[taskId].tYOffset = gBattleAnimArgs[1]; @@ -903,11 +903,11 @@ void AnimTask_ShakeBattleEnvironment(u8 taskId) gTasks[taskId].tShakeDelay = gBattleAnimArgs[3]; gBattle_BG3_X = gBattleAnimArgs[0]; gBattle_BG3_Y = gBattleAnimArgs[1]; - gTasks[taskId].func = AnimTask_ShakeBattleEnvironment_Step; + gTasks[taskId].func = AnimTask_ShakeBattlePlatforms_Step; gTasks[taskId].func(taskId); } -static void AnimTask_ShakeBattleEnvironment_Step(u8 taskId) +static void AnimTask_ShakeBattlePlatforms_Step(u8 taskId) { if (gTasks[taskId].tTimer == 0) { diff --git a/src/battle_anim_utility_funcs.c b/src/battle_anim_utility_funcs.c index 5b50c43500..b76c636f56 100644 --- a/src/battle_anim_utility_funcs.c +++ b/src/battle_anim_utility_funcs.c @@ -111,34 +111,34 @@ void AnimTask_SetCamouflageBlend(u8 taskId) u32 selectedPalettes = UnpackSelectedBattlePalettes(gBattleAnimArgs[0]); switch (gBattleEnvironment) { - case BATTLE_TERRAIN_GRASS: + case BATTLE_ENVIRONMENT_GRASS: gBattleAnimArgs[4] = RGB(12, 24, 2); break; - case BATTLE_TERRAIN_LONG_GRASS: + case BATTLE_ENVIRONMENT_LONG_GRASS: gBattleAnimArgs[4] = RGB(0, 15, 2); break; - case BATTLE_TERRAIN_SAND: + case BATTLE_ENVIRONMENT_SAND: gBattleAnimArgs[4] = RGB(30, 24, 11); break; - case BATTLE_TERRAIN_UNDERWATER: + case BATTLE_ENVIRONMENT_UNDERWATER: gBattleAnimArgs[4] = RGB(0, 0, 18); break; - case BATTLE_TERRAIN_WATER: + case BATTLE_ENVIRONMENT_WATER: gBattleAnimArgs[4] = RGB(11, 22, 31); break; - case BATTLE_TERRAIN_POND: + case BATTLE_ENVIRONMENT_POND: gBattleAnimArgs[4] = RGB(11, 22, 31); break; - case BATTLE_TERRAIN_MOUNTAIN: + case BATTLE_ENVIRONMENT_MOUNTAIN: gBattleAnimArgs[4] = RGB(22, 16, 10); break; - case BATTLE_TERRAIN_CAVE: + case BATTLE_ENVIRONMENT_CAVE: gBattleAnimArgs[4] = RGB(14, 9, 3); break; - case BATTLE_TERRAIN_BUILDING: + case BATTLE_ENVIRONMENT_BUILDING: gBattleAnimArgs[4] = RGB_WHITE; break; - case BATTLE_TERRAIN_PLAIN: + case BATTLE_ENVIRONMENT_PLAIN: gBattleAnimArgs[4] = RGB_WHITE; break; } diff --git a/src/battle_bg.c b/src/battle_bg.c index 183e8f3b90..c32f5ec623 100644 --- a/src/battle_bg.c +++ b/src/battle_bg.c @@ -601,7 +601,7 @@ const struct WindowTemplate * const gBattleWindowTemplates[] = static const struct BattleBackground sBattleEnvironmentTable[] = { - [BATTLE_TERRAIN_GRASS] = + [BATTLE_ENVIRONMENT_GRASS] = { .tileset = gBattleEnvironmentTiles_TallGrass, .tilemap = gBattleEnvironmentTilemap_TallGrass, @@ -610,7 +610,7 @@ static const struct BattleBackground sBattleEnvironmentTable[] = .palette = gBattleEnvironmentPalette_TallGrass, }, - [BATTLE_TERRAIN_LONG_GRASS] = + [BATTLE_ENVIRONMENT_LONG_GRASS] = { .tileset = gBattleEnvironmentTiles_LongGrass, .tilemap = gBattleEnvironmentTilemap_LongGrass, @@ -619,7 +619,7 @@ static const struct BattleBackground sBattleEnvironmentTable[] = .palette = gBattleEnvironmentPalette_LongGrass, }, - [BATTLE_TERRAIN_SAND] = + [BATTLE_ENVIRONMENT_SAND] = { .tileset = gBattleEnvironmentTiles_Sand, .tilemap = gBattleEnvironmentTilemap_Sand, @@ -628,7 +628,7 @@ static const struct BattleBackground sBattleEnvironmentTable[] = .palette = gBattleEnvironmentPalette_Sand, }, - [BATTLE_TERRAIN_UNDERWATER] = + [BATTLE_ENVIRONMENT_UNDERWATER] = { .tileset = gBattleEnvironmentTiles_Underwater, .tilemap = gBattleEnvironmentTilemap_Underwater, @@ -637,7 +637,7 @@ static const struct BattleBackground sBattleEnvironmentTable[] = .palette = gBattleEnvironmentPalette_Underwater, }, - [BATTLE_TERRAIN_WATER] = + [BATTLE_ENVIRONMENT_WATER] = { .tileset = gBattleEnvironmentTiles_Water, .tilemap = gBattleEnvironmentTilemap_Water, @@ -646,7 +646,7 @@ static const struct BattleBackground sBattleEnvironmentTable[] = .palette = gBattleEnvironmentPalette_Water, }, - [BATTLE_TERRAIN_POND] = + [BATTLE_ENVIRONMENT_POND] = { .tileset = gBattleEnvironmentTiles_PondWater, .tilemap = gBattleEnvironmentTilemap_PondWater, @@ -655,7 +655,7 @@ static const struct BattleBackground sBattleEnvironmentTable[] = .palette = gBattleEnvironmentPalette_PondWater, }, - [BATTLE_TERRAIN_MOUNTAIN] = + [BATTLE_ENVIRONMENT_MOUNTAIN] = { .tileset = gBattleEnvironmentTiles_Rock, .tilemap = gBattleEnvironmentTilemap_Rock, @@ -664,7 +664,7 @@ static const struct BattleBackground sBattleEnvironmentTable[] = .palette = gBattleEnvironmentPalette_Rock, }, - [BATTLE_TERRAIN_CAVE] = + [BATTLE_ENVIRONMENT_CAVE] = { .tileset = gBattleEnvironmentTiles_Cave, .tilemap = gBattleEnvironmentTilemap_Cave, @@ -673,7 +673,7 @@ static const struct BattleBackground sBattleEnvironmentTable[] = .palette = gBattleEnvironmentPalette_Cave, }, - [BATTLE_TERRAIN_BUILDING] = + [BATTLE_ENVIRONMENT_BUILDING] = { .tileset = gBattleEnvironmentTiles_Building, .tilemap = gBattleEnvironmentTilemap_Building, @@ -682,7 +682,7 @@ static const struct BattleBackground sBattleEnvironmentTable[] = .palette = gBattleEnvironmentPalette_Building, }, - [BATTLE_TERRAIN_PLAIN] = + [BATTLE_ENVIRONMENT_PLAIN] = { .tileset = gBattleEnvironmentTiles_Building, .tilemap = gBattleEnvironmentTilemap_Building, diff --git a/src/battle_intro.c b/src/battle_intro.c index d31d3da398..0a0226c608 100644 --- a/src/battle_intro.c +++ b/src/battle_intro.c @@ -24,16 +24,16 @@ static void BattleIntroSlidePartner(u8); static const TaskFunc sBattleIntroSlideFuncs[] = { - [BATTLE_TERRAIN_GRASS] = BattleIntroSlide1, - [BATTLE_TERRAIN_LONG_GRASS] = BattleIntroSlide1, - [BATTLE_TERRAIN_SAND] = BattleIntroSlide2, - [BATTLE_TERRAIN_UNDERWATER] = BattleIntroSlide2, - [BATTLE_TERRAIN_WATER] = BattleIntroSlide2, - [BATTLE_TERRAIN_POND] = BattleIntroSlide1, - [BATTLE_TERRAIN_MOUNTAIN] = BattleIntroSlide1, - [BATTLE_TERRAIN_CAVE] = BattleIntroSlide1, - [BATTLE_TERRAIN_BUILDING] = BattleIntroSlide3, - [BATTLE_TERRAIN_PLAIN] = BattleIntroSlide3, + [BATTLE_ENVIRONMENT_GRASS] = BattleIntroSlide1, + [BATTLE_ENVIRONMENT_LONG_GRASS] = BattleIntroSlide1, + [BATTLE_ENVIRONMENT_SAND] = BattleIntroSlide2, + [BATTLE_ENVIRONMENT_UNDERWATER] = BattleIntroSlide2, + [BATTLE_ENVIRONMENT_WATER] = BattleIntroSlide2, + [BATTLE_ENVIRONMENT_POND] = BattleIntroSlide1, + [BATTLE_ENVIRONMENT_MOUNTAIN] = BattleIntroSlide1, + [BATTLE_ENVIRONMENT_CAVE] = BattleIntroSlide1, + [BATTLE_ENVIRONMENT_BUILDING] = BattleIntroSlide3, + [BATTLE_ENVIRONMENT_PLAIN] = BattleIntroSlide3, }; void SetAnimBgAttribute(u8 bgId, u8 attributeId, u8 value) @@ -120,7 +120,7 @@ void HandleIntroSlide(u8 environment) } else if ((gBattleTypeFlags & BATTLE_TYPE_KYOGRE_GROUDON) && gGameVersion != VERSION_RUBY) { - environment = BATTLE_TERRAIN_UNDERWATER; + environment = BATTLE_ENVIRONMENT_UNDERWATER; taskId = CreateTask(BattleIntroSlide2, 0); } else @@ -194,7 +194,7 @@ static void BattleIntroSlide1(u8 taskId) } else { - if (gTasks[taskId].tEnvironment == BATTLE_TERRAIN_LONG_GRASS) + if (gTasks[taskId].tEnvironment == BATTLE_ENVIRONMENT_LONG_GRASS) { if (gBattle_BG1_Y != (u16)(-80)) gBattle_BG1_Y -= 2; @@ -242,16 +242,16 @@ static void BattleIntroSlide2(u8 taskId) switch (gTasks[taskId].tEnvironment) { - case BATTLE_TERRAIN_SAND: - case BATTLE_TERRAIN_WATER: + case BATTLE_ENVIRONMENT_SAND: + case BATTLE_ENVIRONMENT_WATER: gBattle_BG1_X += 8; break; - case BATTLE_TERRAIN_UNDERWATER: + case BATTLE_ENVIRONMENT_UNDERWATER: gBattle_BG1_X += 6; break; } - if (gTasks[taskId].tEnvironment == BATTLE_TERRAIN_WATER) + if (gTasks[taskId].tEnvironment == BATTLE_ENVIRONMENT_WATER) { gBattle_BG1_Y = Cos2(gTasks[taskId].data[6]) / 512 - 8; if (gTasks[taskId].data[6] < 180) diff --git a/src/battle_main.c b/src/battle_main.c index f964bbd458..b216316d4e 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -671,7 +671,7 @@ static void CB2_InitBattleInternal(void) gBattleEnvironment = BattleSetup_GetEnvironmentId(); if (gBattleTypeFlags & BATTLE_TYPE_RECORDED) - gBattleEnvironment = BATTLE_TERRAIN_BUILDING; + gBattleEnvironment = BATTLE_ENVIRONMENT_BUILDING; InitBattleBgsVideo(); LoadBattleTextboxAndBackground(); diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 976415c8b4..21b0af1c17 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -532,7 +532,7 @@ void (* const gBattleScriptingCommandsTable[])(void) = Cmd_trymemento, //0xC9 Cmd_setforcedtarget, //0xCA Cmd_setcharge, //0xCB - Cmd_callenvironmentattack, //0xCC + Cmd_callenvironmentattack, //0xCC Cmd_cureifburnedparalysedorpoisoned, //0xCD Cmd_settorment, //0xCE Cmd_jumpifnodamage, //0xCF @@ -563,7 +563,7 @@ void (* const gBattleScriptingCommandsTable[])(void) = Cmd_settypebasedhalvers, //0xE8 Cmd_setweatherballtype, //0xE9 Cmd_tryrecycleitem, //0xEA - Cmd_settypetoenvironment, //0xEB + Cmd_settypetoenvironment, //0xEB Cmd_pursuitdoubles, //0xEC Cmd_snatchsetbattlers, //0xED Cmd_removelightscreenreflect, //0xEE @@ -758,16 +758,16 @@ static const u8 sFlailHpScaleToPowerTable[] = static const u16 sNaturePowerMoves[] = { - [BATTLE_TERRAIN_GRASS] = MOVE_STUN_SPORE, - [BATTLE_TERRAIN_LONG_GRASS] = MOVE_RAZOR_LEAF, - [BATTLE_TERRAIN_SAND] = MOVE_EARTHQUAKE, - [BATTLE_TERRAIN_UNDERWATER] = MOVE_HYDRO_PUMP, - [BATTLE_TERRAIN_WATER] = MOVE_SURF, - [BATTLE_TERRAIN_POND] = MOVE_BUBBLE_BEAM, - [BATTLE_TERRAIN_MOUNTAIN] = MOVE_ROCK_SLIDE, - [BATTLE_TERRAIN_CAVE] = MOVE_SHADOW_BALL, - [BATTLE_TERRAIN_BUILDING] = MOVE_SWIFT, - [BATTLE_TERRAIN_PLAIN] = MOVE_SWIFT + [BATTLE_ENVIRONMENT_GRASS] = MOVE_STUN_SPORE, + [BATTLE_ENVIRONMENT_LONG_GRASS] = MOVE_RAZOR_LEAF, + [BATTLE_ENVIRONMENT_SAND] = MOVE_EARTHQUAKE, + [BATTLE_ENVIRONMENT_UNDERWATER] = MOVE_HYDRO_PUMP, + [BATTLE_ENVIRONMENT_WATER] = MOVE_SURF, + [BATTLE_ENVIRONMENT_POND] = MOVE_BUBBLE_BEAM, + [BATTLE_ENVIRONMENT_MOUNTAIN] = MOVE_ROCK_SLIDE, + [BATTLE_ENVIRONMENT_CAVE] = MOVE_SHADOW_BALL, + [BATTLE_ENVIRONMENT_BUILDING] = MOVE_SWIFT, + [BATTLE_ENVIRONMENT_PLAIN] = MOVE_SWIFT }; // format: min. weight (hectograms), base power @@ -825,16 +825,16 @@ static const u8 sPickupProbabilities[] = static const u8 sEnvironmentToType[] = { - [BATTLE_TERRAIN_GRASS] = TYPE_GRASS, - [BATTLE_TERRAIN_LONG_GRASS] = TYPE_GRASS, - [BATTLE_TERRAIN_SAND] = TYPE_GROUND, - [BATTLE_TERRAIN_UNDERWATER] = TYPE_WATER, - [BATTLE_TERRAIN_WATER] = TYPE_WATER, - [BATTLE_TERRAIN_POND] = TYPE_WATER, - [BATTLE_TERRAIN_MOUNTAIN] = TYPE_ROCK, - [BATTLE_TERRAIN_CAVE] = TYPE_ROCK, - [BATTLE_TERRAIN_BUILDING] = TYPE_NORMAL, - [BATTLE_TERRAIN_PLAIN] = TYPE_NORMAL, + [BATTLE_ENVIRONMENT_GRASS] = TYPE_GRASS, + [BATTLE_ENVIRONMENT_LONG_GRASS] = TYPE_GRASS, + [BATTLE_ENVIRONMENT_SAND] = TYPE_GROUND, + [BATTLE_ENVIRONMENT_UNDERWATER] = TYPE_WATER, + [BATTLE_ENVIRONMENT_WATER] = TYPE_WATER, + [BATTLE_ENVIRONMENT_POND] = TYPE_WATER, + [BATTLE_ENVIRONMENT_MOUNTAIN] = TYPE_ROCK, + [BATTLE_ENVIRONMENT_CAVE] = TYPE_ROCK, + [BATTLE_ENVIRONMENT_BUILDING] = TYPE_NORMAL, + [BATTLE_ENVIRONMENT_PLAIN] = TYPE_NORMAL, }; // - ITEM_ULTRA_BALL skips Master Ball and ITEM_NONE @@ -9547,28 +9547,28 @@ static void Cmd_getsecretpowereffect(void) { switch (gBattleEnvironment) { - case BATTLE_TERRAIN_GRASS: + case BATTLE_ENVIRONMENT_GRASS: gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_POISON; break; - case BATTLE_TERRAIN_LONG_GRASS: + case BATTLE_ENVIRONMENT_LONG_GRASS: gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_SLEEP; break; - case BATTLE_TERRAIN_SAND: + case BATTLE_ENVIRONMENT_SAND: gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_ACC_MINUS_1; break; - case BATTLE_TERRAIN_UNDERWATER: + case BATTLE_ENVIRONMENT_UNDERWATER: gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_DEF_MINUS_1; break; - case BATTLE_TERRAIN_WATER: + case BATTLE_ENVIRONMENT_WATER: gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_ATK_MINUS_1; break; - case BATTLE_TERRAIN_POND: + case BATTLE_ENVIRONMENT_POND: gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_SPD_MINUS_1; break; - case BATTLE_TERRAIN_MOUNTAIN: + case BATTLE_ENVIRONMENT_MOUNTAIN: gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_CONFUSION; break; - case BATTLE_TERRAIN_CAVE: + case BATTLE_ENVIRONMENT_CAVE: gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_FLINCH; break; default: diff --git a/src/battle_setup.c b/src/battle_setup.c index 63a3e9b585..77444d5f28 100644 --- a/src/battle_setup.c +++ b/src/battle_setup.c @@ -641,11 +641,11 @@ u8 BattleSetup_GetEnvironmentId(void) tileBehavior = MapGridGetMetatileBehaviorAt(x, y); if (MetatileBehavior_IsTallGrass(tileBehavior)) - return BATTLE_TERRAIN_GRASS; + return BATTLE_ENVIRONMENT_GRASS; if (MetatileBehavior_IsLongGrass(tileBehavior)) - return BATTLE_TERRAIN_LONG_GRASS; + return BATTLE_ENVIRONMENT_LONG_GRASS; if (MetatileBehavior_IsSandOrDeepSand(tileBehavior)) - return BATTLE_TERRAIN_SAND; + return BATTLE_ENVIRONMENT_SAND; switch (gMapHeader.mapType) { @@ -655,41 +655,41 @@ u8 BattleSetup_GetEnvironmentId(void) break; case MAP_TYPE_UNDERGROUND: if (MetatileBehavior_IsIndoorEncounter(tileBehavior)) - return BATTLE_TERRAIN_BUILDING; + return BATTLE_ENVIRONMENT_BUILDING; if (MetatileBehavior_IsSurfableWaterOrUnderwater(tileBehavior)) - return BATTLE_TERRAIN_POND; - return BATTLE_TERRAIN_CAVE; + return BATTLE_ENVIRONMENT_POND; + return BATTLE_ENVIRONMENT_CAVE; case MAP_TYPE_INDOOR: case MAP_TYPE_SECRET_BASE: - return BATTLE_TERRAIN_BUILDING; + return BATTLE_ENVIRONMENT_BUILDING; case MAP_TYPE_UNDERWATER: - return BATTLE_TERRAIN_UNDERWATER; + return BATTLE_ENVIRONMENT_UNDERWATER; case MAP_TYPE_OCEAN_ROUTE: if (MetatileBehavior_IsSurfableWaterOrUnderwater(tileBehavior)) - return BATTLE_TERRAIN_WATER; - return BATTLE_TERRAIN_PLAIN; + return BATTLE_ENVIRONMENT_WATER; + return BATTLE_ENVIRONMENT_PLAIN; } if (MetatileBehavior_IsDeepOrOceanWater(tileBehavior)) - return BATTLE_TERRAIN_WATER; + return BATTLE_ENVIRONMENT_WATER; if (MetatileBehavior_IsSurfableWaterOrUnderwater(tileBehavior)) - return BATTLE_TERRAIN_POND; + return BATTLE_ENVIRONMENT_POND; if (MetatileBehavior_IsMountain(tileBehavior)) - return BATTLE_TERRAIN_MOUNTAIN; + return BATTLE_ENVIRONMENT_MOUNTAIN; if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING)) { // Is BRIDGE_TYPE_POND_*? if (MetatileBehavior_GetBridgeType(tileBehavior) != BRIDGE_TYPE_OCEAN) - return BATTLE_TERRAIN_POND; + return BATTLE_ENVIRONMENT_POND; if (MetatileBehavior_IsBridgeOverWater(tileBehavior) == TRUE) - return BATTLE_TERRAIN_WATER; + return BATTLE_ENVIRONMENT_WATER; } if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ROUTE113) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE113)) - return BATTLE_TERRAIN_SAND; + return BATTLE_ENVIRONMENT_SAND; if (GetSavedWeather() == WEATHER_SANDSTORM) - return BATTLE_TERRAIN_SAND; + return BATTLE_ENVIRONMENT_SAND; - return BATTLE_TERRAIN_PLAIN; + return BATTLE_ENVIRONMENT_PLAIN; } static u8 GetBattleTransitionTypeByMap(void) diff --git a/src/evolution_scene.c b/src/evolution_scene.c index e6cb2c914a..96249941e1 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -237,7 +237,7 @@ void EvolutionScene(struct Pokemon *mon, u16 postEvoSpecies, bool8 canStopEvo, u gBattle_BG3_X = 256; gBattle_BG3_Y = 0; - gBattleEnvironment = BATTLE_TERRAIN_PLAIN; + gBattleEnvironment = BATTLE_ENVIRONMENT_PLAIN; InitBattleBgsVideo(); LoadBattleTextboxAndBackground(); @@ -343,7 +343,7 @@ static void CB2_EvolutionSceneLoadGraphics(void) gBattle_BG3_X = 256; gBattle_BG3_Y = 0; - gBattleEnvironment = BATTLE_TERRAIN_PLAIN; + gBattleEnvironment = BATTLE_ENVIRONMENT_PLAIN; InitBattleBgsVideo(); LoadBattleTextboxAndBackground(); From f11bddf8548c2f47e2881f6211a24bc427a708b6 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 14 Apr 2025 02:12:45 -0400 Subject: [PATCH 03/11] Fixes for Mirage Tower graphics (#2120) * Add documentation for CreateCeilingCrumbleSprites * Combine mirage tower graphics * Add comment about mirage tower / player palette --- graphics/misc/mirage_tower.png | Bin 904 -> 935 bytes graphics_file_rules.mk | 3 +++ src/mirage_tower.c | 37 +++++++++++++++++++-------------- 3 files changed, 24 insertions(+), 16 deletions(-) diff --git a/graphics/misc/mirage_tower.png b/graphics/misc/mirage_tower.png index c851953d2172e58c46a094437167f4e60ab5f26e..36890686f1fc679a536f214a90de530a57fbe92e 100644 GIT binary patch delta 866 zcmV-o1D*Vc2d4*+7Yb+u0{{R3Me%Mfks&{SGD$>1R7i=P)jxNeFc1K67CT=ri@XH$ zyx8q)v0ta!L$fyhBJPkqT|~M;2M#v7LnJn3snKWX-3jq0hM~Rpj0ryu-AOVDf-YvF ziQ8ZhA_N5(1*Bqd9demSj64D8$qewC1N=buv@q|3OgoU{Fw2LKc$mWk#F8qdg6IQ( zAY0%Jx|_2kw2>>w)t?{ z!NU%cao9qh_s3`fle3Lkp1qY+xSe5=VKa24Aqvw!x1$SC;~}6ovv-`oZUN z2jxXWQE06c=<))=*+Gm@Sz80pk>Hho;0tBcc*y`n2$j!pU_DrZ%t3r{V6B6)g|gNc zDDbLLQ0nRuWGe?a=mko=o4;y&)Q<+Vj;ztT`NFE?iXngQ!wYuqK_)b|)-*c)ff>JC zRZLHGt_1BTX` z>!pK<0+}GpXnEXTaJ#`82eG&Y00I!>uyy-v1oSm%edekn-k+(ZVxv9?cRx=(f@p!Z zQwK&P;A>`H({`d2j|{K6v4IwUxUJ__+r@@pu_oB8Exx%CV$5G`sGP-`N+JL_Q-jtF zAqs#82QY%07d(Y{?yCZ-f3c>uqa#kcFLx4XJ$L{<;(F)`e;+#pKY%+TSc00txD669 zSc`qkY;FAHy6HvW28F!>YH*G#$n|eHxF2pX-YTFS8@n+wI_Gj@EEn5<01x;{2e5Nv zyf*O4Ko8zD;nuvGfXd!>;2!0`;tGyt;0mrhy#L1W)or-qoQ(pOo5jls*rxvsN=$%u zzmE}6K=pf|^9J;ZruE&!!^7cl_{=W=4?Gu#J;npi48ke9_s~rVL3qBIg5ci4+P#w& z4n%PdZW=fqACJf5cLu>t+kMaQ;gQ1uz9i{?%bxy-l~P4fWDHB*)hHOs?UI7dTeu2@ s-&62u0>%>%#uI|&e*Ahcb$v4a0&$eUtkL6cy8r+H07*qoM6N<$fh($ delta 835 zcmV-J1HAmF2Z#rd7Ybkm0{{R3siN#dks&{S6G=otR7i=X)xCDwFcbh_7Rc*$5lg@) z3$&*-oJ@tGT}xkt4%yR1PB*)Quf0KrNZy>Kww|H)$MO%5Ha)%PV2nS@x{|KNXe2RK zO}rTmLe0PcMh3AOT!&Og8Y7JWdNKyQCV(I4o;FMSpyLkoWf-SJi2SoAZ~`|Cgqkvc zrG)4Mpc4<=g6`&48d^xx0Yopgi2l0;Cv?){CE)aBY&@VAvcV)qrUf&ck_Qi~bU5vB zY+w!15T1PtNYj2FZHo}1s0XH-#9vVgEkOFCfk~KZ?B#(5_=Lm60m@2!z`3e2EGY~F zCdc*o&JFY$^2$P%S!)c~yn<(a!w@2W6wcKEbVNuPK2eJrFO>iRLP0Hlw%|Ot9)y*E za{_tdA+K!(8D1?71GUUW+9Io2q5c&fwF;ng0dzk0)p!SIF12-=vih1 z52ZD+7D)B|+y+WOmG*G0qXwc_^#b2|0k{x<1A7tzE1bJIK3 zPzC~HS{|tdsRmjy+Gav^4l3c7K%Ii(7hxrJ)&~IT{2Y8%0pArnN;crm8&GmTPd$Qa zfy$`^DlmdcP31%@9+bT5SYQQzzc|ji>5^c&AXqN&0zruFr%Os_x}cPnbd&+QatML* z11uE}Uhx#-c{@PLf4ZQRqhsu#zaD)UtOs|%N539x1mA%i5olvt*9@hUN5D`Jj9p#& z$(8913MVV*PQlR%PH+V||0Rcv2XJEwR|cqJL+K--bI6Vfg0(md@PMCx7}M=wEqy!> zfF8VTLh9;OAdmWo7Vo}te0c@TFTo)ht>Q~CJN^NTItP^g7#6Z8O$8pYO0F8% z@9*~e{WpPI`Y+lryuafv5ZK7y+J=6F#+WS25;||LqhJ`Rl8nyj+HYUuz^wFnr<4Ey N002ovPDHLkV1hC+c>@3d diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index a87344e93c..05dfe5a2d5 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -315,6 +315,9 @@ graphics/pokenav/region_map/map.8bpp: %.8bpp: %.png $(MISCGFXDIR)/japanese_hof.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 29 -Wnum_tiles +$(MISCGFXDIR)/mirage_tower.4bpp: %.4bpp: %.png + $(GFX) $< $@ -num_tiles 73 -Wnum_tiles + $(BATINTGFXDIR)/textbox.gbapal: $(BATINTGFXDIR)/textbox_0.gbapal \ $(BATINTGFXDIR)/textbox_1.gbapal @cat $^ >$@ diff --git a/src/mirage_tower.c b/src/mirage_tower.c index b1e2e5003b..10871b5853 100644 --- a/src/mirage_tower.c +++ b/src/mirage_tower.c @@ -56,12 +56,9 @@ struct FallAnim_Fossil #define TAG_CEILING_CRUMBLE 4000 -#define MIRAGE_TOWER_GFX_LENGTH (sizeof(sBlankTile_Gfx) + sizeof(sMirageTower_Gfx)) +#define MIRAGE_TOWER_GFX_LENGTH (sizeof(sMirageTower_Gfx)) #define FOSSIL_DISINTEGRATE_LENGTH 0x100 -static const struct SpriteSheet sCeilingCrumbleSpriteSheets[]; -static const s16 sCeilingCrumblePositions[][3]; - static void PlayerDescendMirageTower(u8); static void DoScreenShake(u8); static void IncrementCeilingCrumbleFinishedCount(void); @@ -75,8 +72,7 @@ static void Task_FossilFallAndSink(u8); static void SpriteCB_FallingFossil(struct Sprite *); static void UpdateDisintegrationEffect(u8 *, u16, u8, u8, u8); -static const u8 ALIGNED(2) sBlankTile_Gfx[32] = {0}; -static const u8 sMirageTower_Gfx[] = INCBIN_U8("graphics/misc/mirage_tower.4bpp"); +static const ALIGNED(2) u8 sMirageTower_Gfx[] = INCBIN_U8("graphics/misc/mirage_tower.4bpp"); static const u16 sMirageTowerTilemap[] = INCBIN_U16("graphics/misc/mirage_tower.bin"); static const u16 sFossil_Pal[] = INCBIN_U16("graphics/object_events/pics/misc/fossil.gbapal"); // Unused static const u8 sFossil_Gfx[] = INCBIN_U8("graphics/object_events/pics/misc/fossil.4bpp"); // Duplicate of gObjectEventPic_Fossil @@ -445,38 +441,47 @@ static void FinishCeilingCrumbleTask(u8 taskId) ScriptContext_Enable(); } +#define sIndex data[0] +#define sYOffset data[1] + static void CreateCeilingCrumbleSprites(void) { u8 i; u8 spriteId; - for (i = 0; i < 8; i++) + for (i = 0; i < ARRAY_COUNT(sCeilingCrumblePositions); i++) { spriteId = CreateSprite(&sSpriteTemplate_CeilingCrumbleLarge, sCeilingCrumblePositions[i][0] + 120, sCeilingCrumblePositions[i][1], 8); gSprites[spriteId].oam.priority = 0; - gSprites[spriteId].oam.paletteNum = 0; - gSprites[spriteId].data[0] = i; + // These sprites use color index 11 from the player's sprite palette. This probably wasn't intentional. + // The palettes for Brendan and May have different shades of green at this index, so the color of these sprites changes + // depending on the player's gender (and neither shade of green particularly fits a crumbling yellow/brown ceiling). + gSprites[spriteId].oam.paletteNum = PALSLOT_PLAYER; + gSprites[spriteId].sIndex = i; } - for (i = 0; i < 8; i++) + for (i = 0; i < ARRAY_COUNT(sCeilingCrumblePositions); i++) { spriteId = CreateSprite(&sSpriteTemplate_CeilingCrumbleSmall, sCeilingCrumblePositions[i][0] + 115, sCeilingCrumblePositions[i][1] - 3, 8); gSprites[spriteId].oam.priority = 0; - gSprites[spriteId].oam.paletteNum = 0; - gSprites[spriteId].data[0] = i; + gSprites[spriteId].oam.paletteNum = PALSLOT_PLAYER; + gSprites[spriteId].sIndex = i; } } static void SpriteCB_CeilingCrumble(struct Sprite *sprite) { - sprite->data[1] += 2; - sprite->y2 = sprite->data[1] / 2; - if(((sprite->y) + (sprite->y2)) > sCeilingCrumblePositions[sprite->data[0]][2]) + sprite->sYOffset += 2; + sprite->y2 = sprite->sYOffset / 2; + if ((sprite->y + sprite->y2) > sCeilingCrumblePositions[sprite->sIndex][2]) { DestroySprite(sprite); IncrementCeilingCrumbleFinishedCount(); } } +#undef sIndex +#undef sYOffset + static void SetInvisibleMirageTowerMetatiles(void) { u8 i; @@ -543,7 +548,7 @@ static void InitMirageTowerShake(u8 taskId) gTasks[taskId].tState++; break; case 2: - CpuSet(sBlankTile_Gfx, sMirageTowerGfxBuffer, MIRAGE_TOWER_GFX_LENGTH / 2); + CpuSet(sMirageTower_Gfx, sMirageTowerGfxBuffer, MIRAGE_TOWER_GFX_LENGTH / 2); LoadBgTiles(0, sMirageTowerGfxBuffer, MIRAGE_TOWER_GFX_LENGTH, 0); gTasks[taskId].tState++; break; From dd70446db59ba0b09cc480218fd1a13f86b7c19c Mon Sep 17 00:00:00 2001 From: Estellar <137097857+estellarc@users.noreply.github.com> Date: Wed, 23 Apr 2025 18:46:11 -0400 Subject: [PATCH 04/11] Added constant in Birch speech dialogue --- src/main_menu.c | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/src/main_menu.c b/src/main_menu.c index 10b34728b3..9ee6e05b8f 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -527,6 +527,7 @@ enum }; #define MAIN_MENU_BORDER_TILE 0x1D5 +#define BIRCH_DLG_BASE_TILE_NUM 0xFC static void CB2_MainMenu(void) { @@ -1329,7 +1330,7 @@ static void Task_NewGameBirchSpeech_WaitForSpriteFadeInWelcome(u8 taskId) { InitWindows(sNewGameBirchSpeechTextWindows); LoadMainMenuWindowFrameTiles(0, 0xF3); - LoadMessageBoxGfx(0, 0xFC, BG_PLTT_ID(15)); + LoadMessageBoxGfx(0, BIRCH_DLG_BASE_TILE_NUM, BG_PLTT_ID(15)); NewGameBirchSpeech_ShowDialogueWindow(0, 1); PutWindowTilemap(0); CopyWindowToVram(0, COPYWIN_GFX); @@ -1855,7 +1856,7 @@ static void CB2_NewGameBirchSpeech_ReturnFromNamingScreen(void) SetMainCallback2(CB2_MainMenu); InitWindows(sNewGameBirchSpeechTextWindows); LoadMainMenuWindowFrameTiles(0, 0xF3); - LoadMessageBoxGfx(0, 0xFC, BG_PLTT_ID(15)); + LoadMessageBoxGfx(0, BIRCH_DLG_BASE_TILE_NUM, BG_PLTT_ID(15)); PutWindowTilemap(0); CopyWindowToVram(0, COPYWIN_FULL); } @@ -2277,20 +2278,20 @@ static void NewGameBirchSpeech_ShowDialogueWindow(u8 windowId, u8 copyToVram) static void NewGameBirchSpeech_CreateDialogueWindowBorder(u8 bg, u8 x, u8 y, u8 width, u8 height, u8 palNum) { - FillBgTilemapBufferRect(bg, 0xFD, x-2, y-1, 1, 1, palNum); - FillBgTilemapBufferRect(bg, 0xFF, x-1, y-1, 1, 1, palNum); - FillBgTilemapBufferRect(bg, 0x100, x, y-1, width, 1, palNum); - FillBgTilemapBufferRect(bg, 0x101, x+width-1, y-1, 1, 1, palNum); - FillBgTilemapBufferRect(bg, 0x102, x+width, y-1, 1, 1, palNum); - FillBgTilemapBufferRect(bg, 0x103, x-2, y, 1, 5, palNum); - FillBgTilemapBufferRect(bg, 0x105, x-1, y, width+1, 5, palNum); - FillBgTilemapBufferRect(bg, 0x106, x+width, y, 1, 5, palNum); + FillBgTilemapBufferRect(bg, BIRCH_DLG_BASE_TILE_NUM + 1, x-2, y-1, 1, 1, palNum); + FillBgTilemapBufferRect(bg, BIRCH_DLG_BASE_TILE_NUM + 3, x-1, y-1, 1, 1, palNum); + FillBgTilemapBufferRect(bg, BIRCH_DLG_BASE_TILE_NUM + 4, x, y-1, width, 1, palNum); + FillBgTilemapBufferRect(bg, BIRCH_DLG_BASE_TILE_NUM + 5, x+width-1, y-1, 1, 1, palNum); + FillBgTilemapBufferRect(bg, BIRCH_DLG_BASE_TILE_NUM + 6, x+width, y-1, 1, 1, palNum); + FillBgTilemapBufferRect(bg, BIRCH_DLG_BASE_TILE_NUM + 7, x-2, y, 1, 5, palNum); + FillBgTilemapBufferRect(bg, BIRCH_DLG_BASE_TILE_NUM + 9, x-1, y, width+1, 5, palNum); + FillBgTilemapBufferRect(bg, BIRCH_DLG_BASE_TILE_NUM + 10, x+width, y, 1, 5, palNum); - FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(0xFD), x-2, y+height, 1, 1, palNum); - FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(0xFF), x-1, y+height, 1, 1, palNum); - FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(0x100), x, y+height, width-1, 1, palNum); - FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(0x101), x+width-1, y+height, 1, 1, palNum); - FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(0x102), x+width, y+height, 1, 1, palNum); + FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(BIRCH_DLG_BASE_TILE_NUM + 1), x-2, y+height, 1, 1, palNum); + FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(BIRCH_DLG_BASE_TILE_NUM + 3), x-1, y+height, 1, 1, palNum); + FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(BIRCH_DLG_BASE_TILE_NUM + 4), x, y+height, width-1, 1, palNum); + FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(BIRCH_DLG_BASE_TILE_NUM + 5), x+width-1, y+height, 1, 1, palNum); + FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(BIRCH_DLG_BASE_TILE_NUM + 6), x+width, y+height, 1, 1, palNum); } static void Task_NewGameBirchSpeech_ReturnFromNamingScreenShowTextbox(u8 taskId) From fc872b481e77e07676e1d9021468c0016b52b9e1 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sun, 27 Apr 2025 09:27:21 -0400 Subject: [PATCH 05/11] Fix `FORM_CHANGE_ITEM_HOLD` bug manifested during `givemon` (#6702) --- src/pokemon.c | 18 +++++++++++++++++- test/pokemon.c | 17 +++++++++++++++++ 2 files changed, 34 insertions(+), 1 deletion(-) diff --git a/src/pokemon.c b/src/pokemon.c index f09dbacab5..300b57e81d 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -6559,7 +6559,23 @@ u32 GetFormChangeTargetSpeciesBoxMon(struct BoxPokemon *boxMon, u16 method, u32 case FORM_CHANGE_ITEM_HOLD: if ((heldItem == formChanges[i].param1 || formChanges[i].param1 == ITEM_NONE) && (ability == formChanges[i].param2 || formChanges[i].param2 == ABILITY_NONE)) - targetSpecies = formChanges[i].targetSpecies; + { + // This is to prevent reverting to base form when giving the item to the corresponding form. + // Eg. Giving a Zap Plate to an Electric Arceus without an item (most likely to happen when using givemon) + bool32 currentItemForm = FALSE; + for (int j = 0; formChanges[j].method != FORM_CHANGE_TERMINATOR; j++) + { + if (species == formChanges[j].targetSpecies + && formChanges[j].param1 == heldItem + && formChanges[j].param1 != ITEM_NONE) + { + currentItemForm = TRUE; + break; + } + } + if (!currentItemForm) + targetSpecies = formChanges[i].targetSpecies; + } break; case FORM_CHANGE_ITEM_USE: if (arg == formChanges[i].param1) diff --git a/test/pokemon.c b/test/pokemon.c index 16aadee798..dbb88081cf 100644 --- a/test/pokemon.c +++ b/test/pokemon.c @@ -256,6 +256,23 @@ TEST("givemon respects perfectIVCount") } } +TEST("givemon respects FORM_CHANGE_ITEM_HOLD") +{ + ZeroPlayerPartyMons(); + + RUN_OVERWORLD_SCRIPT( + givemon SPECIES_ARCEUS_NORMAL, 100, item=ITEM_ZAP_PLATE; + givemon SPECIES_ARCEUS_GRASS, 100, item=ITEM_ZAP_PLATE; + givemon SPECIES_ARCEUS_ELECTRIC, 100, item=ITEM_ZAP_PLATE; + givemon SPECIES_GIRATINA_ORIGIN, 100, item=ITEM_POTION; + ); + + EXPECT_EQ(GetMonData(&gPlayerParty[0], MON_DATA_SPECIES), SPECIES_ARCEUS_ELECTRIC); + EXPECT_EQ(GetMonData(&gPlayerParty[1], MON_DATA_SPECIES), SPECIES_ARCEUS_ELECTRIC); + EXPECT_EQ(GetMonData(&gPlayerParty[2], MON_DATA_SPECIES), SPECIES_ARCEUS_ELECTRIC); + EXPECT_EQ(GetMonData(&gPlayerParty[3], MON_DATA_SPECIES), SPECIES_GIRATINA_ALTERED); +} + TEST("givemon [moves]") { ZeroPlayerPartyMons(); From 9c6fa4967186251188795a82abed7e29a286bbc4 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Mon, 28 Apr 2025 12:09:47 -0400 Subject: [PATCH 06/11] Use correct define for moves in test runner (#6711) --- test/test_runner_battle.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/test_runner_battle.c b/test/test_runner_battle.c index 806dcf1956..098c4f4a29 100644 --- a/test/test_runner_battle.c +++ b/test/test_runner_battle.c @@ -2373,7 +2373,7 @@ void ExpectMoves(u32 sourceLine, struct BattlePokemon *battler, bool32 notExpect s32 battlerId = battler - gBattleMons; u32 i; - for (i = 0; i < MAX_BATTLERS_COUNT; i++) + for (i = 0; i < MAX_MON_MOVES; i++) { if (moves.moves[i] != MOVE_NONE) { From afcba8d9cd08b27b3e92ceb97ad1199083e166c8 Mon Sep 17 00:00:00 2001 From: Alex <93446519+AlexOn1ine@users.noreply.github.com> Date: Tue, 29 Apr 2025 23:25:56 +0200 Subject: [PATCH 07/11] Fixes Stomping Tantrum not doubling power if asleep or frozen (#6719) --- include/battle.h | 14 ++------ src/battle_main.c | 12 ++----- src/battle_script_commands.c | 2 +- src/battle_util.c | 39 +++++++++------------- test/battle/move_effect/stomping_tantrum.c | 2 +- 5 files changed, 23 insertions(+), 46 deletions(-) diff --git a/include/battle.h b/include/battle.h index 9e7c4945dc..4620112194 100644 --- a/include/battle.h +++ b/include/battle.h @@ -148,27 +148,19 @@ struct ProtectStruct u32 helpingHand:1; u32 bounceMove:1; u32 stealMove:1; - u32 prlzImmobility:1; + u32 nonVolatileStatusImmobility:1; u32 confusionSelfDmg:1; u32 targetAffected:1; u32 chargingTurn:1; u32 fleeType:2; // 0: Normal, 1: FLEE_ITEM, 2: FLEE_ABILITY - u32 usedImprisonedMove:1; - u32 loveImmobility:1; - u32 usedDisabledMove:1; - u32 usedTauntedMove:1; - u32 flag2Unknown:1; // Only set to 0 once. Checked in 'WasUnableToUseMove' function. - u32 flinchImmobility:1; + u32 unableToUseMove:1; // Not to be confused with HITMARKER_UNABLE_TO_USE_MOVE (It is questionable though if there is a difference. Needs further research) u32 notFirstStrike:1; u32 palaceUnableToUseMove:1; - u32 usedHealBlockedMove:1; - u32 usedGravityPreventedMove:1; u32 powderSelfDmg:1; - u32 usedThroatChopPreventedMove:1; u32 statRaised:1; u32 usedCustapBerry:1; // also quick claw u32 touchedProtectLike:1; - u32 unused:1; + u32 unused:9; // End of 32-bit bitfield u16 disableEjectPack:1; u16 statFell:1; diff --git a/src/battle_main.c b/src/battle_main.c index 93729410cd..c220b37c4b 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -3283,21 +3283,13 @@ const u8* FaintClearSetData(u32 battler) gProtectStructs[battler].helpingHand = FALSE; gProtectStructs[battler].bounceMove = FALSE; gProtectStructs[battler].stealMove = FALSE; - gProtectStructs[battler].prlzImmobility = FALSE; + gProtectStructs[battler].nonVolatileStatusImmobility = FALSE; + gProtectStructs[battler].unableToUseMove = FALSE; gProtectStructs[battler].confusionSelfDmg = FALSE; gProtectStructs[battler].targetAffected = FALSE; gProtectStructs[battler].chargingTurn = FALSE; gProtectStructs[battler].fleeType = 0; - gProtectStructs[battler].usedImprisonedMove = FALSE; - gProtectStructs[battler].loveImmobility = FALSE; - gProtectStructs[battler].usedDisabledMove = FALSE; - gProtectStructs[battler].usedTauntedMove = FALSE; - gProtectStructs[battler].flag2Unknown = FALSE; - gProtectStructs[battler].flinchImmobility = FALSE; gProtectStructs[battler].notFirstStrike = FALSE; - gProtectStructs[battler].usedHealBlockedMove = FALSE; - gProtectStructs[battler].usedGravityPreventedMove = FALSE; - gProtectStructs[battler].usedThroatChopPreventedMove = FALSE; gProtectStructs[battler].statRaised = FALSE; gProtectStructs[battler].statFell = FALSE; gProtectStructs[battler].pranksterElevated = FALSE; diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index dcf4dbb8cc..3704eb1b01 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -6820,7 +6820,7 @@ static void Cmd_moveend(void) case MOVEEND_UPDATE_LAST_MOVES: if ((gBattleStruct->moveResultFlags[gBattlerTarget] & (MOVE_RESULT_FAILED | MOVE_RESULT_DOESNT_AFFECT_FOE)) || (gBattleMons[gBattlerAttacker].status2 & (STATUS2_FLINCHED)) - || gProtectStructs[gBattlerAttacker].prlzImmobility) + || gProtectStructs[gBattlerAttacker].nonVolatileStatusImmobility) gBattleStruct->battlerState[gBattlerAttacker].lastMoveFailed = TRUE; else gBattleStruct->battlerState[gBattlerAttacker].lastMoveFailed = FALSE; diff --git a/src/battle_util.c b/src/battle_util.c index 0093550a47..adc6ac182d 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -1081,21 +1081,12 @@ const u8* CancelMultiTurnMoves(u32 battler) bool32 WasUnableToUseMove(u32 battler) { - if (gProtectStructs[battler].prlzImmobility - || gProtectStructs[battler].usedImprisonedMove - || gProtectStructs[battler].loveImmobility - || gProtectStructs[battler].usedDisabledMove - || gProtectStructs[battler].usedTauntedMove - || gProtectStructs[battler].usedGravityPreventedMove - || gProtectStructs[battler].usedHealBlockedMove - || gProtectStructs[battler].flag2Unknown - || gProtectStructs[battler].flinchImmobility - || gProtectStructs[battler].confusionSelfDmg - || gProtectStructs[battler].powderSelfDmg - || gProtectStructs[battler].usedThroatChopPreventedMove) + if (gProtectStructs[battler].nonVolatileStatusImmobility + || gProtectStructs[battler].unableToUseMove + || gProtectStructs[battler].powderSelfDmg + || gProtectStructs[battler].confusionSelfDmg) return TRUE; - else - return FALSE; + return FALSE; } void PrepareStringBattle(u16 stringId, u32 battler) @@ -3223,6 +3214,7 @@ static void CancellerAsleep(u32 *effect) u32 moveEffect = GetMoveEffect(gChosenMove); if (moveEffect != EFFECT_SNORE && moveEffect != EFFECT_SLEEP_TALK) { + gProtectStructs[gBattlerAttacker].nonVolatileStatusImmobility = TRUE; gBattlescriptCurrInstr = BattleScript_MoveUsedIsAsleep; gHitMarker |= HITMARKER_UNABLE_TO_USE_MOVE; *effect = 2; @@ -3247,6 +3239,7 @@ static void CancellerFrozen(u32 *effect) { if (!RandomPercentage(RNG_FROZEN, 20)) { + gProtectStructs[gBattlerAttacker].nonVolatileStatusImmobility = TRUE; gBattlescriptCurrInstr = BattleScript_MoveUsedIsFrozen; gHitMarker |= (HITMARKER_NO_ATTACKSTRING | HITMARKER_UNABLE_TO_USE_MOVE); } @@ -3335,7 +3328,7 @@ static void CancellerFlinch(u32 *effect) { if (gBattleMons[gBattlerAttacker].status2 & STATUS2_FLINCHED) { - gProtectStructs[gBattlerAttacker].flinchImmobility = TRUE; + gProtectStructs[gBattlerAttacker].unableToUseMove = TRUE; CancelMultiTurnMoves(gBattlerAttacker); gBattlescriptCurrInstr = BattleScript_MoveUsedFlinched; gHitMarker |= HITMARKER_UNABLE_TO_USE_MOVE; @@ -3356,7 +3349,7 @@ static void CancellerInLove(u32 *effect) { BattleScriptPush(BattleScript_MoveUsedIsInLoveCantAttack); gHitMarker |= HITMARKER_UNABLE_TO_USE_MOVE; - gProtectStructs[gBattlerAttacker].loveImmobility = TRUE; + gProtectStructs[gBattlerAttacker].unableToUseMove = TRUE; CancelMultiTurnMoves(gBattlerAttacker); } gBattlescriptCurrInstr = BattleScript_MoveUsedIsInLove; @@ -3368,7 +3361,7 @@ static void CancellerDisabled(u32 *effect) { if (GetActiveGimmick(gBattlerAttacker) != GIMMICK_Z_MOVE && gDisableStructs[gBattlerAttacker].disabledMove == gCurrentMove && gDisableStructs[gBattlerAttacker].disabledMove != MOVE_NONE) { - gProtectStructs[gBattlerAttacker].usedDisabledMove = TRUE; + gProtectStructs[gBattlerAttacker].unableToUseMove = TRUE; gBattleScripting.battler = gBattlerAttacker; CancelMultiTurnMoves(gBattlerAttacker); gBattlescriptCurrInstr = BattleScript_MoveUsedIsDisabled; @@ -3381,7 +3374,7 @@ static void CancellerHealBlocked(u32 *effect) { if (GetActiveGimmick(gBattlerAttacker) != GIMMICK_Z_MOVE && gStatuses3[gBattlerAttacker] & STATUS3_HEAL_BLOCK && IsHealBlockPreventingMove(gBattlerAttacker, gCurrentMove)) { - gProtectStructs[gBattlerAttacker].usedHealBlockedMove = TRUE; + gProtectStructs[gBattlerAttacker].unableToUseMove = TRUE; gBattleScripting.battler = gBattlerAttacker; CancelMultiTurnMoves(gBattlerAttacker); gBattlescriptCurrInstr = BattleScript_MoveUsedHealBlockPrevents; @@ -3394,7 +3387,7 @@ static void CancellerGravity(u32 *effect) { if (gFieldStatuses & STATUS_FIELD_GRAVITY && IsGravityPreventingMove(gCurrentMove)) { - gProtectStructs[gBattlerAttacker].usedGravityPreventedMove = TRUE; + gProtectStructs[gBattlerAttacker].unableToUseMove = TRUE; gBattleScripting.battler = gBattlerAttacker; CancelMultiTurnMoves(gBattlerAttacker); gBattlescriptCurrInstr = BattleScript_MoveUsedGravityPrevents; @@ -3407,7 +3400,7 @@ static void CancellerThroatChop(u32 *effect) { if (GetActiveGimmick(gBattlerAttacker) != GIMMICK_Z_MOVE && gDisableStructs[gBattlerAttacker].throatChopTimer && IsSoundMove(gCurrentMove)) { - gProtectStructs[gBattlerAttacker].usedThroatChopPreventedMove = TRUE; + gProtectStructs[gBattlerAttacker].unableToUseMove = TRUE; CancelMultiTurnMoves(gBattlerAttacker); gBattlescriptCurrInstr = BattleScript_MoveUsedIsThroatChopPrevented; gHitMarker |= HITMARKER_UNABLE_TO_USE_MOVE; @@ -3419,7 +3412,7 @@ static void CancellerTaunted(u32 *effect) { if (GetActiveGimmick(gBattlerAttacker) != GIMMICK_Z_MOVE && gDisableStructs[gBattlerAttacker].tauntTimer && IsBattleMoveStatus(gCurrentMove)) { - gProtectStructs[gBattlerAttacker].usedTauntedMove = TRUE; + gProtectStructs[gBattlerAttacker].unableToUseMove = TRUE; CancelMultiTurnMoves(gBattlerAttacker); gBattlescriptCurrInstr = BattleScript_MoveUsedIsTaunted; gHitMarker |= HITMARKER_UNABLE_TO_USE_MOVE; @@ -3431,7 +3424,7 @@ static void CancellerImprisoned(u32 *effect) { if (GetActiveGimmick(gBattlerAttacker) != GIMMICK_Z_MOVE && GetImprisonedMovesCount(gBattlerAttacker, gCurrentMove)) { - gProtectStructs[gBattlerAttacker].usedImprisonedMove = TRUE; + gProtectStructs[gBattlerAttacker].unableToUseMove = TRUE; CancelMultiTurnMoves(gBattlerAttacker); gBattlescriptCurrInstr = BattleScript_MoveUsedIsImprisoned; gHitMarker |= HITMARKER_UNABLE_TO_USE_MOVE; @@ -3489,7 +3482,7 @@ static void CancellerParalysed(u32 *effect) && !(B_MAGIC_GUARD == GEN_4 && GetBattlerAbility(gBattlerAttacker) == ABILITY_MAGIC_GUARD) && !RandomPercentage(RNG_PARALYSIS, 75)) { - gProtectStructs[gBattlerAttacker].prlzImmobility = TRUE; + gProtectStructs[gBattlerAttacker].nonVolatileStatusImmobility = TRUE; // This is removed in FRLG and Emerald for some reason //CancelMultiTurnMoves(gBattlerAttacker); gBattlescriptCurrInstr = BattleScript_MoveUsedIsParalyzed; diff --git a/test/battle/move_effect/stomping_tantrum.c b/test/battle/move_effect/stomping_tantrum.c index c759de38b1..18d8ffb7e9 100644 --- a/test/battle/move_effect/stomping_tantrum.c +++ b/test/battle/move_effect/stomping_tantrum.c @@ -90,7 +90,7 @@ SINGLE_BATTLE_TEST("Stomping Tatrum will not deal double damage if target protec } } -SINGLE_BATTLE_TEST("Stomping Tatrum will not deal double damage if it failed on the previous turn cause of Protect") +SINGLE_BATTLE_TEST("Stomping Tatrum will not deal double if it missed") { s16 damage[2]; GIVEN { From accb85554a70acf52677192cfe48532842964e89 Mon Sep 17 00:00:00 2001 From: Hedara Date: Wed, 30 Apr 2025 11:23:05 +0200 Subject: [PATCH 08/11] Expansion 1.11.2 Release --- .../ISSUE_TEMPLATE/01_battle_engine_bugs.yaml | 3 +- .../ISSUE_TEMPLATE/02_battle_ai_issues.yaml | 3 +- .github/ISSUE_TEMPLATE/04_other_errors.yaml | 3 +- README.md | 2 +- docs/SUMMARY.md | 1 + docs/changelogs/1.11.x/1.11.2.md | 143 ++++++++++++++++++ include/constants/expansion.h | 4 +- 7 files changed, 153 insertions(+), 6 deletions(-) create mode 100644 docs/changelogs/1.11.x/1.11.2.md diff --git a/.github/ISSUE_TEMPLATE/01_battle_engine_bugs.yaml b/.github/ISSUE_TEMPLATE/01_battle_engine_bugs.yaml index 7d3ad81846..d1ee2861af 100644 --- a/.github/ISSUE_TEMPLATE/01_battle_engine_bugs.yaml +++ b/.github/ISSUE_TEMPLATE/01_battle_engine_bugs.yaml @@ -23,9 +23,10 @@ body: label: Version description: What version of pokeemerald-expansion are you using as a base? options: - - 1.11.1 (Latest release) + - 1.11.2 (Latest release) - master (default, unreleased bugfixes) - upcoming (Edge) + - 1.11.1 - 1.11.0 - 1.10.3 - 1.10.2 diff --git a/.github/ISSUE_TEMPLATE/02_battle_ai_issues.yaml b/.github/ISSUE_TEMPLATE/02_battle_ai_issues.yaml index 1fe3387f6b..79669a28dc 100644 --- a/.github/ISSUE_TEMPLATE/02_battle_ai_issues.yaml +++ b/.github/ISSUE_TEMPLATE/02_battle_ai_issues.yaml @@ -23,9 +23,10 @@ body: label: Version description: What version of pokeemerald-expansion are you using as a base? options: - - 1.11.1 (Latest release) + - 1.11.2 (Latest release) - master (default, unreleased bugfixes) - upcoming (Edge) + - 1.11.1 - 1.11.0 - 1.10.3 - 1.10.2 diff --git a/.github/ISSUE_TEMPLATE/04_other_errors.yaml b/.github/ISSUE_TEMPLATE/04_other_errors.yaml index 0f37baf0fc..b8cd2c7cb5 100644 --- a/.github/ISSUE_TEMPLATE/04_other_errors.yaml +++ b/.github/ISSUE_TEMPLATE/04_other_errors.yaml @@ -23,9 +23,10 @@ body: label: Version description: What version of pokeemerald-expansion are you using as a base? options: - - 1.11.1 (Latest release) + - 1.11.2 (Latest release) - master (default, unreleased bugfixes) - upcoming (Edge) + - 1.11.1 - 1.11.0 - 1.10.3 - 1.10.2 diff --git a/README.md b/README.md index 75a63603a5..d863b9ce94 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ The main advantage of using vanilla pokeemerald as a base is being able to link If you use pokeemerald-expansion in your hack, please add RHH (Rom Hacking Hideout) to your credits list. Optionally, you can list the version used, so it can help players know what features to expect. You can phrase it as the following: ``` -Based off RHH's pokeemerald-expansion 1.11.1 https://github.com/rh-hideout/pokeemerald-expansion/ +Based off RHH's pokeemerald-expansion 1.11.2 https://github.com/rh-hideout/pokeemerald-expansion/ ``` #### Important: DO NOT use GitHub's "Download Zip" option. Using this option will not download the commit history required to update your expansion version or merge other feature branches. Instead, please read [this guide](https://github.com/Pawkkie/Team-Aquas-Asset-Repo/wiki/The-Basics-of-GitHub) to learn how to fork the repository and clone locally from there. diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md index 3385b2123d..f8dcba34db 100644 --- a/docs/SUMMARY.md +++ b/docs/SUMMARY.md @@ -17,6 +17,7 @@ - [How to add new Trainer Slides](tutorials/how_to_new_trainer_slide.md) - [Changelog](./CHANGELOG.md) - [1.11.x]() + - [Version 1.11.2](changelogs/1.11.x/1.11.2.md) - [Version 1.11.1](changelogs/1.11.x/1.11.1.md) - [Version 1.11.0](changelogs/1.11.x/1.11.0.md) - [1.10.x]() diff --git a/docs/changelogs/1.11.x/1.11.2.md b/docs/changelogs/1.11.x/1.11.2.md new file mode 100644 index 0000000000..47d9b11b97 --- /dev/null +++ b/docs/changelogs/1.11.x/1.11.2.md @@ -0,0 +1,143 @@ +```md +## How to update +- If you haven't set up a remote, run the command `git remote add RHH https://github.com/rh-hideout/pokeemerald-expansion`. +- Once you have your remote set up, run the command `git pull RHH expansion/1.11.2 +`. +``` + + +## 🧬 General 🧬 +### Changed +* 1.11.1 Release by @hedara90 in [#6503](https://github.com/rh-hideout/pokeemerald-expansion/pull/6503) +* Add General Merge to label check by @hedara90 in [#6512](https://github.com/rh-hideout/pokeemerald-expansion/pull/6512) +* Added AI switch display to the battle debug by @hedara90 in [#6529](https://github.com/rh-hideout/pokeemerald-expansion/pull/6529) +* Consolidated "How to add Pokémon" tutorials by @AsparagusEduardo in [#6541](https://github.com/rh-hideout/pokeemerald-expansion/pull/6541) +* Fixed Behemoth Blade/Bash handler not using form change tables by @AsparagusEduardo in [#6558](https://github.com/rh-hideout/pokeemerald-expansion/pull/6558) +* Documentation by @hedara90 in [#6576](https://github.com/rh-hideout/pokeemerald-expansion/pull/6576) +* Corrected Dexnav config related comment by @LOuroboros in [#6610](https://github.com/rh-hideout/pokeemerald-expansion/pull/6610) +* Make generated files match the current formatting by @hedara90 in [#6636](https://github.com/rh-hideout/pokeemerald-expansion/pull/6636) + +### Fixed +* Mark RTC/Flash save hint string as used by @aronson in [#6507](https://github.com/rh-hideout/pokeemerald-expansion/pull/6507) +* Fix move names in learnset helper by @malad1211 in [#6510](https://github.com/rh-hideout/pokeemerald-expansion/pull/6510) +* Fix no eligible mons when only the partner wins in multi battle by @Bivurnum in [#6626](https://github.com/rh-hideout/pokeemerald-expansion/pull/6626) +* Fixed broken palette load for shiny followers in the sprite visualizer by @hedara90 in [#6683](https://github.com/rh-hideout/pokeemerald-expansion/pull/6683) +* Fix `FORM_CHANGE_ITEM_HOLD` bug manifested during `givemon` by @AsparagusEduardo in [#6702](https://github.com/rh-hideout/pokeemerald-expansion/pull/6702) + +## 🗺️ Overworld 🗺️ +### Fixed +* Added call to ItemId_GetDescription by @pkmnsnfrn in [#6582](https://github.com/rh-hideout/pokeemerald-expansion/pull/6582) + +## 🐉 Pokémon 🐉 +### Changed +* Add clarification for EVO_SCRIPT_TRIGGER_DMG by @Bassoonian in [#6579](https://github.com/rh-hideout/pokeemerald-expansion/pull/6579) + +### Fixed +* Capped Exp from Daycare to level cap by @hedara90 in [#6622](https://github.com/rh-hideout/pokeemerald-expansion/pull/6622) + +## ⚔️ Battle General ⚔️ +### Changed +* Fixes Thermal Exchange not curing existing burn by @PhallenTree in [#6545](https://github.com/rh-hideout/pokeemerald-expansion/pull/6545) +* Add clarification for underlying math in EV caps by @Bassoonian and @i0brendan0 in [#6580](https://github.com/rh-hideout/pokeemerald-expansion/pull/6580) +* Added missing `gMovesInfo` encapsulation by @AsparagusEduardo in [#6656](https://github.com/rh-hideout/pokeemerald-expansion/pull/6656) +* Remove misleading comment by @AlexOn1ine in [#6684](https://github.com/rh-hideout/pokeemerald-expansion/pull/6684) + +### Fixed +* Fixes Tera Type not being carried over to during form change / evolution by @AlexOn1ine in [#6502](https://github.com/rh-hideout/pokeemerald-expansion/pull/6502) +* Fixes Hone Claws checking the wrong stats for its stat change animation and Stockpile drops being stopped by stat reduction prevention effects by @PhallenTree in [#6522](https://github.com/rh-hideout/pokeemerald-expansion/pull/6522) +* Fixes Red Card against Dynamaxed mons by @AlexOn1ine in [#6526](https://github.com/rh-hideout/pokeemerald-expansion/pull/6526) +* Fixes transformed mon being able to use tera on Terapagos by @AlexOn1ine in [#6528](https://github.com/rh-hideout/pokeemerald-expansion/pull/6528) +* Fixes Will-O-Wisp not being blocked by Thermal Exchange by @AlexOn1ine in [#6534](https://github.com/rh-hideout/pokeemerald-expansion/pull/6534) +* Add hold effects for PLA Origin Trio items by @Bassoonian in [#6578](https://github.com/rh-hideout/pokeemerald-expansion/pull/6578) +* Ability imposter by @wiz1989 and @AlexOn1ine in [#6552](https://github.com/rh-hideout/pokeemerald-expansion/pull/6552) +* Fixes Dynamax reversion animation when fainting by @PhallenTree in [#6597](https://github.com/rh-hideout/pokeemerald-expansion/pull/6597) +* Fix potential compile error caused by sTeraIndicatorDataPtrs by @AlexOn1ine in [#6599](https://github.com/rh-hideout/pokeemerald-expansion/pull/6599) +* Revert wrongly done Embody Aspect fix by @AlexOn1ine in [#6607](https://github.com/rh-hideout/pokeemerald-expansion/pull/6607) +* Fixes wrong battler's Illusion wearing off when the Attacker faints and fixes Illusion tests by @PhallenTree in [#6596](https://github.com/rh-hideout/pokeemerald-expansion/pull/6596) +* Fixes Gulp Missile freezing the game if when attacker fainted by @AlexOn1ine in [#6639](https://github.com/rh-hideout/pokeemerald-expansion/pull/6639) +* Fixes Big Root Leech Seed heal amount by @AlexOn1ine in [#6638](https://github.com/rh-hideout/pokeemerald-expansion/pull/6638) +* Fix Mirror Armor and Obstruct interaction by @AlexOn1ine in [#6630](https://github.com/rh-hideout/pokeemerald-expansion/pull/6630) +* Fixes some restore issues by @AlexOn1ine in [#6629](https://github.com/rh-hideout/pokeemerald-expansion/pull/6629) +* Fixes Ally Switch cancelling partner's moves targeting that side of the field by @PhallenTree and @hedara90 made the Ally Switch test in #6646 in [#6647](https://github.com/rh-hideout/pokeemerald-expansion/pull/6647) +* Fixes commander activation on a fainted mon by @AlexOn1ine in [#6632](https://github.com/rh-hideout/pokeemerald-expansion/pull/6632) +* Fix captivate-oblivious interaction and related test by @cawtds in [#6653](https://github.com/rh-hideout/pokeemerald-expansion/pull/6653) +* Fix gBattlerTarget OOB for Gravity and Perish Song by @AlexOn1ine in [#6662](https://github.com/rh-hideout/pokeemerald-expansion/pull/6662) +* Fixes Intimidate / Eject Pack interaction by @AlexOn1ine in [#6645](https://github.com/rh-hideout/pokeemerald-expansion/pull/6645) +* Fixes Neutralizing Gas activating again after switch-in by @PhallenTree in [#6667](https://github.com/rh-hideout/pokeemerald-expansion/pull/6667) +* Fixes Bug Bite eaten berry not ignoring Unnerve by @AlexOn1ine in [#6666](https://github.com/rh-hideout/pokeemerald-expansion/pull/6666) +* Fixes Mirror Armor stat drops not being stopped by Substitute by @PhallenTree in [#6675](https://github.com/rh-hideout/pokeemerald-expansion/pull/6675) +* Fixes Magician Life Orb interaction by @AlexOn1ine in [#6676](https://github.com/rh-hideout/pokeemerald-expansion/pull/6676) +* Fixes Unburden doubling speed when affected by Neutralizing Gas by @PhallenTree in [#6691](https://github.com/rh-hideout/pokeemerald-expansion/pull/6691) +* Fix various Toxic Spikes interactions by @hedara90 in [#6690](https://github.com/rh-hideout/pokeemerald-expansion/pull/6690) +* Fixes Z and Max moves dmg reduction against side protection by @AlexOn1ine in [#6697](https://github.com/rh-hideout/pokeemerald-expansion/pull/6697) +* Fixes Stomping Tantrum not doubling power if asleep or frozen by @AlexOn1ine in [#6719](https://github.com/rh-hideout/pokeemerald-expansion/pull/6719) + +## 🤹 Moves 🤹 +### Fixed +* Gimmick Indicator refactor by @hedara90 in [#6553](https://github.com/rh-hideout/pokeemerald-expansion/pull/6553) + - This frees up a lot of VRAM in battles. +* Animation fixes from lucky adapted to expansion by @hedara90 and @/luckytyphlosion in [#6452](https://github.com/rh-hideout/pokeemerald-expansion/pull/6452) +* Fix Magma Storm getting stuck by @hedara90 in [#6605](https://github.com/rh-hideout/pokeemerald-expansion/pull/6605) +* Fix VRAM load for Black Hole Eclipse by @hedara90 in [#6635](https://github.com/rh-hideout/pokeemerald-expansion/pull/6635) +* Fixes some moves trying to load too much VRAM by @hedara90 in [#6633](https://github.com/rh-hideout/pokeemerald-expansion/pull/6633) + +## 🧶 Items 🧶 +### Fixed +* Fix using items to heal partner in battle by @hedara90 in [#6517](https://github.com/rh-hideout/pokeemerald-expansion/pull/6517) + +## 🤖 Battle AI 🤖 +### Changed +* Add AI thinking cycle count display to frame count by @aronson in [#6509](https://github.com/rh-hideout/pokeemerald-expansion/pull/6509) +* Remove redundant AI defines by @Bassoonian in [#6590](https://github.com/rh-hideout/pokeemerald-expansion/pull/6590) + +## 🧹 Other Cleanup 🧹 +* Added call to ItemId_GetDescription by @pkmnsnfrn in [#6582](https://github.com/rh-hideout/pokeemerald-expansion/pull/6582) +* Remove redundant AI defines by @Bassoonian in [#6590](https://github.com/rh-hideout/pokeemerald-expansion/pull/6590) +* Corrected Dexnav config related comment by @LOuroboros in [#6610](https://github.com/rh-hideout/pokeemerald-expansion/pull/6610) +* Added missing `gMovesInfo` encapsulation by @AsparagusEduardo in [#6656](https://github.com/rh-hideout/pokeemerald-expansion/pull/6656) +* Remove HitmarkerSwapAttackerTarget by @AlexOn1ine in [#6627](https://github.com/rh-hideout/pokeemerald-expansion/pull/6627) +* Remove misleading comment by @AlexOn1ine in [#6684](https://github.com/rh-hideout/pokeemerald-expansion/pull/6684) + +## 🧪 Test Runner 🧪 +### Changed +* Support make check on macOS by @aronson in [#6513](https://github.com/rh-hideout/pokeemerald-expansion/pull/6513) + - The new test runner binary will not support macOS versions older than 10.7 or 11 (for Intel and Apple Silicon respectively). + - macOS users running `make check` may need to confirm with an OS dialog they're willing to open `mgba-rom-test-mac` when run for the first time. + - macOS users running `make check` must have `stdbuf` installed through `brew`'s `coreutils` package. +* Thermal exchange tests by @hedara90 in [#6536](https://github.com/rh-hideout/pokeemerald-expansion/pull/6536) +* Air Balloon AI tests by @Pawkkie in [#6604](https://github.com/rh-hideout/pokeemerald-expansion/pull/6604) +* Big Root tests by @Bassoonian in [#6601](https://github.com/rh-hideout/pokeemerald-expansion/pull/6601) +* Test for Freeze vs Scald thaw by @AlexOn1ine in [#6658](https://github.com/rh-hideout/pokeemerald-expansion/pull/6658) +* Adds a whole bunch of new tests by @Bassoonian in [#6685](https://github.com/rh-hideout/pokeemerald-expansion/pull/6685) + +### Fixed +* Fixed Color Change test referring to the wrong mon by @hedara90 in [#6644](https://github.com/rh-hideout/pokeemerald-expansion/pull/6644) +* Fixed LGPE move test fail with `B_UPDATED_MOVE_DATA` to `GEN_7` by @AsparagusEduardo in [#6657](https://github.com/rh-hideout/pokeemerald-expansion/pull/6657) +* Use correct define for moves in test runner by @AsparagusEduardo in [#6711](https://github.com/rh-hideout/pokeemerald-expansion/pull/6711) + +## 📚 Documentation 📚 +* Consolidated "How to add Pokémon" tutorials by @AsparagusEduardo in [#6541](https://github.com/rh-hideout/pokeemerald-expansion/pull/6541) +* Documentation by @hedara90 in [#6576](https://github.com/rh-hideout/pokeemerald-expansion/pull/6576) +* Add clarification for underlying math in EV caps by @Bassoonian and @i0brendan0 in [#6580](https://github.com/rh-hideout/pokeemerald-expansion/pull/6580) +* Add clarification for EVO_SCRIPT_TRIGGER_DMG by @Bassoonian in [#6579](https://github.com/rh-hideout/pokeemerald-expansion/pull/6579) + +## 📦 Branch Synchronisation 📦 +### pret +* 11 of April in [#6575](https://github.com/rh-hideout/pokeemerald-expansion/pull/6575) + * Align gMPlayTrack_BGM by @DizzyEggg in [pret#2115](https://github.com/pret/pokeemerald/pull/2115) + * GENDER_COUNT in sPlayer/RivalAvatarGfxIds by @AsparagusEduardo in [pret#2117](https://github.com/pret/pokeemerald/pull/2117) + * Fixed init call when using AGBPrint as log handler by @pokemonmasteraaron in [pret#2119](https://github.com/pret/pokeemerald/pull/2119) + * Make linkDirection more robust to member reordering by @cawtds in [pret#2118](https://github.com/pret/pokeemerald/pull/2118) +* 29th of April 2025 in [#6722](https://github.com/rh-hideout/pokeemerald-expansion/pull/6722) + * Rename battle terrain to environment by @Bassoonian in [pret#2014](https://github.com/pret/pokeemerald/pull/2014) + * Fixes for Mirage Tower graphics by @GriffinRichards in [pret#2120](https://github.com/pret/pokeemerald/pull/2120) + * Missing constant in Birch speech dialogue by @estellarc in [pret#2123](https://github.com/pret/pokeemerald/pull/2123) + +## New Contributors +* @malad1211 made their first contribution in [#6510](https://github.com/rh-hideout/pokeemerald-expansion/pull/6510) + +**Full Changelog**: https://github.com/rh-hideout/pokeemerald-expansion/compare/expansion/1.11.1...expansion/1.11.2 + + + + diff --git a/include/constants/expansion.h b/include/constants/expansion.h index 1935b81cd9..ccac2dad19 100644 --- a/include/constants/expansion.h +++ b/include/constants/expansion.h @@ -1,13 +1,13 @@ #ifndef GUARD_CONSTANTS_EXPANSION_H #define GUARD_CONSTANTS_EXPANSION_H -// Last version: 1.11.1 +// Last version: 1.11.2 #define EXPANSION_VERSION_MAJOR 1 #define EXPANSION_VERSION_MINOR 11 #define EXPANSION_VERSION_PATCH 2 // FALSE if this this version of Expansion is not a tagged commit, i.e. // it contains unreleased changes. -#define EXPANSION_TAGGED_RELEASE FALSE +#define EXPANSION_TAGGED_RELEASE TRUE #endif From f0ecbce9c7704d4cbe459e95bf97719e8d67aa89 Mon Sep 17 00:00:00 2001 From: Hedara Date: Wed, 30 Apr 2025 11:26:09 +0200 Subject: [PATCH 09/11] Start of 1.11.3 Cycle --- include/constants/expansion.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/constants/expansion.h b/include/constants/expansion.h index ccac2dad19..4c7540bc0d 100644 --- a/include/constants/expansion.h +++ b/include/constants/expansion.h @@ -4,10 +4,10 @@ // Last version: 1.11.2 #define EXPANSION_VERSION_MAJOR 1 #define EXPANSION_VERSION_MINOR 11 -#define EXPANSION_VERSION_PATCH 2 +#define EXPANSION_VERSION_PATCH 3 // FALSE if this this version of Expansion is not a tagged commit, i.e. // it contains unreleased changes. -#define EXPANSION_TAGGED_RELEASE TRUE +#define EXPANSION_TAGGED_RELEASE FALSE #endif From b451bc3606b01499303bce89e37723dfe1bd354c Mon Sep 17 00:00:00 2001 From: Cafe <46283144+Cafeei@users.noreply.github.com> Date: Wed, 30 Apr 2025 14:45:29 +0400 Subject: [PATCH 10/11] New Lurantis animation (#6725) --- graphics/pokemon/lurantis/anim_front.png | Bin 0 -> 1334 bytes graphics/pokemon/lurantis/front.png | Bin 790 -> 0 bytes src/data/graphics/pokemon.h | 2 +- src/data/pokemon/species_info/gen_7_families.h | 6 +++++- 4 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 graphics/pokemon/lurantis/anim_front.png delete mode 100644 graphics/pokemon/lurantis/front.png diff --git a/graphics/pokemon/lurantis/anim_front.png b/graphics/pokemon/lurantis/anim_front.png new file mode 100644 index 0000000000000000000000000000000000000000..4b34e5e7117fc15d9818fbfb3db421b40293a17c GIT binary patch literal 1334 zcmV-61Px#Fi=cXMF6nqcqlOVV0b7{K=`=GSiqRrh?o!%5I~SGO> z000000ELCkAOHXav`IukRA_wjZ1JFis-(OGkc44A)1b{WY0;G1)0$7zR;l+`YrLt820T6N21en(e6i@X} z^MIVQ={0@s02+jxKf+LoBD8>PGf<}#y1dpqKq+~n;1}l>f)U8&HvlCNh4$n6pB4gH z8anO(dQwWE{IG^!20%tBxY3uQCx-S@n7IUrpjM>BD*zTk(GgTnL~QyyfRsQcE>a;f zM5)lVg{Sn}1^}%!Sp&)B@byf}i*^gxHr2ZZ@)X$@{npydltk;2SIl{%;@_H#sX6WX zK(V3b4p73}GeJXvTF-z<{Yk+nRBHb^`AiM~GozeBnA30Lk^(q~FbNoSuQj6y;aLP! zsg?rJB49*ZQA;UlHHA?#y!6pnEaGuJFkaBbXcge61Be9hNMUgrq2VQyZ-g)lsGdOs z1i*Y8n$icqo&YuqjRye}MbLG`5->oJK%9VfOHh5i08(H8N=3URi~x85k_a7eL!f#D zAb^Gr(4(Sn^&^2w58w|#m;q4nhac?#umFw{v|2wAWF41N(KG@UK;n?F+0iLLB$>k- zxHWE?!5JVg=MMyV4a8mN8<>9sU<2w6z;uY! z#^3RG{2QaMpAQ-+rn7C)lLm^87z1rFK53wsUOE8kzMlpl=G*K)Pw&((`j-cgQhVax zrF|2-fq$?v(Ef_NTQld$!a^(!2$S=JSwP(T2OQjaFUjSVp#1|5ZvWlA-!>rJzEf#> zVJ^}?pp$vOYe2Ytm%f2s-}(nkiMx590;sTb`(G+H_3x&?anDL1lwtqHfcr1hZuM4# z)=EUz`c4pp%3(oG1JKXT&|zM@AH3IV@50ZGuQ<&7WdDHr z$vJ2Jdo%;)`UieCwB<#Or2!EJVOAed#pbAa$KeBK*0lqm?uJv+|MP^dFW54WQ_2MQ zJ4=A751r2>@&DyO+&l*^FJRMKGb^!lwWa~8XO>wcttWfBc{u9Z08G!~7sPzS+M4r# z>UvUu^u7c!03Qgw0s=r&K$JKd4)eSONFhiH9Jom$<4(LK^b%UvP5^{o@{eVKk$dT` z_!B^Gfj)HPJAJ6})W?vBJ`zk1UwXP_g;?Lv*CTHuyam*9tXyuI#WS1$Zo=OJ3TObr z0q`8A0M$?IzF&IelFB8Aw}2||4PUkfz>3h9Wp&~20RH09WoH1a2z_Cf5Z(c*z4&Z1 zaRuo9#_a!l8x;vBV@)jW8?Pd32xkA|TOW0`#{%GS8+?l;_W!MozS?6F%NiJF9z6tQ z%md`oej7qMRW8OifXg>Z2O#_gm>V6CuSHk}1g|1L2tjW{@G5?h!xu&1F9A%%4v;O{ sG9br&Cm`FWT|cdj7>@_zzupG;2d9rbbYMJb3IG5A07*qoM6N<$f@8T}8~^|S literal 0 HcmV?d00001 diff --git a/graphics/pokemon/lurantis/front.png b/graphics/pokemon/lurantis/front.png deleted file mode 100644 index f73999e0d1470085c0540f2bafe3e8efff58d20a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 790 zcmV+x1L^#UP)Px#1ZP1_K>z@;j|==^1poj5Fi=cXMF6nqcqlOVV0b7{K=`=GSiqRrh?o!%5I~S< zczAgD`1rWExWG72U>GO>000000ELCkAOHXW32;bRa{vGi!vFvd!vV){sAK>D0&ht~ zK~zY`#ndrt+dvcm;1eFSO2X7&chO<2p&lA+wM!SPhXr1PiC4QqS~SQs=)m?;TF9DC zC8O2QkP{iwC4(ksum_+2Q{SoSP)X-3g}y;2^uBxVbR38NQ|OvB^ZSWSNnXKP{*(d( zK<#zi!Lk+x(U5&Y$gEMF?|DS4jr)WQ+-hL=p8$zuV4&C&$V&Jp*)`-ul&5ab^UY;k*u>f{aVqDRCcuCgLv zw@L@5hqyxq8sv*WWozRA{SS{OG|}}|5$Jl|x%0^EP5?qiHxGp$V1zh_AAWLp%+80^ zU`V=*vF@t}{RJVc2+-o%r6V0gI>)9rV$0%YsC313++-;=FmAA$eQCE;zJaqyDL2Hh z+M!acMCS9=CV_$T3IK;0o9~ui0pOQBk^sKE&p|~2)XYJ!P6dc$zz@=VL{;Et4i@=X z1r)LT?Avag9I4Q1F{(>|A{N(LvTIoj(E&Fu7?CYfOtgXvPY&R_MNg=gOBvXG;^%`z z0$^gioAY>@RszLL1W>wx57a7OF$Mr@yHjvTp@g+56~JPi08T)g*y36lK!+T-T!3PU zmYE8`=KwY-Uh#dQL{lu`4@k;DVQ`RE0(2aAEs&?x4i z(Z)I0XW3spRQmA@p*Va35zPt!Za4sH=nGKOBSe=a5DBo&!C1W0!ohwk8u?qp18|09 z5pVGDIGAFmN6!F?{&gVq3t^k_ Ua7E Date: Wed, 30 Apr 2025 14:01:45 +0200 Subject: [PATCH 11/11] Updated label workflow (#6729) Co-authored-by: Hedara --- .github/workflows/labels.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/labels.yml b/.github/workflows/labels.yml index 018e923c40..aa53665e8f 100644 --- a/.github/workflows/labels.yml +++ b/.github/workflows/labels.yml @@ -2,7 +2,7 @@ name: Labels on: pull_request: - types: [opened, labeled, unlabeled] + types: [opened, synchronize, labeled, unlabeled] jobs: label: