mirror of
https://github.com/pret/pokeplatinum.git
synced 2026-03-21 17:55:13 -05:00
Some party menu documentation (#971)
This commit is contained in:
parent
fc0f91b1d6
commit
ee361dece7
|
|
@ -22,7 +22,7 @@ void sub_0207FD68(PartyMenuApplication *application, u8 partySlot);
|
|||
u8 PartyMenu_CheckEligibility(PartyMenuApplication *application, u8 slot);
|
||||
u8 PartyMenu_CheckBattleHallEligibility(PartyMenuApplication *application, u8 slot);
|
||||
u8 PartyMenu_CheckBattleCastleEligibility(PartyMenuApplication *application, u8 slot);
|
||||
u8 PartyMenu_GetMemberPanelAnim(u8 param0, u8 param1);
|
||||
u8 PartyMenu_GetMemberPanelAnim(u8 menuType, u8 slot);
|
||||
u8 GetElementIndex(u16 param0);
|
||||
u32 sub_02081930(void);
|
||||
u32 sub_02081934(void);
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ typedef struct {
|
|||
u8 unk_9F;
|
||||
u8 unk_A0;
|
||||
u8 unk_A1[4];
|
||||
PartyMenu *unk_A8;
|
||||
PartyMenu *partyMenu;
|
||||
PokemonSummary *unk_AC;
|
||||
u16 *unk_B0;
|
||||
} UnkStruct_0209BBA4;
|
||||
|
|
|
|||
|
|
@ -530,7 +530,7 @@ static int sub_0207E518(PartyMenuApplication *application)
|
|||
application->partyMenu->menuSelectionResult = PARTY_MENU_EXIT_CODE_DONE;
|
||||
return 32;
|
||||
} else if (v0 == 2) {
|
||||
if (application->partyMenu->mode != 15) {
|
||||
if (application->partyMenu->mode != PARTY_MENU_MODE_BALL_SEAL) {
|
||||
application->partyMenu->menuSelectionResult = PARTY_MENU_EXIT_CODE_SUMMARY;
|
||||
return 32;
|
||||
} else {
|
||||
|
|
@ -1204,7 +1204,7 @@ const u16 *sub_0207F248(PartyMenuApplication *application)
|
|||
static void DrawMemberPanel(PartyMenuApplication *application, u8 slot, u8 panelXPos, u8 panelYPos, u8 showHPBar)
|
||||
{
|
||||
const u16 *panel;
|
||||
if (slot == 0 || (application->partyMenu->type != 0 && slot == 1)) {
|
||||
if (slot == 0 || (application->partyMenu->type != PARTY_MENU_TYPE_BASIC && slot == 1)) {
|
||||
panel = application->leadMemberPanel;
|
||||
} else {
|
||||
panel = application->backMemberPanel;
|
||||
|
|
@ -1506,7 +1506,11 @@ static u8 sub_0207FA24(PartyMenuApplication *application)
|
|||
v0 = sub_0207FBE0(application, &v2, &v3, v1);
|
||||
}
|
||||
} else if (v0 == 7) {
|
||||
if ((application->partyMenu->mode != 2) && (application->partyMenu->mode != 17) && (application->partyMenu->mode != 23) && (application->partyMenu->mode != 22) && (v1 == 0)) {
|
||||
if (application->partyMenu->mode != PARTY_MENU_MODE_SELECT_CONFIRM
|
||||
&& application->partyMenu->mode != PARTY_MENU_MODE_BATTLE_TOWER
|
||||
&& application->partyMenu->mode != PARTY_MENU_MODE_BATTLE_CASTLE
|
||||
&& application->partyMenu->mode != PARTY_MENU_MODE_BATTLE_HALL
|
||||
&& v1 == 0) {
|
||||
v0 = sub_0207FC30(application, &v2, &v3, Unk_020F1BD4[2 + (application->prevPartySlot & 1)]);
|
||||
} else if (v1 == 1) {
|
||||
v0 = sub_0207FC30(application, &v2, &v3, Unk_020F1BD4[(application->prevPartySlot & 1)]);
|
||||
|
|
@ -1693,10 +1697,10 @@ static u8 sub_0207FE98(PartyMenuApplication *application)
|
|||
if (application->hideCancel == 0) {
|
||||
return 3;
|
||||
}
|
||||
} else if ((application->partyMenu->mode == PARTY_MENU_MODE_SELECT_NO_PROMPT) || (application->partyMenu->mode == PARTY_MENU_MODE_NPC_TRADE)) {
|
||||
} else if (application->partyMenu->mode == PARTY_MENU_MODE_SELECT_NO_PROMPT || application->partyMenu->mode == PARTY_MENU_MODE_NPC_TRADE) {
|
||||
Sound_PlayEffect(SEQ_SE_CONFIRM);
|
||||
return 0;
|
||||
} else if ((application->partyMenu->mode == PARTY_MENU_MODE_FEED_POFFIN) || (application->partyMenu->mode == PARTY_MENU_MODE_MAILBOX)) {
|
||||
} else if (application->partyMenu->mode == PARTY_MENU_MODE_FEED_POFFIN || application->partyMenu->mode == PARTY_MENU_MODE_MAILBOX) {
|
||||
if (application->partyMembers[application->currPartySlot].isEgg == FALSE) {
|
||||
Sound_PlayEffect(SEQ_SE_CONFIRM);
|
||||
return 0;
|
||||
|
|
@ -1735,7 +1739,9 @@ static u8 sub_0207FE98(PartyMenuApplication *application)
|
|||
v0 = sub_0207FA00(application);
|
||||
|
||||
if (v0 == 2) {
|
||||
if ((application->partyMenu->mode == PARTY_MENU_MODE_FEED_POFFIN) || (application->partyMenu->mode == PARTY_MENU_MODE_MAILBOX) || (application->partyMenu->mode == PARTY_MENU_MODE_BALL_SEAL)) {
|
||||
if (application->partyMenu->mode == PARTY_MENU_MODE_FEED_POFFIN
|
||||
|| application->partyMenu->mode == PARTY_MENU_MODE_MAILBOX
|
||||
|| application->partyMenu->mode == PARTY_MENU_MODE_BALL_SEAL) {
|
||||
if (application->partyMembers[application->currPartySlot].isEgg != FALSE) {
|
||||
Sound_PlayEffect(SEQ_SE_DP_CUSTOM06);
|
||||
return 5;
|
||||
|
|
@ -1755,27 +1761,26 @@ static void sub_0207FFC8(PartyMenuApplication *application)
|
|||
v0 = Heap_Alloc(HEAP_ID_PARTY_MENU, 8);
|
||||
|
||||
switch (application->partyMenu->mode) {
|
||||
case 0:
|
||||
case PARTY_MENU_MODE_FIELD:
|
||||
v1 = GetContextMenuEntriesForPartyMon(application, v0);
|
||||
break;
|
||||
case 2:
|
||||
case 17:
|
||||
case PARTY_MENU_MODE_SELECT_CONFIRM:
|
||||
case PARTY_MENU_MODE_BATTLE_TOWER:
|
||||
v1 = sub_0208022C(application, v0);
|
||||
break;
|
||||
case 15:
|
||||
case PARTY_MENU_MODE_BALL_SEAL:
|
||||
v1 = sub_020801AC(application, v0);
|
||||
break;
|
||||
case 18:
|
||||
case PARTY_MENU_MODE_DAYCARE:
|
||||
v1 = sub_020801B8(application, v0);
|
||||
break;
|
||||
case 21:
|
||||
case PARTY_MENU_MODE_SELECT_EGG:
|
||||
v1 = sub_0208031C(application, v0);
|
||||
break;
|
||||
|
||||
case 22:
|
||||
case PARTY_MENU_MODE_BATTLE_HALL:
|
||||
v1 = sub_0208027C(application, v0);
|
||||
break;
|
||||
case 23:
|
||||
case PARTY_MENU_MODE_BATTLE_CASTLE:
|
||||
v1 = sub_020802CC(application, v0);
|
||||
break;
|
||||
default:
|
||||
|
|
@ -2384,7 +2389,10 @@ static u8 HandleWindowInputEvent(PartyMenuApplication *application, int *param1)
|
|||
Window_EraseMessageBox(&application->windows[33], 1);
|
||||
PartyMenu_ClearContextWindow(application);
|
||||
|
||||
if ((application->partyMenu->mode == PARTY_MENU_MODE_SELECT_CONFIRM) || (application->partyMenu->mode == PARTY_MENU_MODE_BATTLE_TOWER) || (application->partyMenu->mode == PARTY_MENU_MODE_BATTLE_CASTLE) || (application->partyMenu->mode == PARTY_MENU_MODE_BATTLE_HALL)) {
|
||||
if (application->partyMenu->mode == PARTY_MENU_MODE_SELECT_CONFIRM
|
||||
|| application->partyMenu->mode == PARTY_MENU_MODE_BATTLE_TOWER
|
||||
|| application->partyMenu->mode == PARTY_MENU_MODE_BATTLE_CASTLE
|
||||
|| application->partyMenu->mode == PARTY_MENU_MODE_BATTLE_HALL) {
|
||||
PartyMenu_PrintShortMessage(application, pl_msg_00000453_00034, TRUE);
|
||||
} else if (application->partyMenu->mode == PARTY_MENU_MODE_SELECT_EGG) {
|
||||
PartyMenu_PrintShortMessage(application, pl_msg_00000453_00197, TRUE);
|
||||
|
|
|
|||
|
|
@ -132,25 +132,25 @@ BOOL FrontierScrCmd_B0(FrontierScriptContext *param0)
|
|||
|
||||
v1 = sub_0209B978(param0->unk_00->unk_00);
|
||||
|
||||
if (v1->unk_A8->selectedMonSlot == 7) {
|
||||
if (v1->partyMenu->selectedMonSlot == 7) {
|
||||
*v3 = 0xff;
|
||||
|
||||
for (v0 = 0; v0 < 2; v0++) {
|
||||
v1->unk_A1[v0] = 0;
|
||||
}
|
||||
} else if (v1->unk_A8->selectedMonSlot == 6) {
|
||||
*v3 = v1->unk_A8->selectionOrder[0];
|
||||
} else if (v1->partyMenu->selectedMonSlot == 6) {
|
||||
*v3 = v1->partyMenu->selectionOrder[0];
|
||||
*v3 -= 1;
|
||||
|
||||
*v4 = v1->unk_A8->selectionOrder[1];
|
||||
*v4 = v1->partyMenu->selectionOrder[1];
|
||||
|
||||
if (*v4 > 0) {
|
||||
*v4 -= 1;
|
||||
}
|
||||
}
|
||||
|
||||
Heap_Free(v1->unk_A8);
|
||||
v1->unk_A8 = NULL;
|
||||
Heap_Free(v1->partyMenu);
|
||||
v1->partyMenu = NULL;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -108,55 +108,55 @@ static void ov104_02239D1C(UnkStruct_0209B75C *param0, UnkStruct_0209BBA4 *param
|
|||
{
|
||||
u8 v0;
|
||||
|
||||
param1->unk_A8 = Heap_Alloc(HEAP_ID_FIELD2, sizeof(PartyMenu));
|
||||
MI_CpuClearFast(param1->unk_A8, sizeof(PartyMenu));
|
||||
param1->partyMenu = Heap_Alloc(HEAP_ID_FIELD2, sizeof(PartyMenu));
|
||||
MI_CpuClearFast(param1->partyMenu, sizeof(PartyMenu));
|
||||
|
||||
param1->unk_A8->party = SaveData_GetParty(param1->saveData);
|
||||
param1->unk_A8->bag = SaveData_GetBag(param1->saveData);
|
||||
param1->unk_A8->mailbox = SaveData_GetMailbox(param1->saveData);
|
||||
param1->unk_A8->options = SaveData_GetOptions(param1->saveData);
|
||||
param1->unk_A8->type = PARTY_MENU_TYPE_BASIC;
|
||||
param1->partyMenu->party = SaveData_GetParty(param1->saveData);
|
||||
param1->partyMenu->bag = SaveData_GetBag(param1->saveData);
|
||||
param1->partyMenu->mailbox = SaveData_GetMailbox(param1->saveData);
|
||||
param1->partyMenu->options = SaveData_GetOptions(param1->saveData);
|
||||
param1->partyMenu->type = PARTY_MENU_TYPE_BASIC;
|
||||
|
||||
if (param1->unk_A0 == 1) {
|
||||
param1->unk_A8->mode = 17;
|
||||
param1->partyMenu->mode = PARTY_MENU_MODE_BATTLE_TOWER;
|
||||
} else if (param1->unk_A0 == 5) {
|
||||
param1->unk_A8->mode = 22;
|
||||
param1->partyMenu->mode = PARTY_MENU_MODE_BATTLE_HALL;
|
||||
} else if (param1->unk_A0 == 4) {
|
||||
param1->unk_A8->mode = 23;
|
||||
param1->partyMenu->mode = PARTY_MENU_MODE_BATTLE_CASTLE;
|
||||
} else if (param1->unk_A0 == 6) {
|
||||
param1->unk_A8->mode = 23;
|
||||
param1->partyMenu->mode = PARTY_MENU_MODE_BATTLE_CASTLE;
|
||||
} else {
|
||||
GF_ASSERT(0);
|
||||
}
|
||||
|
||||
param1->unk_A8->fieldSystem = fieldSystem;
|
||||
param1->unk_A8->selectedMonSlot = param1->unk_9F;
|
||||
param1->partyMenu->fieldSystem = fieldSystem;
|
||||
param1->partyMenu->selectedMonSlot = param1->unk_9F;
|
||||
|
||||
for (v0 = 0; v0 < 2; v0++) {
|
||||
param1->unk_A8->selectionOrder[v0] = param1->unk_A1[v0];
|
||||
param1->partyMenu->selectionOrder[v0] = param1->unk_A1[v0];
|
||||
}
|
||||
|
||||
if (param1->unk_A0 == 1) {
|
||||
param1->unk_A8->minSelectionSlots = 2;
|
||||
param1->unk_A8->maxSelectionSlots = 2;
|
||||
param1->unk_A8->reqLevel = 100;
|
||||
param1->partyMenu->minSelectionSlots = 2;
|
||||
param1->partyMenu->maxSelectionSlots = 2;
|
||||
param1->partyMenu->reqLevel = 100;
|
||||
} else if (param1->unk_A0 == 5) {
|
||||
param1->unk_A8->minSelectionSlots = 1;
|
||||
param1->unk_A8->maxSelectionSlots = 1;
|
||||
param1->unk_A8->reqLevel = 30;
|
||||
param1->partyMenu->minSelectionSlots = 1;
|
||||
param1->partyMenu->maxSelectionSlots = 1;
|
||||
param1->partyMenu->reqLevel = 30;
|
||||
} else if (param1->unk_A0 == 4) {
|
||||
param1->unk_A8->minSelectionSlots = 2;
|
||||
param1->unk_A8->maxSelectionSlots = 2;
|
||||
param1->unk_A8->reqLevel = 100;
|
||||
param1->partyMenu->minSelectionSlots = 2;
|
||||
param1->partyMenu->maxSelectionSlots = 2;
|
||||
param1->partyMenu->reqLevel = 100;
|
||||
} else if (param1->unk_A0 == 6) {
|
||||
param1->unk_A8->minSelectionSlots = 2;
|
||||
param1->unk_A8->maxSelectionSlots = 2;
|
||||
param1->unk_A8->reqLevel = 100;
|
||||
param1->partyMenu->minSelectionSlots = 2;
|
||||
param1->partyMenu->maxSelectionSlots = 2;
|
||||
param1->partyMenu->reqLevel = 100;
|
||||
} else {
|
||||
GF_ASSERT(0);
|
||||
}
|
||||
|
||||
sub_0209B988(param0, &gPokemonPartyAppTemplate, param1->unk_A8, 0, NULL);
|
||||
sub_0209B988(param0, &gPokemonPartyAppTemplate, param1->partyMenu, 0, NULL);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -164,7 +164,7 @@ static void ov104_02239F38(UnkStruct_0209B75C *param0, UnkStruct_0209BBA4 *param
|
|||
{
|
||||
int v0;
|
||||
|
||||
switch (param1->unk_A8->selectedMonSlot) {
|
||||
switch (param1->partyMenu->selectedMonSlot) {
|
||||
case 7:
|
||||
*param1->unk_B0 = 4;
|
||||
param1->unk_9D = 4;
|
||||
|
|
@ -177,11 +177,11 @@ static void ov104_02239F38(UnkStruct_0209B75C *param0, UnkStruct_0209BBA4 *param
|
|||
break;
|
||||
}
|
||||
|
||||
MI_CpuCopy8(param1->unk_A8->selectionOrder, param1->unk_A1, 2);
|
||||
param1->unk_9F = param1->unk_A8->selectedMonSlot;
|
||||
Heap_Free(param1->unk_A8);
|
||||
MI_CpuCopy8(param1->partyMenu->selectionOrder, param1->unk_A1, 2);
|
||||
param1->unk_9F = param1->partyMenu->selectedMonSlot;
|
||||
Heap_Free(param1->partyMenu);
|
||||
|
||||
param1->unk_A8 = NULL;
|
||||
param1->partyMenu = NULL;
|
||||
*param1->unk_B0 = 2;
|
||||
param1->unk_9D = 2;
|
||||
|
||||
|
|
|
|||
|
|
@ -1701,7 +1701,7 @@ BOOL sub_0203C50C(FieldTask *taskMan)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static void sub_0203C668(FieldSystem *fieldSystem, StartMenu *param1, u8 param2);
|
||||
static void sub_0203C668(FieldSystem *fieldSystem, StartMenu *menu, u8 mode);
|
||||
|
||||
void *sub_0203C540(u16 fieldSystem, u8 param1, u8 param2)
|
||||
{
|
||||
|
|
@ -1733,7 +1733,7 @@ BOOL StartMenu_ExitMail(FieldTask *taskMan)
|
|||
break;
|
||||
case 0:
|
||||
if (sub_02097728(menu->taskData) == 1) {
|
||||
sub_0203C668(fieldSystem, menu, 12);
|
||||
sub_0203C668(fieldSystem, menu, PARTY_MENU_MODE_GIVE_MAIL_DONE);
|
||||
} else {
|
||||
sub_02097770(menu->taskData);
|
||||
menu->taskData = FieldSystem_OpenPartyMenu(fieldSystem, &menu->fieldMoveContext, v2->unk_02);
|
||||
|
|
@ -1742,7 +1742,7 @@ BOOL StartMenu_ExitMail(FieldTask *taskMan)
|
|||
break;
|
||||
case 1:
|
||||
if (sub_02097728(menu->taskData) == 1) {
|
||||
sub_0203C668(fieldSystem, menu, 11);
|
||||
sub_0203C668(fieldSystem, menu, PARTY_MENU_MODE_GIVE_MAIL);
|
||||
} else {
|
||||
sub_02097770(menu->taskData);
|
||||
menu->taskData = sub_0203D20C(fieldSystem, &menu->unk_230);
|
||||
|
|
|
|||
|
|
@ -172,7 +172,7 @@ FS_EXTERN_OVERLAY(dw_warp);
|
|||
|
||||
typedef struct {
|
||||
enum HeapID heapID;
|
||||
PartyMenu *unk_04;
|
||||
PartyMenu *partyMenu;
|
||||
PokemonSummary *unk_08;
|
||||
} UnkStruct_0203D444;
|
||||
|
||||
|
|
@ -438,12 +438,12 @@ static BOOL sub_0203D444(FieldTask *param0)
|
|||
|
||||
switch (*v2) {
|
||||
case 0:
|
||||
FieldSystem_StartChildProcess(fieldSystem, &gPokemonPartyAppTemplate, v1->unk_04);
|
||||
FieldSystem_StartChildProcess(fieldSystem, &gPokemonPartyAppTemplate, v1->partyMenu);
|
||||
*v2 = 1;
|
||||
break;
|
||||
case 1:
|
||||
if (!FieldSystem_IsRunningApplication(fieldSystem)) {
|
||||
switch (v1->unk_04->selectedMonSlot) {
|
||||
switch (v1->partyMenu->selectedMonSlot) {
|
||||
case 7:
|
||||
sub_0205BAAC(2);
|
||||
*v2 = 4;
|
||||
|
|
@ -459,7 +459,7 @@ static BOOL sub_0203D444(FieldTask *param0)
|
|||
break;
|
||||
case 2:
|
||||
v1->unk_08 = sub_0203D670(fieldSystem, v1->heapID, SUMMARY_MODE_NORMAL);
|
||||
v1->unk_08->monIndex = v1->unk_04->selectedMonSlot;
|
||||
v1->unk_08->monIndex = v1->partyMenu->selectedMonSlot;
|
||||
FieldSystem_OpenSummaryScreen(fieldSystem, v1->unk_08);
|
||||
*v2 = 3;
|
||||
break;
|
||||
|
|
@ -489,7 +489,7 @@ PartyMenu *FieldSystem_OpenPartyMenu_SelectForUnionRoomBattle(FieldTask *taskMan
|
|||
partyMenu->maxSelectionSlots = 2;
|
||||
partyMenu->reqLevel = 30;
|
||||
partyMenu->battleRegulation = NULL;
|
||||
v0->unk_04 = partyMenu;
|
||||
v0->partyMenu = partyMenu;
|
||||
|
||||
FieldTask_InitCall(taskMan, sub_0203D444, v0);
|
||||
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@
|
|||
|
||||
typedef struct {
|
||||
PokemonSummary *unk_00;
|
||||
PartyMenu *unk_04;
|
||||
PartyMenu *partyMenu;
|
||||
UnkFuncPtr_0205AB10 *unk_08;
|
||||
String *unk_0C;
|
||||
String *unk_10;
|
||||
|
|
@ -175,7 +175,7 @@ static void sub_0205A164(UnkStruct_0205A0D8 *param0, enum HeapID heapID)
|
|||
}
|
||||
|
||||
FieldSystem_StartChildProcess(param0->fieldSystem, &gPokemonPartyAppTemplate, partyMenu);
|
||||
param0->unk_04 = partyMenu;
|
||||
param0->partyMenu = partyMenu;
|
||||
}
|
||||
|
||||
static BOOL sub_0205A258(UnkStruct_0205A0D8 *param0, FieldSystem *fieldSystem)
|
||||
|
|
@ -186,9 +186,9 @@ static BOOL sub_0205A258(UnkStruct_0205A0D8 *param0, FieldSystem *fieldSystem)
|
|||
return 0;
|
||||
}
|
||||
|
||||
MI_CpuCopy8(param0->unk_04->selectionOrder, param0->unk_3D, 6);
|
||||
MI_CpuCopy8(param0->partyMenu->selectionOrder, param0->unk_3D, 6);
|
||||
|
||||
switch (param0->unk_04->selectedMonSlot) {
|
||||
switch (param0->partyMenu->selectedMonSlot) {
|
||||
case 7:
|
||||
param0->unk_38 = 0;
|
||||
break;
|
||||
|
|
@ -200,9 +200,9 @@ static BOOL sub_0205A258(UnkStruct_0205A0D8 *param0, FieldSystem *fieldSystem)
|
|||
break;
|
||||
}
|
||||
|
||||
param0->unk_3C = param0->unk_04->selectedMonSlot;
|
||||
Heap_Free(param0->unk_04);
|
||||
param0->unk_04 = NULL;
|
||||
param0->unk_3C = param0->partyMenu->selectedMonSlot;
|
||||
Heap_Free(param0->partyMenu);
|
||||
param0->partyMenu = NULL;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -104,7 +104,7 @@ typedef struct {
|
|||
UnkStruct_02097728 *unk_1A8;
|
||||
Mailbox *mailbox;
|
||||
Bag *bag;
|
||||
PartyMenu *unk_1B4;
|
||||
PartyMenu *partyMenu;
|
||||
} UnkStruct_02072334;
|
||||
|
||||
typedef struct {
|
||||
|
|
@ -155,7 +155,7 @@ static int sub_0207340C(UnkStruct_02072334 *param0);
|
|||
static int sub_02073438(UnkStruct_02072334 *param0, int param1);
|
||||
static int sub_02073480(UnkStruct_02072334 *param0);
|
||||
static int sub_020734F4(UnkStruct_02072334 *param0, u8 param1);
|
||||
static int sub_02073524(UnkStruct_02072334 *param0, int param1);
|
||||
static int sub_02073524(UnkStruct_02072334 *param0, int mode);
|
||||
static int sub_020735E8(UnkStruct_02072334 *param0);
|
||||
|
||||
static const ListMenuTemplate Unk_020F0504 = {
|
||||
|
|
@ -510,7 +510,7 @@ static void sub_02072754(SysTask *param0, void *param1)
|
|||
sub_020734F4(v2, 1);
|
||||
break;
|
||||
case 1:
|
||||
if (!sub_02073524(v2, 14)) {
|
||||
if (!sub_02073524(v2, PARTY_MENU_MODE_MAILBOX)) {
|
||||
return;
|
||||
}
|
||||
break;
|
||||
|
|
@ -524,8 +524,8 @@ static void sub_02072754(SysTask *param0, void *param1)
|
|||
return;
|
||||
}
|
||||
|
||||
v0 = v2->unk_1B4->selectedMonSlot;
|
||||
Heap_Free(v2->unk_1B4);
|
||||
v0 = v2->partyMenu->selectedMonSlot;
|
||||
Heap_Free(v2->partyMenu);
|
||||
|
||||
if (v0 == 7) {
|
||||
sub_02072EA4(v2, v2->unk_0C, NULL);
|
||||
|
|
@ -597,14 +597,14 @@ static void sub_02072878(SysTask *param0, void *param1)
|
|||
break;
|
||||
case 1:
|
||||
|
||||
if (!sub_02073524(v4, 9)) {
|
||||
if (!sub_02073524(v4, PARTY_MENU_MODE_GIVE_ITEM)) {
|
||||
return;
|
||||
}
|
||||
|
||||
v1 = v4->unk_1B4->selectedMonSlot;
|
||||
v2 = v4->unk_1B4->menuSelectionResult;
|
||||
v1 = v4->partyMenu->selectedMonSlot;
|
||||
v2 = v4->partyMenu->menuSelectionResult;
|
||||
|
||||
Heap_Free(v4->unk_1B4);
|
||||
Heap_Free(v4->partyMenu);
|
||||
|
||||
if ((v2 != 6) || (v1 == 7)) {
|
||||
v4->unk_0C = sub_020726B4;
|
||||
|
|
@ -630,11 +630,11 @@ static void sub_02072878(SysTask *param0, void *param1)
|
|||
v4->unk_0C = sub_02072370;
|
||||
break;
|
||||
case 3:
|
||||
if (!sub_02073524(v4, 11)) {
|
||||
if (!sub_02073524(v4, PARTY_MENU_MODE_GIVE_MAIL)) {
|
||||
return;
|
||||
}
|
||||
|
||||
Heap_Free(v4->unk_1B4);
|
||||
Heap_Free(v4->partyMenu);
|
||||
sub_020730B8(v4, v4->unk_17, v4->unk_13B_6);
|
||||
v4->unk_13B_6 = 0;
|
||||
break;
|
||||
|
|
@ -1212,7 +1212,7 @@ static int sub_02073524(UnkStruct_02072334 *param0, int mode)
|
|||
}
|
||||
|
||||
FieldSystem_StartChildProcess(param0->fieldSystem, &gPokemonPartyAppTemplate, partyMenu);
|
||||
param0->unk_1B4 = partyMenu;
|
||||
param0->partyMenu = partyMenu;
|
||||
param0->unk_12++;
|
||||
break;
|
||||
case 1:
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ typedef struct {
|
|||
UnkStruct_ov76_0223DE00 *unk_00;
|
||||
UnkStruct_02097F38_sub1 *unk_04;
|
||||
UnkStruct_02097F18 *unk_08;
|
||||
PartyMenu *unk_0C;
|
||||
PartyMenu *partyMenu;
|
||||
SaveData *saveData;
|
||||
int unk_14;
|
||||
} UnkStruct_02097F38;
|
||||
|
|
@ -352,7 +352,7 @@ static BOOL sub_02097F38(FieldTask *param0)
|
|||
}
|
||||
} break;
|
||||
case 3: {
|
||||
PartyMenu *partyMenu = v0->unk_0C;
|
||||
PartyMenu *partyMenu = v0->partyMenu;
|
||||
|
||||
partyMenu->party = v1->unk_1C;
|
||||
partyMenu->bag = SaveData_GetBag(v0->saveData);
|
||||
|
|
@ -366,7 +366,7 @@ static BOOL sub_02097F38(FieldTask *param0)
|
|||
v0->unk_14 = 4;
|
||||
} break;
|
||||
case 4: {
|
||||
PartyMenu *partyMenu = v0->unk_0C;
|
||||
PartyMenu *partyMenu = v0->partyMenu;
|
||||
Pokemon *v8;
|
||||
BallCapsule *v9;
|
||||
BallSeal *v10;
|
||||
|
|
@ -398,7 +398,7 @@ static BOOL sub_02097F38(FieldTask *param0)
|
|||
v0->unk_14 = 6;
|
||||
break;
|
||||
case 6:
|
||||
Heap_Free(v0->unk_0C);
|
||||
Heap_Free(v0->partyMenu);
|
||||
Heap_Free(v0->unk_08);
|
||||
Heap_Free(v0);
|
||||
return 1;
|
||||
|
|
@ -417,8 +417,8 @@ void sub_020980DC(FieldTask *param0, SaveData *saveData)
|
|||
memset(v0->unk_08, 0, sizeof(UnkStruct_02097F18));
|
||||
v0->unk_08->options = SaveData_GetOptions(saveData);
|
||||
v0->unk_08->saveData = saveData;
|
||||
v0->unk_0C = Heap_Alloc(HEAP_ID_FIELD2, sizeof(PartyMenu));
|
||||
memset(v0->unk_0C, 0, sizeof(PartyMenu));
|
||||
v0->partyMenu = Heap_Alloc(HEAP_ID_FIELD2, sizeof(PartyMenu));
|
||||
memset(v0->partyMenu, 0, sizeof(PartyMenu));
|
||||
|
||||
FieldTask_InitCall(param0, sub_02097F38, v0);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ typedef struct {
|
|||
UnkStruct_0209C194_1 unk_08;
|
||||
UnkStruct_0209C194 *unk_28;
|
||||
FieldSystem *fieldSystem;
|
||||
PartyMenu *unk_30;
|
||||
PartyMenu *partyMenu;
|
||||
PokemonSummary *unk_34;
|
||||
} UnkStruct_0209C1EC;
|
||||
|
||||
|
|
@ -106,7 +106,7 @@ static BOOL sub_0209C280(UnkStruct_0209C1EC *param0)
|
|||
} else {
|
||||
CommMan_SetErrorHandling(1, 1);
|
||||
|
||||
param0->unk_30 = FieldSystem_OpenPartyMenu_SelectForSpinTrade(param0->fieldSystem, param0->unk_04);
|
||||
param0->partyMenu = FieldSystem_OpenPartyMenu_SelectForSpinTrade(param0->fieldSystem, param0->unk_04);
|
||||
param0->unk_28->unk_00 = 1;
|
||||
param0->unk_00 = 2;
|
||||
}
|
||||
|
|
@ -118,11 +118,11 @@ static BOOL sub_0209C280(UnkStruct_0209C1EC *param0)
|
|||
static BOOL sub_0209C2C0(UnkStruct_0209C1EC *param0)
|
||||
{
|
||||
if (FieldSystem_IsRunningApplication(param0->fieldSystem) == 0) {
|
||||
int v0 = param0->unk_30->selectedMonSlot;
|
||||
int v0 = param0->partyMenu->selectedMonSlot;
|
||||
|
||||
Heap_Free(param0->unk_30);
|
||||
Heap_Free(param0->partyMenu);
|
||||
|
||||
if (param0->unk_30->menuSelectionResult == 1) {
|
||||
if (param0->partyMenu->menuSelectionResult == 1) {
|
||||
param0->unk_34 = sub_0203D670(param0->fieldSystem, HEAP_ID_APPLICATION, SUMMARY_MODE_NORMAL);
|
||||
param0->unk_04 = v0;
|
||||
param0->unk_34->monIndex = v0;
|
||||
|
|
@ -143,7 +143,7 @@ static BOOL sub_0209C324(UnkStruct_0209C1EC *param0)
|
|||
{
|
||||
if (FieldSystem_IsRunningApplication(param0->fieldSystem) == 0) {
|
||||
Heap_Free(param0->unk_34);
|
||||
param0->unk_30 = FieldSystem_OpenPartyMenu_SelectForSpinTrade(param0->fieldSystem, param0->unk_04);
|
||||
param0->partyMenu = FieldSystem_OpenPartyMenu_SelectForSpinTrade(param0->fieldSystem, param0->unk_04);
|
||||
param0->unk_00 = 2;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user