document menuAction variables

This commit is contained in:
Seth Barberee 2023-04-09 16:22:17 -07:00
parent a76aa6d797
commit 261ba2c4c2
15 changed files with 136 additions and 135 deletions

View File

@ -33,7 +33,7 @@ struct unkStruct_203B3F8
s16 unk4;
u16 unk6;
struct PokemonStruct *pokemon;
u32 unkC;
u32 menuAction;
struct MenuStruct unk10;
u32 unk60;
u32 unk64;

View File

@ -12,7 +12,7 @@ struct unkStruct_203B204
s32 currState;
u32 fallbackState;
u32 chosenAmount;
u32 unk10;
u32 menuAction;
struct MenuItem unk14[8];
u16 unk54[8];
u32 unk64;

View File

@ -18,10 +18,9 @@ struct unkStruct_203B2BC
u16 moveID;
struct Move moves[8];
u16 moveIDs[4]; // some list of move IDs
u32 unk70;
s32 unk74;
u32 unk78;
u32 menuAction1;
u32 menuAction2;
u32 menuAction3;
struct MenuStruct unk7C;
u8 fill80[0xFD - 0xCC];
u32 unkFD;

View File

@ -10,14 +10,13 @@ struct unkStruct_203B208
// size: 0x14C
u32 unk0;
u32 currState;
u32 unk8;
struct Item unkC;
u32 unk10;
u32 fallbackState;
struct Item storedItem;
u32 itemIndex;
u8 id; // another id?
u8 fill15[0x3];
u32 unk18;
u32 unk1C;
u32 unk20;
u32 menuAction1;
u32 menuAction2;
u32 menuAction3;
struct MenuItem unk24[5];
u16 unk4C[5];
struct MenuStruct unk58;
@ -42,12 +41,12 @@ struct unkStruct_203B20C
{
u32 state;
u8 unk4[4];
struct Item unk8;
u32 unkC;
struct Item item;
u32 itemIndex;
u8 id;
u32 unk14;
u32 unk18;
u32 unk1C;
u32 menuAction1;
u32 menuAction2;
u32 menuAction3;
struct MenuItem unk20[8];
u16 unk60[8];
struct MenuStruct unk70;
@ -64,4 +63,13 @@ struct unkStruct_203B20C
struct UnkTextStruct2 unkF0[4];
};
enum KangaskhanStorageStates {
KANGASKHAN_STORAGE_INIT = 0,
KANGASKHAN_STORAGE_MAIN_MENU = 1,
KANGASKHAN_STORAGE_EXIT = 4,
KANGASKHAN_STORAGE_NO_INV_ITEMS = 5,
KANGASKHAN_STORAGE_TOO_MANY_ITEMS = 6,
KANGASKHAN_STORAGE_IS_MONEY_USED_TM = 9,
};
#endif

View File

@ -16,8 +16,8 @@ struct unkStruct_203B304
u8 fill10[0x50 - 0x10];
u8 unk50;
u8 fill51[0x64 - 0x51];
u32 unk64;
u32 unk68;
u32 menuAction1;
u32 menuAction2;
struct MenuStruct unk6C;
struct MenuItem unkBC[8];
u16 unkFC[8];

View File

@ -124,7 +124,7 @@ void sub_803AD88(void)
break;
case 3:
sub_8023DA4();
sub_8012D60(&gUnknown_203B3F8->unk10, gUnknown_203B3F8->unk90, 0, gUnknown_203B3F8->unkD0, gUnknown_203B3F8->unkC, 2);
sub_8012D60(&gUnknown_203B3F8->unk10, gUnknown_203B3F8->unk90, 0, gUnknown_203B3F8->unkD0, gUnknown_203B3F8->menuAction, 2);
break;
case 5:
gUnknown_203B3F8->unk70 = 3;

View File

@ -31,7 +31,7 @@ u32 CreateFelicityBank(s32 param_1)
ResetUnusedInputStruct();
sub_800641C(0,1,1);
gUnknown_203B204 = MemoryAlloc(sizeof(struct unkStruct_203B204),8);
gUnknown_203B204->unk10 = 0;
gUnknown_203B204->menuAction = 0;
gUnknown_203B204->unk0 = param_1;
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, MONSTER_PERSIAN);
CopyYellowMonsterNametoBuffer(gUnknown_202E1C8, MONSTER_PERSIAN);

View File

@ -29,11 +29,11 @@ void sub_8016B48(u8 action);
void sub_80169BC(void)
{
s32 temp;
if(sub_80144A4(&temp) == 0)
s32 menuAction;
if(sub_80144A4(&menuAction) == 0)
{
gUnknown_203B204->unk10 = temp;
switch(temp)
gUnknown_203B204->menuAction = menuAction;
switch(menuAction)
{
case 2:
UpdateFelicityBankState(7);

View File

@ -127,9 +127,9 @@ u32 sub_8027074(void)
{
ResetSprites(0);
gUnknown_203B2BC = MemoryAlloc(sizeof(struct unkStruct_203B2BC), 8);
gUnknown_203B2BC->unk70 = 0;
gUnknown_203B2BC->unk74 = 0;
gUnknown_203B2BC->unk78 = 0;
gUnknown_203B2BC->menuAction1 = 0;
gUnknown_203B2BC->menuAction2 = 0;
gUnknown_203B2BC->menuAction3 = 0;
SetFriendAreaActionMenuState(FRIEND_AREA_ACTION_MENU_INIT);
return 1;
}
@ -247,7 +247,7 @@ void sub_8027274(void)
case 3:
sub_8027D40(3,&gUnknown_203B2BC->item2);
sub_8023DA4();
sub_8012D60(&gUnknown_203B2BC->unk7C,gUnknown_203B2BC->menuItems,0,&gUnknown_203B2BC->unk16C,gUnknown_203B2BC->unk70,2);
sub_8012D60(&gUnknown_203B2BC->unk7C,gUnknown_203B2BC->menuItems,0,&gUnknown_203B2BC->unk16C,gUnknown_203B2BC->menuAction1,2);
break;
case 4:
sub_8024458(gUnknown_203B2BC->targetPoke,2);
@ -263,7 +263,7 @@ void sub_8027274(void)
break;
case 0xc:
sub_801A9E0();
sub_8012D60(&gUnknown_203B2BC->unk7C,gUnknown_203B2BC->menuItems,0,&gUnknown_203B2BC->unk16C,gUnknown_203B2BC->unk74,2);
sub_8012D60(&gUnknown_203B2BC->unk7C,gUnknown_203B2BC->menuItems,0,&gUnknown_203B2BC->unk16C,gUnknown_203B2BC->menuAction2,2);
break;
case 0xd:
HeldItemToSlot(&slot, &gUnknown_203B2BC->itemToGive);

View File

@ -104,12 +104,12 @@ void sub_80278B4(void)
struct PokemonStruct *playerStruct;
struct PokemonStruct *pokeStruct1;
struct PokemonStruct *pokeStruct2;
int menuAction;
u32 menuAction;
menuAction = 0;
sub_8023A94(0);
if ((sub_8012FD8(&gUnknown_203B2BC->unk7C) == 0) && (sub_8013114(&gUnknown_203B2BC->unk7C,&menuAction), menuAction != 1)) {
gUnknown_203B2BC->unk70 = menuAction;
gUnknown_203B2BC->menuAction1 = menuAction;
}
switch(menuAction) {
case 6:
@ -292,7 +292,7 @@ void sub_8027BD8(void)
menuAction = 0;
sub_801A6E8(0);
if ((sub_8012FD8(&gUnknown_203B2BC->unk7C) == 0) && (sub_8013114(&gUnknown_203B2BC->unk7C,&menuAction), menuAction != 1)) {
gUnknown_203B2BC->unk74 = menuAction;
gUnknown_203B2BC->menuAction2 = menuAction;
}
switch(menuAction)
{

View File

@ -28,7 +28,7 @@ extern void sub_8017D24();
extern void sub_8017DDC();
extern void sub_8017928();
extern void sub_8017A1C();
extern void sub_8017DF8();
extern void AdvanceToKangaskhanStorageFallbackState();
void sub_8016E80();
extern void sub_8016FF8();
@ -41,9 +41,9 @@ u32 DisplayKangaskhanDialogueSprite(s32 param_1)
ResetUnusedInputStruct();
sub_800641C(0,1,1);
gUnknown_203B208 = MemoryAlloc(sizeof(struct unkStruct_203B208),8);
gUnknown_203B208->unk18 = 0;
gUnknown_203B208->unk1C = 0;
gUnknown_203B208->unk20 = 0;
gUnknown_203B208->menuAction1 = 0;
gUnknown_203B208->menuAction2 = 0;
gUnknown_203B208->menuAction3 = 0;
gUnknown_203B208->unk0 = param_1;
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, MONSTER_KANGASKHAN);
CopyYellowMonsterNametoBuffer(gUnknown_202E1C8, MONSTER_KANGASKHAN);
@ -63,15 +63,15 @@ u32 DisplayKangaskhanDialogueSprite(s32 param_1)
gUnknown_203B208->unkE6 = 0;
gUnknown_203B208->unkE0 = 2;
gUnknown_203B208->unkE2 = 8;
UpdateKangaskhanStorageState(0);
UpdateKangaskhanStorageState(KANGASKHAN_STORAGE_INIT);
return 1;
}
u32 sub_8016D54(void)
{
switch(gUnknown_203B208->currState) {
case 0:
case 1:
case KANGASKHAN_STORAGE_INIT:
case KANGASKHAN_STORAGE_MAIN_MENU:
sub_8017828();
break;
case 0xd:
@ -109,10 +109,10 @@ u32 sub_8016D54(void)
case 0x1c:
sub_8017A1C();
break;
case 4:
case KANGASKHAN_STORAGE_EXIT:
return 3;
default:
sub_8017DF8();
AdvanceToKangaskhanStorageFallbackState();
break;
}
return 0;

View File

@ -103,35 +103,30 @@ void sub_8017828(void)
if (sub_80144A4(&menuAction) == 0) {
if (menuAction != 1) {
gUnknown_203B208->unk18 = menuAction;
gUnknown_203B208->menuAction1 = menuAction;
}
switch(menuAction)
{
case 2:
if (GetNumberOfFilledInventorySlots() == 0) {
UpdateKangaskhanStorageState(5);
UpdateKangaskhanStorageState(KANGASKHAN_STORAGE_NO_INV_ITEMS);
}
else if (sub_801CF50(0) != 0) {
UpdateKangaskhanStorageState(8);
}
else {
if (sub_801CF50(0) != 0) {
UpdateKangaskhanStorageState(8);
}
else {
UpdateKangaskhanStorageState(0xb);
}
UpdateKangaskhanStorageState(0xb);
}
break;
case 3:
if (sub_801CF14(1) != 0) {
UpdateKangaskhanStorageState(7);
}
else
{
if (GetNumberOfFilledInventorySlots() >= INVENTORY_SIZE) {
UpdateKangaskhanStorageState(6);
}
else {
UpdateKangaskhanStorageState(0x14);
}
else if (GetNumberOfFilledInventorySlots() >= INVENTORY_SIZE) {
UpdateKangaskhanStorageState(KANGASKHAN_STORAGE_TOO_MANY_ITEMS);
}
else {
UpdateKangaskhanStorageState(0x14);
}
break;
case 6:
@ -152,8 +147,8 @@ void sub_80178D0(void)
switch(menuAction)
{
case 4:
MoveToStorage(&gUnknown_203B208->unkC);
ShiftItemsDownFrom(gUnknown_203B208->unk10);
MoveToStorage(&gUnknown_203B208->storedItem);
ShiftItemsDownFrom(gUnknown_203B208->itemIndex);
FillInventoryGaps();
UpdateKangaskhanStorageState(0x13);
break;
@ -174,9 +169,9 @@ void sub_8017928(void)
switch(menuAction)
{
case 4:
gTeamInventory_203B460->teamStorage[gUnknown_203B208->unkC.id] -= gUnknown_203B208->unkC.quantity;
item.id = gUnknown_203B208->unkC.id;
item.quantity = gUnknown_203B208->unkC.quantity;
gTeamInventory_203B460->teamStorage[gUnknown_203B208->storedItem.id] -= gUnknown_203B208->storedItem.quantity;
item.id = gUnknown_203B208->storedItem.id;
item.quantity = gUnknown_203B208->storedItem.quantity;
AddHeldItemToInventory(&item);
UpdateKangaskhanStorageState(0x1d);
break;
@ -197,19 +192,18 @@ void sub_80179A8(void)
switch(menuAction)
{
case 4:
for(index = 0; index < INVENTORY_SIZE; index++)
{
if (sub_801AED0(index) != 0) {
MoveToStorage(&gTeamInventory_203B460->teamItems[index]);
gTeamInventory_203B460->teamItems[index].id = 0;
gTeamInventory_203B460->teamItems[index].flags = 0;
for(index = 0; index < INVENTORY_SIZE; index++)
{
if (sub_801AED0(index) != 0) {
MoveToStorage(&gTeamInventory_203B460->teamItems[index]);
gTeamInventory_203B460->teamItems[index].id = 0;
gTeamInventory_203B460->teamItems[index].flags = 0;
}
}
}
FillInventoryGaps();
sub_801AE84();
UpdateKangaskhanStorageState(0x13);
break;
FillInventoryGaps();
sub_801AE84();
UpdateKangaskhanStorageState(0x13);
break;
case 1:
case 5:
UpdateKangaskhanStorageState(0xe);
@ -275,19 +269,19 @@ void sub_8017AF8(void)
}
else
{
gUnknown_203B208->unk10 = sub_801A8AC();
gUnknown_203B208->unkC = gTeamInventory_203B460->teamItems[gUnknown_203B208->unk10];
gUnknown_203B208->itemIndex = sub_801A8AC();
gUnknown_203B208->storedItem = gTeamInventory_203B460->teamItems[gUnknown_203B208->itemIndex];
UpdateKangaskhanStorageState(0xF);
}
break;
case 4:
gUnknown_203B208->unk10 = sub_801A8AC();
gUnknown_203B208->unkC = gTeamInventory_203B460->teamItems[gUnknown_203B208->unk10];
gUnknown_203B208->itemIndex = sub_801A8AC();
gUnknown_203B208->storedItem = gTeamInventory_203B460->teamItems[gUnknown_203B208->itemIndex];
UpdateKangaskhanStorageState(0x10);
break;
case 2:
sub_801A928();
UpdateKangaskhanStorageState(1);
UpdateKangaskhanStorageState(KANGASKHAN_STORAGE_MAIN_MENU);
break;
}
}
@ -303,20 +297,20 @@ void sub_8017B88(void)
else
{
gUnknown_203B208->id = sub_801CB24();
xxx_init_itemslot_8090A8C(&gUnknown_203B208->unkC, gUnknown_203B208->id, 0);
gUnknown_203B208->unkC.quantity = 1;
xxx_init_itemslot_8090A8C(&gUnknown_203B208->storedItem, gUnknown_203B208->id, 0);
gUnknown_203B208->storedItem.quantity = 1;
UpdateKangaskhanStorageState(0x19);
}
break;
case 4:
gUnknown_203B208->id = sub_801CB24();
xxx_init_itemslot_8090A8C(&gUnknown_203B208->unkC, gUnknown_203B208->id, 0);
gUnknown_203B208->unkC.quantity = 1;
xxx_init_itemslot_8090A8C(&gUnknown_203B208->storedItem, gUnknown_203B208->id, 0);
gUnknown_203B208->storedItem.quantity = 1;
UpdateKangaskhanStorageState(0x1A);
break;
case 2:
sub_801CBB8();
UpdateKangaskhanStorageState(1);
UpdateKangaskhanStorageState(KANGASKHAN_STORAGE_MAIN_MENU);
break;
case 1:
sub_801AD34(0);
@ -334,7 +328,7 @@ void sub_8017C28(void)
sub_8017598();
break;
case 3:
gUnknown_203B208->unkC.quantity = gUnknown_203B208->unkA8;
gUnknown_203B208->storedItem.quantity = gUnknown_203B208->unkA8;
UpdateKangaskhanStorageState(0x1B);
break;
case 2:
@ -353,16 +347,16 @@ void sub_8017C7C(void)
sub_801A6E8(0);
if (sub_8012FD8(&gUnknown_203B208->unk58) == 0) {
sub_8013114(&gUnknown_203B208->unk58, &menuAction);
if(menuAction != 1) gUnknown_203B208->unk1C = menuAction;
if(menuAction != 1) gUnknown_203B208->menuAction2 = menuAction;
}
switch(menuAction)
{
case 2:
sub_8099690(0);
if(!IsNotMoneyOrUsedTMItem(gUnknown_203B208->unkC.id))
UpdateKangaskhanStorageState(9);
else if(!sub_801ADA0(gUnknown_203B208->unk10))
if(!IsNotMoneyOrUsedTMItem(gUnknown_203B208->storedItem.id))
UpdateKangaskhanStorageState(KANGASKHAN_STORAGE_IS_MONEY_USED_TM);
else if(!sub_801ADA0(gUnknown_203B208->itemIndex))
UpdateKangaskhanStorageState(0xA);
else
UpdateKangaskhanStorageState(0x11);
@ -384,7 +378,7 @@ void sub_8017D24(void)
sub_801CA08(0);
if (sub_8012FD8(&gUnknown_203B208->unk58) == 0) {
sub_8013114(&gUnknown_203B208->unk58, &menuAction);
if(menuAction != 1) gUnknown_203B208->unk20 = menuAction;
if(menuAction != 1) gUnknown_203B208->menuAction3 = menuAction;
}
switch(menuAction)
@ -393,9 +387,9 @@ void sub_8017D24(void)
if (GetNumberOfFilledInventorySlots() >= INVENTORY_SIZE)
{
sub_801CBB8();
UpdateKangaskhanStorageState(6);
UpdateKangaskhanStorageState(KANGASKHAN_STORAGE_TOO_MANY_ITEMS);
}
else if(IsThrowableItem(gUnknown_203B208->unkC.id))
else if(IsThrowableItem(gUnknown_203B208->storedItem.id))
UpdateKangaskhanStorageState(0x18);
else
UpdateKangaskhanStorageState(0x1B);
@ -441,12 +435,12 @@ void sub_8017DDC(void)
}
}
void sub_8017DF8(void)
void AdvanceToKangaskhanStorageFallbackState(void)
{
s32 temp;
if(sub_80144A4(&temp) == 0)
{
UpdateKangaskhanStorageState(gUnknown_203B208->unk8);
UpdateKangaskhanStorageState(gUnknown_203B208->fallbackState);
}
}
@ -455,9 +449,9 @@ u32 sub_8017E1C(void)
ResetUnusedInputStruct();
sub_800641C(NULL, 1, 1);
gUnknown_203B20C = MemoryAlloc(sizeof(struct unkStruct_203B20C), 8);
gUnknown_203B20C->unk14 = 0;
gUnknown_203B20C->unk18 = 0;
gUnknown_203B20C->unk1C = 0;
gUnknown_203B20C->menuAction1 = 0;
gUnknown_203B20C->menuAction2 = 0;
gUnknown_203B20C->menuAction3 = 0;
sub_8017F10(0);
return 1;
}
@ -572,7 +566,7 @@ void sub_8018100(void)
switch(gUnknown_203B20C->state)
{
case 1:
sub_8012D60(&gUnknown_203B20C->unk70, gUnknown_203B20C->unk20, 0, gUnknown_203B20C->unk60, gUnknown_203B20C->unk14, 2);
sub_8012D60(&gUnknown_203B20C->unk70, gUnknown_203B20C->unk20, 0, gUnknown_203B20C->unk60, gUnknown_203B20C->menuAction1, 2);
break;
case 4:
sub_801A5D8(3, 3, 0, 0xA);
@ -583,10 +577,10 @@ void sub_8018100(void)
case 6:
sub_801A9E0();
sub_801841C();
sub_8012D60(&gUnknown_203B20C->unk70, gUnknown_203B20C->unk20, 0, gUnknown_203B20C->unk60, gUnknown_203B20C->unk18, 2);
sub_8012D60(&gUnknown_203B20C->unk70, gUnknown_203B20C->unk20, 0, gUnknown_203B20C->unk60, gUnknown_203B20C->menuAction2, 2);
break;
case 7:
sub_801B3C0(&gUnknown_203B20C->unk8);
sub_801B3C0(&gUnknown_203B20C->item);
break;
case 10:
sub_801C8C4(1, 3, 0, 0xA);
@ -599,10 +593,10 @@ void sub_8018100(void)
case 12:
gUnknown_203B20C->unkD0 = 2;
gUnknown_203B20C->unkC8 = 1;
if(gTeamInventory_203B460->teamStorage[gUnknown_203B20C->unk8.id] > 99)
if(gTeamInventory_203B460->teamStorage[gUnknown_203B20C->item.id] > 99)
gUnknown_203B20C->unkCC = 99;
else
gUnknown_203B20C->unkCC = gTeamInventory_203B460->teamStorage[gUnknown_203B20C->unk8.id];
gUnknown_203B20C->unkCC = gTeamInventory_203B460->teamStorage[gUnknown_203B20C->item.id];
gUnknown_203B20C->unkC4 = gUnknown_203B20C->unkCC;
gUnknown_203B20C->unkD4 = 1;
gUnknown_203B20C->unkD8 = &gUnknown_203B20C->unkF0[1];
@ -615,10 +609,10 @@ void sub_8018100(void)
sub_801CCD8();
sub_801AD34(0);
sub_80184D4();
sub_8012D60(&gUnknown_203B20C->unk70, gUnknown_203B20C->unk20, 0, gUnknown_203B20C->unk60, gUnknown_203B20C->unk1C, 2);
sub_8012D60(&gUnknown_203B20C->unk70, gUnknown_203B20C->unk20, 0, gUnknown_203B20C->unk60, gUnknown_203B20C->menuAction3, 2);
break;
case 14:
sub_801B3C0(&gUnknown_203B20C->unk8);
sub_801B3C0(&gUnknown_203B20C->item);
break;
case 0:
default:

View File

@ -45,7 +45,7 @@ void sub_8018588(void)
if(sub_8012FD8(&gUnknown_203B20C->unk70) == 0)
{
sub_8013114(&gUnknown_203B20C->unk70, &menuAction);
if(menuAction != 1) gUnknown_203B20C->unk14 = menuAction;
if(menuAction != 1) gUnknown_203B20C->menuAction1 = menuAction;
}
switch(menuAction)
@ -99,14 +99,14 @@ void sub_8018620(void)
}
else
{
gUnknown_203B20C->unkC = sub_801A8AC();
gUnknown_203B20C->unk8 = gTeamInventory_203B460->teamItems[gUnknown_203B20C->unkC];
gUnknown_203B20C->itemIndex = sub_801A8AC();
gUnknown_203B20C->item = gTeamInventory_203B460->teamItems[gUnknown_203B20C->itemIndex];
sub_8017F10(6);
}
break;
case 4:
gUnknown_203B20C->unkC = sub_801A8AC();
gUnknown_203B20C->unk8 = gTeamInventory_203B460->teamItems[gUnknown_203B20C->unkC];
gUnknown_203B20C->itemIndex = sub_801A8AC();
gUnknown_203B20C->item = gTeamInventory_203B460->teamItems[gUnknown_203B20C->itemIndex];
sub_8017F10(7);
break;
case 2:
@ -161,15 +161,15 @@ void sub_80186F8(void)
else
{
gUnknown_203B20C->id = sub_801CB24();
xxx_init_itemslot_8090A8C(&gUnknown_203B20C->unk8, gUnknown_203B20C->id, 0);
gUnknown_203B20C->unk8.quantity = 1;
xxx_init_itemslot_8090A8C(&gUnknown_203B20C->item, gUnknown_203B20C->id, 0);
gUnknown_203B20C->item.quantity = 1;
sub_8017F10(0xD);
}
break;
case 4:
gUnknown_203B20C->id = sub_801CB24();
xxx_init_itemslot_8090A8C(&gUnknown_203B20C->unk8, gUnknown_203B20C->id, 0);
gUnknown_203B20C->unk8.quantity = 1;
xxx_init_itemslot_8090A8C(&gUnknown_203B20C->item, gUnknown_203B20C->id, 0);
gUnknown_203B20C->item.quantity = 1;
sub_8017F10(0xE);
break;
case 2:
@ -192,10 +192,10 @@ void sub_8018854(void)
switch(sub_8013BBC(&gUnknown_203B20C->unkC0))
{
case 3:
gUnknown_203B20C->unk8.quantity = gUnknown_203B20C->unkC0;
gTeamInventory_203B460->teamStorage[gUnknown_203B20C->unk8.id] -= gUnknown_203B20C->unk8.quantity;
item.id = gUnknown_203B20C->unk8.id;
item.quantity = gUnknown_203B20C->unk8.quantity;
gUnknown_203B20C->item.quantity = gUnknown_203B20C->unkC0;
gTeamInventory_203B460->teamStorage[gUnknown_203B20C->item.id] -= gUnknown_203B20C->item.quantity;
item.id = gUnknown_203B20C->item.id;
item.quantity = gUnknown_203B20C->item.quantity;
AddHeldItemToInventory(&item);
if(sub_801CF14(1) == 0)
if(GetNumberOfFilledInventorySlots() >= INVENTORY_SIZE)
@ -230,19 +230,19 @@ void sub_8018904(void)
if(sub_8012FD8(&gUnknown_203B20C->unk70) == 0)
{
sub_8013114(&gUnknown_203B20C->unk70, &menuAction);
if(menuAction != 1) gUnknown_203B20C->unk18 = menuAction;
if(menuAction != 1) gUnknown_203B20C->menuAction2 = menuAction;
}
switch(menuAction)
{
case 2:
if(IsNotMoneyOrUsedTMItem(gUnknown_203B20C->unk8.id))
if(sub_801ADA0(gUnknown_203B20C->unkC) == 0)
if(IsNotMoneyOrUsedTMItem(gUnknown_203B20C->item.id))
if(sub_801ADA0(gUnknown_203B20C->itemIndex) == 0)
error:
sub_8012EA4(&gUnknown_203B20C->unk70, 1);
else
{
MoveToStorage(&gUnknown_203B20C->unk8);
ShiftItemsDownFrom(gUnknown_203B20C->unkC);
MoveToStorage(&gUnknown_203B20C->item);
ShiftItemsDownFrom(gUnknown_203B20C->itemIndex);
FillInventoryGaps();
if(GetNumberOfFilledInventorySlots() == 0)
{
@ -276,20 +276,20 @@ void sub_80189C8(void)
if(sub_8012FD8(&gUnknown_203B20C->unk70) == 0)
{
sub_8013114(&gUnknown_203B20C->unk70, &menuAction);
if(menuAction != 1) gUnknown_203B20C->unk1C = menuAction;
if(menuAction != 1) gUnknown_203B20C->menuAction3 = menuAction;
}
switch(menuAction)
{
case 3:
if(GetNumberOfFilledInventorySlots() >= INVENTORY_SIZE)
sub_8012EA4(&gUnknown_203B20C->unk70, 1);
else if(IsThrowableItem(gUnknown_203B20C->unk8.id))
else if(IsThrowableItem(gUnknown_203B20C->item.id))
sub_8017F10(0xC);
else
{
gTeamInventory_203B460->teamStorage[gUnknown_203B20C->unk8.id] -= gUnknown_203B20C->unk8.quantity;
item.id = gUnknown_203B20C->unk8.id;
item.quantity = gUnknown_203B20C->unk8.quantity;
gTeamInventory_203B460->teamStorage[gUnknown_203B20C->item.id] -= gUnknown_203B20C->item.quantity;
item.id = gUnknown_203B20C->item.id;
item.quantity = gUnknown_203B20C->item.quantity;
AddHeldItemToInventory(&item);
if(sub_801CF14(1) == 0)
if(GetNumberOfFilledInventorySlots() >= INVENTORY_SIZE)

View File

@ -90,8 +90,8 @@ extern void sub_802B9FC(u8);
u32 sub_802DFB0(void)
{
gUnknown_203B304 = MemoryAlloc(sizeof(struct unkStruct_203B304), 8);
gUnknown_203B304->unk64 = 0;
gUnknown_203B304->unk68 = 0;
gUnknown_203B304->menuAction1 = 0;
gUnknown_203B304->menuAction2 = 0;
SetMailboxState(INITIALIZE_MAILBOX);
return 1;
}
@ -190,7 +190,7 @@ void sub_802E1AC(void)
switch(gUnknown_203B304->state)
{
case MAIN_MAILBOX_MENU:
sub_8012D60(&gUnknown_203B304->unk6C, gUnknown_203B304->unkBC, 0, gUnknown_203B304->unkFC, gUnknown_203B304->unk64, 2);
sub_8012D60(&gUnknown_203B304->unk6C, gUnknown_203B304->unkBC, 0, gUnknown_203B304->unkFC, gUnknown_203B304->menuAction1, 2);
break;
case MAIL_MENU:
sub_802BD14(0, 0, 4);
@ -201,7 +201,7 @@ void sub_802E1AC(void)
case MAIL_ACTION_MENU:
CreateMailMenu();
CreateMailAcceptedStatusBox(3);
sub_8012D60(&gUnknown_203B304->unk6C, gUnknown_203B304->unkBC, 0, 0, gUnknown_203B304->unk68, 2);
sub_8012D60(&gUnknown_203B304->unk6C, gUnknown_203B304->unkBC, 0, 0, gUnknown_203B304->menuAction2, 2);
break;
case MAIL_INFO:
sub_803B35C(GetMailboxSlotInfo(gUnknown_203B304->mailboxIndex), &gUnknown_203B304->unkC);

View File

@ -48,7 +48,7 @@ void HandleMailboxMenu(void)
if(!sub_8012FD8(&gUnknown_203B304->unk6C))
{
sub_8013114(&gUnknown_203B304->unk6C, &menuAction);
if(menuAction != 1) gUnknown_203B304->unk64 = menuAction;
if(menuAction != 1) gUnknown_203B304->menuAction1 = menuAction;
}
switch(menuAction)
{
@ -124,7 +124,7 @@ void HandleMailActionMenu(void)
if(!sub_8012FD8(&gUnknown_203B304->unk6C))
{
sub_8013114(&gUnknown_203B304->unk6C, &menuAction);
if(menuAction != 1) gUnknown_203B304->unk68 = menuAction;
if(menuAction != 1) gUnknown_203B304->menuAction2 = menuAction;
}
switch(menuAction)
{