mirror of
https://github.com/pret/pokeplatinum.git
synced 2026-04-26 08:41:27 -05:00
Document most of system_data.c
This commit is contained in:
parent
119135dde3
commit
81b9a3c9c9
|
|
@ -1,6 +0,0 @@
|
|||
#ifndef POKEPLATINUM_STRUCT_02025CCC_DECL_H
|
||||
#define POKEPLATINUM_STRUCT_02025CCC_DECL_H
|
||||
|
||||
typedef struct UnkStruct_02025CCC_t UnkStruct_02025CCC;
|
||||
|
||||
#endif // POKEPLATINUM_STRUCT_02025CCC_DECL_H
|
||||
|
|
@ -2,7 +2,6 @@
|
|||
#define POKEPLATINUM_STRUCT_0203E0FC_H
|
||||
|
||||
#include "struct_decls/pokedexdata_decl.h"
|
||||
#include "struct_decls/struct_02025CCC_decl.h"
|
||||
#include "struct_decls/struct_0202B370_decl.h"
|
||||
#include "struct_decls/struct_0202C878_decl.h"
|
||||
#include "struct_decls/struct_0202DA40_decl.h"
|
||||
|
|
@ -14,11 +13,12 @@
|
|||
#include "game_records.h"
|
||||
#include "journal.h"
|
||||
#include "savedata.h"
|
||||
#include "system_data.h"
|
||||
#include "trainer_info.h"
|
||||
|
||||
typedef struct {
|
||||
UnkStruct_0202DA40 *unk_00;
|
||||
UnkStruct_02025CCC *unk_04;
|
||||
SystemData *unk_04;
|
||||
Party *unk_08;
|
||||
PCBoxes *unk_0C;
|
||||
PokedexData *unk_10;
|
||||
|
|
|
|||
|
|
@ -1,16 +0,0 @@
|
|||
#ifndef POKEPLATINUM_STRUCT_02055BA8_H
|
||||
#define POKEPLATINUM_STRUCT_02055BA8_H
|
||||
|
||||
#include <nitro/rtc.h>
|
||||
|
||||
typedef struct {
|
||||
BOOL unk_00;
|
||||
RTCDate unk_04;
|
||||
RTCTime unk_14;
|
||||
u32 unk_20;
|
||||
s64 unk_24;
|
||||
s64 unk_2C;
|
||||
u32 unk_34;
|
||||
} UnkStruct_02055BA8;
|
||||
|
||||
#endif // POKEPLATINUM_STRUCT_02055BA8_H
|
||||
|
|
@ -3,17 +3,17 @@
|
|||
|
||||
#include <dwc.h>
|
||||
|
||||
#include "struct_decls/struct_02025CCC_decl.h"
|
||||
#include "struct_decls/struct_0202D750_decl.h"
|
||||
#include "struct_decls/struct_0202D764_decl.h"
|
||||
|
||||
#include "game_options.h"
|
||||
#include "savedata.h"
|
||||
#include "system_data.h"
|
||||
|
||||
typedef struct {
|
||||
UnkStruct_0202D750 *unk_00;
|
||||
UnkStruct_0202D764 *unk_04;
|
||||
UnkStruct_02025CCC *unk_08;
|
||||
SystemData *unk_08;
|
||||
SaveData *unk_0C;
|
||||
Options *unk_10;
|
||||
DWCUserData *unk_14;
|
||||
|
|
|
|||
48
include/system_data.h
Normal file
48
include/system_data.h
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
#ifndef POKEPLATINUM_SYSTEM_DATA_H
|
||||
#define POKEPLATINUM_SYSTEM_DATA_H
|
||||
|
||||
#include <nitro/rtc.h>
|
||||
|
||||
#include "savedata.h"
|
||||
|
||||
typedef struct GameTime {
|
||||
BOOL canary;
|
||||
RTCDate date;
|
||||
RTCTime time;
|
||||
u32 day;
|
||||
s64 startTimestamp;
|
||||
s64 playTimestamp;
|
||||
u32 penaltyInMinutes;
|
||||
} GameTime;
|
||||
|
||||
typedef struct SystemData {
|
||||
s64 rtcOffset;
|
||||
u8 macAddress[6];
|
||||
u8 ownerBirthMonth;
|
||||
u8 ownerBirthDayOfMonth;
|
||||
GameTime gameTime;
|
||||
u8 unk_48;
|
||||
u8 unk_49;
|
||||
s32 unk_4C;
|
||||
u32 unk_50[3];
|
||||
} SystemData;
|
||||
|
||||
int SystemData_SaveSize(void);
|
||||
void SystemData_Clear(SystemData *systemData);
|
||||
SystemData *SaveData_GetSystemData(SaveData *systemData);
|
||||
GameTime *SaveData_GetGameTime(SaveData *saveData);
|
||||
void SystemData_Init(SystemData *systemData);
|
||||
BOOL SystemData_MatchesCurrentSystem(const SystemData *systemData);
|
||||
BOOL SystemData_MatchesCurrentRTCOffset(const SystemData *systemData);
|
||||
u8 SystemData_GetOwnerBirthMonth(const SystemData *systemData);
|
||||
u8 SystemData_GetOwnerBirthDayOfMonth(const SystemData *systemData);
|
||||
BOOL sub_02025D64(const SystemData *param0);
|
||||
void sub_02025D6C(SystemData *param0, BOOL param1);
|
||||
s32 sub_02025D74(const SystemData *param0);
|
||||
void sub_02025D78(SystemData *param0, s32 param1);
|
||||
void GameTime_Clear(GameTime *gameTime);
|
||||
BOOL GameTime_HasPenalty(const GameTime *gameTime);
|
||||
void GameTime_DecrementPenalty(GameTime *gameTime, int val);
|
||||
void GameTime_StartPenalty(GameTime *gameTime);
|
||||
|
||||
#endif // POKEPLATINUM_SYSTEM_DATA_H
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
#ifndef POKEPLATINUM_UNK_02025CB0_H
|
||||
#define POKEPLATINUM_UNK_02025CB0_H
|
||||
|
||||
#include "struct_decls/struct_02025CCC_decl.h"
|
||||
#include "struct_defs/struct_02055BA8.h"
|
||||
|
||||
#include "savedata.h"
|
||||
|
||||
int SystemData_SaveSize(void);
|
||||
void SystemData_Init(UnkStruct_02025CCC *param0);
|
||||
UnkStruct_02025CCC *sub_02025CCC(SaveData *param0);
|
||||
UnkStruct_02055BA8 *sub_02025CD8(SaveData *param0);
|
||||
void sub_02025CE4(UnkStruct_02025CCC *param0);
|
||||
BOOL sub_02025D10(const UnkStruct_02025CCC *param0);
|
||||
BOOL sub_02025D40(const UnkStruct_02025CCC *param0);
|
||||
u8 sub_02025D5C(const UnkStruct_02025CCC *param0);
|
||||
u8 sub_02025D60(const UnkStruct_02025CCC *param0);
|
||||
BOOL sub_02025D64(const UnkStruct_02025CCC *param0);
|
||||
void sub_02025D6C(UnkStruct_02025CCC *param0, BOOL param1);
|
||||
s32 sub_02025D74(const UnkStruct_02025CCC *param0);
|
||||
void sub_02025D78(UnkStruct_02025CCC *param0, s32 param1);
|
||||
void sub_02025D84(UnkStruct_02055BA8 *param0);
|
||||
BOOL sub_02025DB8(const UnkStruct_02055BA8 *param0);
|
||||
void sub_02025DC8(UnkStruct_02055BA8 *param0, int param1);
|
||||
void sub_02025DE8(UnkStruct_02055BA8 *param0);
|
||||
|
||||
#endif // POKEPLATINUM_UNK_02025CB0_H
|
||||
|
|
@ -103,7 +103,7 @@ Static main
|
|||
Object main.nef.p/src_unk_02024358.c.o
|
||||
Object main.nef.p/src_savedata_save_table.c.o
|
||||
Object main.nef.p/src_savedata.c.o
|
||||
Object main.nef.p/src_unk_02025CB0.c.o
|
||||
Object main.nef.p/src_system_data.c.o
|
||||
Object main.nef.p/src_save_player.c.o
|
||||
Object main.nef.p/src_trainer_info.c.o
|
||||
Object main.nef.p/src_unk_0202602C.c.o
|
||||
|
|
|
|||
|
|
@ -5,10 +5,8 @@
|
|||
|
||||
#include "constants/game_options.h"
|
||||
|
||||
#include "struct_decls/struct_02025CCC_decl.h"
|
||||
#include "struct_decls/struct_02027854_decl.h"
|
||||
#include "struct_decls/struct_0202B4A0_decl.h"
|
||||
#include "struct_defs/struct_02055BA8.h"
|
||||
|
||||
#include "game_options.h"
|
||||
#include "heap.h"
|
||||
|
|
@ -20,10 +18,10 @@
|
|||
#include "save_player.h"
|
||||
#include "savedata.h"
|
||||
#include "savedata_misc.h"
|
||||
#include "system_data.h"
|
||||
#include "trainer_info.h"
|
||||
#include "unk_02017428.h"
|
||||
#include "unk_0201D15C.h"
|
||||
#include "unk_02025CB0.h"
|
||||
#include "unk_02027B70.h"
|
||||
#include "unk_0202B37C.h"
|
||||
#include "unk_0205C980.h"
|
||||
|
|
@ -129,14 +127,14 @@ static int ov57_021D0E1C(OverlayManager *param0, int *param1)
|
|||
static int ov57_021D0E34(OverlayManager *param0, int *param1)
|
||||
{
|
||||
SaveData *v0 = ((ApplicationArgs *)OverlayManager_Args(param0))->saveData;
|
||||
UnkStruct_02025CCC *v1 = sub_02025CCC(v0);
|
||||
SystemData *v1 = SaveData_GetSystemData(v0);
|
||||
|
||||
TryLoadingSave(77, v0);
|
||||
Options_SetSystemButtonMode(v0, OPTIONS_BUTTON_MODE_NORMAL);
|
||||
|
||||
if (!sub_02025D10(v1) || !sub_02025D40(v1)) {
|
||||
sub_02025DE8(sub_02025CD8(v0));
|
||||
sub_02025CE4(v1);
|
||||
if (!SystemData_MatchesCurrentSystem(v1) || !SystemData_MatchesCurrentRTCOffset(v1)) {
|
||||
GameTime_StartPenalty(SaveData_GetGameTime(v0));
|
||||
SystemData_Init(v1);
|
||||
Party_SetShayminLandForm(Party_GetFromSavedata(v0));
|
||||
}
|
||||
|
||||
|
|
@ -158,13 +156,13 @@ static void ov57_021D0EAC(int param0, SaveData *param1, BOOL param2)
|
|||
u32 v0;
|
||||
UnkStruct_02027854 *v1;
|
||||
TrainerInfo *v2;
|
||||
UnkStruct_02055BA8 *v3;
|
||||
GameTime *v3;
|
||||
UnkStruct_0202B4A0 *v4;
|
||||
|
||||
sub_02025CE4(sub_02025CCC(param1));
|
||||
SystemData_Init(SaveData_GetSystemData(param1));
|
||||
|
||||
v3 = sub_02025CD8(param1);
|
||||
sub_02025D84(v3);
|
||||
v3 = SaveData_GetGameTime(param1);
|
||||
GameTime_Clear(v3);
|
||||
|
||||
v4 = sub_0202B4A0(param1);
|
||||
sub_0202B40C(v4, 1, MTRNG_Next());
|
||||
|
|
|
|||
|
|
@ -95,7 +95,7 @@ pokeplatinum_c = files(
|
|||
'unk_02024358.c',
|
||||
'savedata/save_table.c',
|
||||
'savedata.c',
|
||||
'unk_02025CB0.c',
|
||||
'system_data.c',
|
||||
'save_player.c',
|
||||
'trainer_info.c',
|
||||
'unk_0202602C.c',
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@
|
|||
#include <nitro.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "struct_decls/struct_02025CCC_decl.h"
|
||||
#include "struct_decls/struct_0202B370_decl.h"
|
||||
#include "struct_defs/struct_02017498.h"
|
||||
#include "struct_defs/struct_02099F80.h"
|
||||
|
|
@ -31,13 +30,13 @@
|
|||
#include "strbuf.h"
|
||||
#include "string_list.h"
|
||||
#include "string_template.h"
|
||||
#include "system_data.h"
|
||||
#include "text.h"
|
||||
#include "unk_0200A784.h"
|
||||
#include "unk_0200F174.h"
|
||||
#include "unk_02017728.h"
|
||||
#include "unk_0201DBEC.h"
|
||||
#include "unk_0201E3D8.h"
|
||||
#include "unk_02025CB0.h"
|
||||
#include "unk_0202ACE0.h"
|
||||
#include "unk_020366A0.h"
|
||||
#include "unk_02038FFC.h"
|
||||
|
|
@ -801,11 +800,11 @@ static int ov61_0222CBF0(UnkStruct_ov61_0222C664 *param0)
|
|||
{
|
||||
DWCUserData *v0;
|
||||
s32 v1;
|
||||
UnkStruct_02025CCC *v2;
|
||||
SystemData *v2;
|
||||
UnkStruct_0202B370 *v3;
|
||||
|
||||
v3 = sub_0202B370(param0->unk_00->unk_00->unk_04);
|
||||
v2 = sub_02025CCC(param0->unk_00->unk_00->unk_04);
|
||||
v2 = SaveData_GetSystemData(param0->unk_00->unk_00->unk_04);
|
||||
v0 = sub_0202AD28(v3);
|
||||
v1 = sub_02025D74(v2);
|
||||
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
#include "overlay062/struct_ov62_02241130.h"
|
||||
|
||||
#include "inlines.h"
|
||||
#include "unk_02025CB0.h"
|
||||
#include "system_data.h"
|
||||
|
||||
static inline BOOL inline_ov62_022411B8(UnkStruct_0208C06C *param0);
|
||||
|
||||
|
|
@ -33,7 +33,7 @@ void ov62_02241130(UnkStruct_0208C06C *param0)
|
|||
{
|
||||
UnkStruct_ov62_02241130 v0;
|
||||
|
||||
v0.unk_00 = sub_02025D74(sub_02025CCC(param0->unk_830));
|
||||
v0.unk_00 = sub_02025D74(SaveData_GetSystemData(param0->unk_830));
|
||||
v0.unk_04 = 102;
|
||||
v0.unk_08 = param0->unk_830;
|
||||
v0.unk_0C.unk_00 = param0;
|
||||
|
|
|
|||
|
|
@ -14,7 +14,6 @@
|
|||
#include "struct_decls/struct_02030EC4_decl.h"
|
||||
#include "struct_decls/struct_0207E060_decl.h"
|
||||
#include "struct_decls/struct_party_decl.h"
|
||||
#include "struct_defs/struct_02055BA8.h"
|
||||
|
||||
#include "overlay066/ov66_02231428.h"
|
||||
#include "overlay066/ov66_0223177C.h"
|
||||
|
|
@ -54,12 +53,12 @@
|
|||
#include "save_player.h"
|
||||
#include "savedata.h"
|
||||
#include "strbuf.h"
|
||||
#include "system_data.h"
|
||||
#include "trainer_info.h"
|
||||
#include "unk_020041CC.h"
|
||||
#include "unk_02005474.h"
|
||||
#include "unk_02014D38.h"
|
||||
#include "unk_0201D15C.h"
|
||||
#include "unk_02025CB0.h"
|
||||
#include "unk_0202631C.h"
|
||||
#include "unk_0202C858.h"
|
||||
#include "unk_02030EA4.h"
|
||||
|
|
@ -2312,14 +2311,14 @@ static void ov66_0222F7C8(UnkStruct_ov66_0222F6C4 *param0, SaveData *param1, u32
|
|||
Party *v1;
|
||||
UnkStruct_0202C878 *v2;
|
||||
PokedexData *v3;
|
||||
UnkStruct_02055BA8 *v4;
|
||||
GameTime *v4;
|
||||
|
||||
{
|
||||
v0 = SaveData_GetTrainerInfo(param1);
|
||||
v1 = Party_GetFromSavedata(param1);
|
||||
v3 = SaveData_Pokedex(param1);
|
||||
v2 = sub_0202C878(param1);
|
||||
v4 = sub_02025CD8(param1);
|
||||
v4 = SaveData_GetGameTime(param1);
|
||||
}
|
||||
|
||||
{
|
||||
|
|
@ -2365,7 +2364,7 @@ static void ov66_0222F7C8(UnkStruct_ov66_0222F6C4 *param0, SaveData *param1, u32
|
|||
param0->unk_20.unk_41 = 0xff;
|
||||
param0->unk_20.unk_43 = 0;
|
||||
param0->unk_20.unk_42 = GAME_VERSION;
|
||||
param0->unk_20.unk_44 = v4->unk_24;
|
||||
param0->unk_20.unk_44 = v4->startTimestamp;
|
||||
|
||||
{
|
||||
int v9;
|
||||
|
|
|
|||
|
|
@ -22,9 +22,9 @@
|
|||
#include "render_window.h"
|
||||
#include "strbuf.h"
|
||||
#include "string_template.h"
|
||||
#include "system_data.h"
|
||||
#include "text.h"
|
||||
#include "unk_0200F174.h"
|
||||
#include "unk_02025CB0.h"
|
||||
#include "unk_0202ACE0.h"
|
||||
#include "unk_02030CE8.h"
|
||||
#include "unk_020366A0.h"
|
||||
|
|
|
|||
|
|
@ -30,10 +30,10 @@
|
|||
#include "savedata.h"
|
||||
#include "strbuf.h"
|
||||
#include "string_template.h"
|
||||
#include "system_data.h"
|
||||
#include "text.h"
|
||||
#include "unk_02005474.h"
|
||||
#include "unk_0200F174.h"
|
||||
#include "unk_02025CB0.h"
|
||||
#include "unk_0202D05C.h"
|
||||
#include "unk_02030CE8.h"
|
||||
#include "unk_020366A0.h"
|
||||
|
|
|
|||
|
|
@ -31,6 +31,7 @@
|
|||
#include "savedata.h"
|
||||
#include "strbuf.h"
|
||||
#include "string_template.h"
|
||||
#include "system_data.h"
|
||||
#include "text.h"
|
||||
#include "trainer_info.h"
|
||||
#include "unk_020041CC.h"
|
||||
|
|
@ -40,7 +41,6 @@
|
|||
#include "unk_02017728.h"
|
||||
#include "unk_0201DBEC.h"
|
||||
#include "unk_02024358.h"
|
||||
#include "unk_02025CB0.h"
|
||||
#include "unk_0202631C.h"
|
||||
#include "unk_0202DAB4.h"
|
||||
#include "unk_020366A0.h"
|
||||
|
|
@ -656,7 +656,7 @@ static BOOL ov97_0222B7DC(void *param0, int param1, UnkStruct_ov97_02237808 *par
|
|||
v0->unk_34 = 1;
|
||||
}
|
||||
|
||||
if (sub_02025D64(sub_02025CCC(v0->unk_04)) == 1) {
|
||||
if (sub_02025D64(SaveData_GetSystemData(v0->unk_04)) == 1) {
|
||||
v0->unk_34 = 1;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@
|
|||
#include <string.h>
|
||||
|
||||
#include "struct_decls/struct_0202442C_decl.h"
|
||||
#include "struct_decls/struct_02025CCC_decl.h"
|
||||
#include "struct_defs/struct_0202DF40.h"
|
||||
|
||||
#include "overlay077/const_ov77_021D742C.h"
|
||||
|
|
@ -46,6 +45,7 @@
|
|||
#include "string_template.h"
|
||||
#include "sys_task.h"
|
||||
#include "sys_task_manager.h"
|
||||
#include "system_data.h"
|
||||
#include "text.h"
|
||||
#include "unk_020041CC.h"
|
||||
#include "unk_02005474.h"
|
||||
|
|
@ -663,7 +663,7 @@ static int ov97_0222DA64(OverlayManager *param0)
|
|||
static int ov97_0222DA84(OverlayManager *param0)
|
||||
{
|
||||
Window *v0;
|
||||
UnkStruct_02025CCC *v1;
|
||||
SystemData *v1;
|
||||
UnkStruct_ov97_0222D04C *v2 = OverlayManager_Data(param0);
|
||||
MysteryGift *v3 = SaveData_MysteryGift(v2->unk_04);
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@
|
|||
#include <nitro.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "struct_decls/struct_02025CCC_decl.h"
|
||||
#include "struct_decls/struct_0202B370_decl.h"
|
||||
#include "struct_defs/struct_02099F80.h"
|
||||
|
||||
|
|
@ -36,6 +35,7 @@
|
|||
#include "strbuf.h"
|
||||
#include "string_list.h"
|
||||
#include "string_template.h"
|
||||
#include "system_data.h"
|
||||
#include "text.h"
|
||||
#include "unk_02005474.h"
|
||||
#include "unk_0200A784.h"
|
||||
|
|
@ -43,7 +43,6 @@
|
|||
#include "unk_02017728.h"
|
||||
#include "unk_0201DBEC.h"
|
||||
#include "unk_0201E3D8.h"
|
||||
#include "unk_02025CB0.h"
|
||||
#include "unk_0202ACE0.h"
|
||||
#include "unk_02030CE8.h"
|
||||
#include "unk_020366A0.h"
|
||||
|
|
@ -1726,11 +1725,11 @@ static int ov98_02248BFC (UnkStruct_ov98_02247704 * param0)
|
|||
{
|
||||
DWCUserData * v0;
|
||||
s32 v1;
|
||||
UnkStruct_02025CCC * v2;
|
||||
SystemData *v2;
|
||||
UnkStruct_0202B370 * v3;
|
||||
|
||||
v3 = sub_0202B370(param0->unk_00->unk_04);
|
||||
v2 = sub_02025CCC(param0->unk_00->unk_04);
|
||||
v2 = SaveData_GetSystemData(param0->unk_00->unk_04);
|
||||
v0 = sub_0202AD28(v3);
|
||||
v1 = sub_02025D74(v2);
|
||||
|
||||
|
|
|
|||
|
|
@ -13,8 +13,8 @@
|
|||
#include "save_player.h"
|
||||
#include "savedata.h"
|
||||
#include "savedata_misc.h"
|
||||
#include "system_data.h"
|
||||
#include "unk_02014D38.h"
|
||||
#include "unk_02025CB0.h"
|
||||
#include "unk_0202602C.h"
|
||||
#include "unk_020261E4.h"
|
||||
#include "unk_0202631C.h"
|
||||
|
|
@ -46,7 +46,7 @@
|
|||
#include "vars_flags.h"
|
||||
|
||||
const SaveTableEntry gSaveTable[] = {
|
||||
{ SAVE_TABLE_ENTRY_SYSTEM, SAVE_BLOCK_ID_NORMAL, (SaveEntrySizeFunc)SystemData_SaveSize, (SaveEntryInitFunc)SystemData_Init },
|
||||
{ SAVE_TABLE_ENTRY_SYSTEM, SAVE_BLOCK_ID_NORMAL, (SaveEntrySizeFunc)SystemData_SaveSize, (SaveEntryInitFunc)SystemData_Clear },
|
||||
{ SAVE_TABLE_ENTRY_PLAYER, SAVE_BLOCK_ID_NORMAL, (SaveEntrySizeFunc)Player_SaveSize, (SaveEntryInitFunc)Player_Init },
|
||||
{ SAVE_TABLE_ENTRY_PARTY, SAVE_BLOCK_ID_NORMAL, (SaveEntrySizeFunc)Party_SaveSize, (SaveEntryInitFunc)Party_Init },
|
||||
{ SAVE_TABLE_ENTRY_BAG, SAVE_BLOCK_ID_NORMAL, (SaveEntrySizeFunc)Bag_SaveSize, (SaveEntryInitFunc)Bag_Init },
|
||||
|
|
|
|||
13
src/scrcmd.c
13
src/scrcmd.c
|
|
@ -11,7 +11,6 @@
|
|||
#include "struct_decls/pokedexdata_decl.h"
|
||||
#include "struct_decls/struct_02014EC4_decl.h"
|
||||
#include "struct_decls/struct_0202440C_decl.h"
|
||||
#include "struct_decls/struct_02025CCC_decl.h"
|
||||
#include "struct_decls/struct_02026218_decl.h"
|
||||
#include "struct_decls/struct_02026310_decl.h"
|
||||
#include "struct_decls/struct_02028430_decl.h"
|
||||
|
|
@ -128,6 +127,7 @@
|
|||
#include "string_template.h"
|
||||
#include "sys_task.h"
|
||||
#include "sys_task_manager.h"
|
||||
#include "system_data.h"
|
||||
#include "text.h"
|
||||
#include "trainer_data.h"
|
||||
#include "trainer_info.h"
|
||||
|
|
@ -135,7 +135,6 @@
|
|||
#include "unk_0200F174.h"
|
||||
#include "unk_02014D38.h"
|
||||
#include "unk_0201D15C.h"
|
||||
#include "unk_02025CB0.h"
|
||||
#include "unk_020261E4.h"
|
||||
#include "unk_0202631C.h"
|
||||
#include "unk_02028124.h"
|
||||
|
|
@ -7237,11 +7236,11 @@ static BOOL ScrCmd_282(ScriptContext *ctx)
|
|||
{
|
||||
u16 *v0 = ScriptContext_GetVarPointer(ctx);
|
||||
FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
UnkStruct_02025CCC *v2;
|
||||
SystemData *v2;
|
||||
|
||||
v2 = sub_02025CCC(ctx->fieldSystem->saveData);
|
||||
v2 = SaveData_GetSystemData(ctx->fieldSystem->saveData);
|
||||
|
||||
if ((sub_02025D5C(v2) == sub_02055BB8(fieldSystem)) && (sub_02025D60(v2) == sub_02055BC4(fieldSystem))) {
|
||||
if ((SystemData_GetOwnerBirthMonth(v2) == sub_02055BB8(fieldSystem)) && (SystemData_GetOwnerBirthDayOfMonth(v2) == sub_02055BC4(fieldSystem))) {
|
||||
*v0 = 1;
|
||||
} else {
|
||||
*v0 = 0;
|
||||
|
|
@ -7663,9 +7662,9 @@ static BOOL ScrCmd_2AA(ScriptContext *ctx)
|
|||
static BOOL ScrCmd_2AC(ScriptContext *ctx)
|
||||
{
|
||||
FieldSystem *fieldSystem = ctx->fieldSystem;
|
||||
UnkStruct_02025CCC *v1;
|
||||
SystemData *v1;
|
||||
|
||||
v1 = sub_02025CCC(ctx->fieldSystem->saveData);
|
||||
v1 = SaveData_GetSystemData(ctx->fieldSystem->saveData);
|
||||
|
||||
sub_02025D6C(v1, 1);
|
||||
return 0;
|
||||
|
|
|
|||
125
src/system_data.c
Normal file
125
src/system_data.c
Normal file
|
|
@ -0,0 +1,125 @@
|
|||
#include "system_data.h"
|
||||
|
||||
#include "constants/savedata/save_table.h"
|
||||
|
||||
#include "rtc.h"
|
||||
#include "savedata.h"
|
||||
|
||||
int SystemData_SaveSize()
|
||||
{
|
||||
return sizeof(SystemData);
|
||||
}
|
||||
|
||||
void SystemData_Clear(SystemData *systemData)
|
||||
{
|
||||
MI_CpuClearFast(systemData, sizeof(SystemData));
|
||||
GameTime_Clear(&systemData->gameTime);
|
||||
}
|
||||
|
||||
SystemData *SaveData_GetSystemData(SaveData *systemData)
|
||||
{
|
||||
return SaveData_SaveTable(systemData, SAVE_TABLE_ENTRY_SYSTEM);
|
||||
}
|
||||
|
||||
GameTime *SaveData_GetGameTime(SaveData *saveData)
|
||||
{
|
||||
return &SaveData_GetSystemData(saveData)->gameTime;
|
||||
}
|
||||
|
||||
void SystemData_Init(SystemData *systemData)
|
||||
{
|
||||
OSOwnerInfo ownerInfo;
|
||||
|
||||
systemData->rtcOffset = OS_GetOwnerRtcOffset();
|
||||
OS_GetMacAddress(systemData->macAddress);
|
||||
|
||||
OS_GetOwnerInfo(&ownerInfo);
|
||||
systemData->ownerBirthMonth = ownerInfo.birthday.month;
|
||||
systemData->ownerBirthDayOfMonth = ownerInfo.birthday.day;
|
||||
}
|
||||
|
||||
BOOL SystemData_MatchesCurrentSystem(const SystemData *systemData)
|
||||
{
|
||||
u8 currMacAddress[6];
|
||||
OS_GetMacAddress(currMacAddress);
|
||||
|
||||
for (int i = 0; i < 6; i++) {
|
||||
if (systemData->macAddress[i] != currMacAddress[i]) {
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL SystemData_MatchesCurrentRTCOffset(const SystemData *systemData)
|
||||
{
|
||||
return OS_GetOwnerRtcOffset() == systemData->rtcOffset;
|
||||
}
|
||||
|
||||
u8 SystemData_GetOwnerBirthMonth(const SystemData *systemData)
|
||||
{
|
||||
return systemData->ownerBirthMonth;
|
||||
}
|
||||
|
||||
u8 SystemData_GetOwnerBirthDayOfMonth(const SystemData *systemData)
|
||||
{
|
||||
return systemData->ownerBirthDayOfMonth;
|
||||
}
|
||||
|
||||
BOOL sub_02025D64(const SystemData *param0)
|
||||
{
|
||||
return param0->unk_48;
|
||||
}
|
||||
|
||||
void sub_02025D6C(SystemData *param0, BOOL param1)
|
||||
{
|
||||
param0->unk_48 = param1;
|
||||
}
|
||||
|
||||
s32 sub_02025D74(const SystemData *param0)
|
||||
{
|
||||
return param0->unk_4C;
|
||||
}
|
||||
|
||||
void sub_02025D78(SystemData *param0, s32 param1)
|
||||
{
|
||||
if (param0->unk_4C == 0) {
|
||||
param0->unk_4C = param1;
|
||||
}
|
||||
}
|
||||
|
||||
void GameTime_Clear(GameTime *gameTime)
|
||||
{
|
||||
gameTime->canary = TRUE;
|
||||
GetCurrentDateTime(&gameTime->date, &gameTime->time);
|
||||
gameTime->day = RTC_ConvertDateToDay(&gameTime->date);
|
||||
gameTime->startTimestamp = RTC_ConvertDateTimeToSecond(&gameTime->date, &gameTime->time);
|
||||
gameTime->playTimestamp = 0;
|
||||
gameTime->penaltyInMinutes = 0;
|
||||
}
|
||||
|
||||
BOOL GameTime_HasPenalty(const GameTime *gameTime)
|
||||
{
|
||||
return gameTime->penaltyInMinutes != 0;
|
||||
}
|
||||
|
||||
void GameTime_DecrementPenalty(GameTime *gameTime, int val)
|
||||
{
|
||||
if (gameTime->penaltyInMinutes > 24 * 60) {
|
||||
gameTime->penaltyInMinutes = 24 * 60;
|
||||
}
|
||||
|
||||
if (gameTime->penaltyInMinutes < val) {
|
||||
gameTime->penaltyInMinutes = 0;
|
||||
} else {
|
||||
gameTime->penaltyInMinutes -= val;
|
||||
}
|
||||
}
|
||||
|
||||
void GameTime_StartPenalty(GameTime *gameTime)
|
||||
{
|
||||
gameTime->penaltyInMinutes = 60 * 24;
|
||||
GetCurrentDateTime(&gameTime->date, &gameTime->time);
|
||||
gameTime->day = RTC_ConvertDateToDay(&gameTime->date);
|
||||
}
|
||||
|
|
@ -1,150 +0,0 @@
|
|||
#include "unk_02025CB0.h"
|
||||
|
||||
#include <nitro.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "struct_defs/struct_02055BA8.h"
|
||||
|
||||
#include "rtc.h"
|
||||
#include "savedata.h"
|
||||
|
||||
typedef struct UnkStruct_02025CCC_t {
|
||||
s64 unk_00;
|
||||
u8 unk_08[6];
|
||||
u8 unk_0E;
|
||||
u8 unk_0F;
|
||||
UnkStruct_02055BA8 unk_10;
|
||||
u8 unk_48;
|
||||
u8 unk_49;
|
||||
s32 unk_4C;
|
||||
u32 unk_50[3];
|
||||
} UnkStruct_02025CCC;
|
||||
|
||||
int SystemData_SaveSize(void)
|
||||
{
|
||||
return sizeof(UnkStruct_02025CCC);
|
||||
}
|
||||
|
||||
void SystemData_Init(UnkStruct_02025CCC *param0)
|
||||
{
|
||||
MI_CpuClearFast(param0, sizeof(UnkStruct_02025CCC));
|
||||
sub_02025D84(¶m0->unk_10);
|
||||
}
|
||||
|
||||
UnkStruct_02025CCC *sub_02025CCC(SaveData *param0)
|
||||
{
|
||||
return SaveData_SaveTable(param0, 0);
|
||||
}
|
||||
|
||||
UnkStruct_02055BA8 *sub_02025CD8(SaveData *param0)
|
||||
{
|
||||
UnkStruct_02025CCC *v0;
|
||||
|
||||
v0 = sub_02025CCC(param0);
|
||||
return &v0->unk_10;
|
||||
}
|
||||
|
||||
void sub_02025CE4(UnkStruct_02025CCC *param0)
|
||||
{
|
||||
OSOwnerInfo v0;
|
||||
|
||||
param0->unk_00 = OS_GetOwnerRtcOffset();
|
||||
|
||||
OS_GetMacAddress(param0->unk_08);
|
||||
OS_GetOwnerInfo(&v0);
|
||||
|
||||
param0->unk_0E = v0.birthday.month;
|
||||
param0->unk_0F = v0.birthday.day;
|
||||
}
|
||||
|
||||
BOOL sub_02025D10(const UnkStruct_02025CCC *param0)
|
||||
{
|
||||
int v0;
|
||||
u8 v1[6];
|
||||
|
||||
OS_GetMacAddress(v1);
|
||||
|
||||
for (v0 = 0; v0 < 6; v0++) {
|
||||
if (param0->unk_08[v0] != v1[v0]) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
BOOL sub_02025D40(const UnkStruct_02025CCC *param0)
|
||||
{
|
||||
return OS_GetOwnerRtcOffset() == param0->unk_00;
|
||||
}
|
||||
|
||||
u8 sub_02025D5C(const UnkStruct_02025CCC *param0)
|
||||
{
|
||||
return param0->unk_0E;
|
||||
}
|
||||
|
||||
u8 sub_02025D60(const UnkStruct_02025CCC *param0)
|
||||
{
|
||||
return param0->unk_0F;
|
||||
}
|
||||
|
||||
BOOL sub_02025D64(const UnkStruct_02025CCC *param0)
|
||||
{
|
||||
return param0->unk_48;
|
||||
}
|
||||
|
||||
void sub_02025D6C(UnkStruct_02025CCC *param0, BOOL param1)
|
||||
{
|
||||
param0->unk_48 = param1;
|
||||
}
|
||||
|
||||
s32 sub_02025D74(const UnkStruct_02025CCC *param0)
|
||||
{
|
||||
return param0->unk_4C;
|
||||
}
|
||||
|
||||
void sub_02025D78(UnkStruct_02025CCC *param0, s32 param1)
|
||||
{
|
||||
if (param0->unk_4C == 0) {
|
||||
param0->unk_4C = param1;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_02025D84(UnkStruct_02055BA8 *param0)
|
||||
{
|
||||
param0->unk_00 = 1;
|
||||
GetCurrentDateTime(¶m0->unk_04, ¶m0->unk_14);
|
||||
param0->unk_20 = RTC_ConvertDateToDay(¶m0->unk_04);
|
||||
param0->unk_24 = RTC_ConvertDateTimeToSecond(¶m0->unk_04, ¶m0->unk_14);
|
||||
param0->unk_2C = 0;
|
||||
param0->unk_34 = 0;
|
||||
}
|
||||
|
||||
BOOL sub_02025DB8(const UnkStruct_02055BA8 *param0)
|
||||
{
|
||||
if (param0->unk_34 != 0) {
|
||||
return 1;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_02025DC8(UnkStruct_02055BA8 *param0, int param1)
|
||||
{
|
||||
if (param0->unk_34 > 24 * 60) {
|
||||
param0->unk_34 = 24 * 60;
|
||||
}
|
||||
|
||||
if (param0->unk_34 < param1) {
|
||||
param0->unk_34 = 0;
|
||||
} else {
|
||||
param0->unk_34 -= param1;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_02025DE8(UnkStruct_02055BA8 *param0)
|
||||
{
|
||||
param0->unk_34 = 60 * 24;
|
||||
GetCurrentDateTime(¶m0->unk_04, ¶m0->unk_14);
|
||||
param0->unk_20 = RTC_ConvertDateToDay(¶m0->unk_04);
|
||||
}
|
||||
|
|
@ -3,7 +3,6 @@
|
|||
#include <nitro.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "struct_decls/struct_02025CCC_decl.h"
|
||||
#include "struct_decls/struct_0202C878_decl.h"
|
||||
#include "struct_defs/sentence.h"
|
||||
#include "struct_defs/struct_0202F298_sub1.h"
|
||||
|
|
@ -16,10 +15,10 @@
|
|||
#include "savedata.h"
|
||||
#include "savedata_misc.h"
|
||||
#include "strbuf.h"
|
||||
#include "system_data.h"
|
||||
#include "trainer_info.h"
|
||||
#include "unk_02014A84.h"
|
||||
#include "unk_02014D38.h"
|
||||
#include "unk_02025CB0.h"
|
||||
#include "unk_0202C858.h"
|
||||
#include "unk_0205C980.h"
|
||||
#include "unk_020996D0.h"
|
||||
|
|
@ -43,7 +42,7 @@ void sub_02030AA0(UnkStruct_02030A80 *param0, SaveData *param1)
|
|||
{
|
||||
TrainerInfo *v0 = SaveData_GetTrainerInfo(param1);
|
||||
UnkStruct_0202C878 *v1 = sub_0202C878(param1);
|
||||
UnkStruct_02025CCC *v2 = sub_02025CCC(param1);
|
||||
SystemData *v2 = SaveData_GetSystemData(param1);
|
||||
const MiscSaveBlock *v3 = SaveData_MiscSaveBlockConst(param1);
|
||||
int v4, v5, v6;
|
||||
int v7;
|
||||
|
|
|
|||
|
|
@ -5,14 +5,12 @@
|
|||
|
||||
#include "constants/overworld_weather.h"
|
||||
|
||||
#include "struct_defs/struct_02055BA8.h"
|
||||
|
||||
#include "field/field_system.h"
|
||||
|
||||
#include "inlines.h"
|
||||
#include "map_header.h"
|
||||
#include "rtc.h"
|
||||
#include "unk_02025CB0.h"
|
||||
#include "system_data.h"
|
||||
#include "unk_020559DC.h"
|
||||
|
||||
static const u8 Unk_020E98F4[] = {
|
||||
|
|
@ -1860,12 +1858,12 @@ int FieldSystem_GetWeather(FieldSystem *fieldSystem, int param1)
|
|||
|
||||
{
|
||||
int v1;
|
||||
UnkStruct_02055BA8 *v2 = sub_02025CD8(fieldSystem->saveData);
|
||||
GameTime *v2 = SaveData_GetGameTime(fieldSystem->saveData);
|
||||
|
||||
v1 = DayNumberForDate(&v2->unk_04) - 1;
|
||||
v1 = DayNumberForDate(&v2->date) - 1;
|
||||
GF_ASSERT(v1 >= 0 && v1 < 366);
|
||||
|
||||
if ((v2->unk_04.month > 2) && !inline_0203A944(v2->unk_04.year)) {
|
||||
if ((v2->date.month > 2) && !inline_0203A944(v2->date.year)) {
|
||||
v1++;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -106,10 +106,10 @@
|
|||
#include "savedata.h"
|
||||
#include "savedata_misc.h"
|
||||
#include "strbuf.h"
|
||||
#include "system_data.h"
|
||||
#include "trainer_info.h"
|
||||
#include "unk_02017498.h"
|
||||
#include "unk_0201D15C.h"
|
||||
#include "unk_02025CB0.h"
|
||||
#include "unk_0202631C.h"
|
||||
#include "unk_02028124.h"
|
||||
#include "unk_020298BC.h"
|
||||
|
|
@ -1366,7 +1366,7 @@ void sub_0203E0FC(FieldSystem *fieldSystem, int param1)
|
|||
v0 = Heap_AllocFromHeapAtEnd(11, sizeof(UnkStruct_0203E0FC));
|
||||
|
||||
v0->unk_00 = sub_0202DA40(fieldSystem->saveData);
|
||||
v0->unk_04 = sub_02025CCC(fieldSystem->saveData);
|
||||
v0->unk_04 = SaveData_GetSystemData(fieldSystem->saveData);
|
||||
v0->unk_08 = SaveData_SaveTable(fieldSystem->saveData, 2);
|
||||
v0->unk_0C = SaveData_PCBoxes(fieldSystem->saveData);
|
||||
v0->unk_10 = SaveData_Pokedex(fieldSystem->saveData);
|
||||
|
|
@ -1403,7 +1403,7 @@ void *sub_0203E1AC(FieldSystem *fieldSystem, int param1, int param2)
|
|||
|
||||
v0->unk_00 = sub_0202D750(fieldSystem->saveData);
|
||||
v0->unk_04 = sub_0202D764(fieldSystem->saveData);
|
||||
v0->unk_08 = sub_02025CCC(fieldSystem->saveData);
|
||||
v0->unk_08 = SaveData_GetSystemData(fieldSystem->saveData);
|
||||
v0->unk_10 = SaveData_Options(fieldSystem->saveData);
|
||||
v0->unk_14 = sub_0202AD28(sub_0202B370(fieldSystem->saveData));
|
||||
v0->unk_0C = fieldSystem->saveData;
|
||||
|
|
|
|||
|
|
@ -12,7 +12,6 @@
|
|||
#include "struct_decls/struct_party_decl.h"
|
||||
#include "struct_defs/chatot_cry.h"
|
||||
#include "struct_defs/struct_0202610C.h"
|
||||
#include "struct_defs/struct_02055BA8.h"
|
||||
#include "struct_defs/struct_0205EC34.h"
|
||||
#include "struct_defs/struct_0209C370.h"
|
||||
#include "struct_defs/trainer_data.h"
|
||||
|
|
@ -41,8 +40,8 @@
|
|||
#include "save_player.h"
|
||||
#include "savedata.h"
|
||||
#include "strbuf.h"
|
||||
#include "system_data.h"
|
||||
#include "trainer_info.h"
|
||||
#include "unk_02025CB0.h"
|
||||
#include "unk_0202602C.h"
|
||||
#include "unk_0202631C.h"
|
||||
#include "unk_02027F84.h"
|
||||
|
|
@ -264,9 +263,9 @@ void sub_020521B8(BattleParams *param0, const FieldSystem *fieldSystem, SaveData
|
|||
param0->unk_128 = MapHeader_GetBattleBG(param3);
|
||||
param0->unk_12C = 9;
|
||||
{
|
||||
UnkStruct_02055BA8 *v7 = sub_02025CD8(param2);
|
||||
GameTime *v7 = SaveData_GetGameTime(param2);
|
||||
|
||||
param0->unk_138 = TimeOfDayForHour(v7->unk_14.hour);
|
||||
param0->unk_138 = TimeOfDayForHour(v7->time.hour);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -5,7 +5,6 @@
|
|||
|
||||
#include "struct_decls/struct_0202440C_decl.h"
|
||||
#include "struct_decls/struct_party_decl.h"
|
||||
#include "struct_defs/struct_02055BA8.h"
|
||||
|
||||
#include "field/field_system.h"
|
||||
#include "savedata/save_table.h"
|
||||
|
|
@ -16,7 +15,7 @@
|
|||
#include "pokemon.h"
|
||||
#include "rtc.h"
|
||||
#include "script_manager.h"
|
||||
#include "unk_02025CB0.h"
|
||||
#include "system_data.h"
|
||||
#include "unk_0202854C.h"
|
||||
#include "unk_0202B37C.h"
|
||||
#include "unk_0202C858.h"
|
||||
|
|
@ -31,16 +30,16 @@
|
|||
|
||||
static void sub_02055AC0(FieldSystem *fieldSystem, s32 param1);
|
||||
static void sub_02055B64(FieldSystem *fieldSystem, s32 param1, const RTCTime *param2);
|
||||
static void sub_02055A14(FieldSystem *fieldSystem, UnkStruct_02055BA8 *param1, const RTCDate *param2);
|
||||
static void inline_020559DC(FieldSystem *fieldSystem, UnkStruct_02055BA8 *param1, const RTCDate *param2, const RTCTime *param3);
|
||||
static void sub_02055A14(FieldSystem *fieldSystem, GameTime *param1, const RTCDate *param2);
|
||||
static void inline_020559DC(FieldSystem *fieldSystem, GameTime *param1, const RTCDate *param2, const RTCTime *param3);
|
||||
|
||||
void sub_020559DC(FieldSystem *fieldSystem)
|
||||
{
|
||||
RTCDate v0;
|
||||
RTCTime v1;
|
||||
UnkStruct_02055BA8 *v2 = sub_02025CD8(fieldSystem->saveData);
|
||||
GameTime *v2 = SaveData_GetGameTime(fieldSystem->saveData);
|
||||
|
||||
if (v2->unk_00 == 0) {
|
||||
if (v2->canary == FALSE) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -50,40 +49,40 @@ void sub_020559DC(FieldSystem *fieldSystem)
|
|||
inline_020559DC(fieldSystem, v2, &v0, &v1);
|
||||
}
|
||||
|
||||
static void sub_02055A14(FieldSystem *fieldSystem, UnkStruct_02055BA8 *param1, const RTCDate *param2)
|
||||
static void sub_02055A14(FieldSystem *fieldSystem, GameTime *param1, const RTCDate *param2)
|
||||
{
|
||||
s32 v0;
|
||||
|
||||
v0 = RTC_ConvertDateToDay(param2);
|
||||
|
||||
if (v0 < param1->unk_20) {
|
||||
param1->unk_20 = v0;
|
||||
} else if (v0 > param1->unk_20) {
|
||||
sub_02055AC0(fieldSystem, v0 - param1->unk_20);
|
||||
param1->unk_20 = v0;
|
||||
if (v0 < param1->day) {
|
||||
param1->day = v0;
|
||||
} else if (v0 > param1->day) {
|
||||
sub_02055AC0(fieldSystem, v0 - param1->day);
|
||||
param1->day = v0;
|
||||
}
|
||||
}
|
||||
|
||||
static void inline_020559DC(FieldSystem *fieldSystem, UnkStruct_02055BA8 *param1, const RTCDate *param2, const RTCTime *param3)
|
||||
static void inline_020559DC(FieldSystem *fieldSystem, GameTime *param1, const RTCDate *param2, const RTCTime *param3)
|
||||
{
|
||||
s64 v0, v1;
|
||||
s32 v2;
|
||||
|
||||
v0 = RTC_ConvertDateTimeToSecond(param2, param3);
|
||||
v1 = RTC_ConvertDateTimeToSecond(¶m1->unk_04, ¶m1->unk_14);
|
||||
v1 = RTC_ConvertDateTimeToSecond(¶m1->date, ¶m1->time);
|
||||
|
||||
if (v0 < v1) {
|
||||
param1->unk_04 = *param2;
|
||||
param1->unk_14 = *param3;
|
||||
param1->date = *param2;
|
||||
param1->time = *param3;
|
||||
} else {
|
||||
v2 = (v0 - v1) / 60;
|
||||
|
||||
if (v2 > 0) {
|
||||
sub_02025DC8(param1, v2);
|
||||
GameTime_DecrementPenalty(param1, v2);
|
||||
sub_02055B64(fieldSystem, v2, param3);
|
||||
|
||||
param1->unk_04 = *param2;
|
||||
param1->unk_14 = *param3;
|
||||
param1->date = *param2;
|
||||
param1->time = *param3;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -152,61 +151,61 @@ static void sub_02055B64(FieldSystem *fieldSystem, s32 param1, const RTCTime *pa
|
|||
|
||||
int sub_02055BA8(const FieldSystem *fieldSystem)
|
||||
{
|
||||
UnkStruct_02055BA8 *v0 = sub_02025CD8(fieldSystem->saveData);
|
||||
return TimeOfDayForHour(v0->unk_14.hour);
|
||||
GameTime *v0 = SaveData_GetGameTime(fieldSystem->saveData);
|
||||
return TimeOfDayForHour(v0->time.hour);
|
||||
}
|
||||
|
||||
int sub_02055BB8(const FieldSystem *fieldSystem)
|
||||
{
|
||||
UnkStruct_02055BA8 *v0 = sub_02025CD8(fieldSystem->saveData);
|
||||
return v0->unk_04.month;
|
||||
GameTime *v0 = SaveData_GetGameTime(fieldSystem->saveData);
|
||||
return v0->date.month;
|
||||
}
|
||||
|
||||
int sub_02055BC4(const FieldSystem *fieldSystem)
|
||||
{
|
||||
UnkStruct_02055BA8 *v0 = sub_02025CD8(fieldSystem->saveData);
|
||||
return v0->unk_04.day;
|
||||
GameTime *v0 = SaveData_GetGameTime(fieldSystem->saveData);
|
||||
return v0->date.day;
|
||||
}
|
||||
|
||||
int sub_02055BD0(const FieldSystem *fieldSystem)
|
||||
{
|
||||
UnkStruct_02055BA8 *v0 = sub_02025CD8(fieldSystem->saveData);
|
||||
return v0->unk_04.week;
|
||||
GameTime *v0 = SaveData_GetGameTime(fieldSystem->saveData);
|
||||
return v0->date.week;
|
||||
}
|
||||
|
||||
int sub_02055BDC(const FieldSystem *fieldSystem)
|
||||
{
|
||||
UnkStruct_02055BA8 *v0 = sub_02025CD8(fieldSystem->saveData);
|
||||
return v0->unk_14.hour;
|
||||
GameTime *v0 = SaveData_GetGameTime(fieldSystem->saveData);
|
||||
return v0->time.hour;
|
||||
}
|
||||
|
||||
int sub_02055BE8(const FieldSystem *fieldSystem)
|
||||
{
|
||||
UnkStruct_02055BA8 *v0 = sub_02025CD8(fieldSystem->saveData);
|
||||
return v0->unk_14.minute;
|
||||
GameTime *v0 = SaveData_GetGameTime(fieldSystem->saveData);
|
||||
return v0->time.minute;
|
||||
}
|
||||
|
||||
void sub_02055BF4(const FieldSystem *fieldSystem, RTCDate *param1, RTCTime *param2)
|
||||
{
|
||||
UnkStruct_02055BA8 *v0 = sub_02025CD8(fieldSystem->saveData);
|
||||
RTC_ConvertSecondToDateTime(param1, param2, v0->unk_24);
|
||||
GameTime *v0 = SaveData_GetGameTime(fieldSystem->saveData);
|
||||
RTC_ConvertSecondToDateTime(param1, param2, v0->startTimestamp);
|
||||
}
|
||||
|
||||
void sub_02055C10(const FieldSystem *fieldSystem, RTCDate *param1, RTCTime *param2)
|
||||
{
|
||||
UnkStruct_02055BA8 *v0 = sub_02025CD8(fieldSystem->saveData);
|
||||
RTC_ConvertSecondToDateTime(param1, param2, v0->unk_2C);
|
||||
GameTime *v0 = SaveData_GetGameTime(fieldSystem->saveData);
|
||||
RTC_ConvertSecondToDateTime(param1, param2, v0->playTimestamp);
|
||||
}
|
||||
|
||||
void sub_02055C2C(const FieldSystem *fieldSystem)
|
||||
{
|
||||
UnkStruct_02055BA8 *v0 = sub_02025CD8(fieldSystem->saveData);
|
||||
GameTime *v0 = SaveData_GetGameTime(fieldSystem->saveData);
|
||||
|
||||
v0->unk_2C = GetTimestamp();
|
||||
v0->playTimestamp = GetTimestamp();
|
||||
}
|
||||
|
||||
BOOL sub_02055C40(FieldSystem *fieldSystem)
|
||||
{
|
||||
UnkStruct_02055BA8 *v0 = sub_02025CD8(fieldSystem->saveData);
|
||||
return sub_02025DB8(v0);
|
||||
GameTime *v0 = SaveData_GetGameTime(fieldSystem->saveData);
|
||||
return GameTime_HasPenalty(v0);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user