diff options
Diffstat (limited to 'src/trainer_tower.c')
-rw-r--r-- | src/trainer_tower.c | 183 |
1 files changed, 1 insertions, 182 deletions
diff --git a/src/trainer_tower.c b/src/trainer_tower.c index e3fb9da95..def4fc37d 100644 --- a/src/trainer_tower.c +++ b/src/trainer_tower.c @@ -25,16 +25,7 @@ #include "menu.h" #include "new_menu_helpers.h" #include "sound.h" - -struct UnkStruct_8479D34 -{ - s8 mapGroup; - s8 mapNum; - u8 filler[2]; - u8 flags1[8]; - u8 flags2[8]; - u8 flags3[8]; -}; +#include "renewable_hidden_items.h" struct UnkStruct_203F458 { @@ -80,7 +71,6 @@ EWRAM_DATA struct UnkStruct_203F458 * gUnknown_203F458 = NULL; EWRAM_DATA struct UnkStruct_203F45C * gUnknown_203F45C = NULL; EWRAM_DATA u8 unused_variable = 0; -void sub_815D96C(void); void sub_815DC8C(void); // setup void sub_815DD2C(void); // teardown void sub_815DD44(void); @@ -117,99 +107,6 @@ extern const u8 gUnknown_83FE982[]; extern const u8 gUnknown_83FE998[]; extern const u8 *const gUnknown_83FE9C4[]; -const struct UnkStruct_8479D34 gUnknown_8479D34[] = { - { - MAP_GROUP(ROUTE20), MAP_NUM(ROUTE20), - .flags1 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags2 = {0x99, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags3 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff} - }, - { - MAP_GROUP(ROUTE21_NORTH), MAP_NUM(ROUTE21_NORTH), - .flags1 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags2 = {0x9a, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags3 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff} - }, - { - MAP_GROUP(UNDERGROUND_PATH_NORTH_SOUTH_TUNNEL), MAP_NUM(UNDERGROUND_PATH_NORTH_SOUTH_TUNNEL), - .flags1 = {0x4c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags2 = {0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0xff, 0xff}, - .flags3 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff} - }, - { - MAP_GROUP(UNDERGROUND_PATH_EAST_WEST_TUNNEL), MAP_NUM(UNDERGROUND_PATH_EAST_WEST_TUNNEL), - .flags1 = {0x53, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags2 = {0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0xff, 0xff}, - .flags3 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff} - }, - { - MAP_GROUP(SEVEN_ISLAND_TANOBY_RUINS), MAP_NUM(SEVEN_ISLAND_TANOBY_RUINS), - .flags1 = {0x40, 0x41, 0x42, 0x43, 0xff, 0xff, 0xff, 0xff}, - .flags2 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags3 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff} - }, - { - MAP_GROUP(MT_MOON_B1F), MAP_NUM(MT_MOON_B1F), - .flags1 = {0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0xff, 0xff}, - .flags2 = {0x54, 0x55, 0x56, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags3 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff} - }, - { - MAP_GROUP(THREE_ISLAND_BERRY_FOREST), MAP_NUM(THREE_ISLAND_BERRY_FOREST), - .flags1 = {0x5b, 0x5d, 0x5e, 0x5f, 0x63, 0x64, 0x65, 0x66}, - .flags2 = {0x5b, 0x5d, 0x5e, 0x5f, 0x63, 0x64, 0x65, 0xff}, - .flags3 = {0x5a, 0x5c, 0x60, 0x61, 0x62, 0xff, 0xff, 0xff} - }, - { - MAP_GROUP(ONE_ISLAND_TREASURE_BEACH), MAP_NUM(ONE_ISLAND_TREASURE_BEACH), - .flags1 = {0x6b, 0x6c, 0x6d, 0x6e, 0xff, 0xff, 0xff, 0xff}, - .flags2 = {0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0xff, 0xff}, - .flags3 = {0x6b, 0x6c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff} - }, - { - MAP_GROUP(THREE_ISLAND_BOND_BRIDGE), MAP_NUM(THREE_ISLAND_BOND_BRIDGE), - .flags1 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags2 = {0xa6, 0xa7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags3 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff} - }, - { - MAP_GROUP(FOUR_ISLAND), MAP_NUM(FOUR_ISLAND), - .flags1 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags2 = {0xa8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags3 = {0xa9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff} - }, - { - MAP_GROUP(FIVE_ISLAND_MEMORIAL_PILLAR), MAP_NUM(FIVE_ISLAND_MEMORIAL_PILLAR), - .flags1 = {0xaa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags2 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags3 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff} - }, - { - MAP_GROUP(FIVE_ISLAND_RESORT_GORGEOUS), MAP_NUM(FIVE_ISLAND_RESORT_GORGEOUS), - .flags1 = {0xae, 0xb0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags2 = {0xaf, 0xb1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags3 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff} - }, - { - MAP_GROUP(SIX_ISLAND_OUTCAST_ISLAND), MAP_NUM(SIX_ISLAND_OUTCAST_ISLAND), - .flags1 = {0xb2, 0xb3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags2 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags3 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff} - }, - { - MAP_GROUP(SIX_ISLAND_GREEN_PATH), MAP_NUM(SIX_ISLAND_GREEN_PATH), - .flags1 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags2 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags3 = {0xb4, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff} - }, - { - MAP_GROUP(SEVEN_ISLAND_TRAINER_TOWER), MAP_NUM(SEVEN_ISLAND_TRAINER_TOWER), - .flags1 = {0xb9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags2 = {0xba, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, - .flags3 = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff} - }, -}; - const struct UnkStruct_8479ED8 gUnknown_8479ED8[] = { {0x1c, 0x03, 0x01}, {0x38, 0x04, 0x00}, @@ -532,84 +429,6 @@ const u8 gUnknown_847A30E[][3] = { extern const struct Unk_203F458_Header gUnknown_84827AC; extern const struct TrainerTowerTrainer *const gUnknown_84827B4[][8]; -bool32 sub_815D834(void) -{ - // Stubbed out? - return FALSE; -} - -void sub_815D838(void) -{ - u8 i, j; - - for (i = 0; i < 15; i++) - { - const u8 * flags1 = gUnknown_8479D34[i].flags1; - const u8 * flags2 = gUnknown_8479D34[i].flags2; - const u8 * flags3 = gUnknown_8479D34[i].flags3; - for (j = 0; j < 8; j++) - { - if (flags1[j] != 0xFF) - FlagSet(FLAG_TRAINER_TOWER_START + flags1[j]); - if (flags2[j] != 0xFF) - FlagSet(FLAG_TRAINER_TOWER_START + flags2[j]); - if (flags3[j] != 0xFF) - FlagSet(FLAG_TRAINER_TOWER_START + flags3[j]); - } - } -} - -void sub_815D8C8(void) -{ - u16 var = VarGet(VAR_0x4023); - if (var < 1500) { - VarSet(VAR_0x4023, var + 1); - } -} - -void sub_815D8F8(void) -{ - u8 i; - u8 found_map = 0xFF; - for (i = 0; i < 15; i++) - { - if (gUnknown_8479D34[i].mapGroup == gSaveBlock1Ptr->location.mapGroup && gUnknown_8479D34[i].mapNum == gSaveBlock1Ptr->location.mapNum) - found_map = i; - } - - if (found_map == 0xFF) - return; - if (VarGet(VAR_0x4023) >= 1500) - { - VarSet(VAR_0x4023, 0); - sub_815D838(); - sub_815D96C(); - } -} - -void sub_815D96C(void) -{ - u8 i, j; - const u8 * flags; - u16 rval; - - for (i = 0; i < 15; i++) - { - rval = Random() % 100; - if (rval >= 90) - flags = gUnknown_8479D34[i].flags1; - else if (rval >= 60) - flags = gUnknown_8479D34[i].flags2; - else - flags = gUnknown_8479D34[i].flags3; - for (j = 0; j < 8; j++) - { - if (flags[j] != 0xFF) - FlagClear(FLAG_TRAINER_TOWER_START + flags[j]); - } - } -} - void sub_815D9E8(void) { sub_815DC8C(); |