summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--asm/macros/map.inc4
-rw-r--r--data/maps/events/AbandonedShip_HiddenFloorRooms.inc8
-rw-r--r--data/maps/events/FallarborTown.inc2
-rw-r--r--data/maps/events/GraniteCave_B2F.inc4
-rw-r--r--data/maps/events/JaggedPass.inc4
-rw-r--r--data/maps/events/LavaridgeTown.inc2
-rw-r--r--data/maps/events/LilycoveCity.inc6
-rw-r--r--data/maps/events/MtPyre_Exterior.inc4
-rw-r--r--data/maps/events/MtPyre_Summit.inc4
-rw-r--r--data/maps/events/PetalburgCity.inc2
-rw-r--r--data/maps/events/PetalburgWoods.inc8
-rw-r--r--data/maps/events/Route104.inc10
-rw-r--r--data/maps/events/Route105.inc2
-rw-r--r--data/maps/events/Route106.inc6
-rw-r--r--data/maps/events/Route108.inc2
-rw-r--r--data/maps/events/Route109.inc12
-rw-r--r--data/maps/events/Route110.inc8
-rw-r--r--data/maps/events/Route110_TrickHouseEnd.inc2
-rw-r--r--data/maps/events/Route111.inc6
-rw-r--r--data/maps/events/Route113.inc4
-rw-r--r--data/maps/events/Route114.inc4
-rw-r--r--data/maps/events/Route115.inc2
-rw-r--r--data/maps/events/Route116.inc4
-rw-r--r--data/maps/events/Route117.inc2
-rw-r--r--data/maps/events/Route118.inc4
-rw-r--r--data/maps/events/Route119.inc8
-rw-r--r--data/maps/events/Route120.inc8
-rw-r--r--data/maps/events/Route121.inc6
-rw-r--r--data/maps/events/Route123.inc6
-rw-r--r--data/maps/events/Route128.inc6
-rw-r--r--data/maps/events/SSTidalLowerDeck.inc2
-rw-r--r--data/maps/events/Underwater1.inc14
-rw-r--r--data/maps/events/Underwater2.inc16
-rw-r--r--data/maps/events/Underwater3.inc8
-rw-r--r--data/maps/events/Underwater4.inc4
-rw-r--r--data/maps/events/VictoryRoad_1F.inc2
-rw-r--r--data/maps/events/VictoryRoad_B2F.inc4
-rw-r--r--data/scripts/maps/Route116.inc4
-rw-r--r--data/specials.inc2
-rw-r--r--include/constants/flags.h105
-rw-r--r--include/global.fieldmap.h4
-rw-r--r--src/field/field_control_avatar.c2
-rw-r--r--src/field/field_specials.c4
-rw-r--r--src/field/item_use.c5
44 files changed, 216 insertions, 110 deletions
diff --git a/asm/macros/map.inc b/asm/macros/map.inc
index a80a662b4..6e4005f7d 100644
--- a/asm/macros/map.inc
+++ b/asm/macros/map.inc
@@ -57,6 +57,10 @@
inc _num_signs
.endm
+ .macro bg_hidden_item_event x, y, height, item, flag
+ bg_event \x, \y, \height, 7, 0, \item, ((\flag) - FLAG_HIDDEN_ITEMS_START), 0
+ .endm
+
.macro map_events npcs, warps, traps, signs
.byte _num_npcs, _num_warps, _num_traps, _num_signs
.4byte \npcs, \warps, \traps, \signs
diff --git a/data/maps/events/AbandonedShip_HiddenFloorRooms.inc b/data/maps/events/AbandonedShip_HiddenFloorRooms.inc
index 2e6bb9a3f..998e4eeac 100644
--- a/data/maps/events/AbandonedShip_HiddenFloorRooms.inc
+++ b/data/maps/events/AbandonedShip_HiddenFloorRooms.inc
@@ -16,10 +16,10 @@ AbandonedShip_HiddenFloorRooms_MapWarps:: @ 838E5A0
warp_def 36, 1, 3, 5, MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS
AbandonedShip_HiddenFloorRooms_MapBGEvents:: @ 838E5E8
- bg_event 42, 10, 3, 7, 0, ITEM_ROOM_1_KEY, 31, 0
- bg_event 20, 5, 3, 7, 0, ITEM_ROOM_2_KEY, 32, 0
- bg_event 1, 12, 3, 7, 0, ITEM_ROOM_4_KEY, 33, 0
- bg_event 1, 2, 0, 7, 0, ITEM_ROOM_6_KEY, 34, 0
+ bg_hidden_item_event 42, 10, 3, ITEM_ROOM_1_KEY, FLAG_HIDDEN_ITEM_1F
+ bg_hidden_item_event 20, 5, 3, ITEM_ROOM_2_KEY, FLAG_HIDDEN_ITEM_20
+ bg_hidden_item_event 1, 12, 3, ITEM_ROOM_4_KEY, FLAG_HIDDEN_ITEM_21
+ bg_hidden_item_event 1, 2, 0, ITEM_ROOM_6_KEY, FLAG_HIDDEN_ITEM_22
bg_event 8, 5, 3, 0, 0, AbandonedShip_HiddenFloorRooms_EventScript_15EEAB
bg_event 11, 3, 3, 0, 0, AbandonedShip_HiddenFloorRooms_EventScript_15EEAB
bg_event 10, 10, 3, 0, 0, AbandonedShip_HiddenFloorRooms_EventScript_15EEAB
diff --git a/data/maps/events/FallarborTown.inc b/data/maps/events/FallarborTown.inc
index 755f205bc..025843194 100644
--- a/data/maps/events/FallarborTown.inc
+++ b/data/maps/events/FallarborTown.inc
@@ -19,7 +19,7 @@ FallarborTown_MapBGEvents:: @ 8380E8C
bg_event 10, 11, 0, 0, 0, FallarborTown_EventScript_14E842
bg_event 17, 15, 0, 1, 0, FallarborTown_EventScript_1A00E1
bg_event 3, 7, 0, 0, 0, FallarborTown_EventScript_14E84B
- bg_event 2, 15, 3, 7, 0, ITEM_NUGGET, 28, 0
+ bg_hidden_item_event 2, 15, 3, ITEM_NUGGET, FLAG_HIDDEN_ITEM_1C
FallarborTown_MapEvents:: @ 8380EEC
map_events FallarborTown_MapObjects, FallarborTown_MapWarps, 0x0, FallarborTown_MapBGEvents
diff --git a/data/maps/events/GraniteCave_B2F.inc b/data/maps/events/GraniteCave_B2F.inc
index c8a7c5554..e251b3bef 100644
--- a/data/maps/events/GraniteCave_B2F.inc
+++ b/data/maps/events/GraniteCave_B2F.inc
@@ -17,8 +17,8 @@ GraniteCave_B2F_MapWarps:: @ 838C0C4
warp_def 29, 2, 3, 6, MAP_GRANITE_CAVE_B1F
GraniteCave_B2F_MapBGEvents:: @ 838C0EC
- bg_event 28, 6, 3, 7, 0, ITEM_EVERSTONE, 48, 0
- bg_event 15, 11, 3, 7, 0, ITEM_EVERSTONE, 49, 0
+ bg_hidden_item_event 28, 6, 3, ITEM_EVERSTONE, FLAG_HIDDEN_ITEM_30
+ bg_hidden_item_event 15, 11, 3, ITEM_EVERSTONE, FLAG_HIDDEN_ITEM_31
GraniteCave_B2F_MapEvents:: @ 838C104
map_events GraniteCave_B2F_MapObjects, GraniteCave_B2F_MapWarps, 0x0, GraniteCave_B2F_MapBGEvents
diff --git a/data/maps/events/JaggedPass.inc b/data/maps/events/JaggedPass.inc
index a41d8ac7d..e1103c816 100644
--- a/data/maps/events/JaggedPass.inc
+++ b/data/maps/events/JaggedPass.inc
@@ -18,8 +18,8 @@ JaggedPass_MapCoordEvents:: @ 838C69C
coord_weather_event 22, 19, 3, COORD_EVENT_WEATHER_SUNNY
JaggedPass_MapBGEvents:: @ 838C6EC
- bg_event 8, 10, 3, 7, 0, ITEM_FULL_HEAL, 77, 0
- bg_event 7, 29, 3, 7, 0, ITEM_GREAT_BALL, 76, 0
+ bg_hidden_item_event 8, 10, 3, ITEM_FULL_HEAL, FLAG_HIDDEN_ITEM_4D
+ bg_hidden_item_event 7, 29, 3, ITEM_GREAT_BALL, FLAG_HIDDEN_ITEM_4C
JaggedPass_MapEvents:: @ 838C704
map_events JaggedPass_MapObjects, JaggedPass_MapWarps, JaggedPass_MapCoordEvents, JaggedPass_MapBGEvents
diff --git a/data/maps/events/LavaridgeTown.inc b/data/maps/events/LavaridgeTown.inc
index c064f7823..27acd168f 100644
--- a/data/maps/events/LavaridgeTown.inc
+++ b/data/maps/events/LavaridgeTown.inc
@@ -28,7 +28,7 @@ LavaridgeTown_MapBGEvents:: @ 8380D90
bg_event 10, 6, 0, 1, 0, LavaridgeTown_EventScript_1A00EA
bg_event 16, 5, 0, 1, 0, LavaridgeTown_EventScript_1A00E1
bg_event 11, 6, 0, 1, 0, LavaridgeTown_EventScript_1A00EA
- bg_event 4, 5, 3, 7, 0, ITEM_ICE_HEAL, 0, 0
+ bg_hidden_item_event 4, 5, 3, ITEM_ICE_HEAL, FLAG_HIDDEN_ITEM_0
LavaridgeTown_MapEvents:: @ 8380DF0
map_events LavaridgeTown_MapObjects, LavaridgeTown_MapWarps, LavaridgeTown_MapCoordEvents, LavaridgeTown_MapBGEvents
diff --git a/data/maps/events/LilycoveCity.inc b/data/maps/events/LilycoveCity.inc
index 0822ded72..4f6acdcb2 100644
--- a/data/maps/events/LilycoveCity.inc
+++ b/data/maps/events/LilycoveCity.inc
@@ -45,9 +45,9 @@ LilycoveCity_MapBGEvents:: @ 838037C
bg_event 6, 30, 3, 0, 0, LilycoveCity_EventScript_14CCAC
bg_event 36, 14, 0, 0, 0, LilycoveCity_EventScript_14CCCA
bg_event 34, 6, 0, 0, 0, LilycoveCity_EventScript_14CCDC
- bg_event 36, 31, 3, 7, 0, ITEM_HEART_SCALE, 27, 0
- bg_event 61, 7, 0, 7, 0, ITEM_PP_UP, 43, 0
- bg_event 64, 31, 0, 7, 0, ITEM_POKE_BALL, 75, 0
+ bg_hidden_item_event 36, 31, 3, ITEM_HEART_SCALE, FLAG_HIDDEN_ITEM_1B
+ bg_hidden_item_event 61, 7, 0, ITEM_PP_UP, FLAG_HIDDEN_ITEM_2B
+ bg_hidden_item_event 64, 31, 0, ITEM_POKE_BALL, FLAG_HIDDEN_ITEM_4B
LilycoveCity_MapEvents:: @ 8380418
map_events LilycoveCity_MapObjects, LilycoveCity_MapWarps, 0x0, LilycoveCity_MapBGEvents
diff --git a/data/maps/events/MtPyre_Exterior.inc b/data/maps/events/MtPyre_Exterior.inc
index 71cb2095a..77668758d 100644
--- a/data/maps/events/MtPyre_Exterior.inc
+++ b/data/maps/events/MtPyre_Exterior.inc
@@ -15,8 +15,8 @@ MtPyre_Exterior_MapCoordEvents:: @ 838CB5C
coord_event 26, 21, 3, 0, 0, 0, 0, MtPyre_Exterior_EventScript_15D4A7
MtPyre_Exterior_MapBGEvents:: @ 838CBAC
- bg_event 9, 8, 0, 7, 0, ITEM_ULTRA_BALL, 29, 0
- bg_event 16, 22, 0, 7, 0, ITEM_MAX_ETHER, 78, 0
+ bg_hidden_item_event 9, 8, 0, ITEM_ULTRA_BALL, FLAG_HIDDEN_ITEM_1D
+ bg_hidden_item_event 16, 22, 0, ITEM_MAX_ETHER, FLAG_HIDDEN_ITEM_4E
MtPyre_Exterior_MapEvents:: @ 838CBC4
map_events MtPyre_Exterior_MapObjects, MtPyre_Exterior_MapWarps, MtPyre_Exterior_MapCoordEvents, MtPyre_Exterior_MapBGEvents
diff --git a/data/maps/events/MtPyre_Summit.inc b/data/maps/events/MtPyre_Summit.inc
index 3aaf21244..64399add8 100644
--- a/data/maps/events/MtPyre_Summit.inc
+++ b/data/maps/events/MtPyre_Summit.inc
@@ -20,8 +20,8 @@ MtPyre_Summit_MapCoordEvents:: @ 838CC80
coord_event 24, 7, 3, 0, VAR_MT_PYRE_STATE, 2, 0, MtPyre_Summit_EventScript_15D6E6
MtPyre_Summit_MapBGEvents:: @ 838CCE0
- bg_event 9, 25, 0, 7, 0, ITEM_ZINC, 79, 0
- bg_event 37, 7, 3, 7, 0, ITEM_RARE_CANDY, 80, 0
+ bg_hidden_item_event 9, 25, 0, ITEM_ZINC, FLAG_HIDDEN_ITEM_4F
+ bg_hidden_item_event 37, 7, 3, ITEM_RARE_CANDY, FLAG_HIDDEN_ITEM_50
MtPyre_Summit_MapEvents:: @ 838CCF8
map_events MtPyre_Summit_MapObjects, MtPyre_Summit_MapWarps, MtPyre_Summit_MapCoordEvents, MtPyre_Summit_MapBGEvents
diff --git a/data/maps/events/PetalburgCity.inc b/data/maps/events/PetalburgCity.inc
index 4b169abac..3b22cca9b 100644
--- a/data/maps/events/PetalburgCity.inc
+++ b/data/maps/events/PetalburgCity.inc
@@ -31,7 +31,7 @@ PetalburgCity_MapBGEvents:: @ 837F738
bg_event 22, 16, 0, 1, 0, PetalburgCity_EventScript_1A00EA
bg_event 27, 12, 0, 1, 0, PetalburgCity_EventScript_1A00E1
bg_event 8, 9, 0, 0, 0, PetalburgCity_EventScript_14B82D
- bg_event 11, 29, 3, 7, 0, ITEM_RARE_CANDY, 95, 0
+ bg_hidden_item_event 11, 29, 3, ITEM_RARE_CANDY, FLAG_HIDDEN_ITEM_5F
PetalburgCity_MapEvents:: @ 837F798
map_events PetalburgCity_MapObjects, PetalburgCity_MapWarps, PetalburgCity_MapCoordEvents, PetalburgCity_MapBGEvents
diff --git a/data/maps/events/PetalburgWoods.inc b/data/maps/events/PetalburgWoods.inc
index 4094fc103..91e59d6c5 100644
--- a/data/maps/events/PetalburgWoods.inc
+++ b/data/maps/events/PetalburgWoods.inc
@@ -27,10 +27,10 @@ PetalburgWoods_MapCoordEvents:: @ 838C2B4
PetalburgWoods_MapBGEvents:: @ 838C2D4
bg_event 14, 32, 3, 0, 0, PetalburgWoods_EventScript_15CF15
- bg_event 39, 35, 3, 7, 0, ITEM_POTION, 58, 0
- bg_event 26, 6, 3, 7, 0, ITEM_TINY_MUSHROOM, 59, 0
- bg_event 40, 29, 3, 7, 0, ITEM_TINY_MUSHROOM, 60, 0
- bg_event 4, 19, 3, 7, 0, ITEM_POKE_BALL, 61, 0
+ bg_hidden_item_event 39, 35, 3, ITEM_POTION, FLAG_HIDDEN_ITEM_3A
+ bg_hidden_item_event 26, 6, 3, ITEM_TINY_MUSHROOM, FLAG_HIDDEN_ITEM_3B
+ bg_hidden_item_event 40, 29, 3, ITEM_TINY_MUSHROOM, FLAG_HIDDEN_ITEM_3C
+ bg_hidden_item_event 4, 19, 3, ITEM_POKE_BALL, FLAG_HIDDEN_ITEM_3D
bg_event 11, 8, 3, 0, 0, PetalburgWoods_EventScript_15CF1E
PetalburgWoods_MapEvents:: @ 838C31C
diff --git a/data/maps/events/Route104.inc b/data/maps/events/Route104.inc
index f7034ff26..dfbd27da2 100644
--- a/data/maps/events/Route104.inc
+++ b/data/maps/events/Route104.inc
@@ -48,11 +48,11 @@ Route104_MapBGEvents:: @ 83817C8
bg_event 23, 5, 0, 0, 0, Route104_EventScript_14EF66
bg_event 7, 20, 0, 0, 0, Route104_EventScript_14EF6F
bg_event 17, 23, 3, 0, 0, Route104_EventScript_14EF78
- bg_event 7, 6, 3, 7, 0, ITEM_SUPER_POTION, 44, 0
- bg_event 3, 9, 3, 7, 0, ITEM_POKE_BALL, 62, 0
- bg_event 14, 55, 3, 7, 0, ITEM_POTION, 37, 0
- bg_event 16, 72, 3, 7, 0, ITEM_ANTIDOTE, 85, 0
- bg_event 16, 64, 3, 7, 0, ITEM_HEART_SCALE, 88, 0
+ bg_hidden_item_event 7, 6, 3, ITEM_SUPER_POTION, FLAG_HIDDEN_ITEM_2C
+ bg_hidden_item_event 3, 9, 3, ITEM_POKE_BALL, FLAG_HIDDEN_ITEM_3E
+ bg_hidden_item_event 14, 55, 3, ITEM_POTION, FLAG_HIDDEN_ITEM_25
+ bg_hidden_item_event 16, 72, 3, ITEM_ANTIDOTE, FLAG_HIDDEN_ITEM_55
+ bg_hidden_item_event 16, 64, 3, ITEM_HEART_SCALE, FLAG_HIDDEN_ITEM_58
Route104_MapEvents:: @ 8381840
map_events Route104_MapObjects, Route104_MapWarps, 0x0, Route104_MapBGEvents
diff --git a/data/maps/events/Route105.inc b/data/maps/events/Route105.inc
index 45c0866e3..5707106bd 100644
--- a/data/maps/events/Route105.inc
+++ b/data/maps/events/Route105.inc
@@ -10,7 +10,7 @@ Route105_MapWarps:: @ 83818E4
warp_def 9, 20, 0, 0, MAP_ISLAND_CAVE
Route105_MapBGEvents:: @ 83818EC
- bg_event 15, 68, 3, 7, 0, ITEM_HEART_SCALE, 89, 0
+ bg_hidden_item_event 15, 68, 3, ITEM_HEART_SCALE, FLAG_HIDDEN_ITEM_59
Route105_MapEvents:: @ 83818F8
map_events Route105_MapObjects, Route105_MapWarps, 0x0, Route105_MapBGEvents
diff --git a/data/maps/events/Route106.inc b/data/maps/events/Route106.inc
index 991e12f74..7c326ceea 100644
--- a/data/maps/events/Route106.inc
+++ b/data/maps/events/Route106.inc
@@ -9,9 +9,9 @@ Route106_MapWarps:: @ 8381984
warp_def 48, 16, 0, 0, MAP_GRANITE_CAVE_1F
Route106_MapBGEvents:: @ 838198C
- bg_event 41, 11, 3, 7, 0, ITEM_POKE_BALL, 63, 0
- bg_event 53, 12, 0, 7, 0, ITEM_STARDUST, 46, 0
- bg_event 68, 15, 3, 7, 0, ITEM_HEART_SCALE, 47, 0
+ bg_hidden_item_event 41, 11, 3, ITEM_POKE_BALL, FLAG_HIDDEN_ITEM_3F
+ bg_hidden_item_event 53, 12, 0, ITEM_STARDUST, FLAG_HIDDEN_ITEM_2E
+ bg_hidden_item_event 68, 15, 3, ITEM_HEART_SCALE, FLAG_HIDDEN_ITEM_2F
bg_event 59, 13, 3, 0, 0, Route106_EventScript_14F32F
Route106_MapEvents:: @ 83819BC
diff --git a/data/maps/events/Route108.inc b/data/maps/events/Route108.inc
index ad695e8b9..7b6471080 100644
--- a/data/maps/events/Route108.inc
+++ b/data/maps/events/Route108.inc
@@ -8,7 +8,7 @@ Route108_MapWarps:: @ 8381AD4
warp_def 29, 6, 3, 0, MAP_ABANDONED_SHIP_DECK
Route108_MapBGEvents:: @ 8381ADC
- bg_event 38, 14, 3, 7, 0, ITEM_RARE_CANDY, 86, 0
+ bg_hidden_item_event 38, 14, 3, ITEM_RARE_CANDY, FLAG_HIDDEN_ITEM_56
Route108_MapEvents:: @ 8381AE8
map_events Route108_MapObjects, Route108_MapWarps, 0x0, Route108_MapBGEvents
diff --git a/data/maps/events/Route109.inc b/data/maps/events/Route109.inc
index 5924bc0d2..95a635a6e 100644
--- a/data/maps/events/Route109.inc
+++ b/data/maps/events/Route109.inc
@@ -26,12 +26,12 @@ Route109_MapWarps:: @ 8381CDC
Route109_MapBGEvents:: @ 8381CE4
bg_event 15, 5, 0, 0, 0, Route109_EventScript_14F79B
bg_event 29, 10, 3, 0, 0, Route109_EventScript_14F7A4
- bg_event 16, 23, 3, 7, 0, ITEM_REVIVE, 50, 0
- bg_event 33, 5, 3, 7, 0, ITEM_HEART_SCALE, 52, 0
- bg_event 9, 10, 3, 7, 0, ITEM_GREAT_BALL, 51, 0
- bg_event 28, 20, 3, 7, 0, ITEM_ETHER, 64, 0
- bg_event 13, 16, 3, 7, 0, ITEM_HEART_SCALE, 90, 0
- bg_event 8, 42, 3, 7, 0, ITEM_HEART_SCALE, 91, 0
+ bg_hidden_item_event 16, 23, 3, ITEM_REVIVE, FLAG_HIDDEN_ITEM_32
+ bg_hidden_item_event 33, 5, 3, ITEM_HEART_SCALE, FLAG_HIDDEN_ITEM_34
+ bg_hidden_item_event 9, 10, 3, ITEM_GREAT_BALL, FLAG_HIDDEN_ITEM_33
+ bg_hidden_item_event 28, 20, 3, ITEM_ETHER, FLAG_HIDDEN_ITEM_40
+ bg_hidden_item_event 13, 16, 3, ITEM_HEART_SCALE, FLAG_HIDDEN_ITEM_5A
+ bg_hidden_item_event 8, 42, 3, ITEM_HEART_SCALE, FLAG_HIDDEN_ITEM_5B
Route109_MapEvents:: @ 8381D44
map_events Route109_MapObjects, Route109_MapWarps, 0x0, Route109_MapBGEvents
diff --git a/data/maps/events/Route110.inc b/data/maps/events/Route110.inc
index 278fee52b..0a3569f6c 100644
--- a/data/maps/events/Route110.inc
+++ b/data/maps/events/Route110.inc
@@ -59,10 +59,10 @@ Route110_MapBGEvents:: @ 83820C0
bg_event 37, 70, 3, 0, 0, Route110_EventScript_14FA1C
bg_event 8, 67, 0, 0, 0, Route110_EventScript_14FA25
bg_event 32, 93, 0, 0, 0, Route110_EventScript_14FA2E
- bg_event 26, 40, 3, 7, 0, ITEM_REVIVE, 54, 0
- bg_event 34, 42, 3, 7, 0, ITEM_GREAT_BALL, 53, 0
- bg_event 4, 35, 3, 7, 0, ITEM_POKE_BALL, 65, 0
- bg_event 37, 67, 3, 7, 0, ITEM_FULL_HEAL, 55, 0
+ bg_hidden_item_event 26, 40, 3, ITEM_REVIVE, FLAG_HIDDEN_ITEM_36
+ bg_hidden_item_event 34, 42, 3, ITEM_GREAT_BALL, FLAG_HIDDEN_ITEM_35
+ bg_hidden_item_event 4, 35, 3, ITEM_POKE_BALL, FLAG_HIDDEN_ITEM_41
+ bg_hidden_item_event 37, 67, 3, ITEM_FULL_HEAL, FLAG_HIDDEN_ITEM_37
bg_event 13, 16, 0, 0, 0, Route110_EventScript_14F9E6
Route110_MapEvents:: @ 838218C
diff --git a/data/maps/events/Route110_TrickHouseEnd.inc b/data/maps/events/Route110_TrickHouseEnd.inc
index e3b83d48f..ee4e5952e 100644
--- a/data/maps/events/Route110_TrickHouseEnd.inc
+++ b/data/maps/events/Route110_TrickHouseEnd.inc
@@ -9,7 +9,7 @@ Route110_TrickHouseEnd_MapCoordEvents:: @ 83921F8
coord_event 2, 2, 3, 0, VAR_TEMP_2, 0, 0, Route110_TrickHouseEnd_EventScript_161CA0
Route110_TrickHouseEnd_MapBGEvents:: @ 8392208
- bg_event 4, 5, 3, 7, 0, ITEM_NUGGET, 1, 0
+ bg_hidden_item_event 4, 5, 3, ITEM_NUGGET, FLAG_HIDDEN_ITEM_1
Route110_TrickHouseEnd_MapEvents:: @ 8392214
map_events Route110_TrickHouseEnd_MapObjects, Route110_TrickHouseEnd_MapWarps, Route110_TrickHouseEnd_MapCoordEvents, Route110_TrickHouseEnd_MapBGEvents
diff --git a/data/maps/events/Route111.inc b/data/maps/events/Route111.inc
index e3ae3bb04..62256e1f7 100644
--- a/data/maps/events/Route111.inc
+++ b/data/maps/events/Route111.inc
@@ -88,13 +88,13 @@ Route111_MapBGEvents:: @ 8382738
bg_event 25, 19, 0, 0, 0, Route111_EventScript_150383
bg_event 35, 1, 0, 8, 0, ITEM_POTION, 0, 0
bg_event 35, 31, 0, 8, 0, ITEM_POMEG_BERRY, 0, 0
- bg_event 26, 70, 0, 7, 0, ITEM_STARDUST, 2, 0
+ bg_hidden_item_event 26, 70, 0, ITEM_STARDUST, FLAG_HIDDEN_ITEM_2
bg_event 27, 27, 3, 8, 0, ITEM_REVIVAL_HERB, 0, 0
bg_event 7, 84, 3, 0, 0, Route111_EventScript_15038C
bg_event 14, 19, 0, 8, 0, ITEM_PAMTRE_BERRY, 0, 0
bg_event 13, 19, 0, 8, 0, ITEM_RABUTA_BERRY, 0, 0
- bg_event 19, 55, 0, 7, 0, ITEM_PROTEIN, 56, 0
- bg_event 35, 66, 0, 7, 0, ITEM_RARE_CANDY, 57, 0
+ bg_hidden_item_event 19, 55, 0, ITEM_PROTEIN, FLAG_HIDDEN_ITEM_38
+ bg_hidden_item_event 35, 66, 0, ITEM_RARE_CANDY, FLAG_HIDDEN_ITEM_39
Route111_MapEvents:: @ 8382804
map_events Route111_MapObjects, Route111_MapWarps, Route111_MapCoordEvents, Route111_MapBGEvents
diff --git a/data/maps/events/Route113.inc b/data/maps/events/Route113.inc
index 7a39850fd..13ac20534 100644
--- a/data/maps/events/Route113.inc
+++ b/data/maps/events/Route113.inc
@@ -41,8 +41,8 @@ Route113_MapBGEvents:: @ 8382BE0
bg_event 58, 4, 3, 0, 0, Route113_EventScript_150632
bg_event 31, 5, 0, 0, 0, Route113_EventScript_150629
bg_event 49, 8, 0, 8, 0, ITEM_GREAT_BALL, 0, 0
- bg_event 72, 4, 3, 7, 0, ITEM_ETHER, 3, 0
- bg_event 22, 5, 3, 7, 0, ITEM_TM32, 30, 0
+ bg_hidden_item_event 72, 4, 3, ITEM_ETHER, FLAG_HIDDEN_ITEM_3
+ bg_hidden_item_event 22, 5, 3, ITEM_TM32, FLAG_HIDDEN_ITEM_1E
Route113_MapEvents:: @ 8382C34
map_events Route113_MapObjects, Route113_MapWarps, Route113_MapCoordEvents, Route113_MapBGEvents
diff --git a/data/maps/events/Route114.inc b/data/maps/events/Route114.inc
index 0e4097651..f701b2cfa 100644
--- a/data/maps/events/Route114.inc
+++ b/data/maps/events/Route114.inc
@@ -38,9 +38,9 @@ Route114_MapBGEvents:: @ 8382E88
bg_event 11, 27, 0, 8, 0, ITEM_EXP_SHARE, 0, 0
bg_event 12, 27, 0, 8, 0, ITEM_DEEP_SEA_TOOTH, 0, 0
bg_event 25, 38, 3, 0, 0, Route114_EventScript_1507E8
- bg_event 20, 57, 3, 7, 0, ITEM_CARBOS, 4, 0
+ bg_hidden_item_event 20, 57, 3, ITEM_CARBOS, FLAG_HIDDEN_ITEM_4
bg_event 32, 57, 0, 8, 0, ITEM_GUARD_SPEC, 0, 0
- bg_event 7, 30, 3, 7, 0, ITEM_REVIVE, 42, 0
+ bg_hidden_item_event 7, 30, 3, ITEM_REVIVE, FLAG_HIDDEN_ITEM_2A
Route114_MapEvents:: @ 8382F18
map_events Route114_MapObjects, Route114_MapWarps, 0x0, Route114_MapBGEvents
diff --git a/data/maps/events/Route115.inc b/data/maps/events/Route115.inc
index 83c7e97b8..7b8d48758 100644
--- a/data/maps/events/Route115.inc
+++ b/data/maps/events/Route115.inc
@@ -33,7 +33,7 @@ Route115_MapBGEvents:: @ 83830B4
bg_event 8, 20, 0, 8, 0, ITEM_QUICK_CLAW, 0, 0
bg_event 25, 24, 0, 8, 0, ITEM_HP_UP, 0, 0
bg_event 20, 53, 0, 8, 0, ITEM_HYPER_POTION, 0, 0
- bg_event 15, 49, 3, 7, 0, ITEM_HEART_SCALE, 97, 0
+ bg_hidden_item_event 15, 49, 3, ITEM_HEART_SCALE, FLAG_HIDDEN_ITEM_61
Route115_MapEvents:: @ 838315C
map_events Route115_MapObjects, Route115_MapWarps, 0x0, Route115_MapBGEvents
diff --git a/data/maps/events/Route116.inc b/data/maps/events/Route116.inc
index 3b1858f33..0acd83d88 100644
--- a/data/maps/events/Route116.inc
+++ b/data/maps/events/Route116.inc
@@ -40,8 +40,8 @@ Route116_MapBGEvents:: @ 83833A8
bg_event 29, 10, 0, 0, 0, Route116_EventScript_150B54
bg_event 56, 6, 0, 8, 0, 102, 0, 0
bg_event 55, 15, 0, 8, 0, 112, 0, 0
- bg_event 22, 9, 3, 7, 0, ITEM_SUPER_POTION, 45, 0
- bg_event 70, 13, 3, 7, 0, ITEM_BLACK_GLASSES, 96, 0
+ bg_hidden_item_event 22, 9, 3, ITEM_SUPER_POTION, FLAG_HIDDEN_ITEM_2D
+ bg_hidden_item_event 70, 13, 3, ITEM_BLACK_GLASSES, FLAG_HIDDEN_ITEM_60
Route116_MapEvents:: @ 838342C
map_events Route116_MapObjects, Route116_MapWarps, Route116_MapCoordEvents, Route116_MapBGEvents
diff --git a/data/maps/events/Route117.inc b/data/maps/events/Route117.inc
index 90f3e1f8f..ff5c81ead 100644
--- a/data/maps/events/Route117.inc
+++ b/data/maps/events/Route117.inc
@@ -28,7 +28,7 @@ Route117_MapBGEvents:: @ 8383640
bg_event 16, 6, 0, 0, 0, Route117_EventScript_150D72
bg_event 49, 12, 0, 0, 0, Route117_EventScript_150D7B
bg_event 49, 5, 0, 0, 0, Route117_EventScript_150D84
- bg_event 3, 18, 3, 7, 0, ITEM_REPEL, 72, 0
+ bg_hidden_item_event 3, 18, 3, ITEM_REPEL, FLAG_HIDDEN_ITEM_48
Route117_MapEvents:: @ 8383670
map_events Route117_MapObjects, Route117_MapWarps, 0x0, Route117_MapBGEvents
diff --git a/data/maps/events/Route118.inc b/data/maps/events/Route118.inc
index 154b96b75..60e8f27f0 100644
--- a/data/maps/events/Route118.inc
+++ b/data/maps/events/Route118.inc
@@ -33,8 +33,8 @@ Route118_MapBGEvents:: @ 8383894
bg_event 29, 5, 0, 8, 0, ITEM_HARBOR_MAIL, 0, 0
bg_event 47, 5, 0, 8, 0, ITEM_SPELON_BERRY, 0, 0
bg_event 46, 5, 0, 8, 0, ITEM_PETAYA_BERRY, 0, 0
- bg_event 31, 13, 3, 7, 0, ITEM_IRON, 67, 0
- bg_event 12, 14, 3, 7, 0, ITEM_HEART_SCALE, 66, 0
+ bg_hidden_item_event 31, 13, 3, ITEM_IRON, FLAG_HIDDEN_ITEM_43
+ bg_hidden_item_event 12, 14, 3, ITEM_HEART_SCALE, FLAG_HIDDEN_ITEM_42
Route118_MapEvents:: @ 8383900
map_events Route118_MapObjects, 0x0, Route118_MapCoordEvents, Route118_MapBGEvents
diff --git a/data/maps/events/Route119.inc b/data/maps/events/Route119.inc
index 889f1b000..c3d75ff52 100644
--- a/data/maps/events/Route119.inc
+++ b/data/maps/events/Route119.inc
@@ -79,15 +79,15 @@ Route119_MapBGEvents:: @ 8383E2C
bg_event 31, 73, 3, 8, 0, 231, 0, 0
bg_event 16, 81, 0, 8, 0, ITEM_TINY_MUSHROOM, 0, 0
bg_event 16, 28, 0, 8, 0, 113, 0, 0
- bg_event 17, 82, 3, 7, 0, ITEM_CALCIUM, 5, 0
- bg_event 38, 63, 3, 7, 0, ITEM_ULTRA_BALL, 6, 0
+ bg_hidden_item_event 17, 82, 3, ITEM_CALCIUM, FLAG_HIDDEN_ITEM_5
+ bg_hidden_item_event 38, 63, 3, ITEM_ULTRA_BALL, FLAG_HIDDEN_ITEM_6
bg_event 26, 81, 0, 8, 0, ITEM_FULL_HEAL, 0, 0
bg_event 19, 76, 0, 8, 0, ITEM_LANSAT_BERRY, 0, 0
bg_event 18, 76, 0, 8, 0, ITEM_DEEP_SEA_SCALE, 0, 0
bg_event 4, 15, 0, 8, 0, ITEM_METAL_POWDER, 0, 0
bg_event 6, 2, 0, 8, 0, 233, 0, 0
- bg_event 26, 120, 3, 7, 0, ITEM_FULL_HEAL, 68, 0
- bg_event 20, 29, 3, 7, 0, ITEM_MAX_ETHER, 87, 0
+ bg_hidden_item_event 26, 120, 3, ITEM_FULL_HEAL, FLAG_HIDDEN_ITEM_44
+ bg_hidden_item_event 20, 29, 3, ITEM_MAX_ETHER, FLAG_HIDDEN_ITEM_57
bg_event 28, 9, 0, 0, 0, Route119_EventScript_151605
Route119_MapEvents:: @ 8383F1C
diff --git a/data/maps/events/Route120.inc b/data/maps/events/Route120.inc
index 65fa580b3..b326c703a 100644
--- a/data/maps/events/Route120.inc
+++ b/data/maps/events/Route120.inc
@@ -76,10 +76,10 @@ Route120_MapBGEvents:: @ 8384448
bg_event 18, 12, 0, 8, 0, ITEM_SUN_STONE, 0, 0
bg_event 38, 54, 0, 8, 0, ITEM_SOFT_SAND, 0, 0
bg_event 31, 23, 0, 8, 0, ITEM_SPELL_TAG, 0, 0
- bg_event 9, 1, 3, 7, 0, ITEM_RARE_CANDY, 71, 0
- bg_event 31, 11, 3, 7, 0, ITEM_REVIVE, 84, 0
- bg_event 0, 86, 3, 7, 0, ITEM_RARE_CANDY, 69, 0
- bg_event 24, 42, 3, 7, 0, ITEM_ZINC, 70, 0
+ bg_hidden_item_event 9, 1, 3, ITEM_RARE_CANDY, FLAG_HIDDEN_ITEM_47
+ bg_hidden_item_event 31, 11, 3, ITEM_REVIVE, FLAG_HIDDEN_ITEM_54
+ bg_hidden_item_event 0, 86, 3, ITEM_RARE_CANDY, FLAG_HIDDEN_ITEM_45
+ bg_hidden_item_event 24, 42, 3, ITEM_ZINC, FLAG_HIDDEN_ITEM_46
bg_event 5, 76, 0, 8, 0, ITEM_HARD_STONE, 0, 0
Route120_MapEvents:: @ 83844F0
diff --git a/data/maps/events/Route121.inc b/data/maps/events/Route121.inc
index 0aae42562..a475d78a2 100644
--- a/data/maps/events/Route121.inc
+++ b/data/maps/events/Route121.inc
@@ -38,9 +38,9 @@ Route121_MapBGEvents:: @ 838475C
bg_event 43, 7, 0, 8, 0, ITEM_NOMEL_BERRY, 0, 0
bg_event 42, 7, 0, 8, 0, ITEM_APICOT_BERRY, 0, 0
bg_event 39, 6, 0, 0, 0, Route121_EventScript_151B1C
- bg_event 23, 10, 3, 7, 0, ITEM_HP_UP, 39, 0
- bg_event 58, 3, 3, 7, 0, ITEM_NUGGET, 40, 0
- bg_event 72, 5, 3, 7, 0, ITEM_FULL_HEAL, 73, 0
+ bg_hidden_item_event 23, 10, 3, ITEM_HP_UP, FLAG_HIDDEN_ITEM_27
+ bg_hidden_item_event 58, 3, 3, ITEM_NUGGET, FLAG_HIDDEN_ITEM_28
+ bg_hidden_item_event 72, 5, 3, ITEM_FULL_HEAL, FLAG_HIDDEN_ITEM_49
Route121_MapEvents:: @ 83847C8
map_events Route121_MapObjects, Route121_MapWarps, Route121_MapCoordEvents, Route121_MapBGEvents
diff --git a/data/maps/events/Route123.inc b/data/maps/events/Route123.inc
index a861aa4fc..291deb4e1 100644
--- a/data/maps/events/Route123.inc
+++ b/data/maps/events/Route123.inc
@@ -66,11 +66,11 @@ Route123_MapBGEvents:: @ 8384C90
bg_event 47, 3, 0, 8, 0, 82, 0, 0
bg_event 49, 3, 0, 8, 0, 92, 0, 0
bg_event 10, 12, 3, 0, 0, Route123_EventScript_151CB6
- bg_event 75, 1, 3, 7, 0, ITEM_SUPER_REPEL, 7, 0
+ bg_hidden_item_event 75, 1, 3, ITEM_SUPER_REPEL, FLAG_HIDDEN_ITEM_7
bg_event 20, 7, 3, 0, 0, Route123_EventScript_151CC8
bg_event 57, 5, 0, 8, 0, ITEM_SUPER_REPEL, 0, 0
- bg_event 12, 1, 3, 7, 0, ITEM_REVIVE, 41, 0
- bg_event 91, 15, 3, 7, 0, ITEM_HYPER_POTION, 74, 0
+ bg_hidden_item_event 12, 1, 3, ITEM_REVIVE, FLAG_HIDDEN_ITEM_29
+ bg_hidden_item_event 91, 15, 3, ITEM_HYPER_POTION, FLAG_HIDDEN_ITEM_4A
Route123_MapEvents:: @ 8384CFC
map_events Route123_MapObjects, Route123_MapWarps, Route123_MapCoordEvents, Route123_MapBGEvents
diff --git a/data/maps/events/Route128.inc b/data/maps/events/Route128.inc
index 555101a97..2bef2e3ed 100644
--- a/data/maps/events/Route128.inc
+++ b/data/maps/events/Route128.inc
@@ -9,9 +9,9 @@ Route128_MapObjects:: @ 83850D0
object_event 8, MAP_OBJ_GFX_WOMAN_7, 0, 47, 0, 9, 0, 3, 10, 17, 0, 1, 0, 3, 0, Route128_EventScript_152320, 0, 0, 0
Route128_MapBGEvents:: @ 8385190
- bg_event 49, 9, 3, 7, 0, ITEM_HEART_SCALE, 92, 0
- bg_event 57, 21, 3, 7, 0, ITEM_HEART_SCALE, 93, 0
- bg_event 31, 33, 3, 7, 0, ITEM_HEART_SCALE, 94, 0
+ bg_hidden_item_event 49, 9, 3, ITEM_HEART_SCALE, FLAG_HIDDEN_ITEM_5C
+ bg_hidden_item_event 57, 21, 3, ITEM_HEART_SCALE, FLAG_HIDDEN_ITEM_5D
+ bg_hidden_item_event 31, 33, 3, ITEM_HEART_SCALE, FLAG_HIDDEN_ITEM_5E
Route128_MapEvents:: @ 83851B4
map_events Route128_MapObjects, 0x0, 0x0, Route128_MapBGEvents
diff --git a/data/maps/events/SSTidalLowerDeck.inc b/data/maps/events/SSTidalLowerDeck.inc
index 74c8458ce..59d783f61 100644
--- a/data/maps/events/SSTidalLowerDeck.inc
+++ b/data/maps/events/SSTidalLowerDeck.inc
@@ -6,7 +6,7 @@ SSTidalLowerDeck_MapWarps:: @ 8391874
warp_def 15, 2, 3, 8, MAP_SS_TIDAL_CORRIDOR
SSTidalLowerDeck_MapBGEvents:: @ 839187C
- bg_event 0, 2, 0, 7, 0, ITEM_LEFTOVERS, 35, 0
+ bg_hidden_item_event 0, 2, 0, ITEM_LEFTOVERS, FLAG_HIDDEN_ITEM_23
SSTidalLowerDeck_MapEvents:: @ 8391888
map_events SSTidalLowerDeck_MapObjects, SSTidalLowerDeck_MapWarps, 0x0, SSTidalLowerDeck_MapBGEvents
diff --git a/data/maps/events/Underwater1.inc b/data/maps/events/Underwater1.inc
index e67181a50..12b3cf72b 100644
--- a/data/maps/events/Underwater1.inc
+++ b/data/maps/events/Underwater1.inc
@@ -1,11 +1,11 @@
Underwater1_MapBGEvents:: @ 8385518
- bg_event 42, 51, 0, 7, 0, ITEM_CARBOS, 8, 0
- bg_event 14, 40, 0, 7, 0, ITEM_GREEN_SHARD, 9, 0
- bg_event 66, 34, 3, 7, 0, ITEM_PEARL, 10, 0
- bg_event 64, 54, 3, 7, 0, ITEM_BIG_PEARL, 11, 0
- bg_event 70, 64, 3, 7, 0, ITEM_HEART_SCALE, 13, 0
- bg_event 42, 5, 3, 7, 0, ITEM_CALCIUM, 36, 0
- bg_event 45, 36, 3, 7, 0, ITEM_HEART_SCALE, 38, 0
+ bg_hidden_item_event 42, 51, 0, ITEM_CARBOS, FLAG_HIDDEN_ITEM_8
+ bg_hidden_item_event 14, 40, 0, ITEM_GREEN_SHARD, FLAG_HIDDEN_ITEM_9
+ bg_hidden_item_event 66, 34, 3, ITEM_PEARL, FLAG_HIDDEN_ITEM_A
+ bg_hidden_item_event 64, 54, 3, ITEM_BIG_PEARL, FLAG_HIDDEN_ITEM_B
+ bg_hidden_item_event 70, 64, 3, ITEM_HEART_SCALE, FLAG_HIDDEN_ITEM_D
+ bg_hidden_item_event 42, 5, 3, ITEM_CALCIUM, FLAG_HIDDEN_ITEM_24
+ bg_hidden_item_event 45, 36, 3, ITEM_HEART_SCALE, FLAG_HIDDEN_ITEM_26
Underwater1_MapEvents:: @ 838556C
map_events 0x0, 0x0, 0x0, Underwater1_MapBGEvents
diff --git a/data/maps/events/Underwater2.inc b/data/maps/events/Underwater2.inc
index 89b36919b..a628cf972 100644
--- a/data/maps/events/Underwater2.inc
+++ b/data/maps/events/Underwater2.inc
@@ -2,14 +2,14 @@ Underwater2_MapWarps:: @ 8385580
warp_def 45, 65, 0, 0, MAP_UNDERWATER_SOOTOPOLIS_CITY
Underwater2_MapBGEvents:: @ 8385588
- bg_event 30, 17, 3, 7, 0, ITEM_HEART_SCALE, 14, 0
- bg_event 41, 19, 3, 7, 0, ITEM_ULTRA_BALL, 15, 0
- bg_event 63, 19, 3, 7, 0, ITEM_STARDUST, 16, 0
- bg_event 10, 36, 3, 7, 0, ITEM_PEARL, 17, 0
- bg_event 11, 39, 3, 7, 0, ITEM_IRON, 19, 0
- bg_event 12, 35, 3, 7, 0, ITEM_YELLOW_SHARD, 18, 0
- bg_event 65, 60, 3, 7, 0, ITEM_BIG_PEARL, 20, 0
- bg_event 9, 77, 3, 7, 0, ITEM_BLUE_SHARD, 12, 0
+ bg_hidden_item_event 30, 17, 3, ITEM_HEART_SCALE, FLAG_HIDDEN_ITEM_E
+ bg_hidden_item_event 41, 19, 3, ITEM_ULTRA_BALL, FLAG_HIDDEN_ITEM_F
+ bg_hidden_item_event 63, 19, 3, ITEM_STARDUST, FLAG_HIDDEN_ITEM_10
+ bg_hidden_item_event 10, 36, 3, ITEM_PEARL, FLAG_HIDDEN_ITEM_11
+ bg_hidden_item_event 11, 39, 3, ITEM_IRON, FLAG_HIDDEN_ITEM_13
+ bg_hidden_item_event 12, 35, 3, ITEM_YELLOW_SHARD, FLAG_HIDDEN_ITEM_12
+ bg_hidden_item_event 65, 60, 3, ITEM_BIG_PEARL, FLAG_HIDDEN_ITEM_14
+ bg_hidden_item_event 9, 77, 3, ITEM_BLUE_SHARD, FLAG_HIDDEN_ITEM_C
Underwater2_MapEvents:: @ 83855E8
map_events 0x0, Underwater2_MapWarps, 0x0, Underwater2_MapBGEvents
diff --git a/data/maps/events/Underwater3.inc b/data/maps/events/Underwater3.inc
index 1e0925650..62518bafa 100644
--- a/data/maps/events/Underwater3.inc
+++ b/data/maps/events/Underwater3.inc
@@ -1,8 +1,8 @@
Underwater3_MapBGEvents:: @ 83855FC
- bg_event 12, 42, 3, 7, 0, ITEM_STAR_PIECE, 21, 0
- bg_event 50, 36, 3, 7, 0, ITEM_HP_UP, 22, 0
- bg_event 34, 72, 3, 7, 0, ITEM_HEART_SCALE, 23, 0
- bg_event 72, 20, 3, 7, 0, ITEM_RED_SHARD, 24, 0
+ bg_hidden_item_event 12, 42, 3, ITEM_STAR_PIECE, FLAG_HIDDEN_ITEM_15
+ bg_hidden_item_event 50, 36, 3, ITEM_HP_UP, FLAG_HIDDEN_ITEM_16
+ bg_hidden_item_event 34, 72, 3, ITEM_HEART_SCALE, FLAG_HIDDEN_ITEM_17
+ bg_hidden_item_event 72, 20, 3, ITEM_RED_SHARD, FLAG_HIDDEN_ITEM_18
Underwater3_MapEvents:: @ 838562C
map_events 0x0, 0x0, 0x0, Underwater3_MapBGEvents
diff --git a/data/maps/events/Underwater4.inc b/data/maps/events/Underwater4.inc
index 1d3938031..fad99382b 100644
--- a/data/maps/events/Underwater4.inc
+++ b/data/maps/events/Underwater4.inc
@@ -2,8 +2,8 @@ Underwater4_MapWarps:: @ 8385640
warp_def 38, 26, 3, 0, MAP_UNDERWATER_SEAFLOOR_CAVERN
Underwater4_MapBGEvents:: @ 8385648
- bg_event 38, 19, 3, 7, 0, ITEM_PROTEIN, 25, 0
- bg_event 69, 18, 3, 7, 0, ITEM_PEARL, 26, 0
+ bg_hidden_item_event 38, 19, 3, ITEM_PROTEIN, FLAG_HIDDEN_ITEM_19
+ bg_hidden_item_event 69, 18, 3, ITEM_PEARL, FLAG_HIDDEN_ITEM_1A
Underwater4_MapEvents:: @ 8385660
map_events 0x0, Underwater4_MapWarps, 0x0, Underwater4_MapBGEvents
diff --git a/data/maps/events/VictoryRoad_1F.inc b/data/maps/events/VictoryRoad_1F.inc
index c88f9363c..31e1cebb6 100644
--- a/data/maps/events/VictoryRoad_1F.inc
+++ b/data/maps/events/VictoryRoad_1F.inc
@@ -20,7 +20,7 @@ VictoryRoad_1F_MapCoordEvents:: @ 838D9B4
coord_event 34, 5, 3, 0, VAR_VICTORY_ROAD_1F_STATE, 0, 0, VictoryRoad_1F_EventScript_15DEBF
VictoryRoad_1F_MapBGEvents:: @ 838D9E4
- bg_event 30, 39, 4, 7, 0, ITEM_ULTRA_BALL, 81, 0
+ bg_hidden_item_event 30, 39, 4, ITEM_ULTRA_BALL, FLAG_HIDDEN_ITEM_51
VictoryRoad_1F_MapEvents:: @ 838D9F0
map_events VictoryRoad_1F_MapObjects, VictoryRoad_1F_MapWarps, VictoryRoad_1F_MapCoordEvents, VictoryRoad_1F_MapBGEvents
diff --git a/data/maps/events/VictoryRoad_B2F.inc b/data/maps/events/VictoryRoad_B2F.inc
index e9d549f04..ffa8252d5 100644
--- a/data/maps/events/VictoryRoad_B2F.inc
+++ b/data/maps/events/VictoryRoad_B2F.inc
@@ -12,8 +12,8 @@ VictoryRoad_B2F_MapWarps:: @ 838DC90
warp_def 5, 26, 3, 6, MAP_VICTORY_ROAD_B1F
VictoryRoad_B2F_MapBGEvents:: @ 838DCB0
- bg_event 28, 5, 3, 7, 0, ITEM_ELIXIR, 82, 0
- bg_event 37, 1, 3, 7, 0, ITEM_MAX_REPEL, 83, 0
+ bg_hidden_item_event 28, 5, 3, ITEM_ELIXIR, FLAG_HIDDEN_ITEM_52
+ bg_hidden_item_event 37, 1, 3, ITEM_MAX_REPEL, FLAG_HIDDEN_ITEM_53
VictoryRoad_B2F_MapEvents:: @ 838DCC8
map_events VictoryRoad_B2F_MapObjects, VictoryRoad_B2F_MapWarps, 0x0, VictoryRoad_B2F_MapBGEvents
diff --git a/data/scripts/maps/Route116.inc b/data/scripts/maps/Route116.inc
index b1b331d00..5fab808bc 100644
--- a/data/scripts/maps/Route116.inc
+++ b/data/scripts/maps/Route116.inc
@@ -150,7 +150,7 @@ Route116_EventScript_150B8F:: @ 8150B8F
checkitem ITEM_BLACK_GLASSES, 1
compare RESULT, 1
goto_if_eq Route116_EventScript_150BCA
- specialvar RESULT, sub_810F828
+ specialvar RESULT, FoundBlackGlasses
compare RESULT, 1
goto_if_eq Route116_EventScript_150BBB
msgbox Route116_Text_1708EE, 4
@@ -166,7 +166,7 @@ Route116_EventScript_150BBB:: @ 8150BBB
Route116_EventScript_150BCA:: @ 8150BCA
msgbox Route116_Text_1708EE, 4
msgbox Route116_Text_170921, 4
- specialvar RESULT, sub_810F828
+ specialvar RESULT, FoundBlackGlasses
compare RESULT, 1
goto_if_eq Route116_EventScript_150BF4
msgbox Route116_Text_170A03, 4
diff --git a/data/specials.inc b/data/specials.inc
index 2924f2173..f39af822b 100644
--- a/data/specials.inc
+++ b/data/specials.inc
@@ -323,7 +323,7 @@ gSpecials::
def_special ScrSpecial_StartRegiBattle
def_special sub_8082524
def_special DoSealedChamberShakingEffect2
- def_special sub_810F828
+ def_special FoundBlackGlasses
def_special sub_807E25C
def_special sp13E_warp_to_last_warp
def_special sp13F_fall_to_last_warp
diff --git a/include/constants/flags.h b/include/constants/flags.h
index 40bac89a0..0e8c766f0 100644
--- a/include/constants/flags.h
+++ b/include/constants/flags.h
@@ -255,8 +255,109 @@
#define FLAG_RIVAL_LEFT_FOR_ROUTE103 0x12D
#define FLAG_OMIT_DIVE_FROM_STEVEN_LETTER 0x12E
-#define FLAG_UNKNOWN_2B8 0x2B8 // TODO: pokemon storage system?
-
+// hidden item flags
+#define FLAG_HIDDEN_ITEMS_START 0x258
+#define FLAG_HIDDEN_ITEM_0 0x258
+#define FLAG_HIDDEN_ITEM_1 0x259
+#define FLAG_HIDDEN_ITEM_2 0x25A
+#define FLAG_HIDDEN_ITEM_3 0x25B
+#define FLAG_HIDDEN_ITEM_4 0x25C
+#define FLAG_HIDDEN_ITEM_5 0x25D
+#define FLAG_HIDDEN_ITEM_6 0x25E
+#define FLAG_HIDDEN_ITEM_7 0x25F
+#define FLAG_HIDDEN_ITEM_8 0x260
+#define FLAG_HIDDEN_ITEM_9 0x261
+#define FLAG_HIDDEN_ITEM_A 0x262
+#define FLAG_HIDDEN_ITEM_B 0x263
+#define FLAG_HIDDEN_ITEM_C 0x264
+#define FLAG_HIDDEN_ITEM_D 0x265
+#define FLAG_HIDDEN_ITEM_E 0x266
+#define FLAG_HIDDEN_ITEM_F 0x267
+#define FLAG_HIDDEN_ITEM_10 0x268
+#define FLAG_HIDDEN_ITEM_11 0x269
+#define FLAG_HIDDEN_ITEM_12 0x26A
+#define FLAG_HIDDEN_ITEM_13 0x26B
+#define FLAG_HIDDEN_ITEM_14 0x26C
+#define FLAG_HIDDEN_ITEM_15 0x26D
+#define FLAG_HIDDEN_ITEM_16 0x26E
+#define FLAG_HIDDEN_ITEM_17 0x26F
+#define FLAG_HIDDEN_ITEM_18 0x270
+#define FLAG_HIDDEN_ITEM_19 0x271
+#define FLAG_HIDDEN_ITEM_1A 0x272
+#define FLAG_HIDDEN_ITEM_1B 0x273
+#define FLAG_HIDDEN_ITEM_1C 0x274
+#define FLAG_HIDDEN_ITEM_1D 0x275
+#define FLAG_HIDDEN_ITEM_1E 0x276
+#define FLAG_HIDDEN_ITEM_1F 0x277
+#define FLAG_HIDDEN_ITEM_20 0x278
+#define FLAG_HIDDEN_ITEM_21 0x279
+#define FLAG_HIDDEN_ITEM_22 0x27A
+#define FLAG_HIDDEN_ITEM_23 0x27B
+#define FLAG_HIDDEN_ITEM_24 0x27C
+#define FLAG_HIDDEN_ITEM_25 0x27D
+#define FLAG_HIDDEN_ITEM_26 0x27E
+#define FLAG_HIDDEN_ITEM_27 0x27F
+#define FLAG_HIDDEN_ITEM_28 0x280
+#define FLAG_HIDDEN_ITEM_29 0x281
+#define FLAG_HIDDEN_ITEM_2A 0x282
+#define FLAG_HIDDEN_ITEM_2B 0x283
+#define FLAG_HIDDEN_ITEM_2C 0x284
+#define FLAG_HIDDEN_ITEM_2D 0x285
+#define FLAG_HIDDEN_ITEM_2E 0x286
+#define FLAG_HIDDEN_ITEM_2F 0x287
+#define FLAG_HIDDEN_ITEM_30 0x288
+#define FLAG_HIDDEN_ITEM_31 0x289
+#define FLAG_HIDDEN_ITEM_32 0x28A
+#define FLAG_HIDDEN_ITEM_33 0x28B
+#define FLAG_HIDDEN_ITEM_34 0x28C
+#define FLAG_HIDDEN_ITEM_35 0x28D
+#define FLAG_HIDDEN_ITEM_36 0x28E
+#define FLAG_HIDDEN_ITEM_37 0x28F
+#define FLAG_HIDDEN_ITEM_38 0x290
+#define FLAG_HIDDEN_ITEM_39 0x291
+#define FLAG_HIDDEN_ITEM_3A 0x292
+#define FLAG_HIDDEN_ITEM_3B 0x293
+#define FLAG_HIDDEN_ITEM_3C 0x294
+#define FLAG_HIDDEN_ITEM_3D 0x295
+#define FLAG_HIDDEN_ITEM_3E 0x296
+#define FLAG_HIDDEN_ITEM_3F 0x297
+#define FLAG_HIDDEN_ITEM_40 0x298
+#define FLAG_HIDDEN_ITEM_41 0x299
+#define FLAG_HIDDEN_ITEM_42 0x29A
+#define FLAG_HIDDEN_ITEM_43 0x29B
+#define FLAG_HIDDEN_ITEM_44 0x29C
+#define FLAG_HIDDEN_ITEM_45 0x29D
+#define FLAG_HIDDEN_ITEM_46 0x29E
+#define FLAG_HIDDEN_ITEM_47 0x29F
+#define FLAG_HIDDEN_ITEM_48 0x2A0
+#define FLAG_HIDDEN_ITEM_49 0x2A1
+#define FLAG_HIDDEN_ITEM_4A 0x2A2
+#define FLAG_HIDDEN_ITEM_4B 0x2A3
+#define FLAG_HIDDEN_ITEM_4C 0x2A4
+#define FLAG_HIDDEN_ITEM_4D 0x2A5
+#define FLAG_HIDDEN_ITEM_4E 0x2A6
+#define FLAG_HIDDEN_ITEM_4F 0x2A7
+#define FLAG_HIDDEN_ITEM_50 0x2A8
+#define FLAG_HIDDEN_ITEM_51 0x2A9
+#define FLAG_HIDDEN_ITEM_52 0x2AA
+#define FLAG_HIDDEN_ITEM_53 0x2AB
+#define FLAG_HIDDEN_ITEM_54 0x2AC
+#define FLAG_HIDDEN_ITEM_55 0x2AD
+#define FLAG_HIDDEN_ITEM_56 0x2AE
+#define FLAG_HIDDEN_ITEM_57 0x2AF
+#define FLAG_HIDDEN_ITEM_58 0x2B0
+#define FLAG_HIDDEN_ITEM_59 0x2B1
+#define FLAG_HIDDEN_ITEM_5A 0x2B2
+#define FLAG_HIDDEN_ITEM_5B 0x2B3
+#define FLAG_HIDDEN_ITEM_5C 0x2B4
+#define FLAG_HIDDEN_ITEM_5D 0x2B5
+#define FLAG_HIDDEN_ITEM_5E 0x2B6
+#define FLAG_HIDDEN_ITEM_5F 0x2B7
+#define FLAG_HIDDEN_ITEM_60 0x2B8
+#define FLAG_HIDDEN_ITEM_61 0x2B9
+
+
+// map object hide/show flags
#define FLAG_HIDE_BIRCH_STARTERS_BAG 0x2BC
#define FLAG_HIDE_BIRCH_BATTLE_POOCHYENA 0x2D0
diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h
index 20190dcb7..a828cf131 100644
--- a/include/global.fieldmap.h
+++ b/include/global.fieldmap.h
@@ -119,9 +119,9 @@ struct BgEvent
// in gen 3, "kind" (0x3 in BgEvent struct) determines the method to read the union.
u8 *script;
- // hidden item type probably
+ // hidden item type
struct {
- u8 filler6[0x2];
+ u16 item;
u16 hiddenItemId; // flag offset to determine flag lookup
} hiddenItem;
diff --git a/src/field/field_control_avatar.c b/src/field/field_control_avatar.c
index cd7d3a2e2..b63ebf87a 100644
--- a/src/field/field_control_avatar.c
+++ b/src/field/field_control_avatar.c
@@ -355,7 +355,7 @@ static u8 *TryGetInvisibleMapObjectScript(struct MapPosition *position, u8 unuse
case 5:
case 6:
case 7:
- gSpecialVar_0x8004 = ((u32)bgEvent->bgUnion.script >> 16) + 0x258;
+ gSpecialVar_0x8004 = ((u32)bgEvent->bgUnion.script >> 16) + FLAG_HIDDEN_ITEMS_START;
gSpecialVar_0x8005 = (u32)bgEvent->bgUnion.script;
if (FlagGet(gSpecialVar_0x8004) == TRUE)
return NULL;
diff --git a/src/field/field_specials.c b/src/field/field_specials.c
index 8cb1ba487..37a413c93 100644
--- a/src/field/field_specials.c
+++ b/src/field/field_specials.c
@@ -1995,9 +1995,9 @@ static void sub_810F814(u8 taskId)
EnableBothScriptContexts();
}
-bool8 sub_810F828(void)
+bool8 FoundBlackGlasses(void)
{
- return FlagGet(FLAG_UNKNOWN_2B8);
+ return FlagGet(FLAG_HIDDEN_ITEM_60);
}
void SetRoute119Weather(void)
diff --git a/src/field/item_use.c b/src/field/item_use.c
index cf5f05eb9..e1fdddce0 100644
--- a/src/field/item_use.c
+++ b/src/field/item_use.c
@@ -14,6 +14,7 @@
#include "fieldmap.h"
#include "item.h"
#include "item_menu.h"
+#include "constants/flags.h"
#include "constants/items.h"
#include "mail.h"
#include "main.h"
@@ -328,7 +329,7 @@ bool8 ItemfinderCheckForHiddenItems(struct MapEvents *events, u8 taskId)
for (i = 0; i < events->bgEventCount; i++)
{
- if ((events -> bgEvents[i].kind == 7) && !FlagGet(events -> bgEvents[i].bgUnion.hiddenItem.hiddenItemId + 600))
+ if ((events -> bgEvents[i].kind == 7) && !FlagGet(events -> bgEvents[i].bgUnion.hiddenItem.hiddenItemId + FLAG_HIDDEN_ITEMS_START))
{
// do a distance lookup of each item so long as the index remains less than the objects on the current map.
distanceX = (u16)events -> bgEvents[i].x + 7;
@@ -360,7 +361,7 @@ bool8 HiddenItemAtPos(struct MapEvents *events, s16 x, s16 y)
{
if (bgEvent[i].kind == 7 && x == (u16)bgEvent[i].x && y == (u16)bgEvent[i].y) // hidden item and coordinates matches x and y passed?
{
- if (!FlagGet(bgEvent[i].bgUnion.hiddenItem.hiddenItemId + 600))
+ if (!FlagGet(bgEvent[i].bgUnion.hiddenItem.hiddenItemId + FLAG_HIDDEN_ITEMS_START))
return TRUE;
else
return FALSE;