diff --git a/include/party_menu.h b/include/party_menu.h index 386437c121e2..e5f1d43f774e 100644 --- a/include/party_menu.h +++ b/include/party_menu.h @@ -16,8 +16,8 @@ struct PartyMenu s8 slotId2; u8 action; u16 bagItem; - s16 data1; // used variously as a move, counter, moveSlotId, or cursorPos - s16 learnMoveState; // data2, used only as a learn move state + s16 data[2]; // First element is used variously as a move, counter, moveSlotId, or cursorPos. + // Second element is used as a learn move state }; extern struct PartyMenu gPartyMenu; diff --git a/src/party_menu.c b/src/party_menu.c index 1ba9051c6c1d..1b230592d5a2 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -1943,8 +1943,8 @@ static void SetPartyMonsAllowedInMinigame(void) { u8 i; - ptr = &gPartyMenu.data1; - gPartyMenu.data1 = 0; + ptr = &gPartyMenu.data[0]; + gPartyMenu.data[0] = 0; if (gSpecialVar_0x8005 == 0) { for (i = 0; i < gPlayerPartyCount; i++) @@ -1975,7 +1975,7 @@ static bool16 IsMonAllowedInDodrioBerryPicking(struct Pokemon *mon) static bool8 IsMonAllowedInMinigame(u8 slot) { - if (!((gPartyMenu.data1 >> slot) & 1)) + if (!((gPartyMenu.data[0] >> slot) & 1)) return FALSE; return TRUE; } @@ -4619,7 +4619,7 @@ void ItemUseCB_PPRecovery(u8 taskId, TaskFunc task) if (!(effect[4] & ITEM4_HEAL_PP_ONE)) { - gPartyMenu.data1 = 0; + gPartyMenu.data[0] = 0; TryUsePPItem(taskId); } else @@ -4634,7 +4634,7 @@ void ItemUseCB_PPRecovery(u8 taskId, TaskFunc task) static void SetSelectedMoveForPPItem(u8 taskId) { PartyMenuRemoveWindow(&sPartyMenuInternal->windowId[0]); - gPartyMenu.data1 = Menu_GetCursorPos(); + gPartyMenu.data[0] = Menu_GetCursorPos(); TryUsePPItem(taskId); } @@ -4649,7 +4649,7 @@ static void ReturnToUseOnWhichMon(u8 taskId) static void TryUsePPItem(u8 taskId) { u16 move = MOVE_NONE; - s16 *moveSlot = &gPartyMenu.data1; + s16 *moveSlot = &gPartyMenu.data[0]; u16 item = gSpecialVar_ItemId; struct PartyMenu *ptr = &gPartyMenu; struct Pokemon *mon; @@ -4738,7 +4738,7 @@ void ItemUseCB_TMHM(u8 taskId, TaskFunc task) PlaySE(SE_SELECT); mon = &gPlayerParty[gPartyMenu.slotId]; - move = &gPartyMenu.data1; + move = gPartyMenu.data; item = gSpecialVar_ItemId; GetMonNickname(mon, gStringVar1); move[0] = ItemIdToBattleMoveId(item); @@ -4769,7 +4769,7 @@ void ItemUseCB_TMHM(u8 taskId, TaskFunc task) static void Task_LearnedMove(u8 taskId) { struct Pokemon *mon = &gPlayerParty[gPartyMenu.slotId]; - s16 *move = &gPartyMenu.data1; + s16 *move = &gPartyMenu.data[0]; u16 item = gSpecialVar_ItemId; if (move[1] == 0) @@ -4799,13 +4799,13 @@ static void Task_LearnNextMoveOrClosePartyMenu(u8 taskId) { if (IsFanfareTaskInactive() && ((JOY_NEW(A_BUTTON)) || (JOY_NEW(B_BUTTON)))) { - if (gPartyMenu.learnMoveState == 1) + if (gPartyMenu.data[1] == 1) { Task_TryLearningNextMove(taskId); } else { - if (gPartyMenu.learnMoveState == 2) // never occurs + if (gPartyMenu.data[1] == 2) // never occurs gSpecialVar_Result = TRUE; Task_ClosePartyMenu(taskId); } @@ -4849,7 +4849,7 @@ static void Task_ShowSummaryScreenToForgetMove(u8 taskId) static void CB2_ShowSummaryScreenToForgetMove(void) { - ShowSelectMovePokemonSummaryScreen(gPlayerParty, gPartyMenu.slotId, gPlayerPartyCount - 1, CB2_ReturnToPartyMenuWhileLearningMove, gPartyMenu.data1); + ShowSelectMovePokemonSummaryScreen(gPlayerParty, gPartyMenu.slotId, gPlayerPartyCount - 1, CB2_ReturnToPartyMenuWhileLearningMove, gPartyMenu.data[0]); } static void CB2_ReturnToPartyMenuWhileLearningMove(void) @@ -4888,7 +4888,7 @@ static void Task_PartyMenuReplaceMove(u8 taskId) { mon = &gPlayerParty[gPartyMenu.slotId]; RemoveMonPPBonus(mon, GetMoveSlotToReplace()); - move = gPartyMenu.data1; + move = gPartyMenu.data[0]; SetMonMoveSlot(mon, move, GetMoveSlotToReplace()); Task_LearnedMove(taskId); } @@ -4896,7 +4896,7 @@ static void Task_PartyMenuReplaceMove(u8 taskId) static void StopLearningMovePrompt(u8 taskId) { - StringCopy(gStringVar2, gMoveNames[gPartyMenu.data1]); + StringCopy(gStringVar2, gMoveNames[gPartyMenu.data[0]]); StringExpandPlaceholders(gStringVar4, gText_StopLearningMove2); DisplayPartyMenuMessage(gStringVar4, TRUE); ScheduleBgCopyTilemapToVram(2); @@ -4920,16 +4920,16 @@ static void Task_HandleStopLearningMoveYesNoInput(u8 taskId) { case 0: GetMonNickname(mon, gStringVar1); - StringCopy(gStringVar2, gMoveNames[gPartyMenu.data1]); + StringCopy(gStringVar2, gMoveNames[gPartyMenu.data[0]]); StringExpandPlaceholders(gStringVar4, gText_MoveNotLearned); DisplayPartyMenuMessage(gStringVar4, TRUE); - if (gPartyMenu.learnMoveState == 1) + if (gPartyMenu.data[1] == 1) { gTasks[taskId].func = Task_TryLearningNextMoveAfterText; } else { - if (gPartyMenu.learnMoveState == 2) // never occurs + if (gPartyMenu.data[1] == 2) // never occurs gSpecialVar_Result = FALSE; gTasks[taskId].func = Task_ClosePartyMenuAfterText; } @@ -4939,7 +4939,7 @@ static void Task_HandleStopLearningMoveYesNoInput(u8 taskId) // fallthrough case 1: GetMonNickname(mon, gStringVar1); - StringCopy(gStringVar2, gMoveNames[gPartyMenu.data1]); + StringCopy(gStringVar2, gMoveNames[gPartyMenu.data[0]]); DisplayLearnMoveMessage(gText_PkmnNeedsToReplaceMove); gTasks[taskId].func = Task_ReplaceMoveYesNo; break; @@ -5053,7 +5053,7 @@ static void Task_TryLearnNewMoves(u8 taskId) { RemoveLevelUpStatsWindow(); learnMove = MonTryLearningNewMove(&gPlayerParty[gPartyMenu.slotId], TRUE); - gPartyMenu.learnMoveState = 1; + gPartyMenu.data[1] = 1; switch (learnMove) { case 0: // No moves to learn @@ -5117,7 +5117,7 @@ static void DisplayMonNeedsToReplaceMove(u8 taskId) StringExpandPlaceholders(gStringVar4, gText_PkmnNeedsToReplaceMove); DisplayPartyMenuMessage(gStringVar4, TRUE); ScheduleBgCopyTilemapToVram(2); - gPartyMenu.data1 = gMoveToLearn; + gPartyMenu.data[0] = gMoveToLearn; gTasks[taskId].func = Task_ReplaceMoveYesNo; } @@ -5128,7 +5128,7 @@ static void DisplayMonLearnedMove(u8 taskId, u16 move) StringExpandPlaceholders(gStringVar4, gText_PkmnLearnedMove3); DisplayPartyMenuMessage(gStringVar4, TRUE); ScheduleBgCopyTilemapToVram(2); - gPartyMenu.data1 = move; + gPartyMenu.data[0] = move; gTasks[taskId].func = Task_DoLearnedMoveFanfareAfterText; } @@ -5323,10 +5323,10 @@ static void TryTutorSelectedMon(u8 taskId) if (!gPaletteFade.active) { mon = &gPlayerParty[gPartyMenu.slotId]; - move = &gPartyMenu.data1; + move = &gPartyMenu.data[0]; GetMonNickname(mon, gStringVar1); - gPartyMenu.data1 = GetTutorMove(gSpecialVar_0x8005); - StringCopy(gStringVar2, gMoveNames[gPartyMenu.data1]); + gPartyMenu.data[0] = GetTutorMove(gSpecialVar_0x8005); + StringCopy(gStringVar2, gMoveNames[gPartyMenu.data[0]]); move[1] = 2; switch (CanMonLearnTMTutor(mon, 0, gSpecialVar_0x8005)) { @@ -5337,7 +5337,7 @@ static void TryTutorSelectedMon(u8 taskId) DisplayLearnMoveMessageAndClose(taskId, gText_PkmnAlreadyKnows); return; default: - if (GiveMoveToMon(mon, gPartyMenu.data1) != MON_HAS_MAX_MOVES) + if (GiveMoveToMon(mon, gPartyMenu.data[0]) != MON_HAS_MAX_MOVES) { Task_LearnedMove(taskId); return;