More documentation and enums

This commit is contained in:
PikalaxALT
2018-11-27 08:44:24 -05:00
parent 7e684b32f1
commit a738e3dca5
5 changed files with 45 additions and 43 deletions
+6
View File
@@ -22,6 +22,12 @@ enum {
FAMECHECKER_GIOVANNI FAMECHECKER_GIOVANNI
}; };
enum {
FCPICKSTATE_NO_DRAW,
FCPICKSTATE_SILHOUETTE,
FCPICKSTATE_COLORED
};
void ResetFameChecker(void); void ResetFameChecker(void);
void UseFameChecker(MainCallback savedCallback); void UseFameChecker(MainCallback savedCallback);
-2
View File
@@ -1,8 +1,6 @@
#ifndef GUARD_GLOBAL_BERRY_H #ifndef GUARD_GLOBAL_BERRY_H
#define GUARD_GLOBAL_BERRY_H #define GUARD_GLOBAL_BERRY_H
#include "global.h"
#define BERRY_NAME_COUNT 7 #define BERRY_NAME_COUNT 7
#define BERRY_ITEM_EFFECT_COUNT 18 #define BERRY_ITEM_EFFECT_COUNT 18
-2
View File
@@ -1,8 +1,6 @@
#ifndef GUARD_GLOBAL_FIELDMAP_H #ifndef GUARD_GLOBAL_FIELDMAP_H
#define GUARD_GLOBAL_FIELDMAP_H #define GUARD_GLOBAL_FIELDMAP_H
#include "global.h"
#define NUM_FIELD_OBJECTS 16 #define NUM_FIELD_OBJECTS 16
enum enum
+2 -2
View File
@@ -574,8 +574,8 @@ struct QuestLog
struct FameCheckerSaveData struct FameCheckerSaveData
{ {
/*3a54*/ u16 unk_0_0:2; /*3a54*/ u16 pickState:2;
u16 unk_0_2:12; u16 flavorTextFlags:12;
u16 unk_0_E:2; u16 unk_0_E:2;
}; };
+37 -37
View File
@@ -39,15 +39,15 @@
struct FameCheckerData struct FameCheckerData
{ {
MainCallback savedCallback; MainCallback savedCallback;
u16 unk_04; u16 listMenuTopIdx;
u8 unk_06; u8 unk_06;
u8 unk_07_0:1; u8 personHasUnlockedPanels:1;
u8 inPickMode:1; u8 inPickMode:1;
u8 numUnlockedPersons:6; u8 numUnlockedPersons:6;
u8 scrollIndicatorArrowObjectTaskId; u8 scrollIndicatorArrowObjectTaskId;
u8 unk_09; u8 listMenuCurIdx;
u8 unk_0A; u8 listMenuTopIdx2;
u8 unk_0B; u8 listMenuDrawnSelIdx;
u8 unlockedPersons[17]; u8 unlockedPersons[17];
u8 spriteIds[6]; u8 spriteIds[6];
u8 unk_23_0:1; u8 unk_23_0:1;
@@ -473,9 +473,9 @@ void UseFameChecker(MainCallback savedCallback)
SetVBlankCallback(NULL); SetVBlankCallback(NULL);
sFameCheckerData = AllocZeroed(sizeof(struct FameCheckerData)); sFameCheckerData = AllocZeroed(sizeof(struct FameCheckerData));
sFameCheckerData->savedCallback = savedCallback; sFameCheckerData->savedCallback = savedCallback;
sFameCheckerData->unk_09 = 0; sFameCheckerData->listMenuCurIdx = 0;
sFameCheckerData->unk_0A = 0; sFameCheckerData->listMenuTopIdx2 = 0;
sFameCheckerData->unk_0B = 0; sFameCheckerData->listMenuDrawnSelIdx = 0;
sFameCheckerData->unk_23_0 = FALSE; sFameCheckerData->unk_23_0 = FALSE;
PlaySE(SE_W202); PlaySE(SE_W202);
SetMainCallback2(sub_812C3F8); SetMainCallback2(sub_812C3F8);
@@ -550,7 +550,7 @@ static void sub_812C3F8(void)
SetGpuReg(REG_OFFSET_BLDALPHA, 0x07); SetGpuReg(REG_OFFSET_BLDALPHA, 0x07);
SetGpuReg(REG_OFFSET_BLDY, 0x08); SetGpuReg(REG_OFFSET_BLDY, 0x08);
SetVBlankCallback(sub_812C380); SetVBlankCallback(sub_812C380);
sFameCheckerData->unk_04 = 0; sFameCheckerData->listMenuTopIdx = 0;
sub_812E000(); sub_812E000();
sub_812E178(1, 4); sub_812E178(1, 4);
CreateTask(sub_812C664, 0x08); CreateTask(sub_812C664, 0x08);
@@ -617,7 +617,7 @@ static void sub_812C694(u8 taskId)
if (!IsTextPrinterActive(2) && sub_812D6B4() == TRUE) if (!IsTextPrinterActive(2) && sub_812D6B4() == TRUE)
sub_812CD3C(); sub_812CD3C();
} }
else if (sFameCheckerData->unk_07_0) else if (sFameCheckerData->personHasUnlockedPanels)
{ {
PlaySE(SE_SELECT); PlaySE(SE_SELECT);
task->data[0] = sub_812D724(task->data[1]); task->data[0] = sub_812D724(task->data[1]);
@@ -693,7 +693,7 @@ static void sub_812CA1C(u8 taskId)
ChangeBgX(1, 0x000, 0); ChangeBgX(1, 0x000, 0);
if (gSprites[task->data[2]].data[0] == 0) if (gSprites[task->data[2]].data[0] == 0)
{ {
if (sFameCheckerData->unk_07_0) if (sFameCheckerData->personHasUnlockedPanels)
sub_812D0F4(0); sub_812D0F4(0);
sub_812E178(1, 4); sub_812E178(1, 4);
sub_812E178(2, 2); sub_812E178(2, 2);
@@ -797,7 +797,7 @@ static void sub_812CD3C(void)
{ {
u8 r8 = 0; u8 r8 = 0;
u16 r6 = FameCheckerGetCursorY(); u16 r6 = FameCheckerGetCursorY();
if (gSaveBlock1Ptr->fameChecker[sFameCheckerData->unlockedPersons[r6]].unk_0_0 != 2) if (gSaveBlock1Ptr->fameChecker[sFameCheckerData->unlockedPersons[r6]].pickState != FCPICKSTATE_COLORED)
{ {
sub_812CE9C(); sub_812CE9C();
sub_812C990(); sub_812C990();
@@ -949,7 +949,7 @@ static bool8 sub_812D1A8(u8 a0)
u8 r6; u8 r6;
for (r6 = 0; r6 < 6; r6++) for (r6 = 0; r6 < 6; r6++)
{ {
if ((gSaveBlock1Ptr->fameChecker[sFameCheckerData->unlockedPersons[a0]].unk_0_2 >> r6) & 1) if ((gSaveBlock1Ptr->fameChecker[sFameCheckerData->unlockedPersons[a0]].flavorTextFlags >> r6) & 1)
{ {
sFameCheckerData->spriteIds[r6] = sub_805EB44( sFameCheckerData->spriteIds[r6] = sub_805EB44(
sFameCheckerArrayNpcGraphicsIds[sFameCheckerData->unlockedPersons[a0] * 6 + r6], sFameCheckerArrayNpcGraphicsIds[sFameCheckerData->unlockedPersons[a0] * 6 + r6],
@@ -970,7 +970,7 @@ static bool8 sub_812D1A8(u8 a0)
} }
if (r5 == TRUE) if (r5 == TRUE)
{ {
sFameCheckerData->unk_07_0 = TRUE; sFameCheckerData->personHasUnlockedPanels = TRUE;
if (sFameCheckerData->inPickMode) if (sFameCheckerData->inPickMode)
sub_812D0F4(TRUE); sub_812D0F4(TRUE);
else else
@@ -978,7 +978,7 @@ static bool8 sub_812D1A8(u8 a0)
} }
else else
{ {
sFameCheckerData->unk_07_0 = FALSE; sFameCheckerData->personHasUnlockedPanels = FALSE;
sub_812D0F4(TRUE); sub_812D0F4(TRUE);
} }
return r5; return r5;
@@ -989,11 +989,11 @@ void ResetFameChecker(void)
u8 r4; u8 r4;
for (r4 = 0; r4 < 16; r4++) for (r4 = 0; r4 < 16; r4++)
{ {
gSaveBlock1Ptr->fameChecker[r4].unk_0_0 = 0; gSaveBlock1Ptr->fameChecker[r4].pickState = FCPICKSTATE_NO_DRAW;
gSaveBlock1Ptr->fameChecker[r4].unk_0_2 = 0; gSaveBlock1Ptr->fameChecker[r4].flavorTextFlags = 0;
gSaveBlock1Ptr->fameChecker[r4].unk_0_E = 0; gSaveBlock1Ptr->fameChecker[r4].unk_0_E = 0;
} }
gSaveBlock1Ptr->fameChecker[0].unk_0_0 = 2; gSaveBlock1Ptr->fameChecker[0].pickState = FCPICKSTATE_COLORED;
} }
static void sub_812D388(void) static void sub_812D388(void)
@@ -1001,10 +1001,10 @@ static void sub_812D388(void)
u8 r5, r4; u8 r5, r4;
for (r5 = 0; r5 < 16; r5++) for (r5 = 0; r5 < 16; r5++)
{ {
gSaveBlock1Ptr->fameChecker[r5].unk_0_0 = 2; gSaveBlock1Ptr->fameChecker[r5].pickState = FCPICKSTATE_COLORED;
for (r4 = 0; r4 < 6; r4++) for (r4 = 0; r4 < 6; r4++)
{ {
gSaveBlock1Ptr->fameChecker[r5].unk_0_2 |= (1 << r4); gSaveBlock1Ptr->fameChecker[r5].flavorTextFlags |= (1 << r4);
} }
} }
} }
@@ -1070,7 +1070,7 @@ static void sub_812D5EC(void)
{ {
if (gUnknown_20370C0 < 16 && gSpecialVar_0x8005 < 6) if (gUnknown_20370C0 < 16 && gSpecialVar_0x8005 < 6)
{ {
gSaveBlock1Ptr->fameChecker[gUnknown_20370C0].unk_0_2 |= (1 << gSpecialVar_0x8005); gSaveBlock1Ptr->fameChecker[gUnknown_20370C0].flavorTextFlags |= (1 << gSpecialVar_0x8005);
gSpecialVar_0x8005 = 1; gSpecialVar_0x8005 = 1;
sub_812D650(); sub_812D650();
} }
@@ -1082,9 +1082,9 @@ static void sub_812D650(void)
{ {
if (gSpecialVar_0x8005 == 0) if (gSpecialVar_0x8005 == 0)
return; return;
if (gSpecialVar_0x8005 == 1 && gSaveBlock1Ptr->fameChecker[gUnknown_20370C0].unk_0_0 == 2) if (gSpecialVar_0x8005 == 1 && gSaveBlock1Ptr->fameChecker[gUnknown_20370C0].pickState == FCPICKSTATE_COLORED)
return; return;
gSaveBlock1Ptr->fameChecker[gUnknown_20370C0].unk_0_0 = gSpecialVar_0x8005; gSaveBlock1Ptr->fameChecker[gUnknown_20370C0].pickState = gSpecialVar_0x8005;
} }
} }
@@ -1094,7 +1094,7 @@ static bool8 sub_812D6B4(void)
u8 r1 = sFameCheckerData->unlockedPersons[FameCheckerGetCursorY()]; u8 r1 = sFameCheckerData->unlockedPersons[FameCheckerGetCursorY()];
for (r2 = 0; r2 < 6; r2++) for (r2 = 0; r2 < 6; r2++)
{ {
if (!((gSaveBlock1Ptr->fameChecker[r1].unk_0_2 >> r2) & 1)) if (!((gSaveBlock1Ptr->fameChecker[r1].flavorTextFlags >> r2) & 1))
return FALSE; return FALSE;
} }
return TRUE; return TRUE;
@@ -1212,7 +1212,7 @@ static u8 sub_812D888(u8 a0)
r4 = sub_810C2A4(gUnknown_845F61C[a0], 1, 0x94, 0x42, 6, 0xFFFF); r4 = sub_810C2A4(gUnknown_845F61C[a0], 1, 0x94, 0x42, 6, 0xFFFF);
} }
gSprites[r4].callback = sub_812D840; gSprites[r4].callback = sub_812D840;
if (gSaveBlock1Ptr->fameChecker[a0].unk_0_0 == 1) if (gSaveBlock1Ptr->fameChecker[a0].pickState == FCPICKSTATE_SILHOUETTE)
LoadPalette(gUnknown_845F5C0, 0x160, 0x20); LoadPalette(gUnknown_845F5C0, 0x160, 0x20);
return r4; return r4;
} }
@@ -1290,7 +1290,7 @@ static void sub_812DBC0(s32 itemIndex, bool8 onInit, struct ListMenu *list)
u8 taskId; u8 taskId;
u16 r9; u16 r9;
sLastMenuIdx = 0; sLastMenuIdx = 0;
r9 = sFameCheckerData->unk_0A + sFameCheckerData->unk_0B; r9 = sFameCheckerData->listMenuTopIdx2 + sFameCheckerData->listMenuDrawnSelIdx;
sub_812DDF0(itemIndex, onInit); sub_812DDF0(itemIndex, onInit);
taskId = FindTaskIdByFunc(sub_812C694); taskId = FindTaskIdByFunc(sub_812C694);
if (taskId != 0xFF) if (taskId != 0xFF)
@@ -1299,7 +1299,7 @@ static void sub_812DBC0(s32 itemIndex, bool8 onInit, struct ListMenu *list)
PlaySE(SE_SELECT); PlaySE(SE_SELECT);
task->data[1] = 0; task->data[1] = 0;
get_coro_args_x18_x1A(sFameCheckerData->scrollIndicatorArrowObjectTaskId, &sp8, NULL); get_coro_args_x18_x1A(sFameCheckerData->scrollIndicatorArrowObjectTaskId, &sp8, NULL);
sFameCheckerData->unk_04 = sp8; sFameCheckerData->listMenuTopIdx = sp8;
if (itemIndex != sFameCheckerData->numUnlockedPersons - 1) if (itemIndex != sFameCheckerData->numUnlockedPersons - 1)
{ {
sub_812D174(); sub_812D174();
@@ -1372,16 +1372,16 @@ static void sub_812DDF0(s32 itemIndex, bool8 onInit)
AddTextPrinterParametrized2(0, 2, 8, 14 * sp16 + 4, 0, 0, &gUnknown_845F5E6, 0, sListMenuItems[itemIndex].unk_00); AddTextPrinterParametrized2(0, 2, 8, 14 * sp16 + 4, 0, 0, &gUnknown_845F5E6, 0, sListMenuItems[itemIndex].unk_00);
if (!onInit) if (!onInit)
{ {
if (sp14 < sFameCheckerData->unk_0A) if (sp14 < sFameCheckerData->listMenuTopIdx2)
sFameCheckerData->unk_0B++; sFameCheckerData->listMenuDrawnSelIdx++;
else if (sp14 > sFameCheckerData->unk_0A && r6 != sFameCheckerData->numUnlockedPersons - 1) else if (sp14 > sFameCheckerData->listMenuTopIdx2 && r6 != sFameCheckerData->numUnlockedPersons - 1)
sFameCheckerData->unk_0B--; sFameCheckerData->listMenuDrawnSelIdx--;
AddTextPrinterParametrized2(0, 2, 8, 14 * sFameCheckerData->unk_0B + 4, 0, 0, &gUnknown_845F5E3, 0, sListMenuItems[sFameCheckerData->unk_09].unk_00); AddTextPrinterParametrized2(0, 2, 8, 14 * sFameCheckerData->listMenuDrawnSelIdx + 4, 0, 0, &gUnknown_845F5E3, 0, sListMenuItems[sFameCheckerData->listMenuCurIdx].unk_00);
} }
sFameCheckerData->unk_09 = itemIndex; sFameCheckerData->listMenuCurIdx = itemIndex;
sFameCheckerData->unk_0B = sp16; sFameCheckerData->listMenuDrawnSelIdx = sp16;
sFameCheckerData->unk_0A = sp14; sFameCheckerData->listMenuTopIdx2 = sp14;
} }
static u8 sub_812DEF0(void) static u8 sub_812DEF0(void)
@@ -1392,7 +1392,7 @@ static u8 sub_812DEF0(void)
for (r6 = 0; r6 < 16; r6++) for (r6 = 0; r6 < 16; r6++)
{ {
u8 r5 = sub_812D0C0(r6); u8 r5 = sub_812D0C0(r6);
if (gSaveBlock1Ptr->fameChecker[r5].unk_0_0 != 0) if (gSaveBlock1Ptr->fameChecker[r5].pickState != FCPICKSTATE_NO_DRAW)
{ {
if (gUnknown_845F5EA[r5] < 0xFE00) if (gUnknown_845F5EA[r5] < 0xFE00)
{ {
@@ -1447,7 +1447,7 @@ static void sub_812E000(void)
{ {
sp0.unk_06 = 0; sp0.unk_06 = 0;
sp0.unk_08 = sFameCheckerData->numUnlockedPersons - 5; sp0.unk_08 = sFameCheckerData->numUnlockedPersons - 5;
sFameCheckerData->unk_06 = AddScrollIndicatorArrowPair(&sp0, &sFameCheckerData->unk_04); sFameCheckerData->unk_06 = AddScrollIndicatorArrowPair(&sp0, &sFameCheckerData->listMenuTopIdx);
} }
} }