blob: 98427f8817e4c3b2b19e2bc38766439a9807c2b7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
|
#include "global.h"
#include "text.h"
#include "input.h"
#include "menu.h"
#include "item.h"
#include "team_inventory.h"
#include "friend_area_action_menu.h"
extern struct unkStruct_203B2BC *gUnknown_203B2BC;
extern struct TeamInventory *gTeamInventory_203B460;
u32 sub_801B410();
void sub_801B450();
u32 sub_801EF38(u8 r0);
void sub_801F214();
extern void SetFriendAreaActionMenuState(u32);
extern u8 sub_8012FD8(u32 *r0);
extern void sub_8013114(u32 *, s32 *);
extern void PlaySound(u32);
extern void ShiftItemsDownFrom(u32);
extern void FillInventoryGaps();
extern void nullsub_104();
extern void sub_8091274(struct ItemSlot *);
extern void sub_801A928();
extern void sub_8099690(u32);
extern void GivePokemonItem(s16, struct HeldItem *);
extern u32 sub_801A8AC();
extern u32 sub_801A6E8(u32);
extern s32 sub_80144A4(s32 *);
extern void sub_8027EB8();
extern void sub_808D31C(struct unkSubStruct_203B2BC *);
void sub_8027AE4(void)
{
s32 local_8;
if (sub_80144A4(&local_8) == 0) {
switch(local_8)
{
case 1:
case 3:
SetFriendAreaActionMenuState(2);
break;
case 2:
sub_8027EB8();
sub_808D31C(gUnknown_203B2BC->unk18);
break;
}
}
}
void sub_8027B28(void)
{
switch(sub_801A6E8(1))
{
case 3:
gUnknown_203B2BC->unkC = sub_801A8AC();
gUnknown_203B2BC->unk10.itemIndex = gTeamInventory_203B460->teamItems[gUnknown_203B2BC->unkC].itemIndex;
gUnknown_203B2BC->unk10.numItems = gTeamInventory_203B460->teamItems[gUnknown_203B2BC->unkC].numItems;
SetFriendAreaActionMenuState(0xc);
break;
case 4:
gUnknown_203B2BC->unkC = sub_801A8AC();
gUnknown_203B2BC->unk10.itemIndex = gTeamInventory_203B460->teamItems[gUnknown_203B2BC->unkC].itemIndex;
gUnknown_203B2BC->unk10.numItems = gTeamInventory_203B460->teamItems[gUnknown_203B2BC->unkC].numItems;
sub_8099690(0);
SetFriendAreaActionMenuState(0xd);
break;
case 2:
sub_801A928();
SetFriendAreaActionMenuState(2);
break;
case 0:
case 1:
break;
}
}
void sub_8027BD8(void)
{
s32 menuAction;
menuAction = 0;
sub_801A6E8(0);
if ((sub_8012FD8(&gUnknown_203B2BC->unk7C) == 0) && (sub_8013114(&gUnknown_203B2BC->unk7C,&menuAction), menuAction != 1)) {
gUnknown_203B2BC->unk74 = menuAction;
}
switch(menuAction)
{
case 10:
PlaySound(0x14d);
ShiftItemsDownFrom(gUnknown_203B2BC->unkC);
FillInventoryGaps();
if (gUnknown_203B2BC->unk14.itemFlags != 0) {
sub_8091274(&gUnknown_203B2BC->unk14);
}
GivePokemonItem(gUnknown_203B2BC->unk8,&gUnknown_203B2BC->unk10);
sub_801A928();
nullsub_104();
SetFriendAreaActionMenuState(2);
break;
case 4:
sub_8099690(0);
SetFriendAreaActionMenuState(0xd);
break;
case 1:
SetFriendAreaActionMenuState(0xb);
break;
}
}
void sub_8027C84()
{
u32 temp = sub_801B410();
if(temp <= 1)
return;
if(temp > 3)
return;
sub_801B450();
SetFriendAreaActionMenuState(0xB);
}
|