From 66f0616a2d3fd3a8e09aabf9e3ee51cd88ae474f Mon Sep 17 00:00:00 2001 From: Phlosioneer Date: Wed, 27 Feb 2019 21:28:34 -0500 Subject: I guess I'm documenting Trainer Hill now --- src/trainer_hill.c | 50 +++++++++++++++++++++++++------------------------- 1 file changed, 25 insertions(+), 25 deletions(-) (limited to 'src/trainer_hill.c') diff --git a/src/trainer_hill.c b/src/trainer_hill.c index 42b196abd..60f67c91d 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -92,15 +92,15 @@ struct TrHillStruct2 // EWRAM static EWRAM_DATA struct TrHillStruct2 *sHillData = NULL; static EWRAM_DATA struct TrHillRoomTrainers *sRoomTrainers = NULL; -EWRAM_DATA u32 *gUnknown_0203CF5C = NULL; +EWRAM_DATA u32 *gVBlankCounterPointer = NULL; // This file's functions. -static void sub_81D581C(void); +static void TrainerHillStartChallenge(void); static void sub_81D58D8(void); static void sub_81D5924(void); static void sub_81D59D0(void); -static void sub_81D5A70(void); -static void sub_81D5AB4(void); +static void TrainerHillResumeTimer(void); +static void TrainerHillSetPlayerLost(void); static void sub_81D5AD0(void); static void sub_81D5B2C(void); static void sub_81D5BBC(void); @@ -263,12 +263,12 @@ static const u8 *const sFloorStrings[] = static void (* const sHillFunctions[])(void) = { - sub_81D581C, + TrainerHillStartChallenge, sub_81D58D8, sub_81D5924, sub_81D59D0, - sub_81D5A70, - sub_81D5AB4, + TrainerHillResumeTimer, + TrainerHillSetPlayerLost, sub_81D5AD0, sub_81D5B2C, sub_81D5BBC, @@ -371,7 +371,7 @@ void InitTrainerHillBattleStruct(void) } sRoomTrainers->facilityClass[i] = sHillData->tag.floors[sHillData->floorId].trainers[i].facilityClass; } - sub_80008DC(&gSaveBlock1Ptr->trainerHill.field_3D64); + SetVBlankCounterPointer(&gSaveBlock1Ptr->trainerHill.timer); FreeDataStruct(); } @@ -425,7 +425,7 @@ void CopyTrainerHillTrainerText(u8 which, u16 trainerId) FreeDataStruct(); } -static void sub_81D581C(void) +static void TrainerHillStartChallenge(void) { nullsub_2(); if (!sub_81D3B34()) @@ -434,8 +434,8 @@ static void sub_81D581C(void) gSaveBlock1Ptr->trainerHill.field_3D6E_0f = 0; gSaveBlock1Ptr->trainerHill.field_3D6C = 0; - sub_80008DC(&gSaveBlock1Ptr->trainerHill.field_3D64); - gSaveBlock1Ptr->trainerHill.field_3D64 = 0; + SetVBlankCounterPointer(&gSaveBlock1Ptr->trainerHill.timer); + gSaveBlock1Ptr->trainerHill.timer = 0; gSaveBlock1Ptr->trainerHill.field_3D6E_0c = 0; gSaveBlock1Ptr->trainerHill.field_3D6E_0b = 0; gSaveBlock1Ptr->trainerHill.field_3D6E_0e = 0; @@ -446,7 +446,7 @@ static void sub_81D581C(void) static void sub_81D58D8(void) { - sub_80008E8(); + ClearVBlankCounterPointer(); gSpecialVar_Result = 0; if (gSaveBlock1Ptr->trainerHill.field_3D6E_0c) gSpecialVar_Result++; @@ -483,9 +483,9 @@ static void sub_81D59D0(void) { gSpecialVar_Result = 2; } - else if (GetTimerValue(&gSaveBlock1Ptr->trainerHill.field_3D68) > gSaveBlock1Ptr->trainerHill.field_3D64) + else if (GetTimerValue(&gSaveBlock1Ptr->trainerHill.field_3D68) > gSaveBlock1Ptr->trainerHill.timer) { - SetTimerValue(&gSaveBlock1Ptr->trainerHill.field_3D68, gSaveBlock1Ptr->trainerHill.field_3D64); + SetTimerValue(&gSaveBlock1Ptr->trainerHill.field_3D68, gSaveBlock1Ptr->trainerHill.timer); gSaveBlock1Ptr->trainerHillTimes[gSaveBlock1Ptr->trainerHill.tag] = gSaveBlock1Ptr->trainerHill.field_3D68; gSpecialVar_Result = 0; } @@ -497,27 +497,27 @@ static void sub_81D59D0(void) gSaveBlock1Ptr->trainerHill.field_3D6E_0b = 1; } -static void sub_81D5A70(void) +static void TrainerHillResumeTimer(void) { if (!gSaveBlock1Ptr->trainerHill.field_3D6E_0c) { - if (gSaveBlock1Ptr->trainerHill.field_3D64 >= HILL_MAX_TIME) - gSaveBlock1Ptr->trainerHill.field_3D64 = HILL_MAX_TIME; + if (gSaveBlock1Ptr->trainerHill.timer >= HILL_MAX_TIME) + gSaveBlock1Ptr->trainerHill.timer = HILL_MAX_TIME; else - sub_80008DC(&gSaveBlock1Ptr->trainerHill.field_3D64); + SetVBlankCounterPointer(&gSaveBlock1Ptr->trainerHill.timer); } } -static void sub_81D5AB4(void) +static void TrainerHillSetPlayerLost(void) { - gSaveBlock1Ptr->trainerHill.field_3D6E_0d = 1; + gSaveBlock1Ptr->trainerHill.hasLost = 1; } static void sub_81D5AD0(void) { - if (gSaveBlock1Ptr->trainerHill.field_3D6E_0d) + if (gSaveBlock1Ptr->trainerHill.hasLost) { - gSaveBlock1Ptr->trainerHill.field_3D6E_0d = 0; + gSaveBlock1Ptr->trainerHill.hasLost = 0; gSpecialVar_Result = 0; } else if (gSaveBlock1Ptr->trainerHill.field_3D6E_0e) @@ -535,7 +535,7 @@ static void sub_81D5B2C(void) { s32 total, minutes, secondsWhole, secondsFraction; - total = gSaveBlock1Ptr->trainerHill.field_3D64; + total = gSaveBlock1Ptr->trainerHill.timer; if (total >= HILL_MAX_TIME) total = HILL_MAX_TIME; @@ -1048,7 +1048,7 @@ bool32 sub_81D6534(void) static void sub_81D6568(void) { - if (gSaveBlock1Ptr->trainerHill.field_3D6E_0d) + if (gSaveBlock1Ptr->trainerHill.hasLost) gSpecialVar_Result = 0; else gSpecialVar_Result = 1; @@ -1103,7 +1103,7 @@ static u16 sub_81D6640(void) i = (i + 1) % 10; ptr = gUnknown_0862A5CC[var2][i]; - minutes = (signed)(gSaveBlock1Ptr->trainerHill.field_3D64) / (60 * 60); + minutes = (signed)(gSaveBlock1Ptr->trainerHill.timer) / (60 * 60); if (minutes < 12) id = 0; else if (minutes < 13) -- cgit v1.2.3 From 782979f1fc37c358a5c675a1c42afae9b0027805 Mon Sep 17 00:00:00 2001 From: Phlosioneer Date: Wed, 27 Feb 2019 22:16:01 -0500 Subject: Finish documenting trainer hill Trainer hill isn't anywhere close to done, but I figured out enough to name the VAR. That's all this PR should do. --- src/trainer_hill.c | 40 ++++++++++++++++++++++------------------ 1 file changed, 22 insertions(+), 18 deletions(-) (limited to 'src/trainer_hill.c') diff --git a/src/trainer_hill.c b/src/trainer_hill.c index 60f67c91d..ee7e2287a 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -30,6 +30,7 @@ #include "constants/species.h" #include "constants/trainers.h" #include "constants/easy_chat.h" +#include "constants/trainer_hill.h" extern bool32 sub_81D3B34(void); @@ -101,7 +102,7 @@ static void sub_81D5924(void); static void sub_81D59D0(void); static void TrainerHillResumeTimer(void); static void TrainerHillSetPlayerLost(void); -static void sub_81D5AD0(void); +static void TrainerHillGetChallengeStatus(void); static void sub_81D5B2C(void); static void sub_81D5BBC(void); static void sub_81D5C00(void); @@ -112,7 +113,7 @@ static void sub_81D64DC(void); static void sub_81D64FC(void); static void sub_81D6518(void); static void sub_81D6568(void); -static void sub_81D65A0(void); +static void TrainerHillSetTag(void); static void SetUpDataStruct(void); static void FreeDataStruct(void); static void nullsub_2(void); @@ -269,7 +270,7 @@ static void (* const sHillFunctions[])(void) = sub_81D59D0, TrainerHillResumeTimer, TrainerHillSetPlayerLost, - sub_81D5AD0, + TrainerHillGetChallengeStatus, sub_81D5B2C, sub_81D5BBC, sub_81D5C00, @@ -280,7 +281,7 @@ static void (* const sHillFunctions[])(void) = sub_81D64FC, sub_81D6518, sub_81D6568, - sub_81D65A0, + TrainerHillSetTag, }; static const u8 *const sTagMatchStrings[] = @@ -318,7 +319,7 @@ void ResetTrainerHillResults(void) gSaveBlock2Ptr->frontier.field_EF9_1 = 0; gSaveBlock2Ptr->frontier.field_EF9_0 = 0; - gSaveBlock1Ptr->trainerHill.field_3D68 = 0; + gSaveBlock1Ptr->trainerHill.bestTime = 0; for (i = 0; i < 4; i++) SetTimerValue(&gSaveBlock1Ptr->trainerHillTimes[i], HILL_MAX_TIME); } @@ -438,7 +439,7 @@ static void TrainerHillStartChallenge(void) gSaveBlock1Ptr->trainerHill.timer = 0; gSaveBlock1Ptr->trainerHill.field_3D6E_0c = 0; gSaveBlock1Ptr->trainerHill.field_3D6E_0b = 0; - gSaveBlock1Ptr->trainerHill.field_3D6E_0e = 0; + gSaveBlock1Ptr->trainerHill.maybeECardScanDuringChallenge = 0; gSaveBlock2Ptr->frontier.field_EE0 = 0; gBattleOutcome = 0; gSaveBlock1Ptr->trainerHill.field_3D6E_0a = 0; @@ -483,10 +484,10 @@ static void sub_81D59D0(void) { gSpecialVar_Result = 2; } - else if (GetTimerValue(&gSaveBlock1Ptr->trainerHill.field_3D68) > gSaveBlock1Ptr->trainerHill.timer) + else if (GetTimerValue(&gSaveBlock1Ptr->trainerHill.bestTime) > gSaveBlock1Ptr->trainerHill.timer) { - SetTimerValue(&gSaveBlock1Ptr->trainerHill.field_3D68, gSaveBlock1Ptr->trainerHill.timer); - gSaveBlock1Ptr->trainerHillTimes[gSaveBlock1Ptr->trainerHill.tag] = gSaveBlock1Ptr->trainerHill.field_3D68; + SetTimerValue(&gSaveBlock1Ptr->trainerHill.bestTime, gSaveBlock1Ptr->trainerHill.timer); + gSaveBlock1Ptr->trainerHillTimes[gSaveBlock1Ptr->trainerHill.tag] = gSaveBlock1Ptr->trainerHill.bestTime; gSpecialVar_Result = 0; } else @@ -513,21 +514,24 @@ static void TrainerHillSetPlayerLost(void) gSaveBlock1Ptr->trainerHill.hasLost = 1; } -static void sub_81D5AD0(void) +static void TrainerHillGetChallengeStatus(void) { if (gSaveBlock1Ptr->trainerHill.hasLost) { + // The player lost their last match. gSaveBlock1Ptr->trainerHill.hasLost = 0; - gSpecialVar_Result = 0; + gSpecialVar_Result = TRAINER_HILL_PLAYER_STATUS_LOST; } - else if (gSaveBlock1Ptr->trainerHill.field_3D6E_0e) + else if (gSaveBlock1Ptr->trainerHill.maybeECardScanDuringChallenge) { - gSaveBlock1Ptr->trainerHill.field_3D6E_0e = 0; - gSpecialVar_Result = 1; + // Unreachable code. Something relating to eCards? + gSaveBlock1Ptr->trainerHill.maybeECardScanDuringChallenge = 0; + gSpecialVar_Result = TRAINER_HILL_PLAYER_STATUS_ECARD_SCANNED; } else { - gSpecialVar_Result = 2; + // Continue playing. + gSpecialVar_Result = TRAINER_HILL_PLAYER_STATUS_NORMAL; } } @@ -575,7 +579,7 @@ static void sub_81D5C00(void) bool8 sub_81D5C18(void) { - if (VarGet(VAR_0x40D6) == 0) + if (VarGet(VAR_TRAINER_HILL_IS_ACTIVE) == 0) return FALSE; else if (gSaveBlock1Ptr->trainerHill.field_3D6E_0c) return FALSE; @@ -1054,10 +1058,10 @@ static void sub_81D6568(void) gSpecialVar_Result = 1; } -static void sub_81D65A0(void) +static void TrainerHillSetTag(void) { gSaveBlock1Ptr->trainerHill.tag = gSpecialVar_0x8005; - gSaveBlock1Ptr->trainerHill.field_3D68 = gSaveBlock1Ptr->trainerHillTimes[gSpecialVar_0x8005]; + gSaveBlock1Ptr->trainerHill.bestTime = gSaveBlock1Ptr->trainerHillTimes[gSpecialVar_0x8005]; } static u8 sub_81D65E8(u8 arg0) -- cgit v1.2.3 From a7e5852f1d95dd2b438e94fbf31b865196c6e951 Mon Sep 17 00:00:00 2001 From: Phlosioneer Date: Fri, 1 Mar 2019 01:49:11 -0500 Subject: More minor fixes --- src/trainer_hill.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'src/trainer_hill.c') diff --git a/src/trainer_hill.c b/src/trainer_hill.c index ee7e2287a..06ca8615f 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -93,7 +93,7 @@ struct TrHillStruct2 // EWRAM static EWRAM_DATA struct TrHillStruct2 *sHillData = NULL; static EWRAM_DATA struct TrHillRoomTrainers *sRoomTrainers = NULL; -EWRAM_DATA u32 *gVBlankCounterPointer = NULL; +EWRAM_DATA u32 *gTrainerHillVBlankCounter = NULL; // This file's functions. static void TrainerHillStartChallenge(void); @@ -372,7 +372,7 @@ void InitTrainerHillBattleStruct(void) } sRoomTrainers->facilityClass[i] = sHillData->tag.floors[sHillData->floorId].trainers[i].facilityClass; } - SetVBlankCounterPointer(&gSaveBlock1Ptr->trainerHill.timer); + SetTrainerHillVBlankCounter(&gSaveBlock1Ptr->trainerHill.timer); FreeDataStruct(); } @@ -435,7 +435,7 @@ static void TrainerHillStartChallenge(void) gSaveBlock1Ptr->trainerHill.field_3D6E_0f = 0; gSaveBlock1Ptr->trainerHill.field_3D6C = 0; - SetVBlankCounterPointer(&gSaveBlock1Ptr->trainerHill.timer); + SetTrainerHillVBlankCounter(&gSaveBlock1Ptr->trainerHill.timer); gSaveBlock1Ptr->trainerHill.timer = 0; gSaveBlock1Ptr->trainerHill.field_3D6E_0c = 0; gSaveBlock1Ptr->trainerHill.field_3D6E_0b = 0; @@ -447,7 +447,7 @@ static void TrainerHillStartChallenge(void) static void sub_81D58D8(void) { - ClearVBlankCounterPointer(); + ClearTrainerHillVBlankCounter(); gSpecialVar_Result = 0; if (gSaveBlock1Ptr->trainerHill.field_3D6E_0c) gSpecialVar_Result++; @@ -505,7 +505,7 @@ static void TrainerHillResumeTimer(void) if (gSaveBlock1Ptr->trainerHill.timer >= HILL_MAX_TIME) gSaveBlock1Ptr->trainerHill.timer = HILL_MAX_TIME; else - SetVBlankCounterPointer(&gSaveBlock1Ptr->trainerHill.timer); + SetTrainerHillVBlankCounter(&gSaveBlock1Ptr->trainerHill.timer); } } -- cgit v1.2.3