aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRangi <35663410+Rangi42@users.noreply.github.com>2026-01-07 22:05:20 -0500
committerGitHub <noreply@github.com>2026-01-07 22:05:20 -0500
commitfe1e76466b293c83e6cd3a7d4639fb3c49da26ad (patch)
treeaba22f9f595e09024b902c08ddfdac67ee0e85f3
parentUpdate RGBDS to 1.0.1 (although 1.0.0 still works) (diff)
downloadpokeyellow-fe1e76466b293c83e6cd3a7d4639fb3c49da26ad.tar.gz
pokeyellow-fe1e76466b293c83e6cd3a7d4639fb3c49da26ad.tar.xz
pokeyellow-fe1e76466b293c83e6cd3a7d4639fb3c49da26ad.zip
Use macros to enforce "missable/hide/show object" constraints, and rename them to "toggleable objects" (#557)
-rw-r--r--constants/hide_show_constants.asm240
-rw-r--r--constants/map_constants.asm2
-rw-r--r--constants/toggle_constants.asm393
-rw-r--r--data/maps/hide_show_data.asm568
-rw-r--r--data/maps/objects/SilphCo7F.asm2
-rw-r--r--data/maps/toggleable_objects.asm423
-rw-r--r--data/predef_pointers.asm4
-rw-r--r--engine/events/pick_up_item.asm16
-rw-r--r--engine/movie/oak_speech/init_player_data.asm2
-rw-r--r--engine/overworld/auto_movement.asm4
-rw-r--r--engine/overworld/movement.asm2
-rw-r--r--engine/overworld/toggleable_objects.asm (renamed from engine/overworld/missable_objects.asm)81
-rw-r--r--home/overworld.asm2
-rw-r--r--home/trainers.asm4
-rw-r--r--includes.asm2
-rw-r--r--main.asm4
-rw-r--r--ram/hram.asm4
-rw-r--r--ram/wram.asm14
-rw-r--r--scripts/BillsHouse.asm16
-rw-r--r--scripts/BluesHouse.asm4
-rw-r--r--scripts/CeladonMansionRoofHouse.asm4
-rw-r--r--scripts/CeruleanCity.asm12
-rw-r--r--scripts/CeruleanCity_2.asm12
-rw-r--r--scripts/ChampionsRoom.asm8
-rw-r--r--scripts/FightingDojo.asm8
-rw-r--r--scripts/GameCorner.asm4
-rw-r--r--scripts/HallOfFame.asm4
-rw-r--r--scripts/MtMoonB2F.asm14
-rw-r--r--scripts/Museum1F.asm4
-rw-r--r--scripts/OaksLab.asm66
-rw-r--r--scripts/PalletTown.asm12
-rw-r--r--scripts/PewterCity.asm16
-rw-r--r--scripts/PewterGym.asm8
-rw-r--r--scripts/PokemonTower2F.asm4
-rw-r--r--scripts/PokemonTower7F.asm26
-rw-r--r--scripts/RocketHideoutB4F.asm12
-rw-r--r--scripts/Route12.asm4
-rw-r--r--scripts/Route16.asm4
-rw-r--r--scripts/Route20.asm36
-rw-r--r--scripts/Route22.asm8
-rw-r--r--scripts/Route23.asm8
-rw-r--r--scripts/Route25.asm20
-rw-r--r--scripts/SSAnne2F.asm8
-rw-r--r--scripts/SeafoamIslands1F.asm12
-rw-r--r--scripts/SeafoamIslandsB1F.asm12
-rw-r--r--scripts/SeafoamIslandsB2F.asm12
-rw-r--r--scripts/SeafoamIslandsB3F.asm12
-rw-r--r--scripts/SilphCo11F.asm104
-rw-r--r--scripts/SilphCo1F.asm4
-rw-r--r--scripts/SilphCo7F.asm4
-rw-r--r--scripts/VictoryRoad3F.asm8
-rw-r--r--scripts/ViridianGym.asm8
52 files changed, 1137 insertions, 1128 deletions
diff --git a/constants/hide_show_constants.asm b/constants/hide_show_constants.asm
deleted file mode 100644
index b73271e8..00000000
--- a/constants/hide_show_constants.asm
+++ /dev/null
@@ -1,240 +0,0 @@
-DEF HIDE EQU $11
-DEF SHOW EQU $15
-
-; MissableObjects indexes (see data/maps/hide_show_data.asm)
-; this is a list of the sprites that can be enabled/disabled during the game
-; sprites marked with an X are constants that are never used
-; because those sprites are not (de)activated in a map's script
-; (they are either items or sprites that deactivate after battle
-; and are detected in wMissableObjectList)
-
- const_def
- const HS_PALLET_TOWN_OAK ; 00
- const HS_LYING_OLD_MAN ; 01
- const HS_OLD_MAN ; 02
- const HS_MUSEUM_GUY ; 03
- const HS_GYM_GUY ; 04
- const HS_CERULEAN_RIVAL ; 05
- const HS_CERULEAN_ROCKET ; 06
- const HS_CERULEAN_GUARD_1 ; 07
- const HS_CERULEAN_CAVE_GUY ; 08
- const HS_CERULEAN_GUARD_2 ; 09
- const HS_SAFFRON_CITY_1 ; 0A
- const HS_SAFFRON_CITY_2 ; 0B
- const HS_SAFFRON_CITY_3 ; 0C
- const HS_SAFFRON_CITY_4 ; 0D
- const HS_SAFFRON_CITY_5 ; 0E
- const HS_SAFFRON_CITY_6 ; 0F
- const HS_SAFFRON_CITY_7 ; 10
- const HS_SAFFRON_CITY_8 ; 11
- const HS_SAFFRON_CITY_9 ; 12
- const HS_SAFFRON_CITY_A ; 13
- const HS_SAFFRON_CITY_B ; 14
- const HS_SAFFRON_CITY_C ; 15
- const HS_SAFFRON_CITY_D ; 16
- const HS_SAFFRON_CITY_E ; 17
- const HS_SAFFRON_CITY_F ; 18
- const HS_ROUTE_2_ITEM_1 ; 19 X
- const HS_ROUTE_2_ITEM_2 ; 1A X
- const HS_ROUTE_4_ITEM ; 1B X
- const HS_ROUTE_9_ITEM ; 1C X
- const HS_ROUTE_12_SNORLAX ; 1D
- const HS_ROUTE_12_ITEM_1 ; 1E X
- const HS_ROUTE_12_ITEM_2 ; 1F X
- const HS_ROUTE_15_ITEM ; 20 X
- const HS_ROUTE_16_SNORLAX ; 21
- const HS_ROUTE_22_RIVAL_1 ; 22
- const HS_ROUTE_22_RIVAL_2 ; 23
- const HS_NUGGET_BRIDGE_GUY ; 24
- const HS_ROUTE_24_ITEM ; 25 X
- const HS_ROUTE_25_ITEM ; 26 X
- const HS_DAISY_SITTING ; 27
- const HS_DAISY_WALKING ; 28
- const HS_TOWN_MAP ; 29
- const HS_OAKS_LAB_RIVAL ; 2A
- const HS_STARTER_BALL_1 ; 2B
- const HS_STARTER_BALL_2 ; 2C
- const HS_STARTER_BALL_3 ; 2D
- const HS_OAKS_LAB_OAK_1 ; 2E
- const HS_POKEDEX_1 ; 2F
- const HS_POKEDEX_2 ; 30
- const HS_OAKS_LAB_OAK_2 ; 31
- const HS_VIRIDIAN_GYM_GIOVANNI ; 32
- const HS_VIRIDIAN_GYM_ITEM ; 33 X
- const HS_OLD_AMBER ; 34
- const HS_CERULEAN_CAVE_1F_ITEM_1 ; 35 X
- const HS_CERULEAN_CAVE_1F_ITEM_2 ; 36 X
- const HS_CERULEAN_CAVE_1F_ITEM_3 ; 37 X
- const HS_POKEMON_TOWER_2F_RIVAL ; 38
- const HS_POKEMON_TOWER_3F_ITEM ; 39 X
- const HS_POKEMON_TOWER_4F_ITEM_1 ; 3A X
- const HS_POKEMON_TOWER_4F_ITEM_2 ; 3B X
- const HS_POKEMON_TOWER_4F_ITEM_3 ; 3C X
- const HS_POKEMON_TOWER_5F_ITEM ; 3D X
- const HS_POKEMON_TOWER_6F_ITEM_1 ; 3E X
- const HS_POKEMON_TOWER_6F_ITEM_2 ; 3F X
- const HS_POKEMON_TOWER_7F_ROCKET_1 ; 40 X
- const HS_POKEMON_TOWER_7F_ROCKET_2 ; 41 X
- const HS_POKEMON_TOWER_7F_ROCKET_3 ; 42 X
- const HS_POKEMON_TOWER_7F_MR_FUJI ; 43
- const HS_MR_FUJIS_HOUSE_MR_FUJI ; 44
- const HS_CELADON_MANSION_EEVEE_GIFT ; 45
- const HS_GAME_CORNER_ROCKET ; 46
- const HS_WARDENS_HOUSE_ITEM ; 47 X
- const HS_POKEMON_MANSION_1F_ITEM_1 ; 48 X
- const HS_POKEMON_MANSION_1F_ITEM_2 ; 49 X
- const HS_FIGHTING_DOJO_GIFT_1 ; 4A
- const HS_FIGHTING_DOJO_GIFT_2 ; 4B
- const HS_SILPH_CO_1F_RECEPTIONIST ; 4C
- const HS_VOLTORB_1 ; 4D X
- const HS_VOLTORB_2 ; 4E X
- const HS_VOLTORB_3 ; 4F X
- const HS_ELECTRODE_1 ; 50 X
- const HS_VOLTORB_4 ; 51 X
- const HS_VOLTORB_5 ; 52 X
- const HS_ELECTRODE_2 ; 53 X
- const HS_VOLTORB_6 ; 54 X
- const HS_ZAPDOS ; 55 X
- const HS_POWER_PLANT_ITEM_1 ; 56 X
- const HS_POWER_PLANT_ITEM_2 ; 57 X
- const HS_POWER_PLANT_ITEM_3 ; 58 X
- const HS_POWER_PLANT_ITEM_4 ; 59 X
- const HS_POWER_PLANT_ITEM_5 ; 5A X
- const HS_MOLTRES ; 5B X
- const HS_VICTORY_ROAD_2F_ITEM_1 ; 5C X
- const HS_VICTORY_ROAD_2F_ITEM_2 ; 5D X
- const HS_VICTORY_ROAD_2F_ITEM_3 ; 5E X
- const HS_VICTORY_ROAD_2F_ITEM_4 ; 5F X
- const HS_VICTORY_ROAD_2F_BOULDER ; 60
- const HS_BILL_POKEMON ; 61
- const HS_BILL_1 ; 62
- const HS_BILL_2 ; 63
- const HS_VIRIDIAN_FOREST_ITEM_1 ; 64 X
- const HS_VIRIDIAN_FOREST_ITEM_2 ; 65 X
- const HS_VIRIDIAN_FOREST_ITEM_3 ; 66 X
- const HS_MT_MOON_1F_ITEM_1 ; 67 X
- const HS_MT_MOON_1F_ITEM_2 ; 68 X
- const HS_MT_MOON_1F_ITEM_3 ; 69 X
- const HS_MT_MOON_1F_ITEM_4 ; 6A X
- const HS_MT_MOON_1F_ITEM_5 ; 6B X
- const HS_MT_MOON_1F_ITEM_6 ; 6C X
- const HS_MT_MOON_B2F_FOSSIL_1 ; 6D
- const HS_MT_MOON_B2F_FOSSIL_2 ; 6E
- const HS_MT_MOON_B2F_ITEM_1 ; 6F X
- const HS_MT_MOON_B2F_ITEM_2 ; 70 X
- const HS_SS_ANNE_2F_RIVAL ; 71
- const HS_SS_ANNE_1F_ROOMS_ITEM ; 72 X
- const HS_SS_ANNE_2F_ROOMS_ITEM_1 ; 73 X
- const HS_SS_ANNE_2F_ROOMS_ITEM_2 ; 74 X
- const HS_SS_ANNE_B1F_ROOMS_ITEM_1 ; 75 X
- const HS_SS_ANNE_B1F_ROOMS_ITEM_2 ; 76 X
- const HS_SS_ANNE_B1F_ROOMS_ITEM_3 ; 77 X
- const HS_VICTORY_ROAD_3F_ITEM_1 ; 78 X
- const HS_VICTORY_ROAD_3F_ITEM_2 ; 79 X
- const HS_VICTORY_ROAD_3F_BOULDER ; 7A
- const HS_ROCKET_HIDEOUT_B1F_ITEM_1 ; 7B X
- const HS_ROCKET_HIDEOUT_B1F_ITEM_2 ; 7C X
- const HS_ROCKET_HIDEOUT_B2F_ITEM_1 ; 7D X
- const HS_ROCKET_HIDEOUT_B2F_ITEM_2 ; 7E X
- const HS_ROCKET_HIDEOUT_B2F_ITEM_3 ; 7F X
- const HS_ROCKET_HIDEOUT_B2F_ITEM_4 ; 80 X
- const HS_ROCKET_HIDEOUT_B3F_ITEM_1 ; 81 X
- const HS_ROCKET_HIDEOUT_B3F_ITEM_2 ; 82 X
- const HS_ROCKET_HIDEOUT_B4F_GIOVANNI ; 83
- const HS_ROCKET_HIDEOUT_B4F_ITEM_1 ; 84 X
- const HS_ROCKET_HIDEOUT_B4F_ITEM_2 ; 85 X
- const HS_ROCKET_HIDEOUT_B4F_ITEM_3 ; 86 X
- const HS_ROCKET_HIDEOUT_B4F_ITEM_4 ; 87
- const HS_ROCKET_HIDEOUT_B4F_ITEM_5 ; 88
- const HS_SILPH_CO_2F_1 ; 89 XXX never (de)activated?
- const HS_SILPH_CO_2F_2 ; 8A
- const HS_SILPH_CO_2F_3 ; 8B
- const HS_SILPH_CO_2F_4 ; 8C
- const HS_SILPH_CO_2F_5 ; 8D
- const HS_SILPH_CO_3F_1 ; 8E
- const HS_SILPH_CO_3F_2 ; 8F
- const HS_SILPH_CO_3F_ITEM ; 90 X
- const HS_SILPH_CO_4F_1 ; 91
- const HS_SILPH_CO_4F_2 ; 92
- const HS_SILPH_CO_4F_3 ; 93
- const HS_SILPH_CO_4F_ITEM_1 ; 94 X
- const HS_SILPH_CO_4F_ITEM_2 ; 95 X
- const HS_SILPH_CO_4F_ITEM_3 ; 96 X
- const HS_SILPH_CO_5F_1 ; 97
- const HS_SILPH_CO_5F_2 ; 98
- const HS_SILPH_CO_5F_3 ; 99
- const HS_SILPH_CO_5F_4 ; 9A
- const HS_SILPH_CO_5F_ITEM_1 ; 9B X
- const HS_SILPH_CO_5F_ITEM_2 ; 9C X
- const HS_SILPH_CO_5F_ITEM_3 ; 9D X
- const HS_SILPH_CO_6F_1 ; 9E
- const HS_SILPH_CO_6F_2 ; 9F
- const HS_SILPH_CO_6F_3 ; A0
- const HS_SILPH_CO_6F_ITEM_1 ; A1 X
- const HS_SILPH_CO_6F_ITEM_2 ; A2 X
- const HS_SILPH_CO_7F_1 ; A3
- const HS_SILPH_CO_7F_2 ; A4
- const HS_SILPH_CO_7F_3 ; A5
- const HS_SILPH_CO_7F_4 ; A6
- const HS_SILPH_CO_7F_RIVAL ; A7
- const HS_SILPH_CO_7F_ITEM_1 ; A8 X
- const HS_SILPH_CO_7F_ITEM_2 ; A9 X
- const HS_SILPH_CO_7F_8 ; AA XXX sprite doesn't exist
- const HS_SILPH_CO_8F_1 ; AB
- const HS_SILPH_CO_8F_2 ; AC
- const HS_SILPH_CO_8F_3 ; AD
- const HS_SILPH_CO_9F_1 ; AE
- const HS_SILPH_CO_9F_2 ; AF
- const HS_SILPH_CO_9F_3 ; B0
- const HS_SILPH_CO_10F_1 ; B1
- const HS_SILPH_CO_10F_2 ; B2
- const HS_SILPH_CO_10F_3 ; B3 XXX never (de)activated?
- const HS_SILPH_CO_10F_ITEM_1 ; B4 X
- const HS_SILPH_CO_10F_ITEM_2 ; B5 X
- const HS_SILPH_CO_10F_ITEM_3 ; B6 X
- const HS_SILPH_CO_11F_1 ; B7
- const HS_SILPH_CO_11F_2 ; B8
- const HS_SILPH_CO_11F_3 ; B9
- const HS_UNUSED_MAP_F4_1 ; BA XXX sprite doesn't exist
- const HS_POKEMON_MANSION_2F_ITEM ; BB X
- const HS_POKEMON_MANSION_3F_ITEM_1 ; BC X
- const HS_POKEMON_MANSION_3F_ITEM_2 ; BD X
- const HS_POKEMON_MANSION_B1F_ITEM_1 ; BE X
- const HS_POKEMON_MANSION_B1F_ITEM_2 ; BF X
- const HS_POKEMON_MANSION_B1F_ITEM_3 ; C0 X
- const HS_POKEMON_MANSION_B1F_ITEM_4 ; C1 X
- const HS_POKEMON_MANSION_B1F_ITEM_5 ; C2 X
- const HS_SAFARI_ZONE_EAST_ITEM_1 ; C3 X
- const HS_SAFARI_ZONE_EAST_ITEM_2 ; C4 X
- const HS_SAFARI_ZONE_EAST_ITEM_3 ; C5 X
- const HS_SAFARI_ZONE_EAST_ITEM_4 ; C6 X
- const HS_SAFARI_ZONE_NORTH_ITEM_1 ; C7 X
- const HS_SAFARI_ZONE_NORTH_ITEM_2 ; C8 X
- const HS_SAFARI_ZONE_WEST_ITEM_1 ; C9 X
- const HS_SAFARI_ZONE_WEST_ITEM_2 ; CA X
- const HS_SAFARI_ZONE_WEST_ITEM_3 ; CB X
- const HS_SAFARI_ZONE_WEST_ITEM_4 ; CC X
- const HS_SAFARI_ZONE_CENTER_ITEM ; CD X
- const HS_CERULEAN_CAVE_2F_ITEM_1 ; CE X
- const HS_CERULEAN_CAVE_2F_ITEM_2 ; CF X
- const HS_CERULEAN_CAVE_2F_ITEM_3 ; D0 X
- const HS_MEWTWO ; D1 X
- const HS_CERULEAN_CAVE_B1F_ITEM_1 ; D2 X
- const HS_CERULEAN_CAVE_B1F_ITEM_2 ; D3 X
- const HS_VICTORY_ROAD_1F_ITEM_1 ; D4 X
- const HS_VICTORY_ROAD_1F_ITEM_2 ; D5 X
- const HS_CHAMPIONS_ROOM_OAK ; D6
- const HS_SEAFOAM_ISLANDS_1F_BOULDER_1 ; D7
- const HS_SEAFOAM_ISLANDS_1F_BOULDER_2 ; D8
- const HS_SEAFOAM_ISLANDS_B1F_BOULDER_1 ; D9
- const HS_SEAFOAM_ISLANDS_B1F_BOULDER_2 ; DA
- const HS_SEAFOAM_ISLANDS_B2F_BOULDER_1 ; DB
- const HS_SEAFOAM_ISLANDS_B2F_BOULDER_2 ; DC
- const HS_SEAFOAM_ISLANDS_B3F_BOULDER_1 ; DD
- const HS_SEAFOAM_ISLANDS_B3F_BOULDER_2 ; DE
- const HS_SEAFOAM_ISLANDS_B3F_BOULDER_3 ; DF
- const HS_SEAFOAM_ISLANDS_B3F_BOULDER_4 ; E0
- const HS_SEAFOAM_ISLANDS_B4F_BOULDER_1 ; E1
- const HS_SEAFOAM_ISLANDS_B4F_BOULDER_2 ; E2
- const HS_ARTICUNO ; E3 X
-DEF NUM_HS_OBJECTS EQU const_value
diff --git a/constants/map_constants.asm b/constants/map_constants.asm
index 7ae4af44..fe0bd9f5 100644
--- a/constants/map_constants.asm
+++ b/constants/map_constants.asm
@@ -16,7 +16,7 @@ ENDM
; - MapHeaderBanks (see data/maps/map_header_banks.asm)
; - MapHeaderPointers (see data/maps/map_header_pointers.asm)
; - MapSongBanks (see data/maps/songs.asm)
-; - MapHSPointers (see data/maps/hide_show_data.asm)
+; - ToggleableObjectMapPointers (see data/maps/toggleable_objects.asm)
; - MapSpriteSets (see data/maps/sprite_sets.asm)
; - ExternalMapEntries (see data/maps/town_map_entries.asm)
; - WildDataPointers (see data/wild/grass_water.asm)
diff --git a/constants/toggle_constants.asm b/constants/toggle_constants.asm
new file mode 100644
index 00000000..701bc2b4
--- /dev/null
+++ b/constants/toggle_constants.asm
@@ -0,0 +1,393 @@
+DEF OFF EQU $11
+DEF ON EQU $15
+
+MACRO toggle_consts_for
+ DEF TOGGLEMAP{\1} EQU const_value
+ENDM
+
+; ToggleableObjectStates indexes (see data/maps/toggleable_objects.asm)
+; This lists the object_events that can be toggled by ShowObject/HideObject.
+; The constants marked with an X are never used, because those object_events
+; are not toggled on/off in any map's script.
+; (The X-ed ones are either items or static Pokemon encounters that deactivate
+; after battle and are detected in wToggleableObjectList.)
+
+ const_def
+
+ toggle_consts_for PALLET_TOWN
+ const TOGGLE_PALLET_TOWN_OAK ; 00
+
+ toggle_consts_for VIRIDIAN_CITY
+ const TOGGLE_LYING_OLD_MAN ; 01
+ const TOGGLE_OLD_MAN ; 02
+
+ toggle_consts_for PEWTER_CITY
+ const TOGGLE_MUSEUM_GUY ; 03
+ const TOGGLE_GYM_GUY ; 04
+
+ toggle_consts_for CERULEAN_CITY
+ const TOGGLE_CERULEAN_RIVAL ; 05
+ const TOGGLE_CERULEAN_ROCKET ; 06
+ const TOGGLE_CERULEAN_GUARD_1 ; 07
+ const TOGGLE_CERULEAN_CAVE_GUY ; 08
+ const TOGGLE_CERULEAN_GUARD_2 ; 09
+
+ toggle_consts_for SAFFRON_CITY
+ const TOGGLE_SAFFRON_CITY_1 ; 0A
+ const TOGGLE_SAFFRON_CITY_2 ; 0B
+ const TOGGLE_SAFFRON_CITY_3 ; 0C
+ const TOGGLE_SAFFRON_CITY_4 ; 0D
+ const TOGGLE_SAFFRON_CITY_5 ; 0E
+ const TOGGLE_SAFFRON_CITY_6 ; 0F
+ const TOGGLE_SAFFRON_CITY_7 ; 10
+ const TOGGLE_SAFFRON_CITY_8 ; 11
+ const TOGGLE_SAFFRON_CITY_9 ; 12
+ const TOGGLE_SAFFRON_CITY_A ; 13
+ const TOGGLE_SAFFRON_CITY_B ; 14
+ const TOGGLE_SAFFRON_CITY_C ; 15
+ const TOGGLE_SAFFRON_CITY_D ; 16
+ const TOGGLE_SAFFRON_CITY_E ; 17
+ const TOGGLE_SAFFRON_CITY_F ; 18
+
+ toggle_consts_for ROUTE_2
+ const TOGGLE_ROUTE_2_ITEM_1 ; 19 X
+ const TOGGLE_ROUTE_2_ITEM_2 ; 1A X
+
+ toggle_consts_for ROUTE_4
+ const TOGGLE_ROUTE_4_ITEM ; 1B X
+
+ toggle_consts_for ROUTE_9
+ const TOGGLE_ROUTE_9_ITEM ; 1C X
+
+ toggle_consts_for ROUTE_12
+ const TOGGLE_ROUTE_12_SNORLAX ; 1D
+ const TOGGLE_ROUTE_12_ITEM_1 ; 1E X
+ const TOGGLE_ROUTE_12_ITEM_2 ; 1F X
+
+ toggle_consts_for ROUTE_15
+ const TOGGLE_ROUTE_15_ITEM ; 20 X
+
+ toggle_consts_for ROUTE_16
+ const TOGGLE_ROUTE_16_SNORLAX ; 21
+
+ toggle_consts_for ROUTE_22
+ const TOGGLE_ROUTE_22_RIVAL_1 ; 22
+ const TOGGLE_ROUTE_22_RIVAL_2 ; 23
+
+ toggle_consts_for ROUTE_24
+ const TOGGLE_NUGGET_BRIDGE_GUY ; 24
+ const TOGGLE_ROUTE_24_ITEM ; 25 X
+
+ toggle_consts_for ROUTE_25
+ const TOGGLE_ROUTE_25_ITEM ; 26 X
+
+ toggle_consts_for BLUES_HOUSE
+ const TOGGLE_DAISY_SITTING ; 27
+ const TOGGLE_DAISY_WALKING ; 28
+ const TOGGLE_TOWN_MAP ; 29
+
+ toggle_consts_for OAKS_LAB
+ const TOGGLE_OAKS_LAB_RIVAL ; 2A
+ const TOGGLE_STARTER_BALL_1 ; 2B
+ const TOGGLE_STARTER_BALL_2 ; 2C
+ const TOGGLE_STARTER_BALL_3 ; 2D
+ const TOGGLE_OAKS_LAB_OAK_1 ; 2E
+ const TOGGLE_POKEDEX_1 ; 2F
+ const TOGGLE_POKEDEX_2 ; 30
+ const TOGGLE_OAKS_LAB_OAK_2 ; 31
+
+ toggle_consts_for VIRIDIAN_GYM
+ const TOGGLE_VIRIDIAN_GYM_GIOVANNI ; 32
+ const TOGGLE_VIRIDIAN_GYM_ITEM ; 33 X
+
+ toggle_consts_for MUSEUM_1F
+ const TOGGLE_OLD_AMBER ; 34
+
+ toggle_consts_for CERULEAN_CAVE_1F
+ const TOGGLE_CERULEAN_CAVE_1F_ITEM_1 ; 35 X
+ const TOGGLE_CERULEAN_CAVE_1F_ITEM_2 ; 36 X
+ const TOGGLE_CERULEAN_CAVE_1F_ITEM_3 ; 37 X
+
+ toggle_consts_for POKEMON_TOWER_2F
+ const TOGGLE_POKEMON_TOWER_2F_RIVAL ; 38
+
+ toggle_consts_for POKEMON_TOWER_3F
+ const TOGGLE_POKEMON_TOWER_3F_ITEM ; 39 X
+
+ toggle_consts_for POKEMON_TOWER_4F
+ const TOGGLE_POKEMON_TOWER_4F_ITEM_1 ; 3A X
+ const TOGGLE_POKEMON_TOWER_4F_ITEM_2 ; 3B X
+ const TOGGLE_POKEMON_TOWER_4F_ITEM_3 ; 3C X
+
+ toggle_consts_for POKEMON_TOWER_5F
+ const TOGGLE_POKEMON_TOWER_5F_ITEM ; 3D X
+
+ toggle_consts_for POKEMON_TOWER_6F
+ const TOGGLE_POKEMON_TOWER_6F_ITEM_1 ; 3E X
+ const TOGGLE_POKEMON_TOWER_6F_ITEM_2 ; 3F X
+
+ toggle_consts_for POKEMON_TOWER_7F
+ const TOGGLE_POKEMON_TOWER_7F_ROCKET_1 ; 40 X
+ const TOGGLE_POKEMON_TOWER_7F_ROCKET_2 ; 41 X
+ const TOGGLE_POKEMON_TOWER_7F_ROCKET_3 ; 42 X
+ const TOGGLE_POKEMON_TOWER_7F_MR_FUJI ; 43
+
+ toggle_consts_for MR_FUJIS_HOUSE
+ const TOGGLE_MR_FUJIS_HOUSE_MR_FUJI ; 44
+
+ toggle_consts_for CELADON_MANSION_ROOF_HOUSE
+ const TOGGLE_CELADON_MANSION_EEVEE_GIFT ; 45
+
+ toggle_consts_for GAME_CORNER
+ const TOGGLE_GAME_CORNER_ROCKET ; 46
+
+ toggle_consts_for WARDENS_HOUSE
+ const TOGGLE_WARDENS_HOUSE_ITEM ; 47 X
+
+ toggle_consts_for POKEMON_MANSION_1F
+ const TOGGLE_POKEMON_MANSION_1F_ITEM_1 ; 48 X
+ const TOGGLE_POKEMON_MANSION_1F_ITEM_2 ; 49 X
+
+ toggle_consts_for FIGHTING_DOJO
+ const TOGGLE_FIGHTING_DOJO_GIFT_1 ; 4A
+ const TOGGLE_FIGHTING_DOJO_GIFT_2 ; 4B
+
+ toggle_consts_for SILPH_CO_1F
+ const TOGGLE_SILPH_CO_1F_RECEPTIONIST ; 4C
+
+ toggle_consts_for POWER_PLANT
+ const TOGGLE_VOLTORB_1 ; 4D X
+ const TOGGLE_VOLTORB_2 ; 4E X
+ const TOGGLE_VOLTORB_3 ; 4F X
+ const TOGGLE_ELECTRODE_1 ; 50 X
+ const TOGGLE_VOLTORB_4 ; 51 X
+ const TOGGLE_VOLTORB_5 ; 52 X
+ const TOGGLE_ELECTRODE_2 ; 53 X
+ const TOGGLE_VOLTORB_6 ; 54 X
+ const TOGGLE_ZAPDOS ; 55 X
+ const TOGGLE_POWER_PLANT_ITEM_1 ; 56 X
+ const TOGGLE_POWER_PLANT_ITEM_2 ; 57 X
+ const TOGGLE_POWER_PLANT_ITEM_3 ; 58 X
+ const TOGGLE_POWER_PLANT_ITEM_4 ; 59 X
+ const TOGGLE_POWER_PLANT_ITEM_5 ; 5A X
+
+ toggle_consts_for VICTORY_ROAD_2F
+ const TOGGLE_MOLTRES ; 5B X
+ const TOGGLE_VICTORY_ROAD_2F_ITEM_1 ; 5C X
+ const TOGGLE_VICTORY_ROAD_2F_ITEM_2 ; 5D X
+ const TOGGLE_VICTORY_ROAD_2F_ITEM_3 ; 5E X
+ const TOGGLE_VICTORY_ROAD_2F_ITEM_4 ; 5F X
+ const TOGGLE_VICTORY_ROAD_2F_BOULDER ; 60
+
+ toggle_consts_for BILLS_HOUSE
+ const TOGGLE_BILL_POKEMON ; 61
+ const TOGGLE_BILL_1 ; 62
+ const TOGGLE_BILL_2 ; 63
+
+ toggle_consts_for VIRIDIAN_FOREST
+ const TOGGLE_VIRIDIAN_FOREST_ITEM_1 ; 64 X
+ const TOGGLE_VIRIDIAN_FOREST_ITEM_2 ; 65 X
+ const TOGGLE_VIRIDIAN_FOREST_ITEM_3 ; 66 X
+
+ toggle_consts_for MT_MOON_1F
+ const TOGGLE_MT_MOON_1F_ITEM_1 ; 67 X
+ const TOGGLE_MT_MOON_1F_ITEM_2 ; 68 X
+ const TOGGLE_MT_MOON_1F_ITEM_3 ; 69 X
+ const TOGGLE_MT_MOON_1F_ITEM_4 ; 6A X
+ const TOGGLE_MT_MOON_1F_ITEM_5 ; 6B X
+ const TOGGLE_MT_MOON_1F_ITEM_6 ; 6C X
+
+ toggle_consts_for MT_MOON_B2F
+ const TOGGLE_MT_MOON_B2F_FOSSIL_1 ; 6D
+ const TOGGLE_MT_MOON_B2F_FOSSIL_2 ; 6E
+ const TOGGLE_MT_MOON_B2F_ITEM_1 ; 6F X
+ const TOGGLE_MT_MOON_B2F_ITEM_2 ; 70 X
+
+ toggle_consts_for SS_ANNE_2F
+ const TOGGLE_SS_ANNE_2F_RIVAL ; 71
+
+ toggle_consts_for SS_ANNE_1F_ROOMS
+ const TOGGLE_SS_ANNE_1F_ROOMS_ITEM ; 72 X
+
+ toggle_consts_for SS_ANNE_2F_ROOMS
+ const TOGGLE_SS_ANNE_2F_ROOMS_ITEM_1 ; 73 X
+ const TOGGLE_SS_ANNE_2F_ROOMS_ITEM_2 ; 74 X
+
+ toggle_consts_for SS_ANNE_B1F_ROOMS
+ const TOGGLE_SS_ANNE_B1F_ROOMS_ITEM_1 ; 75 X
+ const TOGGLE_SS_ANNE_B1F_ROOMS_ITEM_2 ; 76 X
+ const TOGGLE_SS_ANNE_B1F_ROOMS_ITEM_3 ; 77 X
+
+ toggle_consts_for VICTORY_ROAD_3F
+ const TOGGLE_VICTORY_ROAD_3F_ITEM_1 ; 78 X
+ const TOGGLE_VICTORY_ROAD_3F_ITEM_2 ; 79 X
+ const TOGGLE_VICTORY_ROAD_3F_BOULDER ; 7A
+
+ toggle_consts_for ROCKET_HIDEOUT_B1F
+ const TOGGLE_ROCKET_HIDEOUT_B1F_ITEM_1 ; 7B X
+ const TOGGLE_ROCKET_HIDEOUT_B1F_ITEM_2 ; 7C X
+
+ toggle_consts_for ROCKET_HIDEOUT_B2F
+ const TOGGLE_ROCKET_HIDEOUT_B2F_ITEM_1 ; 7D X
+ const TOGGLE_ROCKET_HIDEOUT_B2F_ITEM_2 ; 7E X
+ const TOGGLE_ROCKET_HIDEOUT_B2F_ITEM_3 ; 7F X
+ const TOGGLE_ROCKET_HIDEOUT_B2F_ITEM_4 ; 80 X
+
+ toggle_consts_for ROCKET_HIDEOUT_B3F
+ const TOGGLE_ROCKET_HIDEOUT_B3F_ITEM_1 ; 81 X
+ const TOGGLE_ROCKET_HIDEOUT_B3F_ITEM_2 ; 82 X
+
+ toggle_consts_for ROCKET_HIDEOUT_B4F
+ const TOGGLE_ROCKET_HIDEOUT_B4F_GIOVANNI ; 83
+ const TOGGLE_ROCKET_HIDEOUT_B4F_ITEM_1 ; 84 X
+ const TOGGLE_ROCKET_HIDEOUT_B4F_ITEM_2 ; 85 X
+ const TOGGLE_ROCKET_HIDEOUT_B4F_ITEM_3 ; 86 X
+ const TOGGLE_ROCKET_HIDEOUT_B4F_ITEM_4 ; 87
+ const TOGGLE_ROCKET_HIDEOUT_B4F_ITEM_5 ; 88
+
+ toggle_consts_for SILPH_CO_2F
+ const TOGGLE_SILPH_CO_2F_1 ; 89 XXX never (de)activated?
+ const TOGGLE_SILPH_CO_2F_2 ; 8A
+ const TOGGLE_SILPH_CO_2F_3 ; 8B
+ const TOGGLE_SILPH_CO_2F_4 ; 8C
+ const TOGGLE_SILPH_CO_2F_5 ; 8D
+
+ toggle_consts_for SILPH_CO_3F
+ const TOGGLE_SILPH_CO_3F_1 ; 8E
+ const TOGGLE_SILPH_CO_3F_2 ; 8F
+ const TOGGLE_SILPH_CO_3F_ITEM ; 90 X
+
+ toggle_consts_for SILPH_CO_4F
+ const TOGGLE_SILPH_CO_4F_1 ; 91
+ const TOGGLE_SILPH_CO_4F_2 ; 92
+ const TOGGLE_SILPH_CO_4F_3 ; 93
+ const TOGGLE_SILPH_CO_4F_ITEM_1 ; 94 X
+ const TOGGLE_SILPH_CO_4F_ITEM_2 ; 95 X
+ const TOGGLE_SILPH_CO_4F_ITEM_3 ; 96 X
+
+ toggle_consts_for SILPH_CO_5F
+ const TOGGLE_SILPH_CO_5F_1 ; 97
+ const TOGGLE_SILPH_CO_5F_2 ; 98
+ const TOGGLE_SILPH_CO_5F_3 ; 99
+ const TOGGLE_SILPH_CO_5F_4 ; 9A
+ const TOGGLE_SILPH_CO_5F_ITEM_1 ; 9B X
+ const TOGGLE_SILPH_CO_5F_ITEM_2 ; 9C X
+ const TOGGLE_SILPH_CO_5F_ITEM_3 ; 9D X
+
+ toggle_consts_for SILPH_CO_6F
+ const TOGGLE_SILPH_CO_6F_1 ; 9E
+ const TOGGLE_SILPH_CO_6F_2 ; 9F
+ const TOGGLE_SILPH_CO_6F_3 ; A0
+ const TOGGLE_SILPH_CO_6F_ITEM_1 ; A1 X
+ const TOGGLE_SILPH_CO_6F_ITEM_2 ; A2 X
+
+ toggle_consts_for SILPH_CO_7F
+ const TOGGLE_SILPH_CO_7F_1 ; A3
+ const TOGGLE_SILPH_CO_7F_2 ; A4
+ const TOGGLE_SILPH_CO_7F_3 ; A5
+ const TOGGLE_SILPH_CO_7F_4 ; A6
+ const TOGGLE_SILPH_CO_7F_RIVAL ; A7
+ const TOGGLE_SILPH_CO_7F_ITEM_1 ; A8 X
+ const TOGGLE_SILPH_CO_7F_ITEM_2 ; A9 X
+ const TOGGLE_SILPH_CO_7F_8 ; AA XXX sprite doesn't exist
+
+ toggle_consts_for SILPH_CO_8F
+ const TOGGLE_SILPH_CO_8F_1 ; AB
+ const TOGGLE_SILPH_CO_8F_2 ; AC
+ const TOGGLE_SILPH_CO_8F_3 ; AD
+
+ toggle_consts_for SILPH_CO_9F
+ const TOGGLE_SILPH_CO_9F_1 ; AE
+ const TOGGLE_SILPH_CO_9F_2 ; AF
+ const TOGGLE_SILPH_CO_9F_3 ; B0
+
+ toggle_consts_for SILPH_CO_10F
+ const TOGGLE_SILPH_CO_10F_1 ; B1
+ const TOGGLE_SILPH_CO_10F_2 ; B2
+ const TOGGLE_SILPH_CO_10F_3 ; B3 XXX never (de)activated?
+ const TOGGLE_SILPH_CO_10F_ITEM_1 ; B4 X
+ const TOGGLE_SILPH_CO_10F_ITEM_2 ; B5 X
+ const TOGGLE_SILPH_CO_10F_ITEM_3 ; B6 X
+
+ toggle_consts_for SILPH_CO_11F
+ const TOGGLE_SILPH_CO_11F_1 ; B7
+ const TOGGLE_SILPH_CO_11F_2 ; B8
+ const TOGGLE_SILPH_CO_11F_3 ; B9
+
+ toggle_consts_for UNUSED_MAP_F4
+ const TOGGLE_UNUSED_MAP_F4_1 ; BA XXX sprite doesn't exist
+
+ toggle_consts_for POKEMON_MANSION_2F
+ const TOGGLE_POKEMON_MANSION_2F_ITEM ; BB X
+
+ toggle_consts_for POKEMON_MANSION_3F
+ const TOGGLE_POKEMON_MANSION_3F_ITEM_1 ; BC X
+ const TOGGLE_POKEMON_MANSION_3F_ITEM_2 ; BD X
+
+ toggle_consts_for POKEMON_MANSION_B1F
+ const TOGGLE_POKEMON_MANSION_B1F_ITEM_1 ; BE X
+ const TOGGLE_POKEMON_MANSION_B1F_ITEM_2 ; BF X
+ const TOGGLE_POKEMON_MANSION_B1F_ITEM_3 ; C0 X
+ const TOGGLE_POKEMON_MANSION_B1F_ITEM_4 ; C1 X
+ const TOGGLE_POKEMON_MANSION_B1F_ITEM_5 ; C2 X
+
+ toggle_consts_for SAFARI_ZONE_EAST
+ const TOGGLE_SAFARI_ZONE_EAST_ITEM_1 ; C3 X
+ const TOGGLE_SAFARI_ZONE_EAST_ITEM_2 ; C4 X
+ const TOGGLE_SAFARI_ZONE_EAST_ITEM_3 ; C5 X
+ const TOGGLE_SAFARI_ZONE_EAST_ITEM_4 ; C6 X
+
+ toggle_consts_for SAFARI_ZONE_NORTH
+ const TOGGLE_SAFARI_ZONE_NORTH_ITEM_1 ; C7 X
+ const TOGGLE_SAFARI_ZONE_NORTH_ITEM_2 ; C8 X
+
+ toggle_consts_for SAFARI_ZONE_WEST
+ const TOGGLE_SAFARI_ZONE_WEST_ITEM_1 ; C9 X
+ const TOGGLE_SAFARI_ZONE_WEST_ITEM_2 ; CA X
+ const TOGGLE_SAFARI_ZONE_WEST_ITEM_3 ; CB X
+ const TOGGLE_SAFARI_ZONE_WEST_ITEM_4 ; CC X
+
+ toggle_consts_for SAFARI_ZONE_CENTER
+ const TOGGLE_SAFARI_ZONE_CENTER_ITEM ; CD X
+
+ toggle_consts_for CERULEAN_CAVE_2F
+ const TOGGLE_CERULEAN_CAVE_2F_ITEM_1 ; CE X
+ const TOGGLE_CERULEAN_CAVE_2F_ITEM_2 ; CF X
+ const TOGGLE_CERULEAN_CAVE_2F_ITEM_3 ; D0 X
+
+ toggle_consts_for CERULEAN_CAVE_B1F
+ const TOGGLE_MEWTWO ; D1 X
+ const TOGGLE_CERULEAN_CAVE_B1F_ITEM_1 ; D2 X
+ const TOGGLE_CERULEAN_CAVE_B1F_ITEM_2 ; D3 X
+
+ toggle_consts_for VICTORY_ROAD_1F
+ const TOGGLE_VICTORY_ROAD_1F_ITEM_1 ; D4 X
+ const TOGGLE_VICTORY_ROAD_1F_ITEM_2 ; D5 X
+
+ toggle_consts_for CHAMPIONS_ROOM
+ const TOGGLE_CHAMPIONS_ROOM_OAK ; D6
+
+ toggle_consts_for SEAFOAM_ISLANDS_1F
+ const TOGGLE_SEAFOAM_ISLANDS_1F_BOULDER_1 ; D7
+ const TOGGLE_SEAFOAM_ISLANDS_1F_BOULDER_2 ; D8
+
+ toggle_consts_for SEAFOAM_ISLANDS_B1F
+ const TOGGLE_SEAFOAM_ISLANDS_B1F_BOULDER_1 ; D9
+ const TOGGLE_SEAFOAM_ISLANDS_B1F_BOULDER_2 ; DA
+
+ toggle_consts_for SEAFOAM_ISLANDS_B2F
+ const TOGGLE_SEAFOAM_ISLANDS_B2F_BOULDER_1 ; DB
+ const TOGGLE_SEAFOAM_ISLANDS_B2F_BOULDER_2 ; DC
+
+ toggle_consts_for SEAFOAM_ISLANDS_B3F
+ const TOGGLE_SEAFOAM_ISLANDS_B3F_BOULDER_1 ; DD
+ const TOGGLE_SEAFOAM_ISLANDS_B3F_BOULDER_2 ; DE
+ const TOGGLE_SEAFOAM_ISLANDS_B3F_BOULDER_3 ; DF
+ const TOGGLE_SEAFOAM_ISLANDS_B3F_BOULDER_4 ; E0
+
+ toggle_consts_for SEAFOAM_ISLANDS_B4F
+ const TOGGLE_SEAFOAM_ISLANDS_B4F_BOULDER_1 ; E1
+ const TOGGLE_SEAFOAM_ISLANDS_B4F_BOULDER_2 ; E2
+ const TOGGLE_ARTICUNO ; E3 X
+
+DEF NUM_TOGGLEABLE_OBJECTS EQU const_value
diff --git a/data/maps/hide_show_data.asm b/data/maps/hide_show_data.asm
deleted file mode 100644
index bc68c90f..00000000
--- a/data/maps/hide_show_data.asm
+++ /dev/null
@@ -1,568 +0,0 @@
-; default hidden/shown objects for each map
-
-MapHSPointers:
-; entries correspond to map ids
- table_width 2
- dw PalletTownHS
- dw ViridianCityHS
- dw PewterCityHS
- dw CeruleanCityHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw SaffronCityHS
- dw NoHS
- dw NoHS
- dw Route2HS
- dw NoHS
- dw Route4HS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw Route9HS
- dw NoHS
- dw NoHS
- dw Route12HS
- dw NoHS
- dw NoHS
- dw Route15HS
- dw Route16HS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw Route22HS
- dw NoHS
- dw Route24HS
- dw Route25HS
- dw NoHS
- dw NoHS
- dw BluesHouseHS
- dw OaksLabHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw ViridianGymHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw ViridianForestHS
- dw Museum1FHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw MtMoon1FHS
- dw NoHS
- dw MtMoonB2FHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw PowerPlantHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw BillsHouseHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw SSAnne2FHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw SSAnne1FRoomsHS
- dw SSAnne2FRoomsHS
- dw SSAnneB1FRoomsHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw VictoryRoad1FHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw ChampionsRoomHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw CeladonMansionRoofHouseHS
- dw NoHS
- dw NoHS
- dw GameCornerHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw PokemonTower2FHS
- dw PokemonTower3FHS
- dw PokemonTower4FHS
- dw PokemonTower5FHS
- dw PokemonTower6FHS
- dw PokemonTower7FHS
- dw MrFujisHouseHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw WardensHouseHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw SeafoamIslandsB1FHS
- dw SeafoamIslandsB2FHS
- dw SeafoamIslandsB3FHS
- dw SeafoamIslandsB4FHS
- dw NoHS
- dw NoHS
- dw PokemonMansion1FHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw FightingDojoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw SilphCo1FHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw SeafoamIslands1FHS
- dw NoHS
- dw VictoryRoad2FHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw VictoryRoad3FHS
- dw RocketHideoutB1FHS
- dw RocketHideoutB2FHS
- dw RocketHideoutB3FHS
- dw RocketHideoutB4FHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw SilphCo2FHS
- dw SilphCo3FHS
- dw SilphCo4FHS
- dw SilphCo5FHS
- dw SilphCo6FHS
- dw SilphCo7FHS
- dw SilphCo8FHS
- dw PokemonMansion2FHS
- dw PokemonMansion3FHS
- dw PokemonMansionB1FHS
- dw SafariZoneEastHS
- dw SafariZoneNorthHS
- dw SafariZoneWestHS
- dw SafariZoneCenterHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw CeruleanCave2FHS
- dw CeruleanCaveB1FHS
- dw CeruleanCaveHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw SilphCo9FHS
- dw SilphCo10FHS
- dw SilphCo11FHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw NoHS
- dw UnusedMapF4HS
- dw NoHS
- dw NoHS
- dw NoHS
- assert_table_length NUM_MAPS
- dw -1 ; end
-
-NoHS:
- db -1, -1, -1 ; end
-
-MissableObjects:
-; entries correspond to HS_* constants (see constants/hide_show_constants)
- table_width 3
-; format: map id, object id, HIDE/SHOW
-
-PalletTownHS:
- db PALLET_TOWN, PALLETTOWN_OAK, HIDE
-ViridianCityHS:
- db VIRIDIAN_CITY, VIRIDIANCITY_OLD_MAN_SLEEPY, SHOW
- db VIRIDIAN_CITY, VIRIDIANCITY_OLD_MAN, HIDE
-PewterCityHS:
- db PEWTER_CITY, PEWTERCITY_SUPER_NERD1, SHOW
- db PEWTER_CITY, PEWTERCITY_YOUNGSTER, SHOW
-CeruleanCityHS:
- db CERULEAN_CITY, CERULEANCITY_RIVAL, HIDE
- db CERULEAN_CITY, CERULEANCITY_ROCKET, SHOW
- db CERULEAN_CITY, CERULEANCITY_GUARD1, HIDE
- db CERULEAN_CITY, CERULEANCITY_SUPER_NERD3, SHOW
- db CERULEAN_CITY, CERULEANCITY_GUARD2, SHOW
-SaffronCityHS:
- db SAFFRON_CITY, SAFFRONCITY_ROCKET1, SHOW
- db SAFFRON_CITY, SAFFRONCITY_ROCKET2, SHOW
- db SAFFRON_CITY, SAFFRONCITY_ROCKET3, SHOW
- db SAFFRON_CITY, SAFFRONCITY_ROCKET4, SHOW
- db SAFFRON_CITY, SAFFRONCITY_ROCKET5, SHOW
- db SAFFRON_CITY, SAFFRONCITY_ROCKET6, SHOW
- db SAFFRON_CITY, SAFFRONCITY_ROCKET7, SHOW
- db SAFFRON_CITY, SAFFRONCITY_SCIENTIST, HIDE
- db SAFFRON_CITY, SAFFRONCITY_SILPH_WORKER_M, HIDE
- db SAFFRON_CITY, SAFFRONCITY_SILPH_WORKER_F, HIDE
- db SAFFRON_CITY, SAFFRONCITY_GENTLEMAN, HIDE
- db SAFFRON_CITY, SAFFRONCITY_PIDGEOT, HIDE
- db SAFFRON_CITY, SAFFRONCITY_ROCKER, HIDE
- db SAFFRON_CITY, SAFFRONCITY_ROCKET8, SHOW
- db SAFFRON_CITY, SAFFRONCITY_ROCKET9, HIDE
-Route2HS:
- db ROUTE_2, ROUTE2_MOON_STONE, SHOW
- db ROUTE_2, ROUTE2_HP_UP, SHOW
-Route4HS:
- db ROUTE_4, ROUTE4_TM_WHIRLWIND, SHOW
-Route9HS:
- db ROUTE_9, ROUTE9_TM_TELEPORT, SHOW
-Route12HS:
- db ROUTE_12, ROUTE12_SNORLAX, SHOW
- db ROUTE_12, ROUTE12_TM_PAY_DAY, SHOW
- db ROUTE_12, ROUTE12_IRON, SHOW
-Route15HS:
- db ROUTE_15, ROUTE15_TM_RAGE, SHOW
-Route16HS:
- db ROUTE_16, ROUTE16_SNORLAX, SHOW
-Route22HS:
- db ROUTE_22, ROUTE22_RIVAL1, HIDE
- db ROUTE_22, ROUTE22_RIVAL2, HIDE
-Route24HS:
- db ROUTE_24, ROUTE24_COOLTRAINER_M1, SHOW
- db ROUTE_24, ROUTE24_TM_THUNDER_WAVE, SHOW
-Route25HS:
- db ROUTE_25, ROUTE25_TM_SEISMIC_TOSS, SHOW
-BluesHouseHS:
- db BLUES_HOUSE, BLUESHOUSE_DAISY1, SHOW
- db BLUES_HOUSE, BLUESHOUSE_DAISY2, HIDE
- db BLUES_HOUSE, BLUESHOUSE_TOWN_MAP, SHOW
-OaksLabHS:
- db OAKS_LAB, OAKSLAB_RIVAL, SHOW
- db OAKS_LAB, OAKSLAB_CHARMANDER_POKE_BALL, SHOW
- db OAKS_LAB, OAKSLAB_SQUIRTLE_POKE_BALL, SHOW
- db OAKS_LAB, OAKSLAB_BULBASAUR_POKE_BALL, SHOW
- db OAKS_LAB, OAKSLAB_OAK1, HIDE
- db OAKS_LAB, OAKSLAB_POKEDEX1, SHOW
- db OAKS_LAB, OAKSLAB_POKEDEX2, SHOW
- db OAKS_LAB, OAKSLAB_OAK2, HIDE
-ViridianGymHS:
- db VIRIDIAN_GYM, VIRIDIANGYM_GIOVANNI, SHOW
- db VIRIDIAN_GYM, VIRIDIANGYM_REVIVE, SHOW
-Museum1FHS:
- db MUSEUM_1F, MUSEUM1F_OLD_AMBER, SHOW
-CeruleanCaveHS:
- db CERULEAN_CAVE_1F, CERULEANCAVE1F_FULL_RESTORE, SHOW
- db CERULEAN_CAVE_1F, CERULEANCAVE1F_MAX_ELIXER, SHOW
- db CERULEAN_CAVE_1F, CERULEANCAVE1F_NUGGET, SHOW
-PokemonTower2FHS:
- db POKEMON_TOWER_2F, POKEMONTOWER2F_RIVAL, SHOW
-PokemonTower3FHS:
- db POKEMON_TOWER_3F, POKEMONTOWER3F_ESCAPE_ROPE, SHOW
-PokemonTower4FHS:
- db POKEMON_TOWER_4F, POKEMONTOWER4F_ELIXER, SHOW
- db POKEMON_TOWER_4F, POKEMONTOWER4F_AWAKENING, SHOW
- db POKEMON_TOWER_4F, POKEMONTOWER4F_HP_UP, SHOW
-PokemonTower5FHS:
- db POKEMON_TOWER_5F, POKEMONTOWER5F_NUGGET, SHOW
-PokemonTower6FHS:
- db POKEMON_TOWER_6F, POKEMONTOWER6F_RARE_CANDY, SHOW
- db POKEMON_TOWER_6F, POKEMONTOWER6F_X_ACCURACY, SHOW
-PokemonTower7FHS:
- db POKEMON_TOWER_7F, POKEMONTOWER7F_ROCKET1, SHOW
- db POKEMON_TOWER_7F, POKEMONTOWER7F_ROCKET2, SHOW
- db POKEMON_TOWER_7F, POKEMONTOWER7F_ROCKET3, SHOW
- db POKEMON_TOWER_7F, POKEMONTOWER7F_MR_FUJI, SHOW
-MrFujisHouseHS:
- db MR_FUJIS_HOUSE, MRFUJISHOUSE_MR_FUJI, HIDE
-CeladonMansionRoofHouseHS:
- db CELADON_MANSION_ROOF_HOUSE, CELADONMANSION_ROOF_HOUSE_EEVEE_POKEBALL, SHOW
-GameCornerHS:
- db GAME_CORNER, GAMECORNER_ROCKET, SHOW
-WardensHouseHS:
- db WARDENS_HOUSE, WARDENSHOUSE_RARE_CANDY, SHOW
-PokemonMansion1FHS:
- db POKEMON_MANSION_1F, POKEMONMANSION1F_ESCAPE_ROPE, SHOW
- db POKEMON_MANSION_1F, POKEMONMANSION1F_CARBOS, SHOW
-FightingDojoHS:
- db FIGHTING_DOJO, FIGHTINGDOJO_HITMONLEE_POKE_BALL, SHOW
- db FIGHTING_DOJO, FIGHTINGDOJO_HITMONCHAN_POKE_BALL, SHOW
-SilphCo1FHS:
- db SILPH_CO_1F, SILPHCO1F_LINK_RECEPTIONIST, HIDE
-PowerPlantHS:
- db POWER_PLANT, POWERPLANT_VOLTORB1, SHOW
- db POWER_PLANT, POWERPLANT_VOLTORB2, SHOW
- db POWER_PLANT, POWERPLANT_VOLTORB3, SHOW
- db POWER_PLANT, POWERPLANT_ELECTRODE1, SHOW
- db POWER_PLANT, POWERPLANT_VOLTORB4, SHOW
- db POWER_PLANT, POWERPLANT_VOLTORB5, SHOW
- db POWER_PLANT, POWERPLANT_ELECTRODE2, SHOW
- db POWER_PLANT, POWERPLANT_VOLTORB6, SHOW
- db POWER_PLANT, POWERPLANT_ZAPDOS, SHOW
- db POWER_PLANT, POWERPLANT_CARBOS, SHOW
- db POWER_PLANT, POWERPLANT_HP_UP, SHOW
- db POWER_PLANT, POWERPLANT_RARE_CANDY, SHOW
- db POWER_PLANT, POWERPLANT_TM_THUNDER, SHOW
- db POWER_PLANT, POWERPLANT_TM_REFLECT, SHOW
-VictoryRoad2FHS:
- db VICTORY_ROAD_2F, VICTORYROAD2F_MOLTRES, SHOW
- db VICTORY_ROAD_2F, VICTORYROAD2F_TM_SUBMISSION, SHOW
- db VICTORY_ROAD_2F, VICTORYROAD2F_FULL_HEAL, SHOW
- db VICTORY_ROAD_2F, VICTORYROAD2F_TM_MEGA_KICK, SHOW
- db VICTORY_ROAD_2F, VICTORYROAD2F_GUARD_SPEC, SHOW
- db VICTORY_ROAD_2F, VICTORYROAD2F_BOULDER3, SHOW
-BillsHouseHS:
- db BILLS_HOUSE, BILLSHOUSE_BILL_POKEMON, SHOW
- db BILLS_HOUSE, BILLSHOUSE_BILL1, HIDE
- db BILLS_HOUSE, BILLSHOUSE_BILL2, HIDE
-ViridianForestHS:
- db VIRIDIAN_FOREST, VIRIDIANFOREST_ANTIDOTE, SHOW
- db VIRIDIAN_FOREST, VIRIDIANFOREST_POTION, SHOW
- db VIRIDIAN_FOREST, VIRIDIANFOREST_POKE_BALL, SHOW
-MtMoon1FHS:
- db MT_MOON_1F, MTMOON1F_POTION1, SHOW
- db MT_MOON_1F, MTMOON1F_MOON_STONE, SHOW
- db MT_MOON_1F, MTMOON1F_RARE_CANDY, SHOW
- db MT_MOON_1F, MTMOON1F_ESCAPE_ROPE, SHOW
- db MT_MOON_1F, MTMOON1F_POTION2, SHOW
- db MT_MOON_1F, MTMOON1F_TM_WATER_GUN, SHOW
-MtMoonB2FHS:
- db MT_MOON_B2F, MTMOONB2F_DOME_FOSSIL, SHOW
- db MT_MOON_B2F, MTMOONB2F_HELIX_FOSSIL, SHOW
- db MT_MOON_B2F, MTMOONB2F_HP_UP, SHOW
- db MT_MOON_B2F, MTMOONB2F_TM_MEGA_PUNCH, SHOW
-SSAnne2FHS:
- db SS_ANNE_2F, SSANNE2F_RIVAL, HIDE
-SSAnne1FRoomsHS:
- db SS_ANNE_1F_ROOMS, SSANNE1FROOMS_TM_BODY_SLAM, SHOW
-SSAnne2FRoomsHS:
- db SS_ANNE_2F_ROOMS, SSANNE2FROOMS_MAX_ETHER, SHOW
- db SS_ANNE_2F_ROOMS, SSANNE2FROOMS_RARE_CANDY, SHOW
-SSAnneB1FRoomsHS:
- db SS_ANNE_B1F_ROOMS, SSANNEB1FROOMS_ETHER, SHOW
- db SS_ANNE_B1F_ROOMS, SSANNEB1FROOMS_TM_REST, SHOW
- db SS_ANNE_B1F_ROOMS, SSANNEB1FROOMS_MAX_POTION, SHOW
-VictoryRoad3FHS:
- db VICTORY_ROAD_3F, VICTORYROAD3F_MAX_REVIVE, SHOW
- db VICTORY_ROAD_3F, VICTORYROAD3F_TM_EXPLOSION, SHOW
- db VICTORY_ROAD_3F, VICTORYROAD3F_BOULDER4, SHOW
-RocketHideoutB1FHS:
- db ROCKET_HIDEOUT_B1F, ROCKETHIDEOUTB1F_ESCAPE_ROPE, SHOW
- db ROCKET_HIDEOUT_B1F, ROCKETHIDEOUTB1F_HYPER_POTION, SHOW
-RocketHideoutB2FHS:
- db ROCKET_HIDEOUT_B2F, ROCKETHIDEOUTB2F_MOON_STONE, SHOW
- db ROCKET_HIDEOUT_B2F, ROCKETHIDEOUTB2F_NUGGET, SHOW
- db ROCKET_HIDEOUT_B2F, ROCKETHIDEOUTB2F_TM_HORN_DRILL, SHOW
- db ROCKET_HIDEOUT_B2F, ROCKETHIDEOUTB2F_SUPER_POTION, SHOW
-RocketHideoutB3FHS:
- db ROCKET_HIDEOUT_B3F, ROCKETHIDEOUTB3F_TM_DOUBLE_EDGE, SHOW
- db ROCKET_HIDEOUT_B3F, ROCKETHIDEOUTB3F_RARE_CANDY, SHOW
-RocketHideoutB4FHS:
- db ROCKET_HIDEOUT_B4F, ROCKETHIDEOUTB4F_GIOVANNI, SHOW
- db ROCKET_HIDEOUT_B4F, ROCKETHIDEOUTB4F_HP_UP, SHOW
- db ROCKET_HIDEOUT_B4F, ROCKETHIDEOUTB4F_TM_RAZOR_WIND, SHOW
- db ROCKET_HIDEOUT_B4F, ROCKETHIDEOUTB4F_IRON, SHOW
- db ROCKET_HIDEOUT_B4F, ROCKETHIDEOUTB4F_SILPH_SCOPE, HIDE
- db ROCKET_HIDEOUT_B4F, ROCKETHIDEOUTB4F_LIFT_KEY, HIDE
-SilphCo2FHS:
- db SILPH_CO_2F, SILPHCO2F_SILPH_WORKER_F, SHOW
- db SILPH_CO_2F, SILPHCO2F_SCIENTIST1, SHOW
- db SILPH_CO_2F, SILPHCO2F_SCIENTIST2, SHOW
- db SILPH_CO_2F, SILPHCO2F_ROCKET1, SHOW
- db SILPH_CO_2F, SILPHCO2F_ROCKET2, SHOW
-SilphCo3FHS:
- db SILPH_CO_3F, SILPHCO3F_ROCKET, SHOW
- db SILPH_CO_3F, SILPHCO3F_SCIENTIST, SHOW
- db SILPH_CO_3F, SILPHCO3F_HYPER_POTION, SHOW
-SilphCo4FHS:
- db SILPH_CO_4F, SILPHCO4F_ROCKET1, SHOW
- db SILPH_CO_4F, SILPHCO4F_SCIENTIST, SHOW
- db SILPH_CO_4F, SILPHCO4F_ROCKET2, SHOW
- db SILPH_CO_4F, SILPHCO4F_FULL_HEAL, SHOW
- db SILPH_CO_4F, SILPHCO4F_MAX_REVIVE, SHOW
- db SILPH_CO_4F, SILPHCO4F_ESCAPE_ROPE, SHOW
-SilphCo5FHS:
- db SILPH_CO_5F, SILPHCO5F_ROCKET1, SHOW
- db SILPH_CO_5F, SILPHCO5F_SCIENTIST, SHOW
- db SILPH_CO_5F, SILPHCO5F_ROCKER, SHOW
- db SILPH_CO_5F, SILPHCO5F_ROCKET2, SHOW
- db SILPH_CO_5F, SILPHCO5F_TM_TAKE_DOWN, SHOW
- db SILPH_CO_5F, SILPHCO5F_PROTEIN, SHOW
- db SILPH_CO_5F, SILPHCO5F_CARD_KEY, SHOW
-SilphCo6FHS:
- db SILPH_CO_6F, SILPHCO6F_ROCKET1, SHOW
- db SILPH_CO_6F, SILPHCO6F_SCIENTIST, SHOW
- db SILPH_CO_6F, SILPHCO6F_ROCKET2, SHOW
- db SILPH_CO_6F, SILPHCO6F_HP_UP, SHOW
- db SILPH_CO_6F, SILPHCO6F_X_ACCURACY, SHOW
-SilphCo7FHS:
- db SILPH_CO_7F, SILPHCO7F_ROCKET1, SHOW
- db SILPH_CO_7F, SILPHCO7F_SCIENTIST, SHOW
- db SILPH_CO_7F, SILPHCO7F_ROCKET2, SHOW
- db SILPH_CO_7F, SILPHCO7F_ROCKET3, SHOW
- db SILPH_CO_7F, SILPHCO7F_RIVAL, SHOW
- db SILPH_CO_7F, SILPHCO7F_CALCIUM, SHOW
- db SILPH_CO_7F, SILPHCO7F_TM_SWORDS_DANCE, SHOW
- db SILPH_CO_7F, SILPHCO7F_UNUSED, SHOW
-SilphCo8FHS:
- db SILPH_CO_8F, SILPHCO8F_ROCKET1, SHOW
- db SILPH_CO_8F, SILPHCO8F_SCIENTIST, SHOW
- db SILPH_CO_8F, SILPHCO8F_ROCKET2, SHOW
-SilphCo9FHS:
- db SILPH_CO_9F, SILPHCO9F_ROCKET1, SHOW
- db SILPH_CO_9F, SILPHCO9F_SCIENTIST, SHOW
- db SILPH_CO_9F, SILPHCO9F_ROCKET2, SHOW
-SilphCo10FHS:
- db SILPH_CO_10F, SILPHCO10F_ROCKET, SHOW
- db SILPH_CO_10F, SILPHCO10F_SCIENTIST, SHOW
- db SILPH_CO_10F, SILPHCO10F_SILPH_WORKER_F, SHOW
- db SILPH_CO_10F, SILPHCO10F_TM_EARTHQUAKE, SHOW
- db SILPH_CO_10F, SILPHCO10F_RARE_CANDY, SHOW
- db SILPH_CO_10F, SILPHCO10F_CARBOS, SHOW
-SilphCo11FHS:
- db SILPH_CO_11F, SILPHCO11F_GIOVANNI, SHOW
- db SILPH_CO_11F, SILPHCO11F_ROCKET1, SHOW
- db SILPH_CO_11F, SILPHCO11F_ROCKET2, SHOW
-UnusedMapF4HS:
- db UNUSED_MAP_F4, $02, SHOW ; unused
-PokemonMansion2FHS:
- db POKEMON_MANSION_2F, POKEMONMANSION2F_CALCIUM, SHOW
-PokemonMansion3FHS:
- db POKEMON_MANSION_3F, POKEMONMANSION3F_MAX_POTION, SHOW
- db POKEMON_MANSION_3F, POKEMONMANSION3F_IRON, SHOW
-PokemonMansionB1FHS:
- db POKEMON_MANSION_B1F, POKEMONMANSIONB1F_RARE_CANDY, SHOW
- db POKEMON_MANSION_B1F, POKEMONMANSIONB1F_FULL_RESTORE, SHOW
- db POKEMON_MANSION_B1F, POKEMONMANSIONB1F_TM_BLIZZARD, SHOW
- db POKEMON_MANSION_B1F, POKEMONMANSIONB1F_TM_SOLARBEAM, SHOW
- db POKEMON_MANSION_B1F, POKEMONMANSIONB1F_SECRET_KEY, SHOW
-SafariZoneEastHS:
- db SAFARI_ZONE_EAST, SAFARIZONEEAST_FULL_RESTORE, SHOW
- db SAFARI_ZONE_EAST, SAFARIZONEEAST_MAX_RESTORE, SHOW
- db SAFARI_ZONE_EAST, SAFARIZONEEAST_CARBOS, SHOW
- db SAFARI_ZONE_EAST, SAFARIZONEEAST_TM_EGG_BOMB, SHOW
-SafariZoneNorthHS:
- db SAFARI_ZONE_NORTH, SAFARIZONENORTH_PROTEIN, SHOW
- db SAFARI_ZONE_NORTH, SAFARIZONENORTH_TM_SKULL_BASH, SHOW
-SafariZoneWestHS:
- db SAFARI_ZONE_WEST, SAFARIZONEWEST_MAX_POTION, SHOW
- db SAFARI_ZONE_WEST, SAFARIZONEWEST_TM_DOUBLE_TEAM, SHOW
- db SAFARI_ZONE_WEST, SAFARIZONEWEST_MAX_REVIVE, SHOW
- db SAFARI_ZONE_WEST, SAFARIZONEWEST_GOLD_TEETH, SHOW
-SafariZoneCenterHS:
- db SAFARI_ZONE_CENTER, SAFARIZONECENTER_NUGGET, SHOW
-CeruleanCave2FHS:
- db CERULEAN_CAVE_2F, CERULEANCAVE2F_PP_UP, SHOW
- db CERULEAN_CAVE_2F, CERULEANCAVE2F_ULTRA_BALL, SHOW
- db CERULEAN_CAVE_2F, CERULEANCAVE2F_FULL_RESTORE, SHOW
-CeruleanCaveB1FHS:
- db CERULEAN_CAVE_B1F, CERULEANCAVEB1F_MEWTWO, SHOW
- db CERULEAN_CAVE_B1F, CERULEANCAVEB1F_ULTRA_BALL, SHOW
- db CERULEAN_CAVE_B1F, CERULEANCAVEB1F_MAX_REVIVE, SHOW
-VictoryRoad1FHS:
- db VICTORY_ROAD_1F, VICTORYROAD1F_TM_SKY_ATTACK, SHOW
- db VICTORY_ROAD_1F, VICTORYROAD1F_RARE_CANDY, SHOW
-ChampionsRoomHS:
- db CHAMPIONS_ROOM, CHAMPIONSROOM_OAK, HIDE
-SeafoamIslands1FHS:
- db SEAFOAM_ISLANDS_1F, SEAFOAMISLANDS1F_BOULDER1, SHOW
- db SEAFOAM_ISLANDS_1F, SEAFOAMISLANDS1F_BOULDER2, SHOW
-SeafoamIslandsB1FHS:
- db SEAFOAM_ISLANDS_B1F, SEAFOAMISLANDSB1F_BOULDER1, HIDE
- db SEAFOAM_ISLANDS_B1F, SEAFOAMISLANDSB1F_BOULDER2, HIDE
-SeafoamIslandsB2FHS:
- db SEAFOAM_ISLANDS_B2F, SEAFOAMISLANDSB2F_BOULDER1, HIDE
- db SEAFOAM_ISLANDS_B2F, SEAFOAMISLANDSB2F_BOULDER2, HIDE
-SeafoamIslandsB3FHS:
- db SEAFOAM_ISLANDS_B3F, SEAFOAMISLANDSB3F_BOULDER2, SHOW
- db SEAFOAM_ISLANDS_B3F, SEAFOAMISLANDSB3F_BOULDER3, SHOW
- db SEAFOAM_ISLANDS_B3F, SEAFOAMISLANDSB3F_BOULDER5, HIDE
- db SEAFOAM_ISLANDS_B3F, SEAFOAMISLANDSB3F_BOULDER6, HIDE
-SeafoamIslandsB4FHS:
- db SEAFOAM_ISLANDS_B4F, SEAFOAMISLANDSB4F_BOULDER1, HIDE
- db SEAFOAM_ISLANDS_B4F, SEAFOAMISLANDSB4F_BOULDER2, HIDE
- db SEAFOAM_ISLANDS_B4F, SEAFOAMISLANDSB4F_ARTICUNO, SHOW
- assert_table_length NUM_HS_OBJECTS
- db -1, 1, SHOW ; end
diff --git a/data/maps/objects/SilphCo7F.asm b/data/maps/objects/SilphCo7F.asm
index 6f2ca90d..0dbe2c7f 100644
--- a/data/maps/objects/SilphCo7F.asm
+++ b/data/maps/objects/SilphCo7F.asm
@@ -10,7 +10,7 @@
const_export SILPHCO7F_RIVAL
const_export SILPHCO7F_CALCIUM
const_export SILPHCO7F_TM_SWORDS_DANCE
- const_export SILPHCO7F_UNUSED ; referenced in data/maps/hide_show_data.asm, no corresponding object_event
+ const_export SILPHCO7F_UNUSED ; referenced in data/maps/toggleable_objects.asm, no corresponding object_event
SilphCo7F_Object:
db $2e ; border block
diff --git a/data/maps/toggleable_objects.asm b/data/maps/toggleable_objects.asm
new file mode 100644
index 00000000..d94002d9
--- /dev/null
+++ b/data/maps/toggleable_objects.asm
@@ -0,0 +1,423 @@
+; toggleable objects for each map
+
+ToggleableObjectMapPointers:
+; entries correspond to map ids
+ table_width 2
+FOR n, NUM_MAPS
+ IF DEF(TOGGLEMAP{n}) ; defined by `toggle_consts_for`
+ dw ToggleData{n}
+ ELSE
+ dw NoToggleData
+ ENDC
+ENDR
+ assert_table_length NUM_MAPS
+ dw -1 ; end
+
+NoToggleData:
+ db -1, -1, -1 ; end
+
+DEF toggles_ok = 1
+
+MACRO? toggleable_objects_for
+ DEF toggle_map_id = \1 ; map id
+ ToggleData{toggle_map_id}:
+ IF toggles_ok
+ ASSERT DEF(TOGGLEMAP{toggle_map_id}), \
+ "`toggleable_objects_for \1` is not defined"
+ DEF toggles_ok &= DEF(TOGGLEMAP{toggle_map_id})
+ IF toggles_ok
+ assert_table_length TOGGLEMAP{toggle_map_id}
+ DEF toggles_ok &= TOGGLEMAP{toggle_map_id} * 3 == @ - ToggleableObjectStates
+ ENDC
+ ENDC
+ENDM
+
+MACRO toggle_object_state
+ db toggle_map_id ; from previous `toggleable_objects_for`
+ db \1 ; object id
+ db \2 ; OFF/ON
+ENDM
+
+ToggleableObjectStates:
+; entries correspond to TOGGLE_* constants (see constants/toggle_constants.asm)
+ table_width 3
+
+ toggleable_objects_for PALLET_TOWN
+ toggle_object_state PALLETTOWN_OAK, OFF
+
+ toggleable_objects_for VIRIDIAN_CITY
+ toggle_object_state VIRIDIANCITY_OLD_MAN_SLEEPY, ON
+ toggle_object_state VIRIDIANCITY_OLD_MAN, OFF
+
+ toggleable_objects_for PEWTER_CITY
+ toggle_object_state PEWTERCITY_SUPER_NERD1, ON
+ toggle_object_state PEWTERCITY_YOUNGSTER, ON
+
+ toggleable_objects_for CERULEAN_CITY
+ toggle_object_state CERULEANCITY_RIVAL, OFF
+ toggle_object_state CERULEANCITY_ROCKET, ON
+ toggle_object_state CERULEANCITY_GUARD1, OFF
+ toggle_object_state CERULEANCITY_SUPER_NERD3, ON
+ toggle_object_state CERULEANCITY_GUARD2, ON
+
+ toggleable_objects_for SAFFRON_CITY
+ toggle_object_state SAFFRONCITY_ROCKET1, ON
+ toggle_object_state SAFFRONCITY_ROCKET2, ON
+ toggle_object_state SAFFRONCITY_ROCKET3, ON
+ toggle_object_state SAFFRONCITY_ROCKET4, ON
+ toggle_object_state SAFFRONCITY_ROCKET5, ON
+ toggle_object_state SAFFRONCITY_ROCKET6, ON
+ toggle_object_state SAFFRONCITY_ROCKET7, ON
+ toggle_object_state SAFFRONCITY_SCIENTIST, OFF
+ toggle_object_state SAFFRONCITY_SILPH_WORKER_M, OFF
+ toggle_object_state SAFFRONCITY_SILPH_WORKER_F, OFF
+ toggle_object_state SAFFRONCITY_GENTLEMAN, OFF
+ toggle_object_state SAFFRONCITY_PIDGEOT, OFF
+ toggle_object_state SAFFRONCITY_ROCKER, OFF
+ toggle_object_state SAFFRONCITY_ROCKET8, ON
+ toggle_object_state SAFFRONCITY_ROCKET9, OFF
+
+ toggleable_objects_for ROUTE_2
+ toggle_object_state ROUTE2_MOON_STONE, ON
+ toggle_object_state ROUTE2_HP_UP, ON
+
+ toggleable_objects_for ROUTE_4
+ toggle_object_state ROUTE4_TM_WHIRLWIND, ON
+
+ toggleable_objects_for ROUTE_9
+ toggle_object_state ROUTE9_TM_TELEPORT, ON
+
+ toggleable_objects_for ROUTE_12
+ toggle_object_state ROUTE12_SNORLAX, ON
+ toggle_object_state ROUTE12_TM_PAY_DAY, ON
+ toggle_object_state ROUTE12_IRON, ON
+
+ toggleable_objects_for ROUTE_15
+ toggle_object_state ROUTE15_TM_RAGE, ON
+
+ toggleable_objects_for ROUTE_16
+ toggle_object_state ROUTE16_SNORLAX, ON
+
+ toggleable_objects_for ROUTE_22
+ toggle_object_state ROUTE22_RIVAL1, OFF
+ toggle_object_state ROUTE22_RIVAL2, OFF
+
+ toggleable_objects_for ROUTE_24
+ toggle_object_state ROUTE24_COOLTRAINER_M1, ON
+ toggle_object_state ROUTE24_TM_THUNDER_WAVE, ON
+
+ toggleable_objects_for ROUTE_25
+ toggle_object_state ROUTE25_TM_SEISMIC_TOSS, ON
+
+ toggleable_objects_for BLUES_HOUSE
+ toggle_object_state BLUESHOUSE_DAISY1, ON
+ toggle_object_state BLUESHOUSE_DAISY2, OFF
+ toggle_object_state BLUESHOUSE_TOWN_MAP, ON
+
+ toggleable_objects_for OAKS_LAB
+ toggle_object_state OAKSLAB_RIVAL, ON
+ toggle_object_state OAKSLAB_CHARMANDER_POKE_BALL, ON
+ toggle_object_state OAKSLAB_SQUIRTLE_POKE_BALL, ON
+ toggle_object_state OAKSLAB_BULBASAUR_POKE_BALL, ON
+ toggle_object_state OAKSLAB_OAK1, OFF
+ toggle_object_state OAKSLAB_POKEDEX1, ON
+ toggle_object_state OAKSLAB_POKEDEX2, ON
+ toggle_object_state OAKSLAB_OAK2, OFF
+
+ toggleable_objects_for VIRIDIAN_GYM
+ toggle_object_state VIRIDIANGYM_GIOVANNI, ON
+ toggle_object_state VIRIDIANGYM_REVIVE, ON
+
+ toggleable_objects_for MUSEUM_1F
+ toggle_object_state MUSEUM1F_OLD_AMBER, ON
+
+ toggleable_objects_for CERULEAN_CAVE_1F
+ toggle_object_state CERULEANCAVE1F_FULL_RESTORE, ON
+ toggle_object_state CERULEANCAVE1F_MAX_ELIXER, ON
+ toggle_object_state CERULEANCAVE1F_NUGGET, ON
+
+ toggleable_objects_for POKEMON_TOWER_2F
+ toggle_object_state POKEMONTOWER2F_RIVAL, ON
+
+ toggleable_objects_for POKEMON_TOWER_3F
+ toggle_object_state POKEMONTOWER3F_ESCAPE_ROPE, ON
+
+ toggleable_objects_for POKEMON_TOWER_4F
+ toggle_object_state POKEMONTOWER4F_ELIXER, ON
+ toggle_object_state POKEMONTOWER4F_AWAKENING, ON
+ toggle_object_state POKEMONTOWER4F_HP_UP, ON
+
+ toggleable_objects_for POKEMON_TOWER_5F
+ toggle_object_state POKEMONTOWER5F_NUGGET, ON
+
+ toggleable_objects_for POKEMON_TOWER_6F
+ toggle_object_state POKEMONTOWER6F_RARE_CANDY, ON
+ toggle_object_state POKEMONTOWER6F_X_ACCURACY, ON
+
+ toggleable_objects_for POKEMON_TOWER_7F
+ toggle_object_state POKEMONTOWER7F_ROCKET1, ON
+ toggle_object_state POKEMONTOWER7F_ROCKET2, ON
+ toggle_object_state POKEMONTOWER7F_ROCKET3, ON
+ toggle_object_state POKEMONTOWER7F_MR_FUJI, ON
+
+ toggleable_objects_for MR_FUJIS_HOUSE
+ toggle_object_state MRFUJISHOUSE_MR_FUJI, OFF
+
+ toggleable_objects_for CELADON_MANSION_ROOF_HOUSE
+ toggle_object_state CELADONMANSION_ROOF_HOUSE_EEVEE_POKEBALL, ON
+
+ toggleable_objects_for GAME_CORNER
+ toggle_object_state GAMECORNER_ROCKET, ON
+
+ toggleable_objects_for WARDENS_HOUSE
+ toggle_object_state WARDENSHOUSE_RARE_CANDY, ON
+
+ toggleable_objects_for POKEMON_MANSION_1F
+ toggle_object_state POKEMONMANSION1F_ESCAPE_ROPE, ON
+ toggle_object_state POKEMONMANSION1F_CARBOS, ON
+
+ toggleable_objects_for FIGHTING_DOJO
+ toggle_object_state FIGHTINGDOJO_HITMONLEE_POKE_BALL, ON
+ toggle_object_state FIGHTINGDOJO_HITMONCHAN_POKE_BALL, ON
+
+ toggleable_objects_for SILPH_CO_1F
+ toggle_object_state SILPHCO1F_LINK_RECEPTIONIST, OFF
+
+ toggleable_objects_for POWER_PLANT
+ toggle_object_state POWERPLANT_VOLTORB1, ON
+ toggle_object_state POWERPLANT_VOLTORB2, ON
+ toggle_object_state POWERPLANT_VOLTORB3, ON
+ toggle_object_state POWERPLANT_ELECTRODE1, ON
+ toggle_object_state POWERPLANT_VOLTORB4, ON
+ toggle_object_state POWERPLANT_VOLTORB5, ON
+ toggle_object_state POWERPLANT_ELECTRODE2, ON
+ toggle_object_state POWERPLANT_VOLTORB6, ON
+ toggle_object_state POWERPLANT_ZAPDOS, ON
+ toggle_object_state POWERPLANT_CARBOS, ON
+ toggle_object_state POWERPLANT_HP_UP, ON
+ toggle_object_state POWERPLANT_RARE_CANDY, ON
+ toggle_object_state POWERPLANT_TM_THUNDER, ON
+ toggle_object_state POWERPLANT_TM_REFLECT, ON
+
+ toggleable_objects_for VICTORY_ROAD_2F
+ toggle_object_state VICTORYROAD2F_MOLTRES, ON
+ toggle_object_state VICTORYROAD2F_TM_SUBMISSION, ON
+ toggle_object_state VICTORYROAD2F_FULL_HEAL, ON
+ toggle_object_state VICTORYROAD2F_TM_MEGA_KICK, ON
+ toggle_object_state VICTORYROAD2F_GUARD_SPEC, ON
+ toggle_object_state VICTORYROAD2F_BOULDER3, ON
+
+ toggleable_objects_for BILLS_HOUSE
+ toggle_object_state BILLSHOUSE_BILL_POKEMON, ON
+ toggle_object_state BILLSHOUSE_BILL1, OFF
+ toggle_object_state BILLSHOUSE_BILL2, OFF
+
+ toggleable_objects_for VIRIDIAN_FOREST
+ toggle_object_state VIRIDIANFOREST_ANTIDOTE, ON
+ toggle_object_state VIRIDIANFOREST_POTION, ON
+ toggle_object_state VIRIDIANFOREST_POKE_BALL, ON
+
+ toggleable_objects_for MT_MOON_1F
+ toggle_object_state MTMOON1F_POTION1, ON
+ toggle_object_state MTMOON1F_MOON_STONE, ON
+ toggle_object_state MTMOON1F_RARE_CANDY, ON
+ toggle_object_state MTMOON1F_ESCAPE_ROPE, ON
+ toggle_object_state MTMOON1F_POTION2, ON
+ toggle_object_state MTMOON1F_TM_WATER_GUN, ON
+
+ toggleable_objects_for MT_MOON_B2F
+ toggle_object_state MTMOONB2F_DOME_FOSSIL, ON
+ toggle_object_state MTMOONB2F_HELIX_FOSSIL, ON
+ toggle_object_state MTMOONB2F_HP_UP, ON
+ toggle_object_state MTMOONB2F_TM_MEGA_PUNCH, ON
+
+ toggleable_objects_for SS_ANNE_2F
+ toggle_object_state SSANNE2F_RIVAL, OFF
+
+ toggleable_objects_for SS_ANNE_1F_ROOMS
+ toggle_object_state SSANNE1FROOMS_TM_BODY_SLAM, ON
+
+ toggleable_objects_for SS_ANNE_2F_ROOMS
+ toggle_object_state SSANNE2FROOMS_MAX_ETHER, ON
+ toggle_object_state SSANNE2FROOMS_RARE_CANDY, ON
+
+ toggleable_objects_for SS_ANNE_B1F_ROOMS
+ toggle_object_state SSANNEB1FROOMS_ETHER, ON
+ toggle_object_state SSANNEB1FROOMS_TM_REST, ON
+ toggle_object_state SSANNEB1FROOMS_MAX_POTION, ON
+
+ toggleable_objects_for VICTORY_ROAD_3F
+ toggle_object_state VICTORYROAD3F_MAX_REVIVE, ON
+ toggle_object_state VICTORYROAD3F_TM_EXPLOSION, ON
+ toggle_object_state VICTORYROAD3F_BOULDER4, ON
+
+ toggleable_objects_for ROCKET_HIDEOUT_B1F
+ toggle_object_state ROCKETHIDEOUTB1F_ESCAPE_ROPE, ON
+ toggle_object_state ROCKETHIDEOUTB1F_HYPER_POTION, ON
+
+ toggleable_objects_for ROCKET_HIDEOUT_B2F
+ toggle_object_state ROCKETHIDEOUTB2F_MOON_STONE, ON
+ toggle_object_state ROCKETHIDEOUTB2F_NUGGET, ON
+ toggle_object_state ROCKETHIDEOUTB2F_TM_HORN_DRILL, ON
+ toggle_object_state ROCKETHIDEOUTB2F_SUPER_POTION, ON
+
+ toggleable_objects_for ROCKET_HIDEOUT_B3F
+ toggle_object_state ROCKETHIDEOUTB3F_TM_DOUBLE_EDGE, ON
+ toggle_object_state ROCKETHIDEOUTB3F_RARE_CANDY, ON
+
+ toggleable_objects_for ROCKET_HIDEOUT_B4F
+ toggle_object_state ROCKETHIDEOUTB4F_GIOVANNI, ON
+ toggle_object_state ROCKETHIDEOUTB4F_HP_UP, ON
+ toggle_object_state ROCKETHIDEOUTB4F_TM_RAZOR_WIND, ON
+ toggle_object_state ROCKETHIDEOUTB4F_IRON, ON
+ toggle_object_state ROCKETHIDEOUTB4F_SILPH_SCOPE, OFF
+ toggle_object_state ROCKETHIDEOUTB4F_LIFT_KEY, OFF
+
+ toggleable_objects_for SILPH_CO_2F
+ toggle_object_state SILPHCO2F_SILPH_WORKER_F, ON
+ toggle_object_state SILPHCO2F_SCIENTIST1, ON
+ toggle_object_state SILPHCO2F_SCIENTIST2, ON
+ toggle_object_state SILPHCO2F_ROCKET1, ON
+ toggle_object_state SILPHCO2F_ROCKET2, ON
+
+ toggleable_objects_for SILPH_CO_3F
+ toggle_object_state SILPHCO3F_ROCKET, ON
+ toggle_object_state SILPHCO3F_SCIENTIST, ON
+ toggle_object_state SILPHCO3F_HYPER_POTION, ON
+
+ toggleable_objects_for SILPH_CO_4F
+ toggle_object_state SILPHCO4F_ROCKET1, ON
+ toggle_object_state SILPHCO4F_SCIENTIST, ON
+ toggle_object_state SILPHCO4F_ROCKET2, ON
+ toggle_object_state SILPHCO4F_FULL_HEAL, ON
+ toggle_object_state SILPHCO4F_MAX_REVIVE, ON
+ toggle_object_state SILPHCO4F_ESCAPE_ROPE, ON
+
+ toggleable_objects_for SILPH_CO_5F
+ toggle_object_state SILPHCO5F_ROCKET1, ON
+ toggle_object_state SILPHCO5F_SCIENTIST, ON
+ toggle_object_state SILPHCO5F_ROCKER, ON
+ toggle_object_state SILPHCO5F_ROCKET2, ON
+ toggle_object_state SILPHCO5F_TM_TAKE_DOWN, ON
+ toggle_object_state SILPHCO5F_PROTEIN, ON
+ toggle_object_state SILPHCO5F_CARD_KEY, ON
+
+ toggleable_objects_for SILPH_CO_6F
+ toggle_object_state SILPHCO6F_ROCKET1, ON
+ toggle_object_state SILPHCO6F_SCIENTIST, ON
+ toggle_object_state SILPHCO6F_ROCKET2, ON
+ toggle_object_state SILPHCO6F_HP_UP, ON
+ toggle_object_state SILPHCO6F_X_ACCURACY, ON
+
+ toggleable_objects_for SILPH_CO_7F
+ toggle_object_state SILPHCO7F_ROCKET1, ON
+ toggle_object_state SILPHCO7F_SCIENTIST, ON
+ toggle_object_state SILPHCO7F_ROCKET2, ON
+ toggle_object_state SILPHCO7F_ROCKET3, ON
+ toggle_object_state SILPHCO7F_RIVAL, ON
+ toggle_object_state SILPHCO7F_CALCIUM, ON
+ toggle_object_state SILPHCO7F_TM_SWORDS_DANCE, ON
+ toggle_object_state SILPHCO7F_UNUSED, ON
+
+ toggleable_objects_for SILPH_CO_8F
+ toggle_object_state SILPHCO8F_ROCKET1, ON
+ toggle_object_state SILPHCO8F_SCIENTIST, ON
+ toggle_object_state SILPHCO8F_ROCKET2, ON
+
+ toggleable_objects_for SILPH_CO_9F
+ toggle_object_state SILPHCO9F_ROCKET1, ON
+ toggle_object_state SILPHCO9F_SCIENTIST, ON
+ toggle_object_state SILPHCO9F_ROCKET2, ON
+
+ toggleable_objects_for SILPH_CO_10F
+ toggle_object_state SILPHCO10F_ROCKET, ON
+ toggle_object_state SILPHCO10F_SCIENTIST, ON
+ toggle_object_state SILPHCO10F_SILPH_WORKER_F, ON
+ toggle_object_state SILPHCO10F_TM_EARTHQUAKE, ON
+ toggle_object_state SILPHCO10F_RARE_CANDY, ON
+ toggle_object_state SILPHCO10F_CARBOS, ON
+
+ toggleable_objects_for SILPH_CO_11F
+ toggle_object_state SILPHCO11F_GIOVANNI, ON
+ toggle_object_state SILPHCO11F_ROCKET1, ON
+ toggle_object_state SILPHCO11F_ROCKET2, ON
+
+ toggleable_objects_for UNUSED_MAP_F4
+ toggle_object_state $02, ON ; unused
+
+ toggleable_objects_for POKEMON_MANSION_2F
+ toggle_object_state POKEMONMANSION2F_CALCIUM, ON
+
+ toggleable_objects_for POKEMON_MANSION_3F
+ toggle_object_state POKEMONMANSION3F_MAX_POTION, ON
+ toggle_object_state POKEMONMANSION3F_IRON, ON
+
+ toggleable_objects_for POKEMON_MANSION_B1F
+ toggle_object_state POKEMONMANSIONB1F_RARE_CANDY, ON
+ toggle_object_state POKEMONMANSIONB1F_FULL_RESTORE, ON
+ toggle_object_state POKEMONMANSIONB1F_TM_BLIZZARD, ON
+ toggle_object_state POKEMONMANSIONB1F_TM_SOLARBEAM, ON
+ toggle_object_state POKEMONMANSIONB1F_SECRET_KEY, ON
+
+ toggleable_objects_for SAFARI_ZONE_EAST
+ toggle_object_state SAFARIZONEEAST_FULL_RESTORE, ON
+ toggle_object_state SAFARIZONEEAST_MAX_RESTORE, ON
+ toggle_object_state SAFARIZONEEAST_CARBOS, ON
+ toggle_object_state SAFARIZONEEAST_TM_EGG_BOMB, ON
+
+ toggleable_objects_for SAFARI_ZONE_NORTH
+ toggle_object_state SAFARIZONENORTH_PROTEIN, ON
+ toggle_object_state SAFARIZONENORTH_TM_SKULL_BASH, ON
+
+ toggleable_objects_for SAFARI_ZONE_WEST
+ toggle_object_state SAFARIZONEWEST_MAX_POTION, ON
+ toggle_object_state SAFARIZONEWEST_TM_DOUBLE_TEAM, ON
+ toggle_object_state SAFARIZONEWEST_MAX_REVIVE, ON
+ toggle_object_state SAFARIZONEWEST_GOLD_TEETH, ON
+
+ toggleable_objects_for SAFARI_ZONE_CENTER
+ toggle_object_state SAFARIZONECENTER_NUGGET, ON
+
+ toggleable_objects_for CERULEAN_CAVE_2F
+ toggle_object_state CERULEANCAVE2F_PP_UP, ON
+ toggle_object_state CERULEANCAVE2F_ULTRA_BALL, ON
+ toggle_object_state CERULEANCAVE2F_FULL_RESTORE, ON
+
+ toggleable_objects_for CERULEAN_CAVE_B1F
+ toggle_object_state CERULEANCAVEB1F_MEWTWO, ON
+ toggle_object_state CERULEANCAVEB1F_ULTRA_BALL, ON
+ toggle_object_state CERULEANCAVEB1F_MAX_REVIVE, ON
+
+ toggleable_objects_for VICTORY_ROAD_1F
+ toggle_object_state VICTORYROAD1F_TM_SKY_ATTACK, ON
+ toggle_object_state VICTORYROAD1F_RARE_CANDY, ON
+
+ toggleable_objects_for CHAMPIONS_ROOM
+ toggle_object_state CHAMPIONSROOM_OAK, OFF
+
+ toggleable_objects_for SEAFOAM_ISLANDS_1F
+ toggle_object_state SEAFOAMISLANDS1F_BOULDER1, ON
+ toggle_object_state SEAFOAMISLANDS1F_BOULDER2, ON
+
+ toggleable_objects_for SEAFOAM_ISLANDS_B1F
+ toggle_object_state SEAFOAMISLANDSB1F_BOULDER1, OFF
+ toggle_object_state SEAFOAMISLANDSB1F_BOULDER2, OFF
+
+ toggleable_objects_for SEAFOAM_ISLANDS_B2F
+ toggle_object_state SEAFOAMISLANDSB2F_BOULDER1, OFF
+ toggle_object_state SEAFOAMISLANDSB2F_BOULDER2, OFF
+
+ toggleable_objects_for SEAFOAM_ISLANDS_B3F
+ toggle_object_state SEAFOAMISLANDSB3F_BOULDER2, ON
+ toggle_object_state SEAFOAMISLANDSB3F_BOULDER3, ON
+ toggle_object_state SEAFOAMISLANDSB3F_BOULDER5, OFF
+ toggle_object_state SEAFOAMISLANDSB3F_BOULDER6, OFF
+
+ toggleable_objects_for SEAFOAM_ISLANDS_B4F
+ toggle_object_state SEAFOAMISLANDSB4F_BOULDER1, OFF
+ toggle_object_state SEAFOAMISLANDSB4F_BOULDER2, OFF
+ toggle_object_state SEAFOAMISLANDSB4F_ARTICUNO, ON
+
+ assert_table_length NUM_TOGGLEABLE_OBJECTS
+
+ db -1, 1, ON ; end
diff --git a/data/predef_pointers.asm b/data/predef_pointers.asm
index e6968c46..19c3ea8f 100644
--- a/data/predef_pointers.asm
+++ b/data/predef_pointers.asm
@@ -32,7 +32,7 @@ PredefPointers::
add_predef ApplyOutOfBattlePoisonDamage
add_predef AnyPartyAlive
add_predef ShowObject
- add_predef ShowObject2
+ add_predef ShowObject2 ; identical to ShowObject
add_predef ReplaceTileBlock
add_predef InitPlayerData2
add_predef LoadTilesetHeader
@@ -75,7 +75,7 @@ PredefPointers::
add_predef WriteMonMoves
add_predef SaveMenu
add_predef LoadSGB
- add_predef MarkTownVisitedAndLoadMissableObjects
+ add_predef MarkTownVisitedAndLoadToggleableObjects
add_predef SetPartyMonTypes
add_predef CanLearnTM
add_predef TMToMove
diff --git a/engine/events/pick_up_item.asm b/engine/events/pick_up_item.asm
index 8fbdcfa2..a55c604a 100644
--- a/engine/events/pick_up_item.asm
+++ b/engine/events/pick_up_item.asm
@@ -3,19 +3,19 @@ PickUpItem:
ldh a, [hSpriteIndex]
ld b, a
- ld hl, wMissableObjectList
-.missableObjectsListLoop
+ ld hl, wToggleableObjectList
+.toggleableObjectsListLoop
ld a, [hli]
cp $ff
ret z
cp b
- jr z, .isMissable
+ jr z, .isToggleable
inc hl
- jr .missableObjectsListLoop
+ jr .toggleableObjectsListLoop
-.isMissable
+.isToggleable
ld a, [hl]
- ldh [hMissableObjectIndex], a
+ ldh [hToggleableObjectIndex], a
ld hl, wMapSpriteExtraData
ldh a, [hSpriteIndex]
@@ -30,8 +30,8 @@ PickUpItem:
call GiveItem
jr nc, .BagFull
- ldh a, [hMissableObjectIndex]
- ld [wMissableObjectIndex], a
+ ldh a, [hToggleableObjectIndex]
+ ld [wToggleableObjectIndex], a
predef HideObject
ld a, 1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
diff --git a/engine/movie/oak_speech/init_player_data.asm b/engine/movie/oak_speech/init_player_data.asm
index 843eb96e..bd4f86a4 100644
--- a/engine/movie/oak_speech/init_player_data.asm
+++ b/engine/movie/oak_speech/init_player_data.asm
@@ -45,7 +45,7 @@ DEF START_MONEY EQU $3000
ld bc, wGameProgressFlagsEnd - wGameProgressFlags
call FillMemory ; clear all game progress flags
- jp InitializeMissableObjectsFlags
+ jp InitializeToggleableObjectsFlags
InitializeEmptyList:
xor a ; count
diff --git a/engine/overworld/auto_movement.asm b/engine/overworld/auto_movement.asm
index 13d30cca..dc5fc385 100644
--- a/engine/overworld/auto_movement.asm
+++ b/engine/overworld/auto_movement.asm
@@ -148,8 +148,8 @@ PalletMovementScript_Done:
ld a, [wSimulatedJoypadStatesIndex]
and a
ret nz
- ld a, HS_PALLET_TOWN_OAK
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_PALLET_TOWN_OAK
+ ld [wToggleableObjectIndex], a
predef HideObject
ld hl, wStatusFlags5
res BIT_SCRIPTED_MOVEMENT_STATE, [hl]
diff --git a/engine/overworld/movement.asm b/engine/overworld/movement.asm
index a353c4f1..be8d6f62 100644
--- a/engine/overworld/movement.asm
+++ b/engine/overworld/movement.asm
@@ -478,7 +478,7 @@ InitializeSpriteScreenPosition:
; tests if sprite is off screen or otherwise unable to do anything
CheckSpriteAvailability:
predef IsObjectHidden
- ldh a, [hIsHiddenMissableObject]
+ ldh a, [hIsToggleableObjectOff]
and a
jp nz, .spriteInvisible
ld h, HIGH(wSpriteStateData2)
diff --git a/engine/overworld/missable_objects.asm b/engine/overworld/toggleable_objects.asm
index 8ea79980..bfb3576c 100644
--- a/engine/overworld/missable_objects.asm
+++ b/engine/overworld/toggleable_objects.asm
@@ -1,4 +1,4 @@
-MarkTownVisitedAndLoadMissableObjects::
+MarkTownVisitedAndLoadToggleableObjects::
ld a, [wCurMap]
cp FIRST_ROUTE_MAP
jr nc, .notInTown
@@ -7,17 +7,17 @@ MarkTownVisitedAndLoadMissableObjects::
ld hl, wTownVisitedFlag ; mark town as visited (for flying)
predef FlagActionPredef
.notInTown
- ld hl, MapHSPointers
+ ld hl, ToggleableObjectMapPointers
ld a, [wCurMap]
ld b, $0
ld c, a
add hl, bc
add hl, bc
- ld a, [hli] ; load missable objects pointer in hl
+ ld a, [hli] ; load toggleable objects pointer in hl
ld h, [hl]
ld l, a
push hl
- ld de, MissableObjects ; calculate difference between out pointer and the base pointer
+ ld de, ToggleableObjectStates ; calculate difference between out pointer and the base pointer
ld a, l
sub e
jr nc, .noCarry
@@ -27,6 +27,7 @@ MarkTownVisitedAndLoadMissableObjects::
ld a, h
sub d
ld h, a
+ ; divide difference by 3, resulting in the global offset (number of toggleable items before ours)
ld a, h
ldh [hDividend], a
ld a, l
@@ -37,14 +38,14 @@ MarkTownVisitedAndLoadMissableObjects::
ld a, $3
ldh [hDivisor], a
ld b, $2
- call Divide ; divide difference by 3, resulting in the global offset (number of missable items before ours)
+ call Divide
ld a, [wCurMap]
ld b, a
ldh a, [hDividend+3]
ld c, a ; store global offset in c
- ld de, wMissableObjectList
+ ld de, wToggleableObjectList
pop hl
-.writeMissableObjectsListLoop
+.writeToggleableObjectsListLoop
ld a, [hli]
cp -1
jr z, .done ; end of list
@@ -56,92 +57,92 @@ MarkTownVisitedAndLoadMissableObjects::
inc de
ld a, c
inc c
- ld [de], a ; write (global) missable object index
+ ld [de], a ; write (global) toggleable object index
inc de
- jr .writeMissableObjectsListLoop
+ jr .writeToggleableObjectsListLoop
.done
ld a, -1
ld [de], a ; write sentinel
ret
-InitializeMissableObjectsFlags:
- ld hl, wMissableObjectFlags
- ld bc, wMissableObjectFlagsEnd - wMissableObjectFlags
+InitializeToggleableObjectsFlags:
+ ld hl, wToggleableObjectFlags
+ ld bc, wToggleableObjectFlagsEnd - wToggleableObjectFlags
xor a
- call FillMemory ; clear missable objects flags
- ld hl, MissableObjects
+ call FillMemory ; clear toggleable objects flags
+ ld hl, ToggleableObjectStates
xor a
- ld [wMissableObjectCounter], a
-.missableObjectsLoop
+ ld [wToggleableObjectCounter], a
+.toggleableObjectsLoop
ld a, [hli]
- cp -1 ; end of list
+ cp -1 ; end of list
ret z
push hl
inc hl
ld a, [hl]
- cp HIDE
+ cp OFF
jr nz, .skip
- ld hl, wMissableObjectFlags
- ld a, [wMissableObjectCounter]
+ ld hl, wToggleableObjectFlags
+ ld a, [wToggleableObjectCounter]
ld c, a
ld b, FLAG_SET
- call MissableObjectFlagAction ; set flag if Item is hidden
+ call ToggleableObjectFlagAction ; set flag if object is toggled off
.skip
- ld hl, wMissableObjectCounter
+ ld hl, wToggleableObjectCounter
inc [hl]
pop hl
inc hl
inc hl
- jr .missableObjectsLoop
+ jr .toggleableObjectsLoop
-; tests if current sprite is a missable object that is hidden/has been removed
+; tests if current object is toggled off/has been hidden
IsObjectHidden:
ldh a, [hCurrentSpriteOffset]
swap a
ld b, a
- ld hl, wMissableObjectList
+ ld hl, wToggleableObjectList
.loop
ld a, [hli]
cp -1
- jr z, .notHidden ; not missable -> not hidden
+ jr z, .notHidden ; not toggleable -> not hidden
cp b
ld a, [hli]
jr nz, .loop
ld c, a
ld b, FLAG_TEST
- ld hl, wMissableObjectFlags
- call MissableObjectFlagAction
+ ld hl, wToggleableObjectFlags
+ call ToggleableObjectFlagAction
ld a, c
and a
jr nz, .hidden
.notHidden
xor a
.hidden
- ldh [hIsHiddenMissableObject], a
+ ldh [hIsToggleableObjectOff], a
ret
-; adds missable object (items, leg. pokemon, etc.) to the map
-; [wMissableObjectIndex]: index of the missable object to be added (global index)
+; adds toggleable object (items, leg. pokemon, etc.) to the map
+; [wToggleableObjectIndex]: index of the toggleable object to be added (global index)
ShowObject:
ShowObject2:
- ld hl, wMissableObjectFlags
- ld a, [wMissableObjectIndex]
+ ld hl, wToggleableObjectFlags
+ ld a, [wToggleableObjectIndex]
ld c, a
ld b, FLAG_RESET
- call MissableObjectFlagAction ; reset "removed" flag
+ call ToggleableObjectFlagAction ; reset "removed" flag
jp UpdateSprites
-; removes missable object (items, leg. pokemon, etc.) from the map
-; [wMissableObjectIndex]: index of the missable object to be removed (global index)
+; removes toggleable object (items, leg. pokemon, etc.) from the map
+; [wToggleableObjectIndex]: index of the toggleable object to be removed (global index)
HideObject:
- ld hl, wMissableObjectFlags
- ld a, [wMissableObjectIndex]
+ ld hl, wToggleableObjectFlags
+ ld a, [wToggleableObjectIndex]
ld c, a
ld b, FLAG_SET
- call MissableObjectFlagAction ; set "removed" flag
+ call ToggleableObjectFlagAction ; set "removed" flag
jp UpdateSprites
-MissableObjectFlagAction:
+ToggleableObjectFlagAction:
; identical to FlagAction
push hl
diff --git a/home/overworld.asm b/home/overworld.asm
index e994f694..58550167 100644
--- a/home/overworld.asm
+++ b/home/overworld.asm
@@ -2003,7 +2003,7 @@ LoadPlayerSpriteGraphicsCommon::
; function to load data from the map header
LoadMapHeader::
- farcall MarkTownVisitedAndLoadMissableObjects
+ farcall MarkTownVisitedAndLoadToggleableObjects
ld a, [wCurMapTileset]
ld [wUnusedCurMapTilesetCopy], a
ld a, [wCurMap]
diff --git a/home/trainers.asm b/home/trainers.asm
index 8d2cceaf..87bc7d69 100644
--- a/home/trainers.asm
+++ b/home/trainers.asm
@@ -202,13 +202,13 @@ EndTrainerBattle::
ld a, [wEnemyMonOrTrainerClass]
cp OPP_ID_OFFSET
jr nc, .skipRemoveSprite ; test if trainer was fought (in that case skip removing the corresponding sprite)
- ld hl, wMissableObjectList
+ ld hl, wToggleableObjectList
ld de, $2
ld a, [wSpriteIndex]
call IsInArray ; search for sprite ID
inc hl
ld a, [hl]
- ld [wMissableObjectIndex], a ; load corresponding missable object index and remove it
+ ld [wToggleableObjectIndex], a ; load corresponding toggleable object index and remove it
predef HideObject
.skipRemoveSprite
ld hl, wStatusFlags5
diff --git a/includes.asm b/includes.asm
index 781bb0b1..ea6f1a8e 100644
--- a/includes.asm
+++ b/includes.asm
@@ -41,7 +41,7 @@ INCLUDE "constants/list_constants.asm"
INCLUDE "constants/map_constants.asm"
INCLUDE "constants/map_data_constants.asm"
INCLUDE "constants/map_object_constants.asm"
-INCLUDE "constants/hide_show_constants.asm"
+INCLUDE "constants/toggle_constants.asm"
INCLUDE "constants/sprite_set_constants.asm"
INCLUDE "constants/credits_constants.asm"
INCLUDE "constants/audio_constants.asm"
diff --git a/main.asm b/main.asm
index 11ee2fa9..313bd448 100644
--- a/main.asm
+++ b/main.asm
@@ -49,7 +49,7 @@ INCLUDE "engine/overworld/player_state.asm"
INCLUDE "engine/events/poison.asm"
INCLUDE "engine/overworld/tilesets.asm"
INCLUDE "engine/overworld/daycare_exp.asm"
-INCLUDE "data/maps/hide_show_data.asm"
+INCLUDE "data/maps/toggleable_objects.asm"
INCLUDE "engine/overworld/field_move_messages.asm"
INCLUDE "engine/items/inventory.asm"
INCLUDE "engine/overworld/wild_mons.asm"
@@ -57,7 +57,7 @@ INCLUDE "engine/items/item_effects.asm"
INCLUDE "engine/menus/draw_badges.asm"
INCLUDE "engine/overworld/update_map.asm"
INCLUDE "engine/overworld/cut.asm"
-INCLUDE "engine/overworld/missable_objects.asm"
+INCLUDE "engine/overworld/toggleable_objects.asm"
INCLUDE "engine/overworld/push_boulder.asm"
INCLUDE "engine/pokemon/add_mon.asm"
INCLUDE "engine/flag_action.asm"
diff --git a/ram/hram.asm b/ram/hram.asm
index 1be1dab6..9cfb5327 100644
--- a/ram/hram.asm
+++ b/ram/hram.asm
@@ -325,7 +325,7 @@ hItemToRemoveIndex:: db
NEXTU
hItemCounter::
hSavedCoordIndex::
-hMissableObjectIndex::
+hToggleableObjectIndex::
hGymTrashCanRandNumMask::
hInteractedWithBookshelf::
db
@@ -350,7 +350,7 @@ hDivisor2:: db
hQuotient2:: db
NEXTU
-hIsHiddenMissableObject:: db
+hIsToggleableObjectOff:: db
ENDU
hMapROMBank:: db
diff --git a/ram/wram.asm b/ram/wram.asm
index fff7f703..5eefaf06 100644
--- a/ram/wram.asm
+++ b/ram/wram.asm
@@ -324,7 +324,7 @@ wCheckFor180DegreeTurn:: db
ds 1
-wMissableObjectIndex:: db
+wToggleableObjectIndex:: db
wPredefID:: db
wPredefHL:: dw
@@ -1224,7 +1224,7 @@ ENDU
; money received after battle = base money × level of last enemy mon
wTrainerBaseMoney:: dw ; BCD
-wMissableObjectCounter:: db
+wToggleableObjectCounter:: db
ds 1
@@ -1909,9 +1909,9 @@ wUnusedMapVariable:: db
wPlayerCoins:: dw ; BCD
-; bit array of missable objects. set = removed
-wMissableObjectFlags:: flag_array $100
-wMissableObjectFlagsEnd::
+; bit array of toggleable objects; bit set = toggled off
+wToggleableObjectFlags:: flag_array $100
+wToggleableObjectFlagsEnd::
ds 7
@@ -1920,9 +1920,9 @@ wSavedSpriteImageIndex:: db
; each entry consists of 2 bytes
; * the sprite ID (depending on the current map)
-; * the missable object index (global, used for wMissableObjectFlags)
+; * the toggleable object index (global, used for wToggleableObjectFlags)
; terminated with $FF
-wMissableObjectList:: ds 16 * 2 + 1
+wToggleableObjectList:: ds 16 * 2 + 1
ds 1
diff --git a/scripts/BillsHouse.asm b/scripts/BillsHouse.asm
index d43ae546..8ecebd20 100644
--- a/scripts/BillsHouse.asm
+++ b/scripts/BillsHouse.asm
@@ -49,8 +49,8 @@ BillsHousePokemonEntersMachineScript:
ld a, [wStatusFlags5]
bit BIT_SCRIPTED_NPC_MOVEMENT, a
ret nz
- ld a, HS_BILL_POKEMON
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_BILL_POKEMON
+ ld [wToggleableObjectIndex], a
predef HideObject
SetEvent EVENT_BILL_SAID_USE_CELL_SEPARATOR
xor a
@@ -75,8 +75,8 @@ BillsHouseBillExitsMachineScript:
ld a, 5
ldh [hSpriteMapXCoord], a
call SetSpritePosition1
- ld a, HS_BILL_1
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_BILL_1
+ ld [wToggleableObjectIndex], a
predef ShowObject
ld c, 8
call DelayFrames
@@ -171,11 +171,11 @@ BillsHouseBillSSTicketText:
ld hl, .SSTicketReceivedText
call PrintText
SetEvent EVENT_GOT_SS_TICKET
- ld a, HS_CERULEAN_GUARD_1
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_CERULEAN_GUARD_1
+ ld [wToggleableObjectIndex], a
predef ShowObject
- ld a, HS_CERULEAN_GUARD_2
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_CERULEAN_GUARD_2
+ ld [wToggleableObjectIndex], a
predef HideObject
.got_ss_ticket
ld hl, .WhyDontYouGoInsteadOfMeText
diff --git a/scripts/BluesHouse.asm b/scripts/BluesHouse.asm
index 0a16abbf..b85b6d21 100644
--- a/scripts/BluesHouse.asm
+++ b/scripts/BluesHouse.asm
@@ -40,8 +40,8 @@ BluesHouseDaisySittingText:
lb bc, TOWN_MAP, 1
call GiveItem
jr nc, .bag_full
- ld a, HS_TOWN_MAP
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_TOWN_MAP
+ ld [wToggleableObjectIndex], a
predef HideObject
ld hl, GotMapText
call PrintText
diff --git a/scripts/CeladonMansionRoofHouse.asm b/scripts/CeladonMansionRoofHouse.asm
index d3c03290..12eff10c 100644
--- a/scripts/CeladonMansionRoofHouse.asm
+++ b/scripts/CeladonMansionRoofHouse.asm
@@ -15,8 +15,8 @@ CeladonMansionRoofHouseEeveePokeballText:
lb bc, EEVEE, 25
call GivePokemon
jr nc, .party_full
- ld a, HS_CELADON_MANSION_EEVEE_GIFT
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_CELADON_MANSION_EEVEE_GIFT
+ ld [wToggleableObjectIndex], a
predef HideObject
.party_full
jp TextScriptEnd
diff --git a/scripts/CeruleanCity.asm b/scripts/CeruleanCity.asm
index 4412b49c..cbd60936 100644
--- a/scripts/CeruleanCity.asm
+++ b/scripts/CeruleanCity.asm
@@ -8,8 +8,8 @@ CeruleanCityClearScripts:
xor a ; SCRIPT_CERULEANCITY_DEFAULT
ld [wJoyIgnore], a
ld [wCeruleanCityCurScript], a
- ld a, HS_CERULEAN_RIVAL
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_CERULEAN_RIVAL
+ ld [wToggleableObjectIndex], a
predef_jump HideObject
CeruleanCity_ScriptPointers:
@@ -90,8 +90,8 @@ ENDC
call GetPointerWithinSpriteStateData2
ld [hl], 25
.playerOnRightSideOfBridge
- ld a, HS_CERULEAN_RIVAL
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_CERULEAN_RIVAL
+ ld [wToggleableObjectIndex], a
predef ShowObject
ld de, CeruleanCityMovement1
ld a, CERULEANCITY_RIVAL
@@ -222,8 +222,8 @@ CeruleanCityRivalCleanupScript:
ld a, [wStatusFlags5]
bit BIT_SCRIPTED_NPC_MOVEMENT, a
ret nz
- ld a, HS_CERULEAN_RIVAL
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_CERULEAN_RIVAL
+ ld [wToggleableObjectIndex], a
predef HideObject
xor a
ld [wJoyIgnore], a
diff --git a/scripts/CeruleanCity_2.asm b/scripts/CeruleanCity_2.asm
index 53ace5c8..85986a7a 100644
--- a/scripts/CeruleanCity_2.asm
+++ b/scripts/CeruleanCity_2.asm
@@ -3,14 +3,14 @@ CeruleanHideRocket:
; one is called after you beat the Rocket that gives you TM28 DIG.
; the screen then fades out, he disappears, and fades back in
call GBFadeOutToBlack
- ld a, HS_CERULEAN_GUARD_1
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_CERULEAN_GUARD_1
+ ld [wToggleableObjectIndex], a
predef ShowObject
- ld a, HS_CERULEAN_GUARD_2
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_CERULEAN_GUARD_2
+ ld [wToggleableObjectIndex], a
predef HideObject
- ld a, HS_CERULEAN_ROCKET
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_CERULEAN_ROCKET
+ ld [wToggleableObjectIndex], a
predef HideObject
call GBFadeInFromBlack
ret
diff --git a/scripts/ChampionsRoom.asm b/scripts/ChampionsRoom.asm
index 68448b3d..752a0a31 100644
--- a/scripts/ChampionsRoom.asm
+++ b/scripts/ChampionsRoom.asm
@@ -120,8 +120,8 @@ ChampionsRoomOakArrivesScript:
ld a, CHAMPIONSROOM_OAK
ldh [hSpriteIndex], a
call MoveSprite
- ld a, HS_CHAMPIONS_ROOM_OAK
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_CHAMPIONS_ROOM_OAK
+ ld [wToggleableObjectIndex], a
predef ShowObject
ld a, SCRIPT_CHAMPIONSROOM_OAK_CONGRATULATES_PLAYER
ld [wChampionsRoomCurScript], a
@@ -197,8 +197,8 @@ ChampionsRoomOakExitsScript:
ld a, [wStatusFlags5]
bit BIT_SCRIPTED_NPC_MOVEMENT, a
ret nz
- ld a, HS_CHAMPIONS_ROOM_OAK
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_CHAMPIONS_ROOM_OAK
+ ld [wToggleableObjectIndex], a
predef HideObject
ld a, SCRIPT_CHAMPIONSROOM_PLAYER_FOLLOWS_OAK
ld [wChampionsRoomCurScript], a
diff --git a/scripts/FightingDojo.asm b/scripts/FightingDojo.asm
index 04b35e82..cf822d1f 100644
--- a/scripts/FightingDojo.asm
+++ b/scripts/FightingDojo.asm
@@ -246,8 +246,8 @@ FightingDojoHitmonleePokeBallText:
jr nc, .done
; once Poké Ball is taken, hide sprite
- ld a, HS_FIGHTING_DOJO_GIFT_1
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_FIGHTING_DOJO_GIFT_1
+ ld [wToggleableObjectIndex], a
predef HideObject
SetEvents EVENT_GOT_HITMONLEE, EVENT_DEFEATED_FIGHTING_DOJO
.done
@@ -281,8 +281,8 @@ FightingDojoHitmonchanPokeBallText:
SetEvents EVENT_GOT_HITMONCHAN, EVENT_DEFEATED_FIGHTING_DOJO
; once Poké Ball is taken, hide sprite
- ld a, HS_FIGHTING_DOJO_GIFT_2
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_FIGHTING_DOJO_GIFT_2
+ ld [wToggleableObjectIndex], a
predef HideObject
.done
jp TextScriptEnd
diff --git a/scripts/GameCorner.asm b/scripts/GameCorner.asm
index 028b5c88..0ead1947 100644
--- a/scripts/GameCorner.asm
+++ b/scripts/GameCorner.asm
@@ -107,8 +107,8 @@ GameCornerRocketExitScript:
ret nz
xor a
ld [wJoyIgnore], a
- ld a, HS_GAME_CORNER_ROCKET
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_GAME_CORNER_ROCKET
+ ld [wToggleableObjectIndex], a
predef HideObject
ld hl, wCurrentMapScriptFlags
set BIT_CUR_MAP_LOADED_1, [hl]
diff --git a/scripts/HallOfFame.asm b/scripts/HallOfFame.asm
index 31d56022..8e4f1275 100644
--- a/scripts/HallOfFame.asm
+++ b/scripts/HallOfFame.asm
@@ -96,8 +96,8 @@ HallOfFameOakCongratulationsScript:
call DisplayTextID
ld a, PAD_BUTTONS | PAD_CTRL_PAD
ld [wJoyIgnore], a
- ld a, HS_CERULEAN_CAVE_GUY
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_CERULEAN_CAVE_GUY
+ ld [wToggleableObjectIndex], a
predef HideObject
ld a, SCRIPT_HALLOFFAME_RESET_EVENTS_AND_SAVE
ld [wHallOfFameCurScript], a
diff --git a/scripts/MtMoonB2F.asm b/scripts/MtMoonB2F.asm
index 34f11d99..d3c7e57a 100644
--- a/scripts/MtMoonB2F.asm
+++ b/scripts/MtMoonB2F.asm
@@ -141,12 +141,12 @@ MtMoonB2FSuperNerdTakesOtherFossilScript:
call DisplayTextID
CheckEvent EVENT_GOT_DOME_FOSSIL
jr z, .got_dome_fossil
- ld a, HS_MT_MOON_B2F_FOSSIL_2
+ ld a, TOGGLE_MT_MOON_B2F_FOSSIL_2
jr .continue
.got_dome_fossil
- ld a, HS_MT_MOON_B2F_FOSSIL_1
+ ld a, TOGGLE_MT_MOON_B2F_FOSSIL_1
.continue
- ld [wMissableObjectIndex], a
+ ld [wToggleableObjectIndex], a
predef HideObject
xor a
ld [wJoyIgnore], a
@@ -250,8 +250,8 @@ MtMoonB2FDomeFossilText:
call GiveItem
jp nc, MtMoonB2FYouHaveNoRoomText
call MtMoonB2FReceivedFossilText
- ld a, HS_MT_MOON_B2F_FOSSIL_1
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_MT_MOON_B2F_FOSSIL_1
+ ld [wToggleableObjectIndex], a
predef HideObject
SetEvent EVENT_GOT_DOME_FOSSIL
ld a, SCRIPT_MTMOONB2F_MOVE_SUPER_NERD
@@ -278,8 +278,8 @@ MtMoonB2FHelixFossilText:
call GiveItem
jp nc, MtMoonB2FYouHaveNoRoomText
call MtMoonB2FReceivedFossilText
- ld a, HS_MT_MOON_B2F_FOSSIL_2
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_MT_MOON_B2F_FOSSIL_2
+ ld [wToggleableObjectIndex], a
predef HideObject
SetEvent EVENT_GOT_HELIX_FOSSIL
ld a, SCRIPT_MTMOONB2F_MOVE_SUPER_NERD
diff --git a/scripts/Museum1F.asm b/scripts/Museum1F.asm
index 6cb6889a..e56a5c11 100644
--- a/scripts/Museum1F.asm
+++ b/scripts/Museum1F.asm
@@ -197,8 +197,8 @@ Museum1FScientist2Text:
call GiveItem
jr nc, .bag_full
SetEvent EVENT_GOT_OLD_AMBER
- ld a, HS_OLD_AMBER
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_OLD_AMBER
+ ld [wToggleableObjectIndex], a
predef HideObject
ld hl, .ReceivedOldAmberText
jr .done
diff --git a/scripts/OaksLab.asm b/scripts/OaksLab.asm
index 9695b99e..12b58c3f 100644
--- a/scripts/OaksLab.asm
+++ b/scripts/OaksLab.asm
@@ -13,7 +13,7 @@ OaksLab_ScriptPointers:
def_script_pointers
dw_const OaksLabDefaultScript, SCRIPT_OAKSLAB_DEFAULT
dw_const OaksLabOakEntersLabScript, SCRIPT_OAKSLAB_OAK_ENTERS_LAB
- dw_const OaksLabHideShowOaksScript, SCRIPT_OAKSLAB_HIDE_SHOW_OAKS
+ dw_const OaksLabToggleOaksScript, SCRIPT_OAKSLAB_TOGGLE_OAKS
dw_const OaksLabPlayerEntersLabScript, SCRIPT_OAKSLAB_PLAYER_ENTERS_LAB
dw_const OaksLabFollowedOakScript, SCRIPT_OAKSLAB_FOLLOWED_OAK
dw_const OaksLabOakChooseMonSpeechScript, SCRIPT_OAKSLAB_OAK_CHOOSE_MON_SPEECH
@@ -37,8 +37,8 @@ OaksLabDefaultScript:
ld a, [wNPCMovementScriptFunctionNum]
and a
ret nz
- ld a, HS_OAKS_LAB_OAK_2
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_OAKS_LAB_OAK_2
+ ld [wToggleableObjectIndex], a
predef ShowObject
ld hl, wStatusFlags4
res BIT_NO_BATTLES, [hl]
@@ -53,7 +53,7 @@ OaksLabOakEntersLabScript:
ld de, OakEntryMovement
call MoveSprite
- ld a, SCRIPT_OAKSLAB_HIDE_SHOW_OAKS
+ ld a, SCRIPT_OAKSLAB_TOGGLE_OAKS
ld [wOaksLabCurScript], a
ret
@@ -63,15 +63,15 @@ OakEntryMovement:
db NPC_MOVEMENT_UP
db -1 ; end
-OaksLabHideShowOaksScript:
+OaksLabToggleOaksScript:
ld a, [wStatusFlags5]
bit BIT_SCRIPTED_NPC_MOVEMENT, a
ret nz
- ld a, HS_OAKS_LAB_OAK_2
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_OAKS_LAB_OAK_2
+ ld [wToggleableObjectIndex], a
predef HideObject
- ld a, HS_OAKS_LAB_OAK_1
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_OAKS_LAB_OAK_1
+ ld [wToggleableObjectIndex], a
predef ShowObject
ld a, SCRIPT_OAKSLAB_PLAYER_ENTERS_LAB
@@ -306,17 +306,17 @@ OaksLabRivalChoosesStarterScript:
ld a, [wRivalStarterBallSpriteIndex]
cp OAKSLAB_CHARMANDER_POKE_BALL
jr nz, .not_charmander
- ld a, HS_STARTER_BALL_1
+ ld a, TOGGLE_STARTER_BALL_1
jr .hideBallAndContinue
.not_charmander
cp OAKSLAB_SQUIRTLE_POKE_BALL
jr nz, .not_squirtle
- ld a, HS_STARTER_BALL_2
+ ld a, TOGGLE_STARTER_BALL_2
jr .hideBallAndContinue
.not_squirtle
- ld a, HS_STARTER_BALL_3
+ ld a, TOGGLE_STARTER_BALL_3
.hideBallAndContinue
- ld [wMissableObjectIndex], a
+ ld [wToggleableObjectIndex], a
predef HideObject
call Delay3
ld a, [wRivalStarterTemp]
@@ -475,8 +475,8 @@ OaksLabPlayerWatchRivalExitScript:
ld a, [wStatusFlags5]
bit BIT_SCRIPTED_NPC_MOVEMENT, a
jr nz, .checkRivalPosition
- ld a, HS_OAKS_LAB_RIVAL
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_OAKS_LAB_RIVAL
+ ld [wToggleableObjectIndex], a
predef HideObject
xor a
ld [wJoyIgnore], a
@@ -519,8 +519,8 @@ OaksLabRivalArrivesAtOaksRequestScript:
ldh [hTextID], a
call DisplayTextID
call OaksLabCalcRivalMovementScript
- ld a, HS_OAKS_LAB_RIVAL
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_OAKS_LAB_RIVAL
+ ld [wToggleableObjectIndex], a
predef ShowObject
ld a, [wNPCMovementDirections2Index]
ld [wSavedNPCMovementDirections2Index], a
@@ -578,11 +578,11 @@ OaksLabOakGivesPokedexScript:
ldh [hTextID], a
call DisplayTextID
call Delay3
- ld a, HS_POKEDEX_1
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_POKEDEX_1
+ ld [wToggleableObjectIndex], a
predef HideObject
- ld a, HS_POKEDEX_2
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_POKEDEX_2
+ ld [wToggleableObjectIndex], a
predef HideObject
call OaksLabRivalFaceUpOakFaceDownScript
ld a, TEXT_OAKSLAB_OAK_THAT_WAS_MY_DREAM
@@ -599,11 +599,11 @@ OaksLabOakGivesPokedexScript:
call DisplayTextID
SetEvent EVENT_GOT_POKEDEX
SetEvent EVENT_OAK_GOT_PARCEL
- ld a, HS_LYING_OLD_MAN
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_LYING_OLD_MAN
+ ld [wToggleableObjectIndex], a
predef HideObject
- ld a, HS_OLD_MAN
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_OLD_MAN
+ ld [wToggleableObjectIndex], a
predef ShowObject
ld a, [wSavedNPCMovementDirections2Index]
ld b, 0
@@ -630,14 +630,14 @@ OaksLabRivalLeavesWithPokedexScript:
bit BIT_SCRIPTED_NPC_MOVEMENT, a
ret nz
call PlayDefaultMusic
- ld a, HS_OAKS_LAB_RIVAL
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_OAKS_LAB_RIVAL
+ ld [wToggleableObjectIndex], a
predef HideObject
SetEvent EVENT_1ST_ROUTE22_RIVAL_BATTLE
ResetEventReuseHL EVENT_2ND_ROUTE22_RIVAL_BATTLE
SetEventReuseHL EVENT_ROUTE22_RIVAL_WANTS_BATTLE
- ld a, HS_ROUTE_22_RIVAL_1
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_ROUTE_22_RIVAL_1
+ ld [wToggleableObjectIndex], a
predef ShowObject
ld a, SCRIPT_PALLETTOWN_DAISY
ld [wPalletTownCurScript], a
@@ -904,17 +904,17 @@ OaksLabMonChoiceMenu:
ld a, [wSpriteIndex]
cp OAKSLAB_CHARMANDER_POKE_BALL
jr nz, .not_charmander
- ld a, HS_STARTER_BALL_1
+ ld a, TOGGLE_STARTER_BALL_1
jr .continue
.not_charmander
cp OAKSLAB_SQUIRTLE_POKE_BALL
jr nz, .not_squirtle
- ld a, HS_STARTER_BALL_2
+ ld a, TOGGLE_STARTER_BALL_2
jr .continue
.not_squirtle
- ld a, HS_STARTER_BALL_3
+ ld a, TOGGLE_STARTER_BALL_3
.continue
- ld [wMissableObjectIndex], a
+ ld [wToggleableObjectIndex], a
predef HideObject
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
diff --git a/scripts/PalletTown.asm b/scripts/PalletTown.asm
index 57c231fa..de88945f 100644
--- a/scripts/PalletTown.asm
+++ b/scripts/PalletTown.asm
@@ -51,8 +51,8 @@ PalletTownOakHeyWaitScript:
call DisplayTextID
ld a, PAD_BUTTONS | PAD_CTRL_PAD
ld [wJoyIgnore], a
- ld a, HS_PALLET_TOWN_OAK
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_PALLET_TOWN_OAK
+ ld [wToggleableObjectIndex], a
predef ShowObject
; trigger the next script
@@ -136,11 +136,11 @@ PalletTownDaisyScript:
CheckBothEventsSet EVENT_GOT_TOWN_MAP, EVENT_ENTERED_BLUES_HOUSE, 1
jr nz, .next
SetEvent EVENT_DAISY_WALKING
- ld a, HS_DAISY_SITTING
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_DAISY_SITTING
+ ld [wToggleableObjectIndex], a
predef HideObject
- ld a, HS_DAISY_WALKING
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_DAISY_WALKING
+ ld [wToggleableObjectIndex], a
predef_jump ShowObject
.next
CheckEvent EVENT_GOT_POKEBALLS_FROM_OAK
diff --git a/scripts/PewterCity.asm b/scripts/PewterCity.asm
index 9693b88f..549a1cad 100644
--- a/scripts/PewterCity.asm
+++ b/scripts/PewterCity.asm
@@ -92,8 +92,8 @@ PewterCityHideSuperNerd1Script:
ld a, [wStatusFlags5]
bit BIT_SCRIPTED_NPC_MOVEMENT, a
ret nz
- ld a, HS_MUSEUM_GUY
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_MUSEUM_GUY
+ ld [wToggleableObjectIndex], a
predef HideObject
ld a, SCRIPT_PEWTERCITY_RESET_SUPER_NERD1
ld [wPewterCityCurScript], a
@@ -103,8 +103,8 @@ PewterCityResetSuperNerd1Script:
ld a, PEWTERCITY_SUPER_NERD1
ld [wSpriteIndex], a
call SetSpritePosition2
- ld a, HS_MUSEUM_GUY
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_MUSEUM_GUY
+ ld [wToggleableObjectIndex], a
predef ShowObject
xor a
ld [wJoyIgnore], a
@@ -161,8 +161,8 @@ PewterCityHideYoungsterScript:
ld a, [wStatusFlags5]
bit BIT_SCRIPTED_NPC_MOVEMENT, a
ret nz
- ld a, HS_GYM_GUY
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_GYM_GUY
+ ld [wToggleableObjectIndex], a
predef HideObject
ld a, SCRIPT_PEWTERCITY_RESET_YOUNGSTER
ld [wPewterCityCurScript], a
@@ -172,8 +172,8 @@ PewterCityResetYoungsterScript:
ld a, PEWTERCITY_YOUNGSTER
ld [wSpriteIndex], a
call SetSpritePosition2
- ld a, HS_GYM_GUY
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_GYM_GUY
+ ld [wToggleableObjectIndex], a
predef ShowObject
xor a
ld [wJoyIgnore], a
diff --git a/scripts/PewterGym.asm b/scripts/PewterGym.asm
index 0f4b9ebe..40a04d73 100644
--- a/scripts/PewterGym.asm
+++ b/scripts/PewterGym.asm
@@ -66,11 +66,11 @@ PewterGymScriptReceiveTM34:
ld hl, wBeatGymFlags
set BIT_BOULDERBADGE, [hl]
- ld a, HS_GYM_GUY
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_GYM_GUY
+ ld [wToggleableObjectIndex], a
predef HideObject
- ld a, HS_ROUTE_22_RIVAL_1
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_ROUTE_22_RIVAL_1
+ ld [wToggleableObjectIndex], a
predef HideObject
ResetEvents EVENT_1ST_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE
diff --git a/scripts/PokemonTower2F.asm b/scripts/PokemonTower2F.asm
index d3b6c9a4..1888e511 100644
--- a/scripts/PokemonTower2F.asm
+++ b/scripts/PokemonTower2F.asm
@@ -116,8 +116,8 @@ PokemonTower2FRivalExitsScript:
ld a, [wStatusFlags5]
bit BIT_SCRIPTED_NPC_MOVEMENT, a
ret nz
- ld a, HS_POKEMON_TOWER_2F_RIVAL
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_POKEMON_TOWER_2F_RIVAL
+ ld [wToggleableObjectIndex], a
predef HideObject
xor a
ld [wJoyIgnore], a
diff --git a/scripts/PokemonTower7F.asm b/scripts/PokemonTower7F.asm
index 3d8cd636..908e089e 100644
--- a/scripts/PokemonTower7F.asm
+++ b/scripts/PokemonTower7F.asm
@@ -44,15 +44,15 @@ PokemonTower7FHideNPCScript:
ld a, [wStatusFlags5]
bit BIT_SCRIPTED_NPC_MOVEMENT, a
ret nz
- ld hl, wMissableObjectList
+ ld hl, wToggleableObjectList
ld a, [wSpriteIndex]
ld b, a
-.missableObjectsListLoop
+.toggleableObjectsListLoop
ld a, [hli]
- cp b ; search for sprite ID in missing objects list
+ cp b ; search for sprite ID in toggleable objects list
ld a, [hli]
- jr nz, .missableObjectsListLoop
- ld [wMissableObjectIndex], a ; remove missable object
+ jr nz, .toggleableObjectsListLoop
+ ld [wToggleableObjectIndex], a ; remove toggleable object
predef HideObject
xor a
ld [wJoyIgnore], a
@@ -67,8 +67,8 @@ PokemonTower7FHideNPCScript:
PokemonTower7FWarpToMrFujiHouseScript:
ld a, PAD_BUTTONS | PAD_CTRL_PAD
ld [wJoyIgnore], a
- ld a, HS_POKEMON_TOWER_7F_MR_FUJI
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_POKEMON_TOWER_7F_MR_FUJI
+ ld [wToggleableObjectIndex], a
predef HideObject
ld a, SPRITE_FACING_UP
ld [wSpritePlayerStateData1FacingDirection], a
@@ -228,14 +228,14 @@ PokemonTower7FMrFujiText:
call PrintText
SetEvent EVENT_RESCUED_MR_FUJI
SetEvent EVENT_RESCUED_MR_FUJI_2
- ld a, HS_MR_FUJIS_HOUSE_MR_FUJI
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_MR_FUJIS_HOUSE_MR_FUJI
+ ld [wToggleableObjectIndex], a
predef ShowObject
- ld a, HS_SAFFRON_CITY_E
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_SAFFRON_CITY_E
+ ld [wToggleableObjectIndex], a
predef HideObject
- ld a, HS_SAFFRON_CITY_F
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_SAFFRON_CITY_F
+ ld [wToggleableObjectIndex], a
predef ShowObject
ld a, SCRIPT_POKEMONTOWER7F_WARP_TO_MR_FUJI_HOUSE
ld [wPokemonTower7FCurScript], a
diff --git a/scripts/RocketHideoutB4F.asm b/scripts/RocketHideoutB4F.asm
index edc51351..7bc3ec31 100644
--- a/scripts/RocketHideoutB4F.asm
+++ b/scripts/RocketHideoutB4F.asm
@@ -56,11 +56,11 @@ RocketHideoutB4FBeatGiovanniScript:
ldh [hTextID], a
call DisplayTextID
call GBFadeOutToBlack
- ld a, HS_ROCKET_HIDEOUT_B4F_GIOVANNI
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_ROCKET_HIDEOUT_B4F_GIOVANNI
+ ld [wToggleableObjectIndex], a
predef HideObject
- ld a, HS_ROCKET_HIDEOUT_B4F_ITEM_4
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_ROCKET_HIDEOUT_B4F_ITEM_4
+ ld [wToggleableObjectIndex], a
predef ShowObject
call UpdateSprites
call GBFadeInFromBlack
@@ -192,8 +192,8 @@ RocketHideoutB4FRocket3AfterBattleText:
call PrintText
CheckAndSetEvent EVENT_ROCKET_DROPPED_LIFT_KEY
jr nz, .done
- ld a, HS_ROCKET_HIDEOUT_B4F_ITEM_5
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_ROCKET_HIDEOUT_B4F_ITEM_5
+ ld [wToggleableObjectIndex], a
predef ShowObject
.done
jp TextScriptEnd
diff --git a/scripts/Route12.asm b/scripts/Route12.asm
index ea9fc567..a6984f87 100644
--- a/scripts/Route12.asm
+++ b/scripts/Route12.asm
@@ -34,8 +34,8 @@ Route12DefaultScript:
ld [wCurOpponent], a
ld a, 30
ld [wCurEnemyLevel], a
- ld a, HS_ROUTE_12_SNORLAX
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_ROUTE_12_SNORLAX
+ ld [wToggleableObjectIndex], a
predef HideObject
ld a, SCRIPT_ROUTE12_SNORLAX_POST_BATTLE
ld [wRoute12CurScript], a
diff --git a/scripts/Route16.asm b/scripts/Route16.asm
index 6e3da97c..a1eb6e85 100644
--- a/scripts/Route16.asm
+++ b/scripts/Route16.asm
@@ -34,8 +34,8 @@ Route16DefaultScript:
ld [wCurOpponent], a
ld a, 30
ld [wCurEnemyLevel], a
- ld a, HS_ROUTE_16_SNORLAX
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_ROUTE_16_SNORLAX
+ ld [wToggleableObjectIndex], a
predef HideObject
call UpdateSprites
ld a, SCRIPT_ROUTE16_SNORLAX_POST_BATTLE
diff --git a/scripts/Route20.asm b/scripts/Route20.asm
index 5230858e..3c528b09 100644
--- a/scripts/Route20.asm
+++ b/scripts/Route20.asm
@@ -12,48 +12,48 @@ Route20_Script:
Route20BoulderScript:
CheckBothEventsSet EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE
jr z, .next_boulder_check
- ld a, HS_SEAFOAM_ISLANDS_1F_BOULDER_1
+ ld a, TOGGLE_SEAFOAM_ISLANDS_1F_BOULDER_1
call Route20ShowObjectScript
- ld a, HS_SEAFOAM_ISLANDS_1F_BOULDER_2
+ ld a, TOGGLE_SEAFOAM_ISLANDS_1F_BOULDER_2
call Route20ShowObjectScript
- ld hl, .MissableObjectIDs
-.hide_missable_objects
+ ld hl, .ToggleableObjectIDs
+.hide_toggleable_objects
ld a, [hli]
cp $ff
jr z, .next_boulder_check
push hl
call Route20HideObjectScript
pop hl
- jr .hide_missable_objects
+ jr .hide_toggleable_objects
-.MissableObjectIDs:
- db HS_SEAFOAM_ISLANDS_B1F_BOULDER_1
- db HS_SEAFOAM_ISLANDS_B1F_BOULDER_2
- db HS_SEAFOAM_ISLANDS_B2F_BOULDER_1
- db HS_SEAFOAM_ISLANDS_B2F_BOULDER_2
- db HS_SEAFOAM_ISLANDS_B3F_BOULDER_3
- db HS_SEAFOAM_ISLANDS_B3F_BOULDER_4
+.ToggleableObjectIDs:
+ db TOGGLE_SEAFOAM_ISLANDS_B1F_BOULDER_1
+ db TOGGLE_SEAFOAM_ISLANDS_B1F_BOULDER_2
+ db TOGGLE_SEAFOAM_ISLANDS_B2F_BOULDER_1
+ db TOGGLE_SEAFOAM_ISLANDS_B2F_BOULDER_2
+ db TOGGLE_SEAFOAM_ISLANDS_B3F_BOULDER_3
+ db TOGGLE_SEAFOAM_ISLANDS_B3F_BOULDER_4
db -1 ; end
.next_boulder_check
CheckBothEventsSet EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM4_BOULDER2_DOWN_HOLE
ret z
- ld a, HS_SEAFOAM_ISLANDS_B3F_BOULDER_1
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B3F_BOULDER_1
call Route20ShowObjectScript
- ld a, HS_SEAFOAM_ISLANDS_B3F_BOULDER_2
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B3F_BOULDER_2
call Route20ShowObjectScript
- ld a, HS_SEAFOAM_ISLANDS_B4F_BOULDER_1
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B4F_BOULDER_1
call Route20HideObjectScript
- ld a, HS_SEAFOAM_ISLANDS_B4F_BOULDER_2
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B4F_BOULDER_2
call Route20HideObjectScript
ret
Route20ShowObjectScript:
- ld [wMissableObjectIndex], a
+ ld [wToggleableObjectIndex], a
predef_jump ShowObject
Route20HideObjectScript:
- ld [wMissableObjectIndex], a
+ ld [wToggleableObjectIndex], a
predef_jump HideObject
Route20_ScriptPointers:
diff --git a/scripts/Route22.asm b/scripts/Route22.asm
index 80f54290..bef22665 100644
--- a/scripts/Route22.asm
+++ b/scripts/Route22.asm
@@ -224,8 +224,8 @@ Route22Rival1ExitScript:
ret nz
xor a
ld [wJoyIgnore], a
- ld a, HS_ROUTE_22_RIVAL_1
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_ROUTE_22_RIVAL_1
+ ld [wToggleableObjectIndex], a
predef HideObject
call PlayDefaultMusic
ResetEvents EVENT_1ST_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE
@@ -368,8 +368,8 @@ Route22Rival2ExitScript:
ret nz
xor a
ld [wJoyIgnore], a
- ld a, HS_ROUTE_22_RIVAL_2
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_ROUTE_22_RIVAL_2
+ ld [wToggleableObjectIndex], a
predef HideObject
call PlayDefaultMusic
ResetEvents EVENT_2ND_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE
diff --git a/scripts/Route23.asm b/scripts/Route23.asm
index 911a2ef3..07558996 100644
--- a/scripts/Route23.asm
+++ b/scripts/Route23.asm
@@ -12,11 +12,11 @@ Route23SetVictoryRoadBoulders:
ret z
ResetEvents EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1, EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH2
ResetEvents EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH1, EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH2
- ld a, HS_VICTORY_ROAD_3F_BOULDER
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_VICTORY_ROAD_3F_BOULDER
+ ld [wToggleableObjectIndex], a
predef ShowObject
- ld a, HS_VICTORY_ROAD_2F_BOULDER
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_VICTORY_ROAD_2F_BOULDER
+ ld [wToggleableObjectIndex], a
predef_jump HideObject
Route23_ScriptPointers:
diff --git a/scripts/Route25.asm b/scripts/Route25.asm
index a85144a8..a4210cc5 100644
--- a/scripts/Route25.asm
+++ b/scripts/Route25.asm
@@ -1,5 +1,5 @@
Route25_Script:
- call Route25ShowHideBillScript
+ call Route25ToggleBillsScript
call EnableAutoTextBoxDrawing
ld hl, Route25TrainerHeaders
ld de, Route25_ScriptPointers
@@ -8,7 +8,7 @@ Route25_Script:
ld [wRoute25CurScript], a
ret
-Route25ShowHideBillScript:
+Route25ToggleBillsScript:
ld hl, wCurrentMapScriptFlags
bit BIT_CUR_MAP_LOADED_2, [hl]
res BIT_CUR_MAP_LOADED_2, [hl]
@@ -18,21 +18,21 @@ Route25ShowHideBillScript:
CheckEventReuseHL EVENT_MET_BILL_2
jr nz, .met_bill
ResetEventReuseHL EVENT_BILL_SAID_USE_CELL_SEPARATOR
- ld a, HS_BILL_POKEMON
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_BILL_POKEMON
+ ld [wToggleableObjectIndex], a
predef_jump ShowObject
.met_bill
CheckEventAfterBranchReuseHL EVENT_GOT_SS_TICKET, EVENT_MET_BILL_2
ret z
SetEventReuseHL EVENT_LEFT_BILLS_HOUSE_AFTER_HELPING
- ld a, HS_NUGGET_BRIDGE_GUY
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_NUGGET_BRIDGE_GUY
+ ld [wToggleableObjectIndex], a
predef HideObject
- ld a, HS_BILL_1
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_BILL_1
+ ld [wToggleableObjectIndex], a
predef HideObject
- ld a, HS_BILL_2
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_BILL_2
+ ld [wToggleableObjectIndex], a
predef_jump ShowObject
Route25_ScriptPointers:
diff --git a/scripts/SSAnne2F.asm b/scripts/SSAnne2F.asm
index ee860fd9..32ea70d1 100644
--- a/scripts/SSAnne2F.asm
+++ b/scripts/SSAnne2F.asm
@@ -33,8 +33,8 @@ SSAnne2FDefaultScript:
call PlayMusic
ld a, [wCoordIndex]
ldh [hSavedCoordIndex], a
- ld a, HS_SS_ANNE_2F_RIVAL
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_SS_ANNE_2F_RIVAL
+ ld [wToggleableObjectIndex], a
predef ShowObject
call Delay3
ld a, SSANNE2F_RIVAL
@@ -169,8 +169,8 @@ SSAnne2FRivalExitScript:
ret nz
xor a
ld [wJoyIgnore], a
- ld a, HS_SS_ANNE_2F_RIVAL
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_SS_ANNE_2F_RIVAL
+ ld [wToggleableObjectIndex], a
predef HideObject
call PlayDefaultMusic
ld a, SCRIPT_SSANNE2F_NOOP
diff --git a/scripts/SeafoamIslands1F.asm b/scripts/SeafoamIslands1F.asm
index a3ec3c99..1e099f76 100644
--- a/scripts/SeafoamIslands1F.asm
+++ b/scripts/SeafoamIslands1F.asm
@@ -13,23 +13,23 @@ SeafoamIslands1F_Script:
cp $1
jr nz, .boulder2FellDownHole
SetEventReuseHL EVENT_SEAFOAM1_BOULDER1_DOWN_HOLE
- ld a, HS_SEAFOAM_ISLANDS_1F_BOULDER_1
+ ld a, TOGGLE_SEAFOAM_ISLANDS_1F_BOULDER_1
ld [wObjectToHide], a
- ld a, HS_SEAFOAM_ISLANDS_B1F_BOULDER_1
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B1F_BOULDER_1
ld [wObjectToShow], a
jr .hideAndShowBoulderObjects
.boulder2FellDownHole
SetEventAfterBranchReuseHL EVENT_SEAFOAM1_BOULDER2_DOWN_HOLE, EVENT_SEAFOAM1_BOULDER1_DOWN_HOLE
- ld a, HS_SEAFOAM_ISLANDS_1F_BOULDER_2
+ ld a, TOGGLE_SEAFOAM_ISLANDS_1F_BOULDER_2
ld [wObjectToHide], a
- ld a, HS_SEAFOAM_ISLANDS_B1F_BOULDER_2
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B1F_BOULDER_2
ld [wObjectToShow], a
.hideAndShowBoulderObjects
ld a, [wObjectToHide]
- ld [wMissableObjectIndex], a
+ ld [wToggleableObjectIndex], a
predef HideObject
ld a, [wObjectToShow]
- ld [wMissableObjectIndex], a
+ ld [wToggleableObjectIndex], a
predef_jump ShowObject
.noBoulderWasPushed
ld a, SEAFOAM_ISLANDS_B1F
diff --git a/scripts/SeafoamIslandsB1F.asm b/scripts/SeafoamIslandsB1F.asm
index 0bc2ee18..7558e95b 100644
--- a/scripts/SeafoamIslandsB1F.asm
+++ b/scripts/SeafoamIslandsB1F.asm
@@ -12,23 +12,23 @@ SeafoamIslandsB1F_Script:
cp $1
jr nz, .boulder2FellDownHole
SetEventReuseHL EVENT_SEAFOAM2_BOULDER1_DOWN_HOLE
- ld a, HS_SEAFOAM_ISLANDS_B1F_BOULDER_1
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B1F_BOULDER_1
ld [wObjectToHide], a
- ld a, HS_SEAFOAM_ISLANDS_B2F_BOULDER_1
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B2F_BOULDER_1
ld [wObjectToShow], a
jr .hideAndShowBoulderObjects
.boulder2FellDownHole
SetEventAfterBranchReuseHL EVENT_SEAFOAM2_BOULDER2_DOWN_HOLE, EVENT_SEAFOAM2_BOULDER1_DOWN_HOLE
- ld a, HS_SEAFOAM_ISLANDS_B1F_BOULDER_2
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B1F_BOULDER_2
ld [wObjectToHide], a
- ld a, HS_SEAFOAM_ISLANDS_B2F_BOULDER_2
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B2F_BOULDER_2
ld [wObjectToShow], a
.hideAndShowBoulderObjects
ld a, [wObjectToHide]
- ld [wMissableObjectIndex], a
+ ld [wToggleableObjectIndex], a
predef HideObject
ld a, [wObjectToShow]
- ld [wMissableObjectIndex], a
+ ld [wToggleableObjectIndex], a
predef_jump ShowObject
.noBoulderWasPushed
ld a, SEAFOAM_ISLANDS_B2F
diff --git a/scripts/SeafoamIslandsB2F.asm b/scripts/SeafoamIslandsB2F.asm
index 48b7979d..2cdb705e 100644
--- a/scripts/SeafoamIslandsB2F.asm
+++ b/scripts/SeafoamIslandsB2F.asm
@@ -12,23 +12,23 @@ SeafoamIslandsB2F_Script:
cp $1
jr nz, .boulder2FellDownHole
SetEventReuseHL EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE
- ld a, HS_SEAFOAM_ISLANDS_B2F_BOULDER_1
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B2F_BOULDER_1
ld [wObjectToHide], a
- ld a, HS_SEAFOAM_ISLANDS_B3F_BOULDER_3
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B3F_BOULDER_3
ld [wObjectToShow], a
jr .hideAndShowBoulderObjects
.boulder2FellDownHole
SetEventAfterBranchReuseHL EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE
- ld a, HS_SEAFOAM_ISLANDS_B2F_BOULDER_2
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B2F_BOULDER_2
ld [wObjectToHide], a
- ld a, HS_SEAFOAM_ISLANDS_B3F_BOULDER_4
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B3F_BOULDER_4
ld [wObjectToShow], a
.hideAndShowBoulderObjects
ld a, [wObjectToHide]
- ld [wMissableObjectIndex], a
+ ld [wToggleableObjectIndex], a
predef HideObject
ld a, [wObjectToShow]
- ld [wMissableObjectIndex], a
+ ld [wToggleableObjectIndex], a
predef_jump ShowObject
.noBoulderWasPushed
ld a, SEAFOAM_ISLANDS_B3F
diff --git a/scripts/SeafoamIslandsB3F.asm b/scripts/SeafoamIslandsB3F.asm
index 671d7719..d8e253b6 100644
--- a/scripts/SeafoamIslandsB3F.asm
+++ b/scripts/SeafoamIslandsB3F.asm
@@ -12,23 +12,23 @@ SeafoamIslandsB3F_Script:
cp $1
jr nz, .boulder2FellDownHole
SetEventReuseHL EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE
- ld a, HS_SEAFOAM_ISLANDS_B3F_BOULDER_1
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B3F_BOULDER_1
ld [wObjectToHide], a
- ld a, HS_SEAFOAM_ISLANDS_B4F_BOULDER_1
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B4F_BOULDER_1
ld [wObjectToShow], a
jr .hideAndShowBoulderObjects
.boulder2FellDownHole
SetEventAfterBranchReuseHL EVENT_SEAFOAM4_BOULDER2_DOWN_HOLE, EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE
- ld a, HS_SEAFOAM_ISLANDS_B3F_BOULDER_2
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B3F_BOULDER_2
ld [wObjectToHide], a
- ld a, HS_SEAFOAM_ISLANDS_B4F_BOULDER_2
+ ld a, TOGGLE_SEAFOAM_ISLANDS_B4F_BOULDER_2
ld [wObjectToShow], a
.hideAndShowBoulderObjects
ld a, [wObjectToHide]
- ld [wMissableObjectIndex], a
+ ld [wToggleableObjectIndex], a
predef HideObject
ld a, [wObjectToShow]
- ld [wMissableObjectIndex], a
+ ld [wToggleableObjectIndex], a
predef ShowObject
jr .runCurrentMapScript
.noBoulderWasPushed
diff --git a/scripts/SilphCo11F.asm b/scripts/SilphCo11F.asm
index 75c545e3..a804ce6d 100644
--- a/scripts/SilphCo11F.asm
+++ b/scripts/SilphCo11F.asm
@@ -71,78 +71,78 @@ SilphCo11FSetUnlockedDoorEventScript:
ret
SilphCo11FTeamRocketLeavesScript:
- ld hl, .HideMissableObjectIDs
+ ld hl, .HideToggleableObjectIDs
.hide_loop
ld a, [hli]
cp $ff
jr z, .done_hiding
push hl
- ld [wMissableObjectIndex], a
+ ld [wToggleableObjectIndex], a
predef HideObject
pop hl
jr .hide_loop
.done_hiding
- ld hl, .ShowMissableObjectIDs
+ ld hl, .ShowToggleableObjectIDs
.show_loop
ld a, [hli]
cp -1
ret z
push hl
- ld [wMissableObjectIndex], a
+ ld [wToggleableObjectIndex], a
predef ShowObject
pop hl
jr .show_loop
-.ShowMissableObjectIDs:
- db HS_SAFFRON_CITY_8
- db HS_SAFFRON_CITY_9
- db HS_SAFFRON_CITY_A
- db HS_SAFFRON_CITY_B
- db HS_SAFFRON_CITY_C
- db HS_SAFFRON_CITY_D
+.ShowToggleableObjectIDs:
+ db TOGGLE_SAFFRON_CITY_8
+ db TOGGLE_SAFFRON_CITY_9
+ db TOGGLE_SAFFRON_CITY_A
+ db TOGGLE_SAFFRON_CITY_B
+ db TOGGLE_SAFFRON_CITY_C
+ db TOGGLE_SAFFRON_CITY_D
db -1 ; end
-.HideMissableObjectIDs:
- db HS_SAFFRON_CITY_1
- db HS_SAFFRON_CITY_2
- db HS_SAFFRON_CITY_3
- db HS_SAFFRON_CITY_4
- db HS_SAFFRON_CITY_5
- db HS_SAFFRON_CITY_6
- db HS_SAFFRON_CITY_7
- db HS_SAFFRON_CITY_E
- db HS_SAFFRON_CITY_F
- db HS_SILPH_CO_2F_2
- db HS_SILPH_CO_2F_3
- db HS_SILPH_CO_2F_4
- db HS_SILPH_CO_2F_5
- db HS_SILPH_CO_3F_1
- db HS_SILPH_CO_3F_2
- db HS_SILPH_CO_4F_1
- db HS_SILPH_CO_4F_2
- db HS_SILPH_CO_4F_3
- db HS_SILPH_CO_5F_1
- db HS_SILPH_CO_5F_2
- db HS_SILPH_CO_5F_3
- db HS_SILPH_CO_5F_4
- db HS_SILPH_CO_6F_1
- db HS_SILPH_CO_6F_2
- db HS_SILPH_CO_6F_3
- db HS_SILPH_CO_7F_1
- db HS_SILPH_CO_7F_2
- db HS_SILPH_CO_7F_3
- db HS_SILPH_CO_7F_4
- db HS_SILPH_CO_8F_1
- db HS_SILPH_CO_8F_2
- db HS_SILPH_CO_8F_3
- db HS_SILPH_CO_9F_1
- db HS_SILPH_CO_9F_2
- db HS_SILPH_CO_9F_3
- db HS_SILPH_CO_10F_1
- db HS_SILPH_CO_10F_2
- db HS_SILPH_CO_11F_1
- db HS_SILPH_CO_11F_2
- db HS_SILPH_CO_11F_3
+.HideToggleableObjectIDs:
+ db TOGGLE_SAFFRON_CITY_1
+ db TOGGLE_SAFFRON_CITY_2
+ db TOGGLE_SAFFRON_CITY_3
+ db TOGGLE_SAFFRON_CITY_4
+ db TOGGLE_SAFFRON_CITY_5
+ db TOGGLE_SAFFRON_CITY_6
+ db TOGGLE_SAFFRON_CITY_7
+ db TOGGLE_SAFFRON_CITY_E
+ db TOGGLE_SAFFRON_CITY_F
+ db TOGGLE_SILPH_CO_2F_2
+ db TOGGLE_SILPH_CO_2F_3
+ db TOGGLE_SILPH_CO_2F_4
+ db TOGGLE_SILPH_CO_2F_5
+ db TOGGLE_SILPH_CO_3F_1
+ db TOGGLE_SILPH_CO_3F_2
+ db TOGGLE_SILPH_CO_4F_1
+ db TOGGLE_SILPH_CO_4F_2
+ db TOGGLE_SILPH_CO_4F_3
+ db TOGGLE_SILPH_CO_5F_1
+ db TOGGLE_SILPH_CO_5F_2
+ db TOGGLE_SILPH_CO_5F_3
+ db TOGGLE_SILPH_CO_5F_4
+ db TOGGLE_SILPH_CO_6F_1
+ db TOGGLE_SILPH_CO_6F_2
+ db TOGGLE_SILPH_CO_6F_3
+ db TOGGLE_SILPH_CO_7F_1
+ db TOGGLE_SILPH_CO_7F_2
+ db TOGGLE_SILPH_CO_7F_3
+ db TOGGLE_SILPH_CO_7F_4
+ db TOGGLE_SILPH_CO_8F_1
+ db TOGGLE_SILPH_CO_8F_2
+ db TOGGLE_SILPH_CO_8F_3
+ db TOGGLE_SILPH_CO_9F_1
+ db TOGGLE_SILPH_CO_9F_2
+ db TOGGLE_SILPH_CO_9F_3
+ db TOGGLE_SILPH_CO_10F_1
+ db TOGGLE_SILPH_CO_10F_2
+ db TOGGLE_SILPH_CO_11F_1
+ db TOGGLE_SILPH_CO_11F_2
+ db TOGGLE_SILPH_CO_11F_3
db -1 ; end
SilphCo11FResetCurScript:
diff --git a/scripts/SilphCo1F.asm b/scripts/SilphCo1F.asm
index fbc70d77..acb506fc 100644
--- a/scripts/SilphCo1F.asm
+++ b/scripts/SilphCo1F.asm
@@ -4,8 +4,8 @@ SilphCo1F_Script:
ret z
CheckAndSetEvent EVENT_SILPH_CO_RECEPTIONIST_AT_DESK
ret nz
- ld a, HS_SILPH_CO_1F_RECEPTIONIST
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_SILPH_CO_1F_RECEPTIONIST
+ ld [wToggleableObjectIndex], a
predef_jump ShowObject
SilphCo1F_TextPointers:
diff --git a/scripts/SilphCo7F.asm b/scripts/SilphCo7F.asm
index 29e5fdd3..6b640fd4 100644
--- a/scripts/SilphCo7F.asm
+++ b/scripts/SilphCo7F.asm
@@ -255,8 +255,8 @@ SilphCo7FRivalExitScript:
ld a, [wStatusFlags5]
bit BIT_SCRIPTED_NPC_MOVEMENT, a
ret nz
- ld a, HS_SILPH_CO_7F_RIVAL
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_SILPH_CO_7F_RIVAL
+ ld [wToggleableObjectIndex], a
predef HideObject
call PlayDefaultMusic
xor a
diff --git a/scripts/VictoryRoad3F.asm b/scripts/VictoryRoad3F.asm
index 2b1b11c0..4a082be5 100644
--- a/scripts/VictoryRoad3F.asm
+++ b/scripts/VictoryRoad3F.asm
@@ -44,11 +44,11 @@ VictoryRoad3FDefaultScript:
.handle_hole
CheckAndSetEvent EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH2
jr nz, .check_switch_hole
- ld a, HS_VICTORY_ROAD_3F_BOULDER
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_VICTORY_ROAD_3F_BOULDER
+ ld [wToggleableObjectIndex], a
predef HideObject
- ld a, HS_VICTORY_ROAD_2F_BOULDER
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_VICTORY_ROAD_2F_BOULDER
+ ld [wToggleableObjectIndex], a
predef_jump ShowObject
.SwitchOrHoleCoords:
diff --git a/scripts/ViridianGym.asm b/scripts/ViridianGym.asm
index 6f195037..c2b8c362 100644
--- a/scripts/ViridianGym.asm
+++ b/scripts/ViridianGym.asm
@@ -161,8 +161,8 @@ ViridianGymReceiveTM27:
; deactivate gym trainers
SetEventRange EVENT_BEAT_VIRIDIAN_GYM_TRAINER_0, EVENT_BEAT_VIRIDIAN_GYM_TRAINER_7
- ld a, HS_ROUTE_22_RIVAL_2
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_ROUTE_22_RIVAL_2
+ ld [wToggleableObjectIndex], a
predef ShowObject
SetEvents EVENT_2ND_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE
jp ViridianGymResetScripts
@@ -219,8 +219,8 @@ ViridianGymGiovanniText:
ld hl, .PostBattleAdviceText
call PrintText
call GBFadeOutToBlack
- ld a, HS_VIRIDIAN_GYM_GIOVANNI
- ld [wMissableObjectIndex], a
+ ld a, TOGGLE_VIRIDIAN_GYM_GIOVANNI
+ ld [wToggleableObjectIndex], a
predef HideObject
call UpdateSprites
call Delay3