Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
pret
GitHub Repository: pret/pokered
Path: blob/master/engine/events/pokedex_rating.asm
1271 views
1
DisplayDexRating:
2
ld hl, wPokedexSeen
3
ld b, wPokedexSeenEnd - wPokedexSeen
4
call CountSetBits
5
ld a, [wNumSetBits]
6
ldh [hDexRatingNumMonsSeen], a
7
ld hl, wPokedexOwned
8
ld b, wPokedexOwnedEnd - wPokedexOwned
9
call CountSetBits
10
ld a, [wNumSetBits]
11
ldh [hDexRatingNumMonsOwned], a
12
ld hl, DexRatingsTable
13
.findRating
14
ld a, [hli]
15
ld b, a
16
ldh a, [hDexRatingNumMonsOwned]
17
cp b
18
jr c, .foundRating
19
inc hl
20
inc hl
21
jr .findRating
22
.foundRating
23
ld a, [hli]
24
ld h, [hl]
25
ld l, a ; load text pointer into hl
26
CheckAndResetEventA EVENT_HALL_OF_FAME_DEX_RATING
27
jr nz, .hallOfFame
28
push hl
29
ld hl, DexCompletionText
30
call PrintText
31
pop hl
32
call PrintText
33
farcall PlayPokedexRatingSfx
34
jp WaitForTextScrollButtonPress
35
.hallOfFame
36
ld de, wDexRatingNumMonsSeen
37
ldh a, [hDexRatingNumMonsSeen]
38
ld [de], a
39
inc de
40
ldh a, [hDexRatingNumMonsOwned]
41
ld [de], a
42
inc de
43
.copyRatingTextLoop
44
ld a, [hli]
45
cp "@"
46
jr z, .doneCopying
47
ld [de], a
48
inc de
49
jr .copyRatingTextLoop
50
.doneCopying
51
ld [de], a
52
ret
53
54
DexCompletionText:
55
text_far _DexCompletionText
56
text_end
57
58
DexRatingsTable:
59
dbw 10, DexRatingText_Own0To9
60
dbw 20, DexRatingText_Own10To19
61
dbw 30, DexRatingText_Own20To29
62
dbw 40, DexRatingText_Own30To39
63
dbw 50, DexRatingText_Own40To49
64
dbw 60, DexRatingText_Own50To59
65
dbw 70, DexRatingText_Own60To69
66
dbw 80, DexRatingText_Own70To79
67
dbw 90, DexRatingText_Own80To89
68
dbw 100, DexRatingText_Own90To99
69
dbw 110, DexRatingText_Own100To109
70
dbw 120, DexRatingText_Own110To119
71
dbw 130, DexRatingText_Own120To129
72
dbw 140, DexRatingText_Own130To139
73
dbw 150, DexRatingText_Own140To149
74
dbw NUM_POKEMON + 1, DexRatingText_Own150To151
75
76
DexRatingText_Own0To9:
77
text_far _DexRatingText_Own0To9
78
text_end
79
80
DexRatingText_Own10To19:
81
text_far _DexRatingText_Own10To19
82
text_end
83
84
DexRatingText_Own20To29:
85
text_far _DexRatingText_Own20To29
86
text_end
87
88
DexRatingText_Own30To39:
89
text_far _DexRatingText_Own30To39
90
text_end
91
92
DexRatingText_Own40To49:
93
text_far _DexRatingText_Own40To49
94
text_end
95
96
DexRatingText_Own50To59:
97
text_far _DexRatingText_Own50To59
98
text_end
99
100
DexRatingText_Own60To69:
101
text_far _DexRatingText_Own60To69
102
text_end
103
104
DexRatingText_Own70To79:
105
text_far _DexRatingText_Own70To79
106
text_end
107
108
DexRatingText_Own80To89:
109
text_far _DexRatingText_Own80To89
110
text_end
111
112
DexRatingText_Own90To99:
113
text_far _DexRatingText_Own90To99
114
text_end
115
116
DexRatingText_Own100To109:
117
text_far _DexRatingText_Own100To109
118
text_end
119
120
DexRatingText_Own110To119:
121
text_far _DexRatingText_Own110To119
122
text_end
123
124
DexRatingText_Own120To129:
125
text_far _DexRatingText_Own120To129
126
text_end
127
128
DexRatingText_Own130To139:
129
text_far _DexRatingText_Own130To139
130
text_end
131
132
DexRatingText_Own140To149:
133
text_far _DexRatingText_Own140To149
134
text_end
135
136
DexRatingText_Own150To151:
137
text_far _DexRatingText_Own150To151
138
text_end
139
140