Document pokedex.c

This commit is contained in:
GriffinR 2020-03-08 13:24:22 -04:00
parent c805c4cc6f
commit 31b0cbe9b4
29 changed files with 3668 additions and 3304 deletions

View File

@ -1,2 +1,2 @@
gUnusedPokedexU8 gUnusedPokedexU8
gUnknown_030060B4 gPokedexVBlankCB

View File

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -601,6 +601,9 @@
#define NATIONAL_DEX_DRAGONITE 149 #define NATIONAL_DEX_DRAGONITE 149
#define NATIONAL_DEX_MEWTWO 150 #define NATIONAL_DEX_MEWTWO 150
#define NATIONAL_DEX_MEW 151 #define NATIONAL_DEX_MEW 151
#define KANTO_DEX_COUNT NATIONAL_DEX_MEW
#define NATIONAL_DEX_CHIKORITA 152 #define NATIONAL_DEX_CHIKORITA 152
#define NATIONAL_DEX_BAYLEEF 153 #define NATIONAL_DEX_BAYLEEF 153
#define NATIONAL_DEX_MEGANIUM 154 #define NATIONAL_DEX_MEGANIUM 154
@ -702,6 +705,146 @@
#define NATIONAL_DEX_HO_OH 250 #define NATIONAL_DEX_HO_OH 250
#define NATIONAL_DEX_CELEBI 251 #define NATIONAL_DEX_CELEBI 251
#define JOHTO_DEX_COUNT NATIONAL_DEX_CELEBI
#define NATIONAL_DEX_TREECKO 252
#define NATIONAL_DEX_GROVYLE 253
#define NATIONAL_DEX_SCEPTILE 254
#define NATIONAL_DEX_TORCHIC 255
#define NATIONAL_DEX_COMBUSKEN 256
#define NATIONAL_DEX_BLAZIKEN 257
#define NATIONAL_DEX_MUDKIP 258
#define NATIONAL_DEX_MARSHTOMP 259
#define NATIONAL_DEX_SWAMPERT 260
#define NATIONAL_DEX_POOCHYENA 261
#define NATIONAL_DEX_MIGHTYENA 262
#define NATIONAL_DEX_ZIGZAGOON 263
#define NATIONAL_DEX_LINOONE 264
#define NATIONAL_DEX_WURMPLE 265
#define NATIONAL_DEX_SILCOON 266
#define NATIONAL_DEX_BEAUTIFLY 267
#define NATIONAL_DEX_CASCOON 268
#define NATIONAL_DEX_DUSTOX 269
#define NATIONAL_DEX_LOTAD 270
#define NATIONAL_DEX_LOMBRE 271
#define NATIONAL_DEX_LUDICOLO 272
#define NATIONAL_DEX_SEEDOT 273
#define NATIONAL_DEX_NUZLEAF 274
#define NATIONAL_DEX_SHIFTRY 275
#define NATIONAL_DEX_TAILLOW 276
#define NATIONAL_DEX_SWELLOW 277
#define NATIONAL_DEX_WINGULL 278
#define NATIONAL_DEX_PELIPPER 279
#define NATIONAL_DEX_RALTS 280
#define NATIONAL_DEX_KIRLIA 281
#define NATIONAL_DEX_GARDEVOIR 282
#define NATIONAL_DEX_SURSKIT 283
#define NATIONAL_DEX_MASQUERAIN 284
#define NATIONAL_DEX_SHROOMISH 285
#define NATIONAL_DEX_BRELOOM 286
#define NATIONAL_DEX_SLAKOTH 287
#define NATIONAL_DEX_VIGOROTH 288
#define NATIONAL_DEX_SLAKING 289
#define NATIONAL_DEX_NINCADA 290
#define NATIONAL_DEX_NINJASK 291
#define NATIONAL_DEX_SHEDINJA 292
#define NATIONAL_DEX_WHISMUR 293
#define NATIONAL_DEX_LOUDRED 294
#define NATIONAL_DEX_EXPLOUD 295
#define NATIONAL_DEX_MAKUHITA 296
#define NATIONAL_DEX_HARIYAMA 297
#define NATIONAL_DEX_AZURILL 298
#define NATIONAL_DEX_NOSEPASS 299
#define NATIONAL_DEX_SKITTY 300
#define NATIONAL_DEX_DELCATTY 301
#define NATIONAL_DEX_SABLEYE 302
#define NATIONAL_DEX_MAWILE 303
#define NATIONAL_DEX_ARON 304
#define NATIONAL_DEX_LAIRON 305
#define NATIONAL_DEX_AGGRON 306
#define NATIONAL_DEX_MEDITITE 307
#define NATIONAL_DEX_MEDICHAM 308
#define NATIONAL_DEX_ELECTRIKE 309
#define NATIONAL_DEX_MANECTRIC 310
#define NATIONAL_DEX_PLUSLE 311
#define NATIONAL_DEX_MINUN 312
#define NATIONAL_DEX_VOLBEAT 313
#define NATIONAL_DEX_ILLUMISE 314
#define NATIONAL_DEX_ROSELIA 315
#define NATIONAL_DEX_GULPIN 316
#define NATIONAL_DEX_SWALOT 317
#define NATIONAL_DEX_CARVANHA 318
#define NATIONAL_DEX_SHARPEDO 319
#define NATIONAL_DEX_WAILMER 320
#define NATIONAL_DEX_WAILORD 321
#define NATIONAL_DEX_NUMEL 322
#define NATIONAL_DEX_CAMERUPT 323
#define NATIONAL_DEX_TORKOAL 324
#define NATIONAL_DEX_SPOINK 325
#define NATIONAL_DEX_GRUMPIG 326
#define NATIONAL_DEX_SPINDA 327
#define NATIONAL_DEX_TRAPINCH 328
#define NATIONAL_DEX_VIBRAVA 329
#define NATIONAL_DEX_FLYGON 330
#define NATIONAL_DEX_CACNEA 331
#define NATIONAL_DEX_CACTURNE 332
#define NATIONAL_DEX_SWABLU 333
#define NATIONAL_DEX_ALTARIA 334
#define NATIONAL_DEX_ZANGOOSE 335
#define NATIONAL_DEX_SEVIPER 336
#define NATIONAL_DEX_LUNATONE 337
#define NATIONAL_DEX_SOLROCK 338
#define NATIONAL_DEX_BARBOACH 339
#define NATIONAL_DEX_WHISCASH 340
#define NATIONAL_DEX_CORPHISH 341
#define NATIONAL_DEX_CRAWDAUNT 342
#define NATIONAL_DEX_BALTOY 343
#define NATIONAL_DEX_CLAYDOL 344
#define NATIONAL_DEX_LILEEP 345
#define NATIONAL_DEX_CRADILY 346
#define NATIONAL_DEX_ANORITH 347
#define NATIONAL_DEX_ARMALDO 348
#define NATIONAL_DEX_FEEBAS 349
#define NATIONAL_DEX_MILOTIC 350
#define NATIONAL_DEX_CASTFORM 351
#define NATIONAL_DEX_KECLEON 352
#define NATIONAL_DEX_SHUPPET 353
#define NATIONAL_DEX_BANETTE 354
#define NATIONAL_DEX_DUSKULL 355
#define NATIONAL_DEX_DUSCLOPS 356
#define NATIONAL_DEX_TROPIUS 357
#define NATIONAL_DEX_CHIMECHO 358
#define NATIONAL_DEX_ABSOL 359
#define NATIONAL_DEX_WYNAUT 360
#define NATIONAL_DEX_SNORUNT 361
#define NATIONAL_DEX_GLALIE 362
#define NATIONAL_DEX_SPHEAL 363
#define NATIONAL_DEX_SEALEO 364
#define NATIONAL_DEX_WALREIN 365
#define NATIONAL_DEX_CLAMPERL 366
#define NATIONAL_DEX_HUNTAIL 367
#define NATIONAL_DEX_GOREBYSS 368
#define NATIONAL_DEX_RELICANTH 369
#define NATIONAL_DEX_LUVDISC 370
#define NATIONAL_DEX_BAGON 371
#define NATIONAL_DEX_SHELGON 372
#define NATIONAL_DEX_SALAMENCE 373
#define NATIONAL_DEX_BELDUM 374
#define NATIONAL_DEX_METANG 375
#define NATIONAL_DEX_METAGROSS 376
#define NATIONAL_DEX_REGIROCK 377
#define NATIONAL_DEX_REGICE 378
#define NATIONAL_DEX_REGISTEEL 379
#define NATIONAL_DEX_LATIAS 380
#define NATIONAL_DEX_LATIOS 381
#define NATIONAL_DEX_KYOGRE 382
#define NATIONAL_DEX_GROUDON 383
#define NATIONAL_DEX_RAYQUAZA 384
#define NATIONAL_DEX_JIRACHI 385
#define NATIONAL_DEX_DEOXYS 386
#define NATIONAL_DEX_COUNT NATIONAL_DEX_DEOXYS
#define NATIONAL_DEX_OLD_UNOWN_B 387 #define NATIONAL_DEX_OLD_UNOWN_B 387
#define NATIONAL_DEX_OLD_UNOWN_C 388 #define NATIONAL_DEX_OLD_UNOWN_C 388
#define NATIONAL_DEX_OLD_UNOWN_D 389 #define NATIONAL_DEX_OLD_UNOWN_D 389
@ -728,145 +871,214 @@
#define NATIONAL_DEX_OLD_UNOWN_Y 410 #define NATIONAL_DEX_OLD_UNOWN_Y 410
#define NATIONAL_DEX_OLD_UNOWN_Z 411 #define NATIONAL_DEX_OLD_UNOWN_Z 411
#define NATIONAL_DEX_TREECKO 252
#define NATIONAL_DEX_GROVYLE 253
#define NATIONAL_DEX_SCEPTILE 254
#define NATIONAL_DEX_TORCHIC 255
#define NATIONAL_DEX_COMBUSKEN 256
#define NATIONAL_DEX_BLAZIKEN 257
#define NATIONAL_DEX_MUDKIP 258
#define NATIONAL_DEX_MARSHTOMP 259
#define NATIONAL_DEX_SWAMPERT 260
#define NATIONAL_DEX_POOCHYENA 261
#define NATIONAL_DEX_MIGHTYENA 262
#define NATIONAL_DEX_ZIGZAGOON 263
#define NATIONAL_DEX_LINOONE 264
#define NATIONAL_DEX_WURMPLE 265
#define NATIONAL_DEX_SILCOON 266
#define NATIONAL_DEX_BEAUTIFLY 267
#define NATIONAL_DEX_CASCOON 268
#define NATIONAL_DEX_DUSTOX 269
#define NATIONAL_DEX_LOTAD 270
#define NATIONAL_DEX_LOMBRE 271
#define NATIONAL_DEX_LUDICOLO 272
#define NATIONAL_DEX_SEEDOT 273
#define NATIONAL_DEX_NUZLEAF 274
#define NATIONAL_DEX_SHIFTRY 275
#define NATIONAL_DEX_NINCADA 290
#define NATIONAL_DEX_NINJASK 291
#define NATIONAL_DEX_SHEDINJA 292
#define NATIONAL_DEX_TAILLOW 276
#define NATIONAL_DEX_SWELLOW 277
#define NATIONAL_DEX_SHROOMISH 285
#define NATIONAL_DEX_BRELOOM 286
#define NATIONAL_DEX_SPINDA 327
#define NATIONAL_DEX_WINGULL 278
#define NATIONAL_DEX_PELIPPER 279
#define NATIONAL_DEX_SURSKIT 283
#define NATIONAL_DEX_MASQUERAIN 284
#define NATIONAL_DEX_WAILMER 320
#define NATIONAL_DEX_WAILORD 321
#define NATIONAL_DEX_SKITTY 300
#define NATIONAL_DEX_DELCATTY 301
#define NATIONAL_DEX_KECLEON 352
#define NATIONAL_DEX_BALTOY 343
#define NATIONAL_DEX_CLAYDOL 344
#define NATIONAL_DEX_NOSEPASS 299
#define NATIONAL_DEX_TORKOAL 324
#define NATIONAL_DEX_SABLEYE 302
#define NATIONAL_DEX_BARBOACH 339
#define NATIONAL_DEX_WHISCASH 340
#define NATIONAL_DEX_LUVDISC 370
#define NATIONAL_DEX_CORPHISH 341
#define NATIONAL_DEX_CRAWDAUNT 342
#define NATIONAL_DEX_FEEBAS 349
#define NATIONAL_DEX_MILOTIC 350
#define NATIONAL_DEX_CARVANHA 318
#define NATIONAL_DEX_SHARPEDO 319
#define NATIONAL_DEX_TRAPINCH 328
#define NATIONAL_DEX_VIBRAVA 329
#define NATIONAL_DEX_FLYGON 330
#define NATIONAL_DEX_MAKUHITA 296
#define NATIONAL_DEX_HARIYAMA 297
#define NATIONAL_DEX_ELECTRIKE 309
#define NATIONAL_DEX_MANECTRIC 310
#define NATIONAL_DEX_NUMEL 322
#define NATIONAL_DEX_CAMERUPT 323
#define NATIONAL_DEX_SPHEAL 363
#define NATIONAL_DEX_SEALEO 364
#define NATIONAL_DEX_WALREIN 365
#define NATIONAL_DEX_CACNEA 331
#define NATIONAL_DEX_CACTURNE 332
#define NATIONAL_DEX_SNORUNT 361
#define NATIONAL_DEX_GLALIE 362
#define NATIONAL_DEX_LUNATONE 337
#define NATIONAL_DEX_SOLROCK 338
#define NATIONAL_DEX_AZURILL 298
#define NATIONAL_DEX_SPOINK 325
#define NATIONAL_DEX_GRUMPIG 326
#define NATIONAL_DEX_PLUSLE 311
#define NATIONAL_DEX_MINUN 312
#define NATIONAL_DEX_MAWILE 303
#define NATIONAL_DEX_MEDITITE 307
#define NATIONAL_DEX_MEDICHAM 308
#define NATIONAL_DEX_SWABLU 333
#define NATIONAL_DEX_ALTARIA 334
#define NATIONAL_DEX_WYNAUT 360
#define NATIONAL_DEX_DUSKULL 355
#define NATIONAL_DEX_DUSCLOPS 356
#define NATIONAL_DEX_ROSELIA 315
#define NATIONAL_DEX_SLAKOTH 287
#define NATIONAL_DEX_VIGOROTH 288
#define NATIONAL_DEX_SLAKING 289
#define NATIONAL_DEX_GULPIN 316
#define NATIONAL_DEX_SWALOT 317
#define NATIONAL_DEX_TROPIUS 357
#define NATIONAL_DEX_WHISMUR 293
#define NATIONAL_DEX_LOUDRED 294
#define NATIONAL_DEX_EXPLOUD 295
#define NATIONAL_DEX_CLAMPERL 366
#define NATIONAL_DEX_HUNTAIL 367
#define NATIONAL_DEX_GOREBYSS 368
#define NATIONAL_DEX_ABSOL 359
#define NATIONAL_DEX_SHUPPET 353
#define NATIONAL_DEX_BANETTE 354
#define NATIONAL_DEX_SEVIPER 336
#define NATIONAL_DEX_ZANGOOSE 335
#define NATIONAL_DEX_RELICANTH 369
#define NATIONAL_DEX_ARON 304
#define NATIONAL_DEX_LAIRON 305
#define NATIONAL_DEX_AGGRON 306
#define NATIONAL_DEX_CASTFORM 351
#define NATIONAL_DEX_VOLBEAT 313
#define NATIONAL_DEX_ILLUMISE 314
#define NATIONAL_DEX_LILEEP 345
#define NATIONAL_DEX_CRADILY 346
#define NATIONAL_DEX_ANORITH 347
#define NATIONAL_DEX_ARMALDO 348
#define NATIONAL_DEX_RALTS 280
#define NATIONAL_DEX_KIRLIA 281
#define NATIONAL_DEX_GARDEVOIR 282
#define NATIONAL_DEX_BAGON 371
#define NATIONAL_DEX_SHELGON 372
#define NATIONAL_DEX_SALAMENCE 373
#define NATIONAL_DEX_BELDUM 374
#define NATIONAL_DEX_METANG 375
#define NATIONAL_DEX_METAGROSS 376
#define NATIONAL_DEX_REGIROCK 377
#define NATIONAL_DEX_REGICE 378
#define NATIONAL_DEX_REGISTEEL 379
#define NATIONAL_DEX_KYOGRE 382
#define NATIONAL_DEX_GROUDON 383
#define NATIONAL_DEX_RAYQUAZA 384
#define NATIONAL_DEX_LATIAS 380
#define NATIONAL_DEX_LATIOS 381
#define NATIONAL_DEX_JIRACHI 385
#define NATIONAL_DEX_DEOXYS 386
#define NATIONAL_DEX_CHIMECHO 358
// Hoenn Dex Index Defines // Hoenn Dex Index Defines
#define HOENN_DEX_NONE 0 #define HOENN_DEX_NONE 0
#define HOENN_DEX_TREECKO 1
#define HOENN_DEX_GROVYLE 2
#define HOENN_DEX_SCEPTILE 3
#define HOENN_DEX_TORCHIC 4
#define HOENN_DEX_COMBUSKEN 5
#define HOENN_DEX_BLAZIKEN 6
#define HOENN_DEX_MUDKIP 7
#define HOENN_DEX_MARSHTOMP 8
#define HOENN_DEX_SWAMPERT 9
#define HOENN_DEX_POOCHYENA 10
#define HOENN_DEX_MIGHTYENA 11
#define HOENN_DEX_ZIGZAGOON 12
#define HOENN_DEX_LINOONE 13
#define HOENN_DEX_WURMPLE 14
#define HOENN_DEX_SILCOON 15
#define HOENN_DEX_BEAUTIFLY 16
#define HOENN_DEX_CASCOON 17
#define HOENN_DEX_DUSTOX 18
#define HOENN_DEX_LOTAD 19
#define HOENN_DEX_LOMBRE 20
#define HOENN_DEX_LUDICOLO 21
#define HOENN_DEX_SEEDOT 22
#define HOENN_DEX_NUZLEAF 23
#define HOENN_DEX_SHIFTRY 24
#define HOENN_DEX_TAILLOW 25
#define HOENN_DEX_SWELLOW 26
#define HOENN_DEX_WINGULL 27
#define HOENN_DEX_PELIPPER 28
#define HOENN_DEX_RALTS 29
#define HOENN_DEX_KIRLIA 30
#define HOENN_DEX_GARDEVOIR 31
#define HOENN_DEX_SURSKIT 32
#define HOENN_DEX_MASQUERAIN 33
#define HOENN_DEX_SHROOMISH 34
#define HOENN_DEX_BRELOOM 35
#define HOENN_DEX_SLAKOTH 36
#define HOENN_DEX_VIGOROTH 37
#define HOENN_DEX_SLAKING 38
#define HOENN_DEX_ABRA 39
#define HOENN_DEX_KADABRA 40
#define HOENN_DEX_ALAKAZAM 41
#define HOENN_DEX_NINCADA 42
#define HOENN_DEX_NINJASK 43
#define HOENN_DEX_SHEDINJA 44
#define HOENN_DEX_WHISMUR 45
#define HOENN_DEX_LOUDRED 46
#define HOENN_DEX_EXPLOUD 47
#define HOENN_DEX_MAKUHITA 48
#define HOENN_DEX_HARIYAMA 49
#define HOENN_DEX_GOLDEEN 50
#define HOENN_DEX_SEAKING 51
#define HOENN_DEX_MAGIKARP 52
#define HOENN_DEX_GYARADOS 53
#define HOENN_DEX_AZURILL 54
#define HOENN_DEX_MARILL 55
#define HOENN_DEX_AZUMARILL 56
#define HOENN_DEX_GEODUDE 57
#define HOENN_DEX_GRAVELER 58
#define HOENN_DEX_GOLEM 59
#define HOENN_DEX_NOSEPASS 60
#define HOENN_DEX_SKITTY 61
#define HOENN_DEX_DELCATTY 62
#define HOENN_DEX_ZUBAT 63
#define HOENN_DEX_GOLBAT 64
#define HOENN_DEX_CROBAT 65
#define HOENN_DEX_TENTACOOL 66
#define HOENN_DEX_TENTACRUEL 67
#define HOENN_DEX_SABLEYE 68
#define HOENN_DEX_MAWILE 69
#define HOENN_DEX_ARON 70
#define HOENN_DEX_LAIRON 71
#define HOENN_DEX_AGGRON 72
#define HOENN_DEX_MACHOP 73
#define HOENN_DEX_MACHOKE 74
#define HOENN_DEX_MACHAMP 75
#define HOENN_DEX_MEDITITE 76
#define HOENN_DEX_MEDICHAM 77
#define HOENN_DEX_ELECTRIKE 78
#define HOENN_DEX_MANECTRIC 79
#define HOENN_DEX_PLUSLE 80
#define HOENN_DEX_MINUN 81
#define HOENN_DEX_MAGNEMITE 82
#define HOENN_DEX_MAGNETON 83
#define HOENN_DEX_VOLTORB 84
#define HOENN_DEX_ELECTRODE 85
#define HOENN_DEX_VOLBEAT 86
#define HOENN_DEX_ILLUMISE 87
#define HOENN_DEX_ODDISH 88
#define HOENN_DEX_GLOOM 89
#define HOENN_DEX_VILEPLUME 90
#define HOENN_DEX_BELLOSSOM 91
#define HOENN_DEX_DODUO 92
#define HOENN_DEX_DODRIO 93
#define HOENN_DEX_ROSELIA 94
#define HOENN_DEX_GULPIN 95
#define HOENN_DEX_SWALOT 96
#define HOENN_DEX_CARVANHA 97
#define HOENN_DEX_SHARPEDO 98
#define HOENN_DEX_WAILMER 99
#define HOENN_DEX_WAILORD 100
#define HOENN_DEX_NUMEL 101
#define HOENN_DEX_CAMERUPT 102
#define HOENN_DEX_SLUGMA 103
#define HOENN_DEX_MAGCARGO 104
#define HOENN_DEX_TORKOAL 105
#define HOENN_DEX_GRIMER 106
#define HOENN_DEX_MUK 107
#define HOENN_DEX_KOFFING 108
#define HOENN_DEX_WEEZING 109
#define HOENN_DEX_SPOINK 110
#define HOENN_DEX_GRUMPIG 111
#define HOENN_DEX_SANDSHREW 112
#define HOENN_DEX_SANDSLASH 113
#define HOENN_DEX_SPINDA 114
#define HOENN_DEX_SKARMORY 115
#define HOENN_DEX_TRAPINCH 116
#define HOENN_DEX_VIBRAVA 117
#define HOENN_DEX_FLYGON 118
#define HOENN_DEX_CACNEA 119
#define HOENN_DEX_CACTURNE 120
#define HOENN_DEX_SWABLU 121
#define HOENN_DEX_ALTARIA 122
#define HOENN_DEX_ZANGOOSE 123
#define HOENN_DEX_SEVIPER 124
#define HOENN_DEX_LUNATONE 125
#define HOENN_DEX_SOLROCK 126
#define HOENN_DEX_BARBOACH 127
#define HOENN_DEX_WHISCASH 128
#define HOENN_DEX_CORPHISH 129
#define HOENN_DEX_CRAWDAUNT 130
#define HOENN_DEX_BALTOY 131
#define HOENN_DEX_CLAYDOL 132
#define HOENN_DEX_LILEEP 133
#define HOENN_DEX_CRADILY 134
#define HOENN_DEX_ANORITH 135
#define HOENN_DEX_ARMALDO 136
#define HOENN_DEX_IGGLYBUFF 137
#define HOENN_DEX_JIGGLYPUFF 138
#define HOENN_DEX_WIGGLYTUFF 139
#define HOENN_DEX_FEEBAS 140
#define HOENN_DEX_MILOTIC 141
#define HOENN_DEX_CASTFORM 142
#define HOENN_DEX_STARYU 143
#define HOENN_DEX_STARMIE 144
#define HOENN_DEX_KECLEON 145
#define HOENN_DEX_SHUPPET 146
#define HOENN_DEX_BANETTE 147
#define HOENN_DEX_DUSKULL 148
#define HOENN_DEX_DUSCLOPS 149
#define HOENN_DEX_TROPIUS 150
#define HOENN_DEX_CHIMECHO 151
#define HOENN_DEX_ABSOL 152
#define HOENN_DEX_VULPIX 153
#define HOENN_DEX_NINETALES 154
#define HOENN_DEX_PICHU 155
#define HOENN_DEX_PIKACHU 156
#define HOENN_DEX_RAICHU 157
#define HOENN_DEX_PSYDUCK 158
#define HOENN_DEX_GOLDUCK 159
#define HOENN_DEX_WYNAUT 160
#define HOENN_DEX_WOBBUFFET 161
#define HOENN_DEX_NATU 162
#define HOENN_DEX_XATU 163
#define HOENN_DEX_GIRAFARIG 164
#define HOENN_DEX_PHANPY 165
#define HOENN_DEX_DONPHAN 166
#define HOENN_DEX_PINSIR 167
#define HOENN_DEX_HERACROSS 168
#define HOENN_DEX_RHYHORN 169
#define HOENN_DEX_RHYDON 170
#define HOENN_DEX_SNORUNT 171
#define HOENN_DEX_GLALIE 172
#define HOENN_DEX_SPHEAL 173
#define HOENN_DEX_SEALEO 174
#define HOENN_DEX_WALREIN 175
#define HOENN_DEX_CLAMPERL 176
#define HOENN_DEX_HUNTAIL 177
#define HOENN_DEX_GOREBYSS 178
#define HOENN_DEX_RELICANTH 179
#define HOENN_DEX_CORSOLA 180
#define HOENN_DEX_CHINCHOU 181
#define HOENN_DEX_LANTURN 182
#define HOENN_DEX_LUVDISC 183
#define HOENN_DEX_HORSEA 184
#define HOENN_DEX_SEADRA 185
#define HOENN_DEX_KINGDRA 186
#define HOENN_DEX_BAGON 187
#define HOENN_DEX_SHELGON 188
#define HOENN_DEX_SALAMENCE 189
#define HOENN_DEX_BELDUM 190
#define HOENN_DEX_METANG 191
#define HOENN_DEX_METAGROSS 192
#define HOENN_DEX_REGIROCK 193
#define HOENN_DEX_REGICE 194
#define HOENN_DEX_REGISTEEL 195
#define HOENN_DEX_LATIAS 196
#define HOENN_DEX_LATIOS 197
#define HOENN_DEX_KYOGRE 198
#define HOENN_DEX_GROUDON 199
#define HOENN_DEX_RAYQUAZA 200
#define HOENN_DEX_JIRACHI 201
#define HOENN_DEX_DEOXYS 202
#define HOENN_DEX_COUNT HOENN_DEX_DEOXYS
#define HOENN_DEX_BULBASAUR 203 #define HOENN_DEX_BULBASAUR 203
#define HOENN_DEX_IVYSAUR 204 #define HOENN_DEX_IVYSAUR 204
#define HOENN_DEX_VENUSAUR 205 #define HOENN_DEX_VENUSAUR 205
@ -891,10 +1103,6 @@
#define HOENN_DEX_FEAROW 224 #define HOENN_DEX_FEAROW 224
#define HOENN_DEX_EKANS 225 #define HOENN_DEX_EKANS 225
#define HOENN_DEX_ARBOK 226 #define HOENN_DEX_ARBOK 226
#define HOENN_DEX_PIKACHU 156
#define HOENN_DEX_RAICHU 157
#define HOENN_DEX_SANDSHREW 112
#define HOENN_DEX_SANDSLASH 113
#define HOENN_DEX_NIDORAN_F 227 #define HOENN_DEX_NIDORAN_F 227
#define HOENN_DEX_NIDORINA 228 #define HOENN_DEX_NIDORINA 228
#define HOENN_DEX_NIDOQUEEN 229 #define HOENN_DEX_NIDOQUEEN 229
@ -903,15 +1111,6 @@
#define HOENN_DEX_NIDOKING 232 #define HOENN_DEX_NIDOKING 232
#define HOENN_DEX_CLEFAIRY 233 #define HOENN_DEX_CLEFAIRY 233
#define HOENN_DEX_CLEFABLE 234 #define HOENN_DEX_CLEFABLE 234
#define HOENN_DEX_VULPIX 153
#define HOENN_DEX_NINETALES 154
#define HOENN_DEX_JIGGLYPUFF 138
#define HOENN_DEX_WIGGLYTUFF 139
#define HOENN_DEX_ZUBAT 63
#define HOENN_DEX_GOLBAT 64
#define HOENN_DEX_ODDISH 88
#define HOENN_DEX_GLOOM 89
#define HOENN_DEX_VILEPLUME 90
#define HOENN_DEX_PARAS 235 #define HOENN_DEX_PARAS 235
#define HOENN_DEX_PARASECT 236 #define HOENN_DEX_PARASECT 236
#define HOENN_DEX_VENONAT 237 #define HOENN_DEX_VENONAT 237
@ -920,8 +1119,6 @@
#define HOENN_DEX_DUGTRIO 240 #define HOENN_DEX_DUGTRIO 240
#define HOENN_DEX_MEOWTH 241 #define HOENN_DEX_MEOWTH 241
#define HOENN_DEX_PERSIAN 242 #define HOENN_DEX_PERSIAN 242
#define HOENN_DEX_PSYDUCK 158
#define HOENN_DEX_GOLDUCK 159
#define HOENN_DEX_MANKEY 243 #define HOENN_DEX_MANKEY 243
#define HOENN_DEX_PRIMEAPE 244 #define HOENN_DEX_PRIMEAPE 244
#define HOENN_DEX_GROWLITHE 245 #define HOENN_DEX_GROWLITHE 245
@ -929,33 +1126,16 @@
#define HOENN_DEX_POLIWAG 247 #define HOENN_DEX_POLIWAG 247
#define HOENN_DEX_POLIWHIRL 248 #define HOENN_DEX_POLIWHIRL 248
#define HOENN_DEX_POLIWRATH 249 #define HOENN_DEX_POLIWRATH 249
#define HOENN_DEX_ABRA 39
#define HOENN_DEX_KADABRA 40
#define HOENN_DEX_ALAKAZAM 41
#define HOENN_DEX_MACHOP 73
#define HOENN_DEX_MACHOKE 74
#define HOENN_DEX_MACHAMP 75
#define HOENN_DEX_BELLSPROUT 250 #define HOENN_DEX_BELLSPROUT 250
#define HOENN_DEX_WEEPINBELL 251 #define HOENN_DEX_WEEPINBELL 251
#define HOENN_DEX_VICTREEBEL 252 #define HOENN_DEX_VICTREEBEL 252
#define HOENN_DEX_TENTACOOL 66
#define HOENN_DEX_TENTACRUEL 67
#define HOENN_DEX_GEODUDE 57
#define HOENN_DEX_GRAVELER 58
#define HOENN_DEX_GOLEM 59
#define HOENN_DEX_PONYTA 253 #define HOENN_DEX_PONYTA 253
#define HOENN_DEX_RAPIDASH 254 #define HOENN_DEX_RAPIDASH 254
#define HOENN_DEX_SLOWPOKE 255 #define HOENN_DEX_SLOWPOKE 255
#define HOENN_DEX_SLOWBRO 256 #define HOENN_DEX_SLOWBRO 256
#define HOENN_DEX_MAGNEMITE 82
#define HOENN_DEX_MAGNETON 83
#define HOENN_DEX_FARFETCHD 257 #define HOENN_DEX_FARFETCHD 257
#define HOENN_DEX_DODUO 92
#define HOENN_DEX_DODRIO 93
#define HOENN_DEX_SEEL 258 #define HOENN_DEX_SEEL 258
#define HOENN_DEX_DEWGONG 259 #define HOENN_DEX_DEWGONG 259
#define HOENN_DEX_GRIMER 106
#define HOENN_DEX_MUK 107
#define HOENN_DEX_SHELLDER 260 #define HOENN_DEX_SHELLDER 260
#define HOENN_DEX_CLOYSTER 261 #define HOENN_DEX_CLOYSTER 261
#define HOENN_DEX_GASTLY 262 #define HOENN_DEX_GASTLY 262
@ -966,8 +1146,6 @@
#define HOENN_DEX_HYPNO 267 #define HOENN_DEX_HYPNO 267
#define HOENN_DEX_KRABBY 268 #define HOENN_DEX_KRABBY 268
#define HOENN_DEX_KINGLER 269 #define HOENN_DEX_KINGLER 269
#define HOENN_DEX_VOLTORB 84
#define HOENN_DEX_ELECTRODE 85
#define HOENN_DEX_EXEGGCUTE 270 #define HOENN_DEX_EXEGGCUTE 270
#define HOENN_DEX_EXEGGUTOR 271 #define HOENN_DEX_EXEGGUTOR 271
#define HOENN_DEX_CUBONE 272 #define HOENN_DEX_CUBONE 272
@ -975,28 +1153,15 @@
#define HOENN_DEX_HITMONLEE 274 #define HOENN_DEX_HITMONLEE 274
#define HOENN_DEX_HITMONCHAN 275 #define HOENN_DEX_HITMONCHAN 275
#define HOENN_DEX_LICKITUNG 276 #define HOENN_DEX_LICKITUNG 276
#define HOENN_DEX_KOFFING 108
#define HOENN_DEX_WEEZING 109
#define HOENN_DEX_RHYHORN 169
#define HOENN_DEX_RHYDON 170
#define HOENN_DEX_CHANSEY 277 #define HOENN_DEX_CHANSEY 277
#define HOENN_DEX_TANGELA 278 #define HOENN_DEX_TANGELA 278
#define HOENN_DEX_KANGASKHAN 279 #define HOENN_DEX_KANGASKHAN 279
#define HOENN_DEX_HORSEA 184
#define HOENN_DEX_SEADRA 185
#define HOENN_DEX_GOLDEEN 50
#define HOENN_DEX_SEAKING 51
#define HOENN_DEX_STARYU 143
#define HOENN_DEX_STARMIE 144
#define HOENN_DEX_MR_MIME 280 #define HOENN_DEX_MR_MIME 280
#define HOENN_DEX_SCYTHER 281 #define HOENN_DEX_SCYTHER 281
#define HOENN_DEX_JYNX 282 #define HOENN_DEX_JYNX 282
#define HOENN_DEX_ELECTABUZZ 283 #define HOENN_DEX_ELECTABUZZ 283
#define HOENN_DEX_MAGMAR 284 #define HOENN_DEX_MAGMAR 284
#define HOENN_DEX_PINSIR 167
#define HOENN_DEX_TAUROS 285 #define HOENN_DEX_TAUROS 285
#define HOENN_DEX_MAGIKARP 52
#define HOENN_DEX_GYARADOS 53
#define HOENN_DEX_LAPRAS 286 #define HOENN_DEX_LAPRAS 286
#define HOENN_DEX_DITTO 287 #define HOENN_DEX_DITTO 287
#define HOENN_DEX_EEVEE 288 #define HOENN_DEX_EEVEE 288
@ -1035,22 +1200,12 @@
#define HOENN_DEX_LEDIAN 321 #define HOENN_DEX_LEDIAN 321
#define HOENN_DEX_SPINARAK 322 #define HOENN_DEX_SPINARAK 322
#define HOENN_DEX_ARIADOS 323 #define HOENN_DEX_ARIADOS 323
#define HOENN_DEX_CROBAT 65
#define HOENN_DEX_CHINCHOU 181
#define HOENN_DEX_LANTURN 182
#define HOENN_DEX_PICHU 155
#define HOENN_DEX_CLEFFA 324 #define HOENN_DEX_CLEFFA 324
#define HOENN_DEX_IGGLYBUFF 137
#define HOENN_DEX_TOGEPI 325 #define HOENN_DEX_TOGEPI 325
#define HOENN_DEX_TOGETIC 326 #define HOENN_DEX_TOGETIC 326
#define HOENN_DEX_NATU 162
#define HOENN_DEX_XATU 163
#define HOENN_DEX_MAREEP 327 #define HOENN_DEX_MAREEP 327
#define HOENN_DEX_FLAAFFY 328 #define HOENN_DEX_FLAAFFY 328
#define HOENN_DEX_AMPHAROS 329 #define HOENN_DEX_AMPHAROS 329
#define HOENN_DEX_BELLOSSOM 91
#define HOENN_DEX_MARILL 55
#define HOENN_DEX_AZUMARILL 56
#define HOENN_DEX_SUDOWOODO 330 #define HOENN_DEX_SUDOWOODO 330
#define HOENN_DEX_POLITOED 331 #define HOENN_DEX_POLITOED 331
#define HOENN_DEX_HOPPIP 332 #define HOENN_DEX_HOPPIP 332
@ -1068,8 +1223,6 @@
#define HOENN_DEX_SLOWKING 344 #define HOENN_DEX_SLOWKING 344
#define HOENN_DEX_MISDREAVUS 345 #define HOENN_DEX_MISDREAVUS 345
#define HOENN_DEX_UNOWN 346 #define HOENN_DEX_UNOWN 346
#define HOENN_DEX_WOBBUFFET 161
#define HOENN_DEX_GIRAFARIG 164
#define HOENN_DEX_PINECO 347 #define HOENN_DEX_PINECO 347
#define HOENN_DEX_FORRETRESS 348 #define HOENN_DEX_FORRETRESS 348
#define HOENN_DEX_DUNSPARCE 349 #define HOENN_DEX_DUNSPARCE 349
@ -1080,25 +1233,17 @@
#define HOENN_DEX_QWILFISH 354 #define HOENN_DEX_QWILFISH 354
#define HOENN_DEX_SCIZOR 355 #define HOENN_DEX_SCIZOR 355
#define HOENN_DEX_SHUCKLE 356 #define HOENN_DEX_SHUCKLE 356
#define HOENN_DEX_HERACROSS 168
#define HOENN_DEX_SNEASEL 357 #define HOENN_DEX_SNEASEL 357
#define HOENN_DEX_TEDDIURSA 358 #define HOENN_DEX_TEDDIURSA 358
#define HOENN_DEX_URSARING 359 #define HOENN_DEX_URSARING 359
#define HOENN_DEX_SLUGMA 103
#define HOENN_DEX_MAGCARGO 104
#define HOENN_DEX_SWINUB 360 #define HOENN_DEX_SWINUB 360
#define HOENN_DEX_PILOSWINE 361 #define HOENN_DEX_PILOSWINE 361
#define HOENN_DEX_CORSOLA 180
#define HOENN_DEX_REMORAID 362 #define HOENN_DEX_REMORAID 362
#define HOENN_DEX_OCTILLERY 363 #define HOENN_DEX_OCTILLERY 363
#define HOENN_DEX_DELIBIRD 364 #define HOENN_DEX_DELIBIRD 364
#define HOENN_DEX_MANTINE 365 #define HOENN_DEX_MANTINE 365
#define HOENN_DEX_SKARMORY 115
#define HOENN_DEX_HOUNDOUR 366 #define HOENN_DEX_HOUNDOUR 366
#define HOENN_DEX_HOUNDOOM 367 #define HOENN_DEX_HOUNDOOM 367
#define HOENN_DEX_KINGDRA 186
#define HOENN_DEX_PHANPY 165
#define HOENN_DEX_DONPHAN 166
#define HOENN_DEX_PORYGON2 368 #define HOENN_DEX_PORYGON2 368
#define HOENN_DEX_STANTLER 369 #define HOENN_DEX_STANTLER 369
#define HOENN_DEX_SMEARGLE 370 #define HOENN_DEX_SMEARGLE 370
@ -1145,140 +1290,4 @@
#define HOENN_DEX_OLD_UNOWN_Y 410 #define HOENN_DEX_OLD_UNOWN_Y 410
#define HOENN_DEX_OLD_UNOWN_Z 411 #define HOENN_DEX_OLD_UNOWN_Z 411
#define HOENN_DEX_TREECKO 1
#define HOENN_DEX_GROVYLE 2
#define HOENN_DEX_SCEPTILE 3
#define HOENN_DEX_TORCHIC 4
#define HOENN_DEX_COMBUSKEN 5
#define HOENN_DEX_BLAZIKEN 6
#define HOENN_DEX_MUDKIP 7
#define HOENN_DEX_MARSHTOMP 8
#define HOENN_DEX_SWAMPERT 9
#define HOENN_DEX_POOCHYENA 10
#define HOENN_DEX_MIGHTYENA 11
#define HOENN_DEX_ZIGZAGOON 12
#define HOENN_DEX_LINOONE 13
#define HOENN_DEX_WURMPLE 14
#define HOENN_DEX_SILCOON 15
#define HOENN_DEX_BEAUTIFLY 16
#define HOENN_DEX_CASCOON 17
#define HOENN_DEX_DUSTOX 18
#define HOENN_DEX_LOTAD 19
#define HOENN_DEX_LOMBRE 20
#define HOENN_DEX_LUDICOLO 21
#define HOENN_DEX_SEEDOT 22
#define HOENN_DEX_NUZLEAF 23
#define HOENN_DEX_SHIFTRY 24
#define HOENN_DEX_NINCADA 42
#define HOENN_DEX_NINJASK 43
#define HOENN_DEX_SHEDINJA 44
#define HOENN_DEX_TAILLOW 25
#define HOENN_DEX_SWELLOW 26
#define HOENN_DEX_SHROOMISH 34
#define HOENN_DEX_BRELOOM 35
#define HOENN_DEX_SPINDA 114
#define HOENN_DEX_WINGULL 27
#define HOENN_DEX_PELIPPER 28
#define HOENN_DEX_SURSKIT 32
#define HOENN_DEX_MASQUERAIN 33
#define HOENN_DEX_WAILMER 99
#define HOENN_DEX_WAILORD 100
#define HOENN_DEX_SKITTY 61
#define HOENN_DEX_DELCATTY 62
#define HOENN_DEX_KECLEON 145
#define HOENN_DEX_BALTOY 131
#define HOENN_DEX_CLAYDOL 132
#define HOENN_DEX_NOSEPASS 60
#define HOENN_DEX_TORKOAL 105
#define HOENN_DEX_SABLEYE 68
#define HOENN_DEX_BARBOACH 127
#define HOENN_DEX_WHISCASH 128
#define HOENN_DEX_LUVDISC 183
#define HOENN_DEX_CORPHISH 129
#define HOENN_DEX_CRAWDAUNT 130
#define HOENN_DEX_FEEBAS 140
#define HOENN_DEX_MILOTIC 141
#define HOENN_DEX_CARVANHA 97
#define HOENN_DEX_SHARPEDO 98
#define HOENN_DEX_TRAPINCH 116
#define HOENN_DEX_VIBRAVA 117
#define HOENN_DEX_FLYGON 118
#define HOENN_DEX_MAKUHITA 48
#define HOENN_DEX_HARIYAMA 49
#define HOENN_DEX_ELECTRIKE 78
#define HOENN_DEX_MANECTRIC 79
#define HOENN_DEX_NUMEL 101
#define HOENN_DEX_CAMERUPT 102
#define HOENN_DEX_SPHEAL 173
#define HOENN_DEX_SEALEO 174
#define HOENN_DEX_WALREIN 175
#define HOENN_DEX_CACNEA 119
#define HOENN_DEX_CACTURNE 120
#define HOENN_DEX_SNORUNT 171
#define HOENN_DEX_GLALIE 172
#define HOENN_DEX_LUNATONE 125
#define HOENN_DEX_SOLROCK 126
#define HOENN_DEX_AZURILL 54
#define HOENN_DEX_SPOINK 110
#define HOENN_DEX_GRUMPIG 111
#define HOENN_DEX_PLUSLE 80
#define HOENN_DEX_MINUN 81
#define HOENN_DEX_MAWILE 69
#define HOENN_DEX_MEDITITE 76
#define HOENN_DEX_MEDICHAM 77
#define HOENN_DEX_SWABLU 121
#define HOENN_DEX_ALTARIA 122
#define HOENN_DEX_WYNAUT 160
#define HOENN_DEX_DUSKULL 148
#define HOENN_DEX_DUSCLOPS 149
#define HOENN_DEX_ROSELIA 94
#define HOENN_DEX_SLAKOTH 36
#define HOENN_DEX_VIGOROTH 37
#define HOENN_DEX_SLAKING 38
#define HOENN_DEX_GULPIN 95
#define HOENN_DEX_SWALOT 96
#define HOENN_DEX_TROPIUS 150
#define HOENN_DEX_WHISMUR 45
#define HOENN_DEX_LOUDRED 46
#define HOENN_DEX_EXPLOUD 47
#define HOENN_DEX_CLAMPERL 176
#define HOENN_DEX_HUNTAIL 177
#define HOENN_DEX_GOREBYSS 178
#define HOENN_DEX_ABSOL 152
#define HOENN_DEX_SHUPPET 146
#define HOENN_DEX_BANETTE 147
#define HOENN_DEX_SEVIPER 124
#define HOENN_DEX_ZANGOOSE 123
#define HOENN_DEX_RELICANTH 179
#define HOENN_DEX_ARON 70
#define HOENN_DEX_LAIRON 71
#define HOENN_DEX_AGGRON 72
#define HOENN_DEX_CASTFORM 142
#define HOENN_DEX_VOLBEAT 86
#define HOENN_DEX_ILLUMISE 87
#define HOENN_DEX_LILEEP 133
#define HOENN_DEX_CRADILY 134
#define HOENN_DEX_ANORITH 135
#define HOENN_DEX_ARMALDO 136
#define HOENN_DEX_RALTS 29
#define HOENN_DEX_KIRLIA 30
#define HOENN_DEX_GARDEVOIR 31
#define HOENN_DEX_BAGON 187
#define HOENN_DEX_SHELGON 188
#define HOENN_DEX_SALAMENCE 189
#define HOENN_DEX_BELDUM 190
#define HOENN_DEX_METANG 191
#define HOENN_DEX_METAGROSS 192
#define HOENN_DEX_REGIROCK 193
#define HOENN_DEX_REGICE 194
#define HOENN_DEX_REGISTEEL 195
#define HOENN_DEX_KYOGRE 198
#define HOENN_DEX_GROUDON 199
#define HOENN_DEX_RAYQUAZA 200
#define HOENN_DEX_LATIAS 196
#define HOENN_DEX_LATIOS 197
#define HOENN_DEX_JIRACHI 201
#define HOENN_DEX_DEOXYS 202
#define HOENN_DEX_CHIMECHO 151
#endif // GUARD_CONSTANTS_SPECIES_H #endif // GUARD_CONSTANTS_SPECIES_H

View File

@ -3282,25 +3282,24 @@ extern const u32 gBattleTerrainPalette_StadiumDrake[];
extern const u32 gBattleTerrainPalette_StadiumWallace[]; extern const u32 gBattleTerrainPalette_StadiumWallace[];
// pokedex // pokedex
extern const u32 gPokedexMenu2_Gfx[]; extern const u32 gPokedexInterface_Gfx[];
extern const u16 gPokedexText_Pal[]; extern const u16 gPokedexBgHoenn_Pal[];
extern const u32 gPokedexMenu_Gfx[]; extern const u32 gPokedexMenu_Gfx[];
extern const u8 gPokedexTilemap_Main[]; extern const u8 gPokedexList_Tilemap[];
extern const u8 gPokedexTilemap_MainUnderlay[]; extern const u8 gPokedexListUnderlay_Tilemap[];
extern const u8 gPokedexTilemap_StartMenu1[]; extern const u8 gPokedexStartMenuMain_Tilemap[];
extern const u8 gPokedexTilemap_StartMenu2[]; extern const u8 gPokedexStartMenuSearchResults_Tilemap[];
extern const u16 gPokedexHoennBg_Pal[]; extern const u16 gPokedexSearchResults_Pal[];
extern const u16 gPokedexText_Pal[]; extern const u16 gPokedexBgNational_Pal[];
extern const u16 gPokedexNationalBg_Pal[]; extern const u8 gPokedexInfoScreen_Tilemap[];
extern const u8 gPokedexTilemap_DescriptionScreen[]; extern const u8 gPokedexCryScreen_Tilemap[];
extern const u8 gPokedexTilemap_CryScreen[]; extern const u8 gPokedexSizeScreen_Tilemap[];
extern const u8 gPokedexTilemap_SizeScreen[]; extern const u8 gPokedexScreenSelectBarMain_Tilemap[];
extern const u8 gPokedexTilemap_ScreenSelectBar1[]; extern const u8 gPokedexScreenSelectBarSubmenu_Tilemap[];
extern const u8 gPokedexTilemap_ScreenSelectBar2[]; extern const u16 gPokedexCaughtScreen_Pal[];
extern const u16 gPokedexCaughtScreenFade_Pal[];
extern const u32 gPokedexSearchMenu_Gfx[]; extern const u32 gPokedexSearchMenu_Gfx[];
extern const u32 gPokedexSearch2_Tilemap[]; extern const u32 gPokedexSearchMenuHoenn_Tilemap[];
extern const u32 gPokedexSearch1_Tilemap[]; extern const u32 gPokedexSearchMenuNational_Tilemap[];
extern const u16 gPokedexSearchMenu_Pal[]; extern const u16 gPokedexSearchMenu_Pal[];
// berry tag screen // berry tag screen

View File

@ -2,11 +2,7 @@
#define GUARD_POKEDEX_H #define GUARD_POKEDEX_H
extern u8 gUnusedPokedexU8; extern u8 gUnusedPokedexU8;
extern void (*gUnknown_030060B4)(void); extern void (*gPokedexVBlankCB)(void);
#define KANTO_DEX_COUNT 151
#define HOENN_DEX_COUNT 202
#define NATIONAL_DEX_COUNT 386
enum enum
{ {
@ -39,12 +35,12 @@ void ResetPokedex(void);
u16 GetPokedexHeightWeight(u16 dexNum, u8 data); u16 GetPokedexHeightWeight(u16 dexNum, u8 data);
u16 GetNationalPokedexCount(u8); u16 GetNationalPokedexCount(u8);
u16 GetHoennPokedexCount(u8); u16 GetHoennPokedexCount(u8);
u8 CreateDexDisplayMonDataTask(u16 dexNum, u32 trainerId, u32 personality); u8 DisplayCaughtMonDexPage(u16 dexNum, u32 otId, u32 personality);
s8 GetSetPokedexFlag(u16 nationalNum, u8 caseId); s8 GetSetPokedexFlag(u16 nationalNum, u8 caseId);
u16 CreateMonSpriteFromNationalDexNumber(u16, s16, s16, u16); u16 CreateMonSpriteFromNationalDexNumber(u16, s16, s16, u16);
bool16 HasAllHoennMons(void); bool16 HasAllHoennMons(void);
void ResetPokedexScrollPositions(void); void ResetPokedexScrollPositions(void);
bool16 HasAllMons(void); bool16 HasAllMons(void);
void CB2_Pokedex(void); void CB2_OpenPokedex(void);
#endif // GUARD_POKEDEX_H #endif // GUARD_POKEDEX_H

View File

@ -3,8 +3,8 @@
struct CryRelatedStruct struct CryRelatedStruct
{ {
u16 unk0; u16 unk0; // Assigned to val that's never read
u8 unk2; u8 unk2; // Never read
u8 paletteNo; u8 paletteNo;
u8 xPos; u8 xPos;
u8 yPos; u8 yPos;
@ -12,10 +12,10 @@ struct CryRelatedStruct
extern u8 gDexCryScreenState; extern u8 gDexCryScreenState;
bool8 sub_8145354(struct CryRelatedStruct*, u8); bool8 LoadCryWaveformWindow(struct CryRelatedStruct*, u8);
void sub_814545C(u8); void UpdateCryWaveformWindow(u8);
void sub_8145534(u16); void CryScreenPlayButton(u16);
bool8 sub_8145850(struct CryRelatedStruct*, u8); bool8 LoadCryMeter(struct CryRelatedStruct*, u8);
void sub_8145914(void); void FreeCryScreen(void);
#endif #endif

View File

@ -10263,7 +10263,7 @@ static void Cmd_displaydexinfo(void)
if (!gPaletteFade.active) if (!gPaletteFade.active)
{ {
FreeAllWindowBuffers(); FreeAllWindowBuffers();
gBattleCommunication[TASK_ID] = CreateDexDisplayMonDataTask(SpeciesToNationalPokedexNum(species), gBattleCommunication[TASK_ID] = DisplayCaughtMonDexPage(SpeciesToNationalPokedexNum(species),
gBattleMons[gBattlerTarget].otId, gBattleMons[gBattlerTarget].otId,
gBattleMons[gBattlerTarget].personality); gBattleMons[gBattlerTarget].personality);
gBattleCommunication[0]++; gBattleCommunication[0]++;

View File

@ -23,6 +23,7 @@
#include "constants/vars.h" #include "constants/vars.h"
#include "event_data.h" #include "event_data.h"
#include "random.h" #include "random.h"
#include "constants/species.h"
enum enum
{ {

View File

@ -1257,32 +1257,27 @@ const u16 gFrontierPassMapCursor_Pal[] = INCBIN_U16("graphics/frontier_pass/map_
const u16 gFrontierPassMedalsSilver_Pal[] = INCBIN_U16("graphics/frontier_pass/silver.gbapal"); const u16 gFrontierPassMedalsSilver_Pal[] = INCBIN_U16("graphics/frontier_pass/silver.gbapal");
const u16 gFrontierPassMedalsGold_Pal[] = INCBIN_U16("graphics/frontier_pass/gold.gbapal"); const u16 gFrontierPassMedalsGold_Pal[] = INCBIN_U16("graphics/frontier_pass/gold.gbapal");
const u16 gPokedexText_Pal[] = INCBIN_U16("graphics/pokedex/text.gbapal"); // Pokedex
const u16 gPokedexBgHoenn_Pal[] = INCBIN_U16("graphics/pokedex/bg_hoenn.gbapal");
const u16 gPokedexCaughtScreenFade_Pal[] = INCBIN_U16("graphics/pokedex/fade.gbapal"); const u16 gPokedexCaughtScreen_Pal[] = INCBIN_U16("graphics/pokedex/caught_screen.gbapal");
const u16 gPokedexSearchResults_Pal[] = INCBIN_U16("graphics/pokedex/search_results_bg.gbapal");
const u16 gPokedexHoennBg_Pal[] = INCBIN_U16("graphics/pokedex/hoenn_bg.gbapal"); const u16 gPokedexBgNational_Pal[] = INCBIN_U16("graphics/pokedex/bg_national.gbapal");
const u16 gPokedexNationalBg_Pal[] = INCBIN_U16("graphics/pokedex/national_bg.gbapal");
const u32 gPokedexMenu_Gfx[] = INCBIN_U32("graphics/pokedex/menu.4bpp.lz"); const u32 gPokedexMenu_Gfx[] = INCBIN_U32("graphics/pokedex/menu.4bpp.lz");
const u32 gPokedexMenu2_Gfx[] = INCBIN_U32("graphics/pokedex/menu2.4bpp.lz"); const u32 gPokedexInterface_Gfx[] = INCBIN_U32("graphics/pokedex/interface.4bpp.lz");
const u32 gUnused_PokedexNoBall[] = INCBIN_U32("graphics/pokedex/noball_unused.4bpp.lz"); const u32 gUnused_PokedexNoBall[] = INCBIN_U32("graphics/pokedex/noball_unused.4bpp.lz");
const u32 gPokedexStartMenuMain_Tilemap[] = INCBIN_U32("graphics/pokedex/start_menu_main.bin.lz");
const u32 gPokedexTilemap_StartMenu1[] = INCBIN_U32("graphics/pokedex/tilemap1.bin.lz"); const u32 gPokedexStartMenuSearchResults_Tilemap[] = INCBIN_U32("graphics/pokedex/start_menu_search_results.bin.lz");
const u32 gPokedexTilemap_StartMenu2[] = INCBIN_U32("graphics/pokedex/tilemap2.bin.lz"); const u32 gPokedexList_Tilemap[] = INCBIN_U32("graphics/pokedex/list.bin.lz");
const u32 gPokedexTilemap_Main[] = INCBIN_U32("graphics/pokedex/tilemap3.bin.lz"); const u32 gPokedexListUnderlay_Tilemap[] = INCBIN_U32("graphics/pokedex/list_underlay.bin.lz");
const u32 gPokedexTilemap_MainUnderlay[] = INCBIN_U32("graphics/pokedex/tilemap4.bin.lz"); const u32 gPokedexSizeScreen_Tilemap[] = INCBIN_U32("graphics/pokedex/size_screen.bin.lz");
const u32 gPokedexTilemap_SizeScreen[] = INCBIN_U32("graphics/pokedex/tilemap5.bin.lz"); const u32 gPokedexScreenSelectBarMain_Tilemap[] = INCBIN_U32("graphics/pokedex/screen_select_bar_main.bin.lz");
const u32 gPokedexTilemap_ScreenSelectBar1[] = INCBIN_U32("graphics/pokedex/tilemap6.bin.lz"); const u32 gPokedexScreenSelectBarSubmenu_Tilemap[] = INCBIN_U32("graphics/pokedex/screen_select_bar_submenu.bin.lz");
const u32 gPokedexTilemap_ScreenSelectBar2[] = INCBIN_U32("graphics/pokedex/tilemap7.bin.lz"); const u32 gPokedexInfoScreen_Tilemap[] = INCBIN_U32("graphics/pokedex/info_screen.bin.lz");
const u32 gPokedexTilemap_DescriptionScreen[] = INCBIN_U32("graphics/pokedex/tilemap8.bin.lz"); const u32 gPokedexCryScreen_Tilemap[] = INCBIN_U32("graphics/pokedex/cry_screen.bin.lz");
const u32 gPokedexTilemap_CryScreen[] = INCBIN_U32("graphics/pokedex/tilemap9.bin.lz");
const u16 gPokedexSearchMenu_Pal[] = INCBIN_U16("graphics/pokedex/search_menu.gbapal"); const u16 gPokedexSearchMenu_Pal[] = INCBIN_U16("graphics/pokedex/search_menu.gbapal");
const u32 gPokedexSearchMenu_Gfx[] = INCBIN_U32("graphics/pokedex/search_menu.4bpp.lz"); const u32 gPokedexSearchMenu_Gfx[] = INCBIN_U32("graphics/pokedex/search_menu.4bpp.lz");
const u32 gPokedexSearch1_Tilemap[] = INCBIN_U32("graphics/pokedex/search1.bin.lz"); const u32 gPokedexSearchMenuNational_Tilemap[] = INCBIN_U32("graphics/pokedex/search_menu_national.bin.lz");
const u32 gPokedexSearch2_Tilemap[] = INCBIN_U32("graphics/pokedex/search2.bin.lz"); const u32 gPokedexSearchMenuHoenn_Tilemap[] = INCBIN_U32("graphics/pokedex/search_menu_hoenn.bin.lz");
const u16 gSummaryScreenPowAcc_Tilemap[] = INCBIN_U16("graphics/interface/powacc_tilemap.bin"); const u16 gSummaryScreenPowAcc_Tilemap[] = INCBIN_U16("graphics/interface/powacc_tilemap.bin");

File diff suppressed because it is too large Load Diff

View File

@ -66,7 +66,7 @@ struct PokeDexAreaScreen
/*0x6E0*/ u16 numAreaMarkerSprites; /*0x6E0*/ u16 numAreaMarkerSprites;
/*0x6E2*/ u16 unk6E2; /*0x6E2*/ u16 unk6E2;
/*0x6E4*/ u16 unk6E4; /*0x6E4*/ u16 unk6E4;
/*0x6E8*/ u8 *errno; /*0x6E8*/ u8 *screenSwitchState;
/*0x6EC*/ struct RegionMap regionMap; /*0x6EC*/ struct RegionMap regionMap;
/*0xF70*/ u8 charBuffer[0x40]; /*0xF70*/ u8 charBuffer[0x40];
/*0xFB0*/ struct Sprite * areaUnknownSprites[3]; /*0xFB0*/ struct Sprite * areaUnknownSprites[3];
@ -83,11 +83,11 @@ static u16 GetRegionMapSectionId(u8, u8);
static bool8 MapHasMon(const struct WildPokemonHeader *, u16); static bool8 MapHasMon(const struct WildPokemonHeader *, u16);
static bool8 MonListHasMon(const struct WildPokemonInfo *, u16, u16); static bool8 MonListHasMon(const struct WildPokemonInfo *, u16, u16);
static void DoAreaGlow(void); static void DoAreaGlow(void);
static void Task_PokedexAreaScreen_0(u8); static void Task_ShowPokedexAreaScreen(u8);
static void CreateAreaMarkerSprites(void); static void CreateAreaMarkerSprites(void);
static void LoadAreaUnknownGraphics(void); static void LoadAreaUnknownGraphics(void);
static void CreateAreaUnknownSprites(void); static void CreateAreaUnknownSprites(void);
static void Task_PokedexAreaScreen_1(u8); static void Task_HandlePokedexAreaScreenInput(u8);
static void sub_813D6B4(void); static void sub_813D6B4(void);
static void DestroyAreaMarkerSprites(void); static void DestroyAreaMarkerSprites(void);
@ -637,21 +637,23 @@ static void DoAreaGlow(void)
} }
} }
void ShowPokedexAreaScreen(u16 species, u8 *errno) #define tState data[0]
void ShowPokedexAreaScreen(u16 species, u8 *screenSwitchState)
{ {
u8 taskId; u8 taskId;
sPokedexAreaScreen = AllocZeroed(sizeof(*sPokedexAreaScreen)); sPokedexAreaScreen = AllocZeroed(sizeof(*sPokedexAreaScreen));
sPokedexAreaScreen->species = species; sPokedexAreaScreen->species = species;
sPokedexAreaScreen->errno = errno; sPokedexAreaScreen->screenSwitchState = screenSwitchState;
errno[0] = 0; screenSwitchState[0] = 0;
taskId = CreateTask(Task_PokedexAreaScreen_0, 0); taskId = CreateTask(Task_ShowPokedexAreaScreen, 0);
gTasks[taskId].data[0] = 0; gTasks[taskId].tState = 0;
} }
static void Task_PokedexAreaScreen_0(u8 taskId) static void Task_ShowPokedexAreaScreen(u8 taskId)
{ {
switch (gTasks[taskId].data[0]) switch (gTasks[taskId].tState)
{ {
case 0: case 0:
ResetSpriteData(); ResetSpriteData();
@ -702,21 +704,21 @@ static void Task_PokedexAreaScreen_0(u8 taskId)
SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON); SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON);
break; break;
case 11: case 11:
gTasks[taskId].func = Task_PokedexAreaScreen_1; gTasks[taskId].func = Task_HandlePokedexAreaScreenInput;
gTasks[taskId].data[0] = 0; gTasks[taskId].tState = 0;
return; return;
} }
gTasks[taskId].data[0]++; gTasks[taskId].tState++;
} }
static void Task_PokedexAreaScreen_1(u8 taskId) static void Task_HandlePokedexAreaScreenInput(u8 taskId)
{ {
DoAreaGlow(); DoAreaGlow();
switch (gTasks[taskId].data[0]) switch (gTasks[taskId].tState)
{ {
default: default:
gTasks[taskId].data[0] = 0; gTasks[taskId].tState = 0;
// fall through // fall through
case 0: case 0:
if (gPaletteFade.active) if (gPaletteFade.active)
@ -737,13 +739,13 @@ static void Task_PokedexAreaScreen_1(u8 taskId)
return; return;
break; break;
case 2: case 2:
BeginNormalPaletteFade(0xFFFFFFEB, 0, 0, 16, RGB(0, 0, 0)); BeginNormalPaletteFade(0xFFFFFFEB, 0, 0, 16, RGB_BLACK);
break; break;
case 3: case 3:
if (gPaletteFade.active) if (gPaletteFade.active)
return; return;
DestroyAreaMarkerSprites(); DestroyAreaMarkerSprites();
sPokedexAreaScreen->errno[0] = gTasks[taskId].data[1]; sPokedexAreaScreen->screenSwitchState[0] = gTasks[taskId].data[1];
sub_813D6B4(); sub_813D6B4();
DestroyTask(taskId); DestroyTask(taskId);
sub_81C4EB4(); sub_81C4EB4();
@ -751,7 +753,7 @@ static void Task_PokedexAreaScreen_1(u8 taskId)
return; return;
} }
gTasks[taskId].data[0]++; gTasks[taskId].tState++;
} }
static void sub_813D6B4(void) static void sub_813D6B4(void)

View File

@ -29,14 +29,14 @@ struct PokedexCryScreen
u8 unk1B; u8 unk1B;
}; };
static void sub_8145588(u16); static void PlayCryScreenCry(u16);
static void sub_81455A8(void); static void sub_81455A8(void);
static void sub_814560C(void); static void DrawWaveformFlatline(void);
static void sub_8145648(u8); static void sub_8145648(u8);
static void sub_81456A8(u8, u8); static void DrawWaveformSegment(u8, u8);
static void sub_8145814(u8); static void sub_8145814(u8);
static void sub_8145824(u8, s16, u8); static void sub_8145824(u8, s16, u8);
static void sub_814596C(struct Sprite *); static void SpriteCB_CryMeterNeedle(struct Sprite *);
static void sub_8145B24(s8); static void sub_8145B24(s8);
// IWRAM common // IWRAM common
@ -47,12 +47,12 @@ static EWRAM_DATA struct PokedexCryScreen *sDexCryScreen = NULL;
static EWRAM_DATA u8 *sCryWaveformWindowTiledata = NULL; static EWRAM_DATA u8 *sCryWaveformWindowTiledata = NULL;
static EWRAM_DATA struct PokedexCryVolumeMeter *sCryVolumeMeter = NULL; static EWRAM_DATA struct PokedexCryVolumeMeter *sCryVolumeMeter = NULL;
const u16 CryMeterNeedlePalette[] = INCBIN_U16("graphics/pokedex/cry_meter_needle.gbapal"); static const u16 sCryMeterNeedle_Pal[] = INCBIN_U16("graphics/pokedex/cry_meter_needle.gbapal");
const u8 CryMeterNeedleTiles[] = INCBIN_U8("graphics/pokedex/cry_meter_needle.4bpp"); static const u8 sCryMeterNeedle_Gfx[] = INCBIN_U8("graphics/pokedex/cry_meter_needle.4bpp");
const u16 gUnknown_085B8378[] = INCBIN_U16("graphics/pokedex/cry_meter_map.bin"); static const u16 sCryMeter_Tilemap[] = INCBIN_U16("graphics/pokedex/cry_meter_map.bin"); // Unused
const u16 gUnknown_085B8418[] = INCBIN_U16("graphics/pokedex/cry_meter.gbapal"); static const u16 sCryMeter_Pal[] = INCBIN_U16("graphics/pokedex/cry_meter.gbapal");
const u8 gUnknown_085B8438[] = INCBIN_U8("graphics/pokedex/cry_meter.4bpp.lz"); static const u8 sCryMeter_Gfx[] = INCBIN_U8("graphics/pokedex/cry_meter.4bpp.lz");
const u16 gUnknown_085B8770[][72] = const u16 gUnknown_085B8770[][72] =
{ {
@ -139,8 +139,8 @@ const u16 gUnknown_085B8770[][72] =
} }
}; };
const u16 gUnknown_085B8BF0[] = INCBIN_U16("graphics/pokedex/85B8C10.gbapal"); static const u16 sCryScreenBg_Pal[] = INCBIN_U16("graphics/pokedex/85B8C10.gbapal");
const u8 gUnknown_085B8C10[] = INCBIN_U8("graphics/pokedex/85B8C10.4bpp"); static const u8 sCryScreenBg_Gfx[] = INCBIN_U8("graphics/pokedex/85B8C10.4bpp");
const u8 gUnknown_085B8C30[] = {0xF0, 0x0F}; const u8 gUnknown_085B8C30[] = {0xF0, 0x0F};
const u8 gUnknown_085B8C32[][16] = const u8 gUnknown_085B8C32[][16] =
@ -154,18 +154,18 @@ const u8 gUnknown_085B8C32[][16] =
} }
}; };
const union AnimCmd gSpriteAnim_85B8C54[] = static const union AnimCmd sSpriteAnim_CryMeterNeedle[] =
{ {
ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(0, 30),
ANIMCMD_END ANIMCMD_END
}; };
const union AnimCmd *const gSpriteAnimTable_85B8C5C[] = static const union AnimCmd *const sSpriteAnimTable_CryMeterNeedle[] =
{ {
gSpriteAnim_85B8C54 sSpriteAnim_CryMeterNeedle
}; };
const struct OamData gOamData_85B8C60 = static const struct OamData sOamData_CryMeterNeedle =
{ {
.y = 160, .y = 160,
.affineMode = ST_OAM_AFFINE_NORMAL, .affineMode = ST_OAM_AFFINE_NORMAL,
@ -179,33 +179,33 @@ const struct OamData gOamData_85B8C60 =
.paletteNum = 0, .paletteNum = 0,
}; };
const struct SpriteTemplate gUnknown_085B8C68 = static const struct SpriteTemplate sCryMeterNeedleSpriteTemplate =
{ {
0x2000, .tileTag = 0x2000,
0x2000, .paletteTag = 0x2000,
&gOamData_85B8C60, .oam = &sOamData_CryMeterNeedle,
gSpriteAnimTable_85B8C5C, .anims = sSpriteAnimTable_CryMeterNeedle,
NULL, .images = NULL,
gDummySpriteAffineAnimTable, .affineAnims = gDummySpriteAffineAnimTable,
sub_814596C .callback = SpriteCB_CryMeterNeedle
}; };
const struct SpriteSheet gCryMeterNeedleSpriteSheets[] = static const struct SpriteSheet sCryMeterNeedleSpriteSheets[] =
{ {
{CryMeterNeedleTiles, 0x800, 0x2000}, {sCryMeterNeedle_Gfx, 0x800, 0x2000},
{} {}
}; };
const struct SpritePalette gCryMeterNeedleSpritePalettes[] = static const struct SpritePalette sCryMeterNeedleSpritePalettes[] =
{ {
{CryMeterNeedlePalette, 0x2000}, {sCryMeterNeedle_Pal, 0x2000},
{} {}
}; };
bool8 sub_8145354(struct CryRelatedStruct *arg0, u8 windowId) bool8 LoadCryWaveformWindow(struct CryRelatedStruct *arg0, u8 windowId)
{ {
u8 i; u8 i;
u8 retVal = FALSE; u8 finished = FALSE;
switch (gDexCryScreenState) switch (gDexCryScreenState)
{ {
@ -225,27 +225,27 @@ bool8 sub_8145354(struct CryRelatedStruct *arg0, u8 windowId)
sDexCryScreen->unk11 = 0; sDexCryScreen->unk11 = 0;
sub_8145824(windowId, -8 * arg0->xPos, 1); sub_8145824(windowId, -8 * arg0->xPos, 1);
for (i = 0; i < 224; i++) for (i = 0; i < 224; i++)
CopyToWindowPixelBuffer(windowId, gUnknown_085B8C10, TILE_SIZE_4BPP, i); CopyToWindowPixelBuffer(windowId, sCryScreenBg_Gfx, TILE_SIZE_4BPP, i);
gDexCryScreenState++; gDexCryScreenState++;
break; break;
case 1: case 1:
for (i = 0; i < sDexCryScreen->unk16 * 8; i++) for (i = 0; i < sDexCryScreen->unk16 * 8; i++)
sub_81456A8(i, 0); DrawWaveformSegment(i, 0);
gDexCryScreenState++; gDexCryScreenState++;
break; break;
case 2: case 2:
sub_8145814(windowId); sub_8145814(windowId);
LoadPalette(gUnknown_085B8BF0, arg0->paletteNo * 16, 32); LoadPalette(sCryScreenBg_Pal, arg0->paletteNo * 16, 32);
retVal = TRUE; finished = TRUE;
break; break;
} }
return retVal; return finished;
} }
void sub_814545C(u8 windowId) void UpdateCryWaveformWindow(u8 windowId)
{ {
u8 var0; u8 var0;
@ -259,15 +259,15 @@ void sub_814545C(u8 windowId)
sDexCryScreen->unk1A--; sDexCryScreen->unk1A--;
if (!sDexCryScreen->unk1A) if (!sDexCryScreen->unk1A)
{ {
sub_8145588(sDexCryScreen->species); PlayCryScreenCry(sDexCryScreen->species);
sub_814560C(); DrawWaveformFlatline();
return; return;
} }
} }
if (sDexCryScreen->unk10 == 0) if (sDexCryScreen->unk10 == 0)
{ {
sub_814560C(); DrawWaveformFlatline();
return; return;
} }
@ -279,7 +279,7 @@ void sub_814545C(u8 windowId)
{ {
if (!IsCryPlaying()) if (!IsCryPlaying())
{ {
sub_814560C(); DrawWaveformFlatline();
sDexCryScreen->unk10 = 0; sDexCryScreen->unk10 = 0;
return; return;
} }
@ -289,12 +289,12 @@ void sub_814545C(u8 windowId)
} }
var0 = 2 * (sDexCryScreen->unk10 - 1); var0 = 2 * (sDexCryScreen->unk10 - 1);
sub_81456A8(sDexCryScreen->unk16 * 8 + sDexCryScreen->unk11 - 2, sDexCryScreen->unk0[var0]); DrawWaveformSegment(sDexCryScreen->unk16 * 8 + sDexCryScreen->unk11 - 2, sDexCryScreen->unk0[var0]);
sub_81456A8(sDexCryScreen->unk16 * 8 + sDexCryScreen->unk11 - 1, sDexCryScreen->unk0[var0 + 1]); DrawWaveformSegment(sDexCryScreen->unk16 * 8 + sDexCryScreen->unk11 - 1, sDexCryScreen->unk0[var0 + 1]);
sDexCryScreen->unk10++; sDexCryScreen->unk10++;
} }
void sub_8145534(u16 species) void CryScreenPlayButton(u16 species)
{ {
if (gMPlayInfo_BGM.status & MUSICPLAYER_STATUS_PAUSE && !sDexCryScreen->unk1A) if (gMPlayInfo_BGM.status & MUSICPLAYER_STATUS_PAUSE && !sDexCryScreen->unk1A)
{ {
@ -309,13 +309,13 @@ void sub_8145534(u16 species)
} }
else else
{ {
sub_8145588(species); PlayCryScreenCry(species);
} }
} }
} }
} }
static void sub_8145588(u16 species) static void PlayCryScreenCry(u16 species)
{ {
PlayCry2(species, 0, 0x7d, 10); PlayCry2(species, 0, 0x7d, 10);
sDexCryScreen->unk10 = 1; sDexCryScreen->unk10 = 1;
@ -333,14 +333,14 @@ static void sub_81455A8(void)
baseBuffer = gSoundInfo.pcmBuffer + (gSoundInfo.pcmDmaPeriod + 1 - gPcmDmaCounter) * gSoundInfo.pcmSamplesPerVBlank; baseBuffer = gSoundInfo.pcmBuffer + (gSoundInfo.pcmDmaPeriod + 1 - gPcmDmaCounter) * gSoundInfo.pcmSamplesPerVBlank;
buffer = baseBuffer + 0x630; buffer = baseBuffer + 0x630;
for (i = 0; i < 16; i++) for (i = 0; i < ARRAY_COUNT(sDexCryScreen->unk0); i++)
sDexCryScreen->unk0[i] = buffer[i * 2] * 2; sDexCryScreen->unk0[i] = buffer[i * 2] * 2;
} }
static void sub_814560C(void) static void DrawWaveformFlatline(void)
{ {
sub_81456A8(sDexCryScreen->unk16 * 8 + sDexCryScreen->unk11 - 2, 0); DrawWaveformSegment(sDexCryScreen->unk16 * 8 + sDexCryScreen->unk11 - 2, 0);
sub_81456A8(sDexCryScreen->unk16 * 8 + sDexCryScreen->unk11 - 1, 0); DrawWaveformSegment(sDexCryScreen->unk16 * 8 + sDexCryScreen->unk11 - 1, 0);
} }
static void sub_8145648(u8 windowId) static void sub_8145648(u8 windowId)
@ -352,10 +352,10 @@ static void sub_8145648(u8 windowId)
sDexCryScreen->unk11 += 2; sDexCryScreen->unk11 += 2;
offset = (sDexCryScreen->unk11 / 8 + sDexCryScreen->unk16 + 1) % 32; offset = (sDexCryScreen->unk11 / 8 + sDexCryScreen->unk16 + 1) % 32;
for (i = 0; i < 7; i++) for (i = 0; i < 7; i++)
CopyToWindowPixelBuffer(windowId, gUnknown_085B8C10, TILE_SIZE_4BPP, offset + (i * TILE_SIZE_4BPP)); CopyToWindowPixelBuffer(windowId, sCryScreenBg_Gfx, TILE_SIZE_4BPP, offset + (i * TILE_SIZE_4BPP));
} }
static void sub_81456A8(u8 a0, u8 a1) static void DrawWaveformSegment(u8 a0, u8 a1)
{ {
u8 sp0; u8 sp0;
u8 r6; u8 r6;
@ -408,9 +408,9 @@ static void sub_8145824(u8 windowId, s16 arg1, u8 arg2)
} }
} }
bool8 sub_8145850(struct CryRelatedStruct *arg0, u8 windowId) bool8 LoadCryMeter(struct CryRelatedStruct *arg0, u8 windowId)
{ {
int retVal = FALSE; bool8 finished = FALSE;
switch (gDexCryScreenState) switch (gDexCryScreenState)
{ {
@ -418,25 +418,25 @@ bool8 sub_8145850(struct CryRelatedStruct *arg0, u8 windowId)
if (!sCryVolumeMeter) if (!sCryVolumeMeter)
sCryVolumeMeter = AllocZeroed(sizeof(*sCryVolumeMeter)); sCryVolumeMeter = AllocZeroed(sizeof(*sCryVolumeMeter));
CopyToWindowPixelBuffer(windowId, gUnknown_085B8438, 0, 0); CopyToWindowPixelBuffer(windowId, sCryMeter_Gfx, 0, 0);
LoadPalette(gUnknown_085B8418, arg0->paletteNo * 16, 32); LoadPalette(sCryMeter_Pal, arg0->paletteNo * 16, 32);
gDexCryScreenState++; gDexCryScreenState++;
break; break;
case 1: case 1:
LoadSpriteSheets(gCryMeterNeedleSpriteSheets); LoadSpriteSheets(sCryMeterNeedleSpriteSheets);
LoadSpritePalettes(gCryMeterNeedleSpritePalettes); LoadSpritePalettes(sCryMeterNeedleSpritePalettes);
sCryVolumeMeter->needleSpriteId = CreateSprite(&gUnknown_085B8C68, 40 + arg0->xPos * 8, 56 + arg0->yPos * 8, 1); sCryVolumeMeter->needleSpriteId = CreateSprite(&sCryMeterNeedleSpriteTemplate, 40 + arg0->xPos * 8, 56 + arg0->yPos * 8, 1);
sCryVolumeMeter->unk0 = 0x20; sCryVolumeMeter->unk0 = 32;
sCryVolumeMeter->unk1 = 0x20; sCryVolumeMeter->unk1 = 32;
sCryVolumeMeter->unk2 = 0; sCryVolumeMeter->unk2 = 0;
retVal = TRUE; finished = TRUE;
break; break;
} }
return retVal; return finished;
} }
void sub_8145914(void) void FreeCryScreen(void)
{ {
FreeSpritePaletteByTag(GetSpritePaletteTagByPaletteNum(gSprites[sCryVolumeMeter->needleSpriteId].oam.paletteNum)); FreeSpritePaletteByTag(GetSpritePaletteTagByPaletteNum(gSprites[sCryVolumeMeter->needleSpriteId].oam.paletteNum));
DestroySprite(gSprites + sCryVolumeMeter->needleSpriteId); DestroySprite(gSprites + sCryVolumeMeter->needleSpriteId);
@ -444,7 +444,7 @@ void sub_8145914(void)
FREE_AND_SET_NULL(sCryVolumeMeter); FREE_AND_SET_NULL(sCryVolumeMeter);
} }
static void sub_814596C(struct Sprite *sprite) static void SpriteCB_CryMeterNeedle(struct Sprite *sprite)
{ {
u16 i; u16 i;
s8 r3; s8 r3;
@ -459,7 +459,7 @@ static void sub_814596C(struct Sprite *sprite)
switch (sDexCryScreen->unk10) switch (sDexCryScreen->unk10)
{ {
case 0: case 0:
sCryVolumeMeter->unk1 = 0x20; sCryVolumeMeter->unk1 = 32;
if (sCryVolumeMeter->unk0 > 0) if (sCryVolumeMeter->unk0 > 0)
{ {
if (sCryVolumeMeter->unk2 != 1) if (sCryVolumeMeter->unk2 != 1)
@ -470,7 +470,7 @@ static void sub_814596C(struct Sprite *sprite)
break; break;
case 2: case 2:
r3 = 0; r3 = 0;
for (i = 0; i < 16; i++) for (i = 0; i < ARRAY_COUNT(sDexCryScreen->unk0); i++)
{ {
if (r3 < sDexCryScreen->unk0[i]) if (r3 < sDexCryScreen->unk0[i])
r3 = sDexCryScreen->unk0[i]; r3 = sDexCryScreen->unk0[i];
@ -512,7 +512,7 @@ static void sub_814596C(struct Sprite *sprite)
ObjAffineSet(&affine, &matrix, 1, 2); ObjAffineSet(&affine, &matrix, 1, 2);
SetOamMatrix(0, matrix.a, matrix.b, matrix.c, matrix.d); SetOamMatrix(0, matrix.a, matrix.b, matrix.c, matrix.d);
x = gSineTable[((sCryVolumeMeter->unk0 + 0x7F) & 0xFF)]; x = gSineTable[((sCryVolumeMeter->unk0 + 0x7F) & 0xFF)];
y = gSineTable[((sCryVolumeMeter->unk0 + 0x7F) & 0xFF) + 0x40]; y = gSineTable[((sCryVolumeMeter->unk0 + 0x7F) & 0xFF) + 64];
sprite->pos2.x = x * 24 / 256; sprite->pos2.x = x * 24 / 256;
sprite->pos2.y = y * 24 / 256; sprite->pos2.y = y * 24 / 256;
} }

View File

@ -603,7 +603,7 @@ static bool8 StartMenuPokedexCallback(void)
PlayRainStoppingSoundEffect(); PlayRainStoppingSoundEffect();
RemoveExtraStartMenuWindows(); RemoveExtraStartMenuWindows();
CleanupOverworldWindowsAndTilemaps(); CleanupOverworldWindowsAndTilemaps();
SetMainCallback2(CB2_Pokedex); SetMainCallback2(CB2_OpenPokedex);
return TRUE; return TRUE;
} }