aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/ViridianCity_2.asm
blob: cd48e67b5f001423d15444f9041a452a3e2db73a (plain) (blame)
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
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
ViridianCityPrintYoungster1Text::
	ld hl, .text
	call PrintText
	ret

.text
	text_far _ViridianCityYoungster1Text
	text_end

ViridianCityPrintGambler1Text::
	ld hl, .GymLeaderReturnedText
	ld a, [wObtainedBadges]
	cp ~(1 << BIT_EARTHBADGE)
	jr z, .print_text
	CheckEvent EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI
	jr nz, .print_text
	ld hl, .GymAlwaysClosedText
.print_text
	call PrintText
	ret

.GymAlwaysClosedText:
	text_far _ViridianCityGambler1GymAlwaysClosedText
	text_end

.GymLeaderReturnedText:
	text_far _ViridianCityGambler1GymLeaderReturnedText
	text_end

ViridianCityPrintYoungster2Text::
	ld hl, .YouWantToKnowAboutText
	call PrintText
	call YesNoChoice
	ld a, [wCurrentMenuItem]
	and a
	ld hl, .OkThenText
	jr nz, .no
	ld hl, .CaterpieAndWeedleDescriptionText
.no
	call PrintText
	ret

.YouWantToKnowAboutText:
	text_far _ViridianCityYoungster2YouWantToKnowAboutText
	text_end

.OkThenText:
	text_far ViridianCityYoungster2OkThenText
	text_end

.CaterpieAndWeedleDescriptionText:
	text_far ViridianCityYoungster2CaterpieAndWeedleDescriptionText
	text_end

ViridianCityPrintGirlText::
	ld hl, .WhenIGoShopText
	CheckEvent EVENT_GOT_POKEDEX
	jr nz, .got_pokedex
	ld hl, .HasntHadHisCoffeeYetText
.got_pokedex
	call PrintText
	ret

.HasntHadHisCoffeeYetText:
	text_far _ViridianCityGirlHasntHadHisCoffeeYetText
	text_end

.WhenIGoShopText:
	text_far _ViridianCityGirlWhenIGoShopText
	text_end

ViridianCityPrintOldManSleepyText::
	ld hl, .PrivatePropertyText
	call PrintText
	call StartSimulatingJoypadStates
	ld a, $1
	ld [wSimulatedJoypadStatesIndex], a
	ld a, PAD_DOWN
	ld [wSimulatedJoypadStatesEnd], a
	ld a, SCRIPT_VIRIDIANCITY_PLAYER_MOVING_DOWN
	ld [wViridianCityCurScript], a
	ret

.PrivatePropertyText:
	text_far _ViridianCityOldManSleepyPrivatePropertyText
	text_end

ViridianCityPrintFisherText::
	CheckEvent EVENT_GOT_TM42
	jr nz, .got_item
	ld hl, .YouCanHaveThisText
	call PrintText
	lb bc, TM_DREAM_EATER, 1
	call GiveItem
	jr nc, .bag_full
	ld hl, .ReceivedTM42Text
	call PrintText
	SetEvent EVENT_GOT_TM42
	ret
.bag_full
	ld hl, .TM42NoRoomText
	call PrintText
	ret
.got_item
	ld hl, .TM42ExplanationText
	call PrintText
	ret

.YouCanHaveThisText:
	text_far ViridianCityFisherYouCanHaveThisText
	text_end

.ReceivedTM42Text:
	text_far _ViridianCityFisherReceivedTM42Text
	sound_get_item_2
	text_end

.TM42ExplanationText:
	text_far _ViridianCityFisherTM42ExplanationText
	text_end

.TM42NoRoomText:
	text_far _ViridianCityFisherTM42NoRoomText
	text_end

ViridianCityPrintOldManText::
	ld hl, .WantMeToShowYouAgainText
	call PrintText
	ld c, 2
	call DelayFrames
	call YesNoChoice
	ld a, [wCurrentMenuItem]
	and a
	jr nz, .refused
	ld hl, .WatchCloselyText
	call PrintText
	ld a, SCRIPT_VIRIDIANCITY_OLD_MAN_START_CATCH_TRAINING
	ld [wViridianCityCurScript], a
	jr .done
.refused
	ld hl, .NotGoodEnoughForYouText
	call PrintText
.done
	ret

.WantMeToShowYouAgainText:
	text_far _ViridianCityOldManWantMeToShowYouAgainText
	text_end

.WatchCloselyText:
	text_far _ViridianCityOldManWatchCloselyText
	text_end

.NotGoodEnoughForYouText:
	text_far _ViridianCityOldManNotGoodEnoughForYouText
	text_end

ViridianCityPrintSignText::
	ld hl, .text
	call PrintText
	ret

.text
	text_far _ViridianCitySignText
	text_end

ViridianCityPrintTrainerTips1Text::
	ld hl, .text
	call PrintText
	ret

.text
	text_far _ViridianCityTrainerTips1Text
	text_end

ViridianCityPrintTrainerTips2Text::
	ld hl, .text
	call PrintText
	ret

.text
	text_far _ViridianCityTrainerTips2Text
	text_end

ViridianCityPrintGymSignText::
	ld hl, .text
	call PrintText
	ret

.text
	text_far _ViridianCityGymSignText
	text_end

ViridianCityPrintGymLockedText::
	ld hl, .text
	call PrintText
	ret

.text
	text_far _ViridianCityGymLockedText
	text_end


ViridianCityMovePikachu::
	ld hl, ViridianCityPikachuMovementData
	ld b, SPRITE_FACING_RIGHT
	call TryApplyPikachuMovementData
	ret

ViridianCityPikachuMovementData:
	db $00
	db $1d
	db $1f
	db $38
	db $3f