diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/constants/songs.h | 2 | ||||
-rw-r--r-- | include/global.h | 10 | ||||
-rw-r--r-- | include/load_save.h | 10 | ||||
-rw-r--r-- | include/menu.h | 3 | ||||
-rw-r--r-- | include/overworld.h | 41 | ||||
-rw-r--r-- | include/save_location.h | 6 |
6 files changed, 38 insertions, 34 deletions
diff --git a/include/constants/songs.h b/include/constants/songs.h index 58a8e725c..a459edd24 100644 --- a/include/constants/songs.h +++ b/include/constants/songs.h @@ -536,6 +536,6 @@ #define PH_NURSE_HELD 608 #define PH_NURSE_SOLO 609 -#define MUS_ROUTE_118 0x7FFF // What is this for? +#define MUS_ROUTE_118 0x7FFF // map is split into 2 music sections. controlled by GetCurrLocationDefaultMusic(). #endif // GUARD_CONSTANTS_SONGS_H diff --git a/include/global.h b/include/global.h index 090ba7ce4..4656f3968 100644 --- a/include/global.h +++ b/include/global.h @@ -521,7 +521,7 @@ struct SaveBlock2 { /*0x00*/ u8 playerName[PLAYER_NAME_LENGTH + 1]; /*0x08*/ u8 playerGender; // MALE, FEMALE - /*0x09*/ u8 specialSaveWarp; + /*0x09*/ u8 specialSaveWarpFlags; /*0x0A*/ u8 playerTrainerId[4]; /*0x0E*/ u16 playTimeHours; /*0x10*/ u8 playTimeMinutes; @@ -889,10 +889,10 @@ struct SaveBlock1 { /*0x00*/ struct Coords16 pos; /*0x04*/ struct WarpData location; - /*0x0C*/ struct WarpData warp1; - /*0x14*/ struct WarpData warp2; - /*0x1C*/ struct WarpData lastHealLocation; - /*0x24*/ struct WarpData warp4; + /*0x0C*/ struct WarpData continueGameWarp; + /*0x14*/ struct WarpData dynamicWarp; + /*0x1C*/ struct WarpData lastHealLocation; // used by white-out and teleport + /*0x24*/ struct WarpData escapeWarp; // used by Dig and Escape Rope /*0x2C*/ u16 savedMusic; /*0x2E*/ u8 weather; /*0x2F*/ u8 weatherCycleStage; diff --git a/include/load_save.h b/include/load_save.h index c64a1179b..bf50bffd7 100644 --- a/include/load_save.h +++ b/include/load_save.h @@ -15,11 +15,11 @@ void ClearSav2(void); void ClearSav1(void); void SetSaveBlocksPointers(u16 offset); void MoveSaveBlocks_ResetHeap(void); -u32 GetSecretBase2Field_9(void); -void ClearSecretBase2Field_9(void); -void SetSecretBase2Field_9(void); -void sub_8076D5C(void); -void sav2_gender2_inplace_and_xFE(void); +u32 UseContinueGameWarp(void); +void ClearContinueGameWarpStatus(void); +void SetContinueGameWarpStatus(void); +void SetContinueGameWarpStatusToDynamicWarp(void); +void ClearContinueGameWarpStatus2(void); void SavePlayerParty(void); void LoadPlayerParty(void); void SaveEventObjects(void); diff --git a/include/menu.h b/include/menu.h index 9b2341e58..aca462468 100644 --- a/include/menu.h +++ b/include/menu.h @@ -20,7 +20,8 @@ struct MenuAction extern const u16 gUnknown_0860F074[]; -void sub_81971D0(void); +void FreeAllOverworldWindowBuffers(void); +void InitStandardTextBoxWindows(void); void sub_8197200(void); u16 RunTextPrintersAndIsPrinter0Active(void); void sub_81973A4(void); diff --git a/include/overworld.h b/include/overworld.h index 1f53662b3..f62a5136d 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -46,28 +46,25 @@ void Overworld_SetEventObjTemplateCoords(u8 localId, s16 x, s16 y); void Overworld_SetEventObjTemplateMovementType(u8 localId, u8 movementType); const struct MapLayout *GetMapLayout(void); void ApplyCurrentWarp(void); -void set_warp2_warp3_to_neg_1(void); struct MapHeader const *const Overworld_GetMapHeaderByGroupAndId(u16 mapGroup, u16 mapNum); struct MapHeader const *const GetDestinationWarpMapHeader(void); void WarpIntoMap(void); -void Overworld_SetWarpDestination(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y); -void warp1_set_2(s8 mapGroup, s8 mapNum, s8 warpId); -void saved_warp2_set(s32 unused, s8 mapGroup, s8 mapNum, s8 warpId); -void saved_warp2_set_2(s32 unused, s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y); -void copy_saved_warp2_bank_and_enter_x_to_warp1(u8 unused); -void sub_8084CCC(u8 a1); -void Overworld_SetWarpDestToLastHealLoc(void); -void Overworld_SetHealLocationWarp(u8 healLocationId); -void sub_8084D5C(s16 a1, s16 a2); -void sub_8084DD4(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y); -void sub_8084E14(void); +void SetWarpDestination(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y); +void SetWarpDestinationToMapWarp(s8 mapGroup, s8 mapNum, s8 warpId); +void SetDynamicWarp(s32 unused, s8 mapGroup, s8 mapNum, s8 warpId); +void SetDynamicWarpWithCoords(s32 unused, s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y); +void SetWarpDestinationToDynamicWarp(u8 unused); +void SetWarpDestinationToHealLocation(u8 a1); +void SetWarpDestinationToLastHealLocation(void); +void SetLastHealLocationWarp(u8 healLocationId); +void sub_8084D5C(s16 x, s16 y); +void SetEscapeWarp(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y); +void SetWarpDestinationToEscapeWarp(void); void SetFixedDiveWarp(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y); void SetFixedHoleWarp(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y); -void SetFixedHoleWarpAsDestination(s16 x, s16 y); -void warp1_set_to_sav1w(void); -void sub_8084F2C(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y); -void sub_8084F6C(u8 a1); -void sub_8084FAC(int unused); +void SetWarpDestinationToFixedHoleWarp(s16 x, s16 y); +void SetContinueGameWarpToHealLocation(u8 a1); +void SetContinueGameWarpToDynamicWarp(int unused); const struct MapConnection *GetMapConnection(u8 dir); bool8 SetDiveWarpEmerge(u16 x, u16 y); bool8 SetDiveWarpDive(u16 x, u16 y); @@ -78,7 +75,7 @@ bool32 Overworld_IsBikingAllowed(void); void SetDefaultFlashLevel(void); void Overworld_SetFlashLevel(s32 flashLevel); u8 Overworld_GetFlashLevel(void); -void sub_8085524(u16 mapLayoutId); +void SetCurrentMapLayout(u16 mapLayoutId); void sub_8085540(u8 var); u8 sub_808554C(void); u16 GetLocationMusic(struct WarpData *warp); @@ -97,15 +94,15 @@ void Overworld_FadeOutMapMusic(void); void UpdateAmbientCry(s16 *state, u16 *delayCounter); u8 GetMapTypeByGroupAndId(s8 mapGroup, s8 mapNum); u8 GetMapTypeByWarpData(struct WarpData *warp); -u8 Overworld_GetMapTypeOfSaveblockLocation(void); +u8 GetCurrentMapType(void); u8 GetLastUsedWarpMapType(void); bool8 is_map_type_1_2_3_5_or_6(u8 mapType); bool8 Overworld_MapTypeAllowsTeleportAndFly(u8 mapType); bool8 Overworld_MapTypeIsIndoors(u8 mapType); -u8 sav1_saved_warp2_map_get_name(void); -u8 sav1_map_get_name(void); +u8 GetSavedWarpRegionMapSectionId(void); +u8 GetCurrentRegionMapSectionId(void); u8 GetCurrentMapBattleScene(void); -void overworld_free_bg_tilemaps(void); +void CleanupOverworldWindowsAndTilemaps(void); bool32 is_c1_link_related_active(void); void CB1_Overworld(void); void CB2_OverworldBasic(void); diff --git a/include/save_location.h b/include/save_location.h index 71dbd3fd8..c330124ad 100644 --- a/include/save_location.h +++ b/include/save_location.h @@ -1,6 +1,12 @@ #ifndef GUARD_SAVE_LOCATION_H #define GUARD_SAVE_LOCATION_H +// specialSaveWarp flags +#define CONTINUE_GAME_WARP (1 << 0) +#define POKECENTER_SAVEWARP (1 << 1) +#define LOBBY_SAVEWARP (1 << 2) +#define UNK_SPECIAL_SAVE_WARP_FLAG_3 (1 << 3) + void TrySetMapSaveWarpStatus(void); void sub_81AFDA0(void); void sub_81AFDD0(void); |