Merge branch 'personality_stuff' of https://github.com/jtjanecek/pmd-red

This commit is contained in:
AnonymousRandomPerson 2025-10-23 22:15:28 -04:00
commit 2f8344405c
4 changed files with 14 additions and 14 deletions

View File

@ -6,8 +6,8 @@
void GameLoop(void);
void nullsub_3(s32 yPos, s32 a1);
s32 sub_8000728(void);
void sub_8001024(PersonalityRelated *dst);
void sub_8001044(PersonalityRelated *src);
void ReadTeamBasicInfo(PersonalityRelated *dst);
void WriteTeamBasicInfo(PersonalityRelated *src);
void sub_8001064(void);
#endif // GUARD_MAIN_LOOPS_H

View File

@ -28,7 +28,7 @@ typedef struct PersonalityRelated
typedef struct PersonalityTestTracker
{
/* 0x0 */ s32 FrameCounter;
/* 0x4 */ PersonalityRelated unk4;
/* 0x4 */ PersonalityRelated TeamBasicInfo;
/* 0x34 */ u32 TestState;
/* 0x38 */ s32 QuestionCounter;
/* 0x3C */ u32 currQuestionIndex;

View File

@ -961,13 +961,13 @@ static void LoadAndRunQuickSaveDungeon_Async(DungeonSetupStruct *setupStr)
}
// arm9.bin::0200CFF4
void sub_8001024(PersonalityRelated *dst)
void ReadTeamBasicInfo(PersonalityRelated *dst)
{
*dst = sPersonalityRelated_203B040;
}
// arm9.bin::0200CFA4
void sub_8001044(PersonalityRelated *src)
void WriteTeamBasicInfo(PersonalityRelated *src)
{
sPersonalityRelated_203B040 = *src;
}

View File

@ -76,7 +76,7 @@ static void InitializeTestStats(void)
{
s32 i;
sub_8001024(&sPersonalityTestTracker->unk4);
ReadTeamBasicInfo(&sPersonalityTestTracker->TeamBasicInfo);
sPersonalityTestTracker->FrameCounter = 0;
sPersonalityTestTracker->TestState = 0;
sPersonalityTestTracker->QuestionCounter = 0;
@ -167,7 +167,7 @@ u32 HandleTestTrackerState(void)
void DeleteTestTracker(void)
{
sub_8001044(&sPersonalityTestTracker->unk4);
WriteTeamBasicInfo(&sPersonalityTestTracker->TeamBasicInfo);
MemoryFree(sPersonalityTestTracker);
sPersonalityTestTracker = NULL;
}
@ -273,7 +273,7 @@ static void RevealPersonality(void)
sPersonalityTestTracker->playerNature = currentNature;
}
sPersonalityTestTracker->unk4.StarterID = gStarters[sPersonalityTestTracker->playerNature][sPersonalityTestTracker->playerGender];
sPersonalityTestTracker->TeamBasicInfo.StarterID = gStarters[sPersonalityTestTracker->playerNature][sPersonalityTestTracker->playerGender];
PrintPersonalityTypeDescription();
sPersonalityTestTracker->TestState = PERSONALITY_STARTER_REVEAL;
}
@ -313,7 +313,7 @@ static void AdvanceToPartnerSelection(void)
static void CallCreatePartnerSelectionMenu(void)
{
CreatePartnerSelectionMenu(sPersonalityTestTracker->unk4.StarterID);
CreatePartnerSelectionMenu(sPersonalityTestTracker->TeamBasicInfo.StarterID);
sPersonalityTestTracker->TestState = PERSONALITY_ADVANCE_TO_PARTNER_NICKNAME_1;
}
@ -326,7 +326,7 @@ static void PromptForPartnerNickname(void)
if (selectedPartner != 0xFFFF) {
if (selectedPartner != 0xFFFE) {
sub_803CE6C();
sPersonalityTestTracker->unk4.PartnerID = selectedPartner;
sPersonalityTestTracker->TeamBasicInfo.PartnerID = selectedPartner;
CreateDialogueBoxAndPortrait(gPartnerNickPrompt, 0, 0, 0x301);
sPersonalityTestTracker->TestState = PERSONALITY_ADVANCE_TO_PARTNER_NICKNAME_2;
}
@ -343,8 +343,8 @@ static void AdvanceToPartnerNicknameScreen(void)
static void NicknamePartner(void)
{
CopyStringtoBuffer(sPersonalityTestTracker->unk4.PartnerNick, GetMonSpecies(sPersonalityTestTracker->unk4.PartnerID));
CreateConfirmNameMenu(3, sPersonalityTestTracker->unk4.PartnerNick);
CopyStringtoBuffer(sPersonalityTestTracker->TeamBasicInfo.PartnerNick, GetMonSpecies(sPersonalityTestTracker->TeamBasicInfo.PartnerID));
CreateConfirmNameMenu(3, sPersonalityTestTracker->TeamBasicInfo.PartnerNick);
sPersonalityTestTracker->TestState = PERSONALITY_END_INTRO;
}
@ -375,7 +375,7 @@ static void PromptNewQuestion(void)
static void PrintPersonalityTypeDescription(void)
{
CopyMonsterNameToBuffer(gFormatBuffer_Monsters[0], sPersonalityTestTracker->unk4.StarterID);
CopyMonsterNameToBuffer(gFormatBuffer_Monsters[0], sPersonalityTestTracker->TeamBasicInfo.StarterID);
CreateDialogueBoxAndPortrait(sPersonalityTypeDescriptionTable[sPersonalityTestTracker->playerNature], 0, 0, 0x101);
}
@ -388,7 +388,7 @@ static void PersonalityTest_DisplayStarterSprite(void)
const u8 *gfx;
WindowTemplates stackArray;
starterID = sPersonalityTestTracker->unk4.StarterID;
starterID = sPersonalityTestTracker->TeamBasicInfo.StarterID;
RestoreSavedWindows(&stackArray);
stackArray.id[1] = sUnknown_80F4244;
ResetUnusedInputStruct();