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
|
Unknown_10d98:
db 12, 0 ; start menu coords
db 8, 14 ; start menu text box dimensions
db 14, 2 ; text alignment for InitTextPrinting
tx PauseMenuOptionsText
db $ff
db 13, 2 ; cursor x, cursor y
db 2 ; y displacement between items
db 6 ; number of items
db SYM_CURSOR_R ; cursor tile number
db SYM_SPACE ; tile behind cursor
dw NULL ; function pointer if non-0
Unknown_10da9:
db 10, 0 ; start menu coords
db 10, 12 ; start menu text box dimensions
db 12, 2 ; text alignment for InitTextPrinting
tx Text0351
db $ff
db 11, 2 ; cursor x, cursor y
db 2 ; y displacement between items
db 5 ; number of items
db SYM_CURSOR_R ; cursor tile number
db SYM_SPACE ; tile behind cursor
dw NULL ; function pointer if non-0
GiftCenterMenu:
ld a, 1 << AUTO_CLOSE_TEXTBOX
farcall SetOverworldNPCFlags
ld a, [wSelectedGiftCenterMenuItem]
ld hl, Unknown_10e17
farcall InitAndPrintMenu
.loop_input
call DoFrameIfLCDEnabled
call HandleMenuInput
jr nc, .loop_input
ld a, e
ld [wSelectedGiftCenterMenuItem], a
ldh a, [hCurMenuItem]
cp e
jr z, .asm_10ddd
ld a, $4
.asm_10ddd
ld [wd10e], a
push af
ld hl, Unknown_10df0
call JumpToFunctionInTable
farcall CloseTextBox
call DoFrameIfLCDEnabled
pop af
ret
Unknown_10df0:
dw Func_10dfb
dw Func_10dfb
dw Func_10dfb
dw Func_10dfb
dw Func_10dfa
Func_10dfa:
ret
Func_10dfb:
ld a, [wd10e]
add a
ld c, a
ld b, $00
ld hl, Unknown_10e0f
add hl, bc
ld a, [hli]
ld [wTxRam2], a
ld a, [hl]
ld [wTxRam2 + 1], a
ret
Unknown_10e0f:
tx SendCardText
tx ReceiveCardText
tx SendDeckConfigurationText
tx ReceiveDeckConfigurationText
Unknown_10e17:
db 4, 0 ; start menu coords
db 16, 12 ; start menu text box dimensions
db 6, 2 ; text alignment for InitTextPrinting
tx GiftCenterMenuText
db $ff
db 5, 2 ; cursor x, cursor y
db 2 ; y displacement between items
db 5 ; number of items
db SYM_CURSOR_R ; cursor tile number
db SYM_SPACE ; tile behind cursor
dw NULL ; function pointer if non-0
|