summaryrefslogtreecommitdiff
path: root/scripts/CeladonMansion3F.asm
blob: ae1718a0255283dfa103f8fb87cadb96075466cd (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
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
CeladonMansion3F_Script:
	call EnableAutoTextBoxDrawing
	ret

CeladonMansion3_PokedexCount:
	ld hl, wPokedexOwned
	ld b, wPokedexOwnedEnd - wPokedexOwned
	call CountSetBits
	ld a, [wNumSetBits]
	ret

CeladonMansion3F_TextPointers:
	dw ProgrammerText
	dw GraphicArtistText
	dw WriterText
	dw DirectorText
	dw GameFreakPCText1
	dw GameFreakPCText2
	dw GameFreakPCText3
	dw GameFreakSignText

ProgrammerText:
	text_asm
	call CeladonMansion3_PokedexCount
	cp NUM_POKEMON - 1 ; discount Mew
	ld hl, CeladonMansion3Text_486f5
	jr nc, .print
	ld hl, CeladonMansion3Text_486f0
.print
	call PrintText
	jp TextScriptEnd

CeladonMansion3Text_486f0:
	text_far _ProgrammerText
	text_end

CeladonMansion3Text_486f5:
	text_far _ProgrammerText2
	text_end

GraphicArtistText:
	text_asm
	call CeladonMansion3_PokedexCount
	cp NUM_POKEMON - 1 ; discount Mew
	jr nc, .completed
	ld hl, CeladonMansion3Text_48757
	jr .print

.completed
	ld hl, CeladonMansion3Text_4875c
	call PrintText
	call YesNoChoice
	ld a, [wCurrentMenuItem]
	and a
	jr nz, .declined_print
	call SaveScreenTilesToBuffer2
	xor a
	ld [wUpdateSpritesEnabled], a
	ld hl, wd730
	set 6, [hl]
	callfar PrintDiploma
	ld hl, wd730
	res 6, [hl]
	call GBPalWhiteOutWithDelay3
	call ReloadTilesetTilePatterns
	call RestoreScreenTilesAndReloadTilePatterns
	call LoadScreenTilesFromBuffer2
	call Delay3
	call GBPalNormal
	ld hl, CeladonMansion3Text_4876b
	ldh a, [hCanceledPrinting]
	and a
	jr nz, .print
	ld hl, CeladonMansion3Text_48766
	jr .print

.declined_print
	ld hl, CeladonMansion3Text_48761
.print
	call PrintText
	jp TextScriptEnd

CeladonMansion3Text_48757:
	text_far _GraphicArtistText
	text_end

CeladonMansion3Text_4875c:
	text_far _GraphicArtistText2
	text_end

CeladonMansion3Text_48761:
	text_far _GraphicArtistText3
	text_end

CeladonMansion3Text_48766:
	text_far _GraphicArtistText4
	text_end

CeladonMansion3Text_4876b:
	text_far _GraphicArtistText5
	text_end

WriterText:
	text_asm
	call CeladonMansion3_PokedexCount
	cp NUM_POKEMON - 1 ; discount Mew
	ld hl, CeladonMansion3Text_48789
	jr nc, .print
	ld hl, CeladonMansion3Text_48784
.print
	call PrintText
	jp TextScriptEnd

CeladonMansion3Text_48784:
	text_far _WriterText
	text_end

CeladonMansion3Text_48789:
	text_far _WriterText2
	text_end

DirectorText:
	text_asm
	call CeladonMansion3_PokedexCount
	cp NUM_POKEMON - 1 ; discount Mew
	jr nc, .completed_dex
	ld hl, .GameDesignerText
	jr .done
.completed_dex
	ld hl, .CompletedDexText
	call PrintText
	call Delay3
	xor a
	ld [wDoNotWaitForButtonPressAfterDisplayingText], a
	ld hl, .UnlockedDiplomaPrinting
.done
	call PrintText
	jp TextScriptEnd

.GameDesignerText:
	text_far _GameDesignerText
	text_end

.CompletedDexText:
	text_far _CompletedDexText
	text_promptbutton
	text_asm
	callfar DisplayDiploma
	ld a, TRUE
	ld [wDoNotWaitForButtonPressAfterDisplayingText], a
	jp TextScriptEnd

.UnlockedDiplomaPrinting
	text_far _CompletedDexText2
	text_end

GameFreakPCText1:
	text_asm
	farcall Func_f1ef3
	jp TextScriptEnd

GameFreakPCText2:
	text_asm
	farcall Func_f1eff
	jp TextScriptEnd

GameFreakPCText3:
	text_asm
	farcall Func_f1f0b
	jp TextScriptEnd

GameFreakSignText:
	text_asm
	farcall Func_f1f17
	jp TextScriptEnd