mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2025-02-04 02:10:01 +01:00
Merge pull request #429 from nullableVoidPtr/master
Various fixes and cleanups
This commit is contained in:
commit
0b91d2948a
@ -1,5 +1,5 @@
|
||||
#ifndef GUARD_MALLOC_H
|
||||
#define GUARD_MALLOC_H
|
||||
#ifndef GUARD_ALLOC_H
|
||||
#define GUARD_ALLOC_H
|
||||
|
||||
#define HEAP_SIZE 0x1C000
|
||||
#define malloc Alloc
|
||||
@ -19,4 +19,4 @@ void *AllocZeroed(u32 size);
|
||||
void Free(void *pointer);
|
||||
void InitHeap(void *pointer, u32 size);
|
||||
|
||||
#endif // GUARD_MALLOC_H
|
||||
#endif // GUARD_ALLOC_H
|
@ -5,382 +5,382 @@
|
||||
|
||||
#define BATTLESTRINGS_ID_ADDER 12 // all battlestrings have its ID + 12, because first 5 are reserved
|
||||
|
||||
#define STRINGID_INTROMSG 0
|
||||
#define STRINGID_INTROMSG 0
|
||||
#define STRINGID_INTROSENDOUT 1
|
||||
#define STRINGID_RETURNMON 2
|
||||
#define STRINGID_RETURNMON 2
|
||||
#define STRINGID_SWITCHINMON 3
|
||||
#define STRINGID_USEDMOVE 4
|
||||
#define STRINGID_BATTLEEND 5
|
||||
#define STRINGID_USEDMOVE 4
|
||||
#define STRINGID_BATTLEEND 5
|
||||
|
||||
// todo: make some of those names less vague: attacker/target vs pkmn, etc.
|
||||
#define STRINGID_TRAINER1LOSETEXT 12
|
||||
#define STRINGID_PKMNGAINEDEXP 13
|
||||
#define STRINGID_PKMNGREWTOLV 14
|
||||
#define STRINGID_PKMNLEARNEDMOVE 15
|
||||
#define STRINGID_TRYTOLEARNMOVE1 16
|
||||
#define STRINGID_TRYTOLEARNMOVE2 17
|
||||
#define STRINGID_TRYTOLEARNMOVE3 18
|
||||
#define STRINGID_PKMNFORGOTMOVE 19
|
||||
#define STRINGID_STOPLEARNINGMOVE 20
|
||||
#define STRINGID_DIDNOTLEARNMOVE 21
|
||||
#define STRINGID_PKMNLEARNEDMOVE2 22
|
||||
#define STRINGID_ATTACKMISSED 23
|
||||
#define STRINGID_PKMNPROTECTEDITSELF 24
|
||||
#define STRINGID_STATSWONTINCREASE2 25
|
||||
#define STRINGID_AVOIDEDDAMAGE 26
|
||||
#define STRINGID_ITDOESNTAFFECT 27
|
||||
#define STRINGID_ATTACKERFAINTED 28
|
||||
#define STRINGID_TARGETFAINTED 29
|
||||
#define STRINGID_PLAYERGOTMONEY 30
|
||||
#define STRINGID_PLAYERWHITEOUT 31
|
||||
#define STRINGID_PLAYERWHITEOUT2 32
|
||||
#define STRINGID_PREVENTSESCAPE 33
|
||||
#define STRINGID_HITXTIMES 34
|
||||
#define STRINGID_PKMNFELLASLEEP 35
|
||||
#define STRINGID_PKMNMADESLEEP 36
|
||||
#define STRINGID_PKMNALREADYASLEEP 37
|
||||
#define STRINGID_PKMNALREADYASLEEP2 38
|
||||
#define STRINGID_PKMNWASNTAFFECTED 39
|
||||
#define STRINGID_PKMNWASPOISONED 40
|
||||
#define STRINGID_PKMNPOISONEDBY 41
|
||||
#define STRINGID_PKMNHURTBYPOISON 42
|
||||
#define STRINGID_PKMNALREADYPOISONED 43
|
||||
#define STRINGID_PKMNBADLYPOISONED 44
|
||||
#define STRINGID_PKMNENERGYDRAINED 45
|
||||
#define STRINGID_PKMNWASBURNED 46
|
||||
#define STRINGID_PKMNBURNEDBY 47
|
||||
#define STRINGID_PKMNHURTBYBURN 48
|
||||
#define STRINGID_PKMNWASFROZEN 49
|
||||
#define STRINGID_PKMNFROZENBY 50
|
||||
#define STRINGID_PKMNISFROZEN 51
|
||||
#define STRINGID_PKMNWASDEFROSTED 52
|
||||
#define STRINGID_PKMNWASDEFROSTED2 53
|
||||
#define STRINGID_PKMNWASDEFROSTEDBY 54
|
||||
#define STRINGID_PKMNWASPARALYZED 55
|
||||
#define STRINGID_PKMNWASPARALYZEDBY 56
|
||||
#define STRINGID_PKMNISPARALYZED 57
|
||||
#define STRINGID_PKMNISALREADYPARALYZED 58
|
||||
#define STRINGID_PKMNHEALEDPARALYSIS 59
|
||||
#define STRINGID_PKMNDREAMEATEN 60
|
||||
#define STRINGID_STATSWONTINCREASE 61
|
||||
#define STRINGID_STATSWONTDECREASE 62
|
||||
#define STRINGID_TEAMSTOPPEDWORKING 63
|
||||
#define STRINGID_FOESTOPPEDWORKING 64
|
||||
#define STRINGID_PKMNISCONFUSED 65
|
||||
#define STRINGID_PKMNHEALEDCONFUSION 66
|
||||
#define STRINGID_PKMNWASCONFUSED 67
|
||||
#define STRINGID_PKMNALREADYCONFUSED 68
|
||||
#define STRINGID_PKMNFELLINLOVE 69
|
||||
#define STRINGID_PKMNINLOVE 70
|
||||
#define STRINGID_PKMNIMMOBILIZEDBYLOVE 71
|
||||
#define STRINGID_PKMNBLOWNAWAY 72
|
||||
#define STRINGID_PKMNCHANGEDTYPE 73
|
||||
#define STRINGID_PKMNFLINCHED 74
|
||||
#define STRINGID_PKMNREGAINEDHEALTH 75
|
||||
#define STRINGID_PKMNHPFULL 76
|
||||
#define STRINGID_PKMNRAISEDSPDEF 77
|
||||
#define STRINGID_PKMNRAISEDDEF 78
|
||||
#define STRINGID_PKMNCOVEREDBYVEIL 79
|
||||
#define STRINGID_PKMNUSEDSAFEGUARD 80
|
||||
#define STRINGID_PKMNSAFEGUARDEXPIRED 81
|
||||
#define STRINGID_PKMNWENTTOSLEEP 82
|
||||
#define STRINGID_PKMNSLEPTHEALTHY 83
|
||||
#define STRINGID_PKMNWHIPPEDWHIRLWIND 84
|
||||
#define STRINGID_PKMNTOOKSUNLIGHT 85
|
||||
#define STRINGID_PKMNLOWEREDHEAD 86
|
||||
#define STRINGID_PKMNISGLOWING 87
|
||||
#define STRINGID_PKMNFLEWHIGH 88
|
||||
#define STRINGID_PKMNDUGHOLE 89
|
||||
#define STRINGID_PKMNSQUEEZEDBYBIND 90
|
||||
#define STRINGID_PKMNTRAPPEDINVORTEX 91
|
||||
#define STRINGID_PKMNWRAPPEDBY 92
|
||||
#define STRINGID_PKMNCLAMPED 93
|
||||
#define STRINGID_PKMNHURTBY 94
|
||||
#define STRINGID_PKMNFREEDFROM 95
|
||||
#define STRINGID_PKMNCRASHED 96
|
||||
#define STRINGID_PKMNSHROUDEDINMIST 97
|
||||
#define STRINGID_PKMNPROTECTEDBYMIST 98
|
||||
#define STRINGID_PKMNGETTINGPUMPED 99
|
||||
#define STRINGID_PKMNHITWITHRECOIL 100
|
||||
#define STRINGID_PKMNPROTECTEDITSELF2 101
|
||||
#define STRINGID_PKMNBUFFETEDBYSANDSTORM 102
|
||||
#define STRINGID_PKMNPELTEDBYHAIL 103
|
||||
#define STRINGID_PKMNSEEDED 104
|
||||
#define STRINGID_PKMNEVADEDATTACK 105
|
||||
#define STRINGID_PKMNSAPPEDBYLEECHSEED 106
|
||||
#define STRINGID_PKMNFASTASLEEP 107
|
||||
#define STRINGID_PKMNWOKEUP 108
|
||||
#define STRINGID_PKMNUPROARKEPTAWAKE 109
|
||||
#define STRINGID_PKMNWOKEUPINUPROAR 110
|
||||
#define STRINGID_PKMNCAUSEDUPROAR 111
|
||||
#define STRINGID_PKMNMAKINGUPROAR 112
|
||||
#define STRINGID_PKMNCALMEDDOWN 113
|
||||
#define STRINGID_PKMNCANTSLEEPINUPROAR 114
|
||||
#define STRINGID_PKMNSTOCKPILED 115
|
||||
#define STRINGID_PKMNCANTSTOCKPILE 116
|
||||
#define STRINGID_PKMNCANTSLEEPINUPROAR2 117
|
||||
#define STRINGID_UPROARKEPTPKMNAWAKE 118
|
||||
#define STRINGID_PKMNSTAYEDAWAKEUSING 119
|
||||
#define STRINGID_PKMNSTORINGENERGY 120
|
||||
#define STRINGID_PKMNUNLEASHEDENERGY 121
|
||||
#define STRINGID_PKMNFATIGUECONFUSION 122
|
||||
#define STRINGID_PKMNPICKEDUPITEM 123
|
||||
#define STRINGID_PKMNUNAFFECTED 124
|
||||
#define STRINGID_PKMNTRANSFORMEDINTO 125
|
||||
#define STRINGID_PKMNMADESUBSTITUTE 126
|
||||
#define STRINGID_PKMNHASSUBSTITUTE 127
|
||||
#define STRINGID_SUBSTITUTEDAMAGED 128
|
||||
#define STRINGID_PKMNSUBSTITUTEFADED 129
|
||||
#define STRINGID_PKMNMUSTRECHARGE 130
|
||||
#define STRINGID_PKMNRAGEBUILDING 131
|
||||
#define STRINGID_PKMNMOVEWASDISABLED 132
|
||||
#define STRINGID_PKMNMOVEISDISABLED 133
|
||||
#define STRINGID_PKMNMOVEDISABLEDNOMORE 134
|
||||
#define STRINGID_PKMNGOTENCORE 135
|
||||
#define STRINGID_PKMNENCOREENDED 136
|
||||
#define STRINGID_PKMNTOOKAIM 137
|
||||
#define STRINGID_PKMNSKETCHEDMOVE 138
|
||||
#define STRINGID_PKMNTRYINGTOTAKEFOE 139
|
||||
#define STRINGID_PKMNTOOKFOE 140
|
||||
#define STRINGID_PKMNREDUCEDPP 141
|
||||
#define STRINGID_PKMNSTOLEITEM 142
|
||||
#define STRINGID_TARGETCANTESCAPENOW 143
|
||||
#define STRINGID_PKMNFELLINTONIGHTMARE 144
|
||||
#define STRINGID_PKMNLOCKEDINNIGHTMARE 145
|
||||
#define STRINGID_PKMNLAIDCURSE 146
|
||||
#define STRINGID_PKMNAFFLICTEDBYCURSE 147
|
||||
#define STRINGID_SPIKESSCATTERED 148
|
||||
#define STRINGID_PKMNHURTBYSPIKES 149
|
||||
#define STRINGID_PKMNIDENTIFIED 150
|
||||
#define STRINGID_PKMNPERISHCOUNTFELL 151
|
||||
#define STRINGID_PKMNBRACEDITSELF 152
|
||||
#define STRINGID_PKMNENDUREDHIT 153
|
||||
#define STRINGID_MAGNITUDESTRENGTH 154
|
||||
#define STRINGID_PKMNCUTHPMAXEDATTACK 155
|
||||
#define STRINGID_PKMNCOPIEDSTATCHANGES 156
|
||||
#define STRINGID_PKMNGOTFREE 157
|
||||
#define STRINGID_PKMNSHEDLEECHSEED 158
|
||||
#define STRINGID_PKMNBLEWAWAYSPIKES 159
|
||||
#define STRINGID_PKMNFLEDFROMBATTLE 160
|
||||
#define STRINGID_PKMNFORESAWATTACK 161
|
||||
#define STRINGID_PKMNTOOKATTACK 162
|
||||
#define STRINGID_PKMNATTACK 163
|
||||
#define STRINGID_PKMNCENTERATTENTION 164
|
||||
#define STRINGID_PKMNCHARGINGPOWER 165
|
||||
#define STRINGID_NATUREPOWERTURNEDINTO 166
|
||||
#define STRINGID_PKMNSTATUSNORMAL 167
|
||||
#define STRINGID_PKMNHASNOMOVESLEFT 168
|
||||
#define STRINGID_PKMNSUBJECTEDTOTORMENT 169
|
||||
#define STRINGID_PKMNCANTUSEMOVETORMENT 170
|
||||
#define STRINGID_PKMNTIGHTENINGFOCUS 171
|
||||
#define STRINGID_PKMNFELLFORTAUNT 172
|
||||
#define STRINGID_PKMNCANTUSEMOVETAUNT 173
|
||||
#define STRINGID_PKMNREADYTOHELP 174
|
||||
#define STRINGID_PKMNSWITCHEDITEMS 175
|
||||
#define STRINGID_PKMNCOPIEDFOE 176
|
||||
#define STRINGID_PKMNMADEWISH 177
|
||||
#define STRINGID_PKMNWISHCAMETRUE 178
|
||||
#define STRINGID_PKMNPLANTEDROOTS 179
|
||||
#define STRINGID_PKMNABSORBEDNUTRIENTS 180
|
||||
#define STRINGID_PKMNANCHOREDITSELF 181
|
||||
#define STRINGID_PKMNWASMADEDROWSY 182
|
||||
#define STRINGID_PKMNKNOCKEDOFF 183
|
||||
#define STRINGID_PKMNSWAPPEDABILITIES 184
|
||||
#define STRINGID_PKMNSEALEDOPPONENTMOVE 185
|
||||
#define STRINGID_PKMNCANTUSEMOVESEALED 186
|
||||
#define STRINGID_PKMNWANTSGRUDGE 187
|
||||
#define STRINGID_PKMNLOSTPPGRUDGE 188
|
||||
#define STRINGID_PKMNSHROUDEDITSELF 189
|
||||
#define STRINGID_PKMNMOVEBOUNCED 190
|
||||
#define STRINGID_PKMNWAITSFORTARGET 191
|
||||
#define STRINGID_PKMNSNATCHEDMOVE 192
|
||||
#define STRINGID_PKMNMADEITRAIN 193
|
||||
#define STRINGID_PKMNRAISEDSPEED 194
|
||||
#define STRINGID_PKMNPROTECTEDBY 195
|
||||
#define STRINGID_PKMNPREVENTSUSAGE 196
|
||||
#define STRINGID_PKMNRESTOREDHPUSING 197
|
||||
#define STRINGID_PKMNCHANGEDTYPEWITH 198
|
||||
#define STRINGID_PKMNPREVENTSPARALYSISWITH 199
|
||||
#define STRINGID_PKMNPREVENTSROMANCEWITH 200
|
||||
#define STRINGID_PKMNPREVENTSPOISONINGWITH 201
|
||||
#define STRINGID_PKMNPREVENTSCONFUSIONWITH 202
|
||||
#define STRINGID_PKMNRAISEDFIREPOWERWITH 203
|
||||
#define STRINGID_PKMNANCHORSITSELFWITH 204
|
||||
#define STRINGID_PKMNCUTSATTACKWITH 205
|
||||
#define STRINGID_PKMNPREVENTSSTATLOSSWITH 206
|
||||
#define STRINGID_PKMNHURTSWITH 207
|
||||
#define STRINGID_PKMNTRACED 208
|
||||
#define STRINGID_STATSHARPLY 209
|
||||
#define STRINGID_STATROSE 210
|
||||
#define STRINGID_STATHARSHLY 211
|
||||
#define STRINGID_STATFELL 212
|
||||
#define STRINGID_PKMNSSTATCHANGED 213
|
||||
#define STRINGID_PKMNSSTATCHANGED2 214
|
||||
#define STRINGID_PKMNSSTATCHANGED3 215
|
||||
#define STRINGID_PKMNSSTATCHANGED4 216
|
||||
#define STRINGID_CRITICALHIT 217
|
||||
#define STRINGID_ONEHITKO 218
|
||||
#define STRINGID_123POOF 219
|
||||
#define STRINGID_ANDELLIPSIS 220
|
||||
#define STRINGID_NOTVERYEFFECTIVE 221
|
||||
#define STRINGID_SUPEREFFECTIVE 222
|
||||
#define STRINGID_GOTAWAYSAFELY 223
|
||||
#define STRINGID_WILDPKMNFLED 224
|
||||
#define STRINGID_NORUNNINGFROMTRAINERS 225
|
||||
#define STRINGID_CANTESCAPE 226
|
||||
#define STRINGID_DONTLEAVEBIRCH 227
|
||||
#define STRINGID_BUTNOTHINGHAPPENED 228
|
||||
#define STRINGID_BUTITFAILED 229
|
||||
#define STRINGID_ITHURTCONFUSION 230
|
||||
#define STRINGID_MIRRORMOVEFAILED 231
|
||||
#define STRINGID_STARTEDTORAIN 232
|
||||
#define STRINGID_DOWNPOURSTARTED 233
|
||||
#define STRINGID_RAINCONTINUES 234
|
||||
#define STRINGID_DOWNPOURCONTINUES 235
|
||||
#define STRINGID_RAINSTOPPED 236
|
||||
#define STRINGID_SANDSTORMBREWED 237
|
||||
#define STRINGID_SANDSTORMRAGES 238
|
||||
#define STRINGID_SANDSTORMSUBSIDED 239
|
||||
#define STRINGID_SUNLIGHTGOTBRIGHT 240
|
||||
#define STRINGID_SUNLIGHTSTRONG 241
|
||||
#define STRINGID_SUNLIGHTFADED 242
|
||||
#define STRINGID_STARTEDHAIL 243
|
||||
#define STRINGID_HAILCONTINUES 244
|
||||
#define STRINGID_HAILSTOPPED 245
|
||||
#define STRINGID_FAILEDTOSPITUP 246
|
||||
#define STRINGID_FAILEDTOSWALLOW 247
|
||||
#define STRINGID_WINDBECAMEHEATWAVE 248
|
||||
#define STRINGID_STATCHANGESGONE 249
|
||||
#define STRINGID_COINSSCATTERED 250
|
||||
#define STRINGID_TOOWEAKFORSUBSTITUTE 251
|
||||
#define STRINGID_SHAREDPAIN 252
|
||||
#define STRINGID_BELLCHIMED 253
|
||||
#define STRINGID_FAINTINTHREE 254
|
||||
#define STRINGID_NOPPLEFT 255
|
||||
#define STRINGID_BUTNOPPLEFT 256
|
||||
#define STRINGID_PLAYERUSEDITEM 257
|
||||
#define STRINGID_WALLYUSEDITEM 258
|
||||
#define STRINGID_TRAINERBLOCKEDBALL 259
|
||||
#define STRINGID_DONTBEATHIEF 260
|
||||
#define STRINGID_ITDODGEDBALL 261
|
||||
#define STRINGID_YOUMISSEDPKMN 262
|
||||
#define STRINGID_PKMNBROKEFREE 263
|
||||
#define STRINGID_ITAPPEAREDCAUGHT 264
|
||||
#define STRINGID_AARGHALMOSTHADIT 265
|
||||
#define STRINGID_SHOOTSOCLOSE 266
|
||||
#define STRINGID_GOTCHAPKMNCAUGHT 267
|
||||
#define STRINGID_GOTCHAPKMNCAUGHT2 268
|
||||
#define STRINGID_GIVENICKNAMECAPTURED 269
|
||||
#define STRINGID_PKMNSENTTOPC 270
|
||||
#define STRINGID_PKMNDATAADDEDTODEX 271
|
||||
#define STRINGID_ITISRAINING 272
|
||||
#define STRINGID_SANDSTORMISRAGING 273
|
||||
#define STRINGID_CANTESCAPE2 274
|
||||
#define STRINGID_PKMNIGNORESASLEEP 275
|
||||
#define STRINGID_PKMNIGNOREDORDERS 276
|
||||
#define STRINGID_PKMNBEGANTONAP 277
|
||||
#define STRINGID_PKMNLOAFING 278
|
||||
#define STRINGID_PKMNWONTOBEY 279
|
||||
#define STRINGID_PKMNTURNEDAWAY 280
|
||||
#define STRINGID_PKMNPRETENDNOTNOTICE 281
|
||||
#define STRINGID_ENEMYABOUTTOSWITCHPKMN 282
|
||||
#define STRINGID_CREPTCLOSER 283
|
||||
#define STRINGID_CANTGETCLOSER 284
|
||||
#define STRINGID_PKMNWATCHINGCAREFULLY 285
|
||||
#define STRINGID_PKMNCURIOUSABOUTX 286
|
||||
#define STRINGID_PKMNENTHRALLEDBYX 287
|
||||
#define STRINGID_PKMNIGNOREDX 288
|
||||
#define STRINGID_THREWPOKEBLOCKATPKMN 289
|
||||
#define STRINGID_OUTOFSAFARIBALLS 290
|
||||
#define STRINGID_PKMNSITEMCUREDPARALYSIS 291
|
||||
#define STRINGID_PKMNSITEMCUREDPOISON 292
|
||||
#define STRINGID_PKMNSITEMHEALEDBURN 293
|
||||
#define STRINGID_PKMNSITEMDEFROSTEDIT 294
|
||||
#define STRINGID_PKMNSITEMWOKEIT 295
|
||||
#define STRINGID_PKMNSITEMSNAPPEDOUT 296
|
||||
#define STRINGID_PKMNSITEMCUREDPROBLEM 297
|
||||
#define STRINGID_PKMNSITEMRESTOREDHEALTH 298
|
||||
#define STRINGID_PKMNSITEMRESTOREDPP 299
|
||||
#define STRINGID_PKMNSITEMRESTOREDSTATUS 300
|
||||
#define STRINGID_PKMNSITEMRESTOREDHPALITTLE 301
|
||||
#define STRINGID_ITEMALLOWSONLYYMOVE 302
|
||||
#define STRINGID_PKMNHUNGONWITHX 303
|
||||
#define STRINGID_EMPTYSTRING3 304
|
||||
#define STRINGID_PKMNSXPREVENTSBURNS 305
|
||||
#define STRINGID_PKMNSXBLOCKSY 306
|
||||
#define STRINGID_PKMNSXRESTOREDHPALITTLE2 307
|
||||
#define STRINGID_PKMNSXWHIPPEDUPSANDSTORM 308
|
||||
#define STRINGID_PKMNSXPREVENTSYLOSS 309
|
||||
#define STRINGID_PKMNSXINFATUATEDY 310
|
||||
#define STRINGID_PKMNSXMADEYINEFFECTIVE 311
|
||||
#define STRINGID_PKMNSXCUREDYPROBLEM 312
|
||||
#define STRINGID_ITSUCKEDLIQUIDOOZE 313
|
||||
#define STRINGID_PKMNTRANSFORMED 314
|
||||
#define STRINGID_ELECTRICITYWEAKENED 315
|
||||
#define STRINGID_FIREWEAKENED 316
|
||||
#define STRINGID_PKMNHIDUNDERWATER 317
|
||||
#define STRINGID_PKMNSPRANGUP 318
|
||||
#define STRINGID_HMMOVESCANTBEFORGOTTEN 319
|
||||
#define STRINGID_XFOUNDONEY 320
|
||||
#define STRINGID_PLAYERDEFEATEDTRAINER1 321
|
||||
#define STRINGID_SOOTHINGAROMA 322
|
||||
#define STRINGID_ITEMSCANTBEUSEDNOW 323
|
||||
#define STRINGID_FORXCOMMAYZ 324
|
||||
#define STRINGID_USINGXTHEYOFZN 325
|
||||
#define STRINGID_PKMNUSEDXTOGETPUMPED 326
|
||||
#define STRINGID_PKMNSXMADEYUSELESS 327
|
||||
#define STRINGID_PKMNTRAPPEDBYSANDTOMB 328
|
||||
#define STRINGID_EMPTYSTRING4 329
|
||||
#define STRINGID_ABOOSTED 330
|
||||
#define STRINGID_PKMNSXINTENSIFIEDSUN 331
|
||||
#define STRINGID_PKMNMAKESGROUNDMISS 332
|
||||
#define STRINGID_YOUTHROWABALLNOWRIGHT 333
|
||||
#define STRINGID_PKMNSXTOOKATTACK 334
|
||||
#define STRINGID_PKMNCHOSEXASDESTINY 335
|
||||
#define STRINGID_PKMNLOSTFOCUS 336
|
||||
#define STRINGID_USENEXTPKMN 337
|
||||
#define STRINGID_PKMNFLEDUSINGITS 338
|
||||
#define STRINGID_PKMNFLEDUSING 339
|
||||
#define STRINGID_PKMNWASDRAGGEDOUT 340
|
||||
#define STRINGID_PREVENTEDFROMWORKING 341
|
||||
#define STRINGID_PKMNSITEMNORMALIZEDSTATUS 342
|
||||
#define STRINGID_TRAINER1USEDITEM 343
|
||||
#define STRINGID_BOXISFULL 344
|
||||
#define STRINGID_PKMNAVOIDEDATTACK 345
|
||||
#define STRINGID_PKMNSXMADEITINEFFECTIVE 346
|
||||
#define STRINGID_PKMNSXPREVENTSFLINCHING 347
|
||||
#define STRINGID_PKMNALREADYHASBURN 348
|
||||
#define STRINGID_STATSWONTDECREASE2 349
|
||||
#define STRINGID_PKMNSXBLOCKSY2 350
|
||||
#define STRINGID_PKMNSXWOREOFF 351
|
||||
#define STRINGID_PKMNRAISEDDEFALITTLE 352
|
||||
#define STRINGID_PKMNRAISEDSPDEFALITTLE 353
|
||||
#define STRINGID_THEWALLSHATTERED 354
|
||||
#define STRINGID_PKMNSXPREVENTSYSZ 355
|
||||
#define STRINGID_PKMNSXCUREDITSYPROBLEM 356
|
||||
#define STRINGID_ATTACKERCANTESCAPE 357
|
||||
#define STRINGID_PKMNOBTAINEDX 358
|
||||
#define STRINGID_PKMNOBTAINEDX2 359
|
||||
#define STRINGID_PKMNOBTAINEDXYOBTAINEDZ 360
|
||||
#define STRINGID_BUTNOEFFECT 361
|
||||
#define STRINGID_PKMNSXHADNOEFFECTONY 362
|
||||
#define STRINGID_TWOENEMIESDEFEATED 363
|
||||
#define STRINGID_TRAINER2LOSETEXT 364
|
||||
#define STRINGID_PKMNINCAPABLEOFPOWER 365
|
||||
#define STRINGID_GLINTAPPEARSINEYE 366
|
||||
#define STRINGID_PKMNGETTINGINTOPOSITION 367
|
||||
#define STRINGID_PKMNBEGANGROWLINGDEEPLY 368
|
||||
#define STRINGID_PKMNEAGERFORMORE 369
|
||||
#define STRINGID_DEFEATEDOPPONENTBYREFEREE 370
|
||||
#define STRINGID_LOSTTOOPPONENTBYREFEREE 371
|
||||
#define STRINGID_TIEDOPPONENTBYREFEREE 372
|
||||
#define STRINGID_QUESTIONFORFEITMATCH 373
|
||||
#define STRINGID_FORFEITEDMATCH 374
|
||||
#define STRINGID_PKMNTRANSFERREDSOMEONESPC 375
|
||||
#define STRINGID_PKMNTRANSFERREDLANETTESPC 376
|
||||
#define STRINGID_PKMNBOXSOMEONESPCFULL 377
|
||||
#define STRINGID_PKMNBOXLANETTESPCFULL 378
|
||||
#define STRINGID_TRAINER1WINTEXT 379
|
||||
#define STRINGID_TRAINER2WINTEXT 380
|
||||
#define STRINGID_TRAINER1LOSETEXT 12
|
||||
#define STRINGID_PKMNGAINEDEXP 13
|
||||
#define STRINGID_PKMNGREWTOLV 14
|
||||
#define STRINGID_PKMNLEARNEDMOVE 15
|
||||
#define STRINGID_TRYTOLEARNMOVE1 16
|
||||
#define STRINGID_TRYTOLEARNMOVE2 17
|
||||
#define STRINGID_TRYTOLEARNMOVE3 18
|
||||
#define STRINGID_PKMNFORGOTMOVE 19
|
||||
#define STRINGID_STOPLEARNINGMOVE 20
|
||||
#define STRINGID_DIDNOTLEARNMOVE 21
|
||||
#define STRINGID_PKMNLEARNEDMOVE2 22
|
||||
#define STRINGID_ATTACKMISSED 23
|
||||
#define STRINGID_PKMNPROTECTEDITSELF 24
|
||||
#define STRINGID_STATSWONTINCREASE2 25
|
||||
#define STRINGID_AVOIDEDDAMAGE 26
|
||||
#define STRINGID_ITDOESNTAFFECT 27
|
||||
#define STRINGID_ATTACKERFAINTED 28
|
||||
#define STRINGID_TARGETFAINTED 29
|
||||
#define STRINGID_PLAYERGOTMONEY 30
|
||||
#define STRINGID_PLAYERWHITEOUT 31
|
||||
#define STRINGID_PLAYERWHITEOUT2 32
|
||||
#define STRINGID_PREVENTSESCAPE 33
|
||||
#define STRINGID_HITXTIMES 34
|
||||
#define STRINGID_PKMNFELLASLEEP 35
|
||||
#define STRINGID_PKMNMADESLEEP 36
|
||||
#define STRINGID_PKMNALREADYASLEEP 37
|
||||
#define STRINGID_PKMNALREADYASLEEP2 38
|
||||
#define STRINGID_PKMNWASNTAFFECTED 39
|
||||
#define STRINGID_PKMNWASPOISONED 40
|
||||
#define STRINGID_PKMNPOISONEDBY 41
|
||||
#define STRINGID_PKMNHURTBYPOISON 42
|
||||
#define STRINGID_PKMNALREADYPOISONED 43
|
||||
#define STRINGID_PKMNBADLYPOISONED 44
|
||||
#define STRINGID_PKMNENERGYDRAINED 45
|
||||
#define STRINGID_PKMNWASBURNED 46
|
||||
#define STRINGID_PKMNBURNEDBY 47
|
||||
#define STRINGID_PKMNHURTBYBURN 48
|
||||
#define STRINGID_PKMNWASFROZEN 49
|
||||
#define STRINGID_PKMNFROZENBY 50
|
||||
#define STRINGID_PKMNISFROZEN 51
|
||||
#define STRINGID_PKMNWASDEFROSTED 52
|
||||
#define STRINGID_PKMNWASDEFROSTED2 53
|
||||
#define STRINGID_PKMNWASDEFROSTEDBY 54
|
||||
#define STRINGID_PKMNWASPARALYZED 55
|
||||
#define STRINGID_PKMNWASPARALYZEDBY 56
|
||||
#define STRINGID_PKMNISPARALYZED 57
|
||||
#define STRINGID_PKMNISALREADYPARALYZED 58
|
||||
#define STRINGID_PKMNHEALEDPARALYSIS 59
|
||||
#define STRINGID_PKMNDREAMEATEN 60
|
||||
#define STRINGID_STATSWONTINCREASE 61
|
||||
#define STRINGID_STATSWONTDECREASE 62
|
||||
#define STRINGID_TEAMSTOPPEDWORKING 63
|
||||
#define STRINGID_FOESTOPPEDWORKING 64
|
||||
#define STRINGID_PKMNISCONFUSED 65
|
||||
#define STRINGID_PKMNHEALEDCONFUSION 66
|
||||
#define STRINGID_PKMNWASCONFUSED 67
|
||||
#define STRINGID_PKMNALREADYCONFUSED 68
|
||||
#define STRINGID_PKMNFELLINLOVE 69
|
||||
#define STRINGID_PKMNINLOVE 70
|
||||
#define STRINGID_PKMNIMMOBILIZEDBYLOVE 71
|
||||
#define STRINGID_PKMNBLOWNAWAY 72
|
||||
#define STRINGID_PKMNCHANGEDTYPE 73
|
||||
#define STRINGID_PKMNFLINCHED 74
|
||||
#define STRINGID_PKMNREGAINEDHEALTH 75
|
||||
#define STRINGID_PKMNHPFULL 76
|
||||
#define STRINGID_PKMNRAISEDSPDEF 77
|
||||
#define STRINGID_PKMNRAISEDDEF 78
|
||||
#define STRINGID_PKMNCOVEREDBYVEIL 79
|
||||
#define STRINGID_PKMNUSEDSAFEGUARD 80
|
||||
#define STRINGID_PKMNSAFEGUARDEXPIRED 81
|
||||
#define STRINGID_PKMNWENTTOSLEEP 82
|
||||
#define STRINGID_PKMNSLEPTHEALTHY 83
|
||||
#define STRINGID_PKMNWHIPPEDWHIRLWIND 84
|
||||
#define STRINGID_PKMNTOOKSUNLIGHT 85
|
||||
#define STRINGID_PKMNLOWEREDHEAD 86
|
||||
#define STRINGID_PKMNISGLOWING 87
|
||||
#define STRINGID_PKMNFLEWHIGH 88
|
||||
#define STRINGID_PKMNDUGHOLE 89
|
||||
#define STRINGID_PKMNSQUEEZEDBYBIND 90
|
||||
#define STRINGID_PKMNTRAPPEDINVORTEX 91
|
||||
#define STRINGID_PKMNWRAPPEDBY 92
|
||||
#define STRINGID_PKMNCLAMPED 93
|
||||
#define STRINGID_PKMNHURTBY 94
|
||||
#define STRINGID_PKMNFREEDFROM 95
|
||||
#define STRINGID_PKMNCRASHED 96
|
||||
#define STRINGID_PKMNSHROUDEDINMIST 97
|
||||
#define STRINGID_PKMNPROTECTEDBYMIST 98
|
||||
#define STRINGID_PKMNGETTINGPUMPED 99
|
||||
#define STRINGID_PKMNHITWITHRECOIL 100
|
||||
#define STRINGID_PKMNPROTECTEDITSELF2 101
|
||||
#define STRINGID_PKMNBUFFETEDBYSANDSTORM 102
|
||||
#define STRINGID_PKMNPELTEDBYHAIL 103
|
||||
#define STRINGID_PKMNSEEDED 104
|
||||
#define STRINGID_PKMNEVADEDATTACK 105
|
||||
#define STRINGID_PKMNSAPPEDBYLEECHSEED 106
|
||||
#define STRINGID_PKMNFASTASLEEP 107
|
||||
#define STRINGID_PKMNWOKEUP 108
|
||||
#define STRINGID_PKMNUPROARKEPTAWAKE 109
|
||||
#define STRINGID_PKMNWOKEUPINUPROAR 110
|
||||
#define STRINGID_PKMNCAUSEDUPROAR 111
|
||||
#define STRINGID_PKMNMAKINGUPROAR 112
|
||||
#define STRINGID_PKMNCALMEDDOWN 113
|
||||
#define STRINGID_PKMNCANTSLEEPINUPROAR 114
|
||||
#define STRINGID_PKMNSTOCKPILED 115
|
||||
#define STRINGID_PKMNCANTSTOCKPILE 116
|
||||
#define STRINGID_PKMNCANTSLEEPINUPROAR2 117
|
||||
#define STRINGID_UPROARKEPTPKMNAWAKE 118
|
||||
#define STRINGID_PKMNSTAYEDAWAKEUSING 119
|
||||
#define STRINGID_PKMNSTORINGENERGY 120
|
||||
#define STRINGID_PKMNUNLEASHEDENERGY 121
|
||||
#define STRINGID_PKMNFATIGUECONFUSION 122
|
||||
#define STRINGID_PKMNPICKEDUPITEM 123
|
||||
#define STRINGID_PKMNUNAFFECTED 124
|
||||
#define STRINGID_PKMNTRANSFORMEDINTO 125
|
||||
#define STRINGID_PKMNMADESUBSTITUTE 126
|
||||
#define STRINGID_PKMNHASSUBSTITUTE 127
|
||||
#define STRINGID_SUBSTITUTEDAMAGED 128
|
||||
#define STRINGID_PKMNSUBSTITUTEFADED 129
|
||||
#define STRINGID_PKMNMUSTRECHARGE 130
|
||||
#define STRINGID_PKMNRAGEBUILDING 131
|
||||
#define STRINGID_PKMNMOVEWASDISABLED 132
|
||||
#define STRINGID_PKMNMOVEISDISABLED 133
|
||||
#define STRINGID_PKMNMOVEDISABLEDNOMORE 134
|
||||
#define STRINGID_PKMNGOTENCORE 135
|
||||
#define STRINGID_PKMNENCOREENDED 136
|
||||
#define STRINGID_PKMNTOOKAIM 137
|
||||
#define STRINGID_PKMNSKETCHEDMOVE 138
|
||||
#define STRINGID_PKMNTRYINGTOTAKEFOE 139
|
||||
#define STRINGID_PKMNTOOKFOE 140
|
||||
#define STRINGID_PKMNREDUCEDPP 141
|
||||
#define STRINGID_PKMNSTOLEITEM 142
|
||||
#define STRINGID_TARGETCANTESCAPENOW 143
|
||||
#define STRINGID_PKMNFELLINTONIGHTMARE 144
|
||||
#define STRINGID_PKMNLOCKEDINNIGHTMARE 145
|
||||
#define STRINGID_PKMNLAIDCURSE 146
|
||||
#define STRINGID_PKMNAFFLICTEDBYCURSE 147
|
||||
#define STRINGID_SPIKESSCATTERED 148
|
||||
#define STRINGID_PKMNHURTBYSPIKES 149
|
||||
#define STRINGID_PKMNIDENTIFIED 150
|
||||
#define STRINGID_PKMNPERISHCOUNTFELL 151
|
||||
#define STRINGID_PKMNBRACEDITSELF 152
|
||||
#define STRINGID_PKMNENDUREDHIT 153
|
||||
#define STRINGID_MAGNITUDESTRENGTH 154
|
||||
#define STRINGID_PKMNCUTHPMAXEDATTACK 155
|
||||
#define STRINGID_PKMNCOPIEDSTATCHANGES 156
|
||||
#define STRINGID_PKMNGOTFREE 157
|
||||
#define STRINGID_PKMNSHEDLEECHSEED 158
|
||||
#define STRINGID_PKMNBLEWAWAYSPIKES 159
|
||||
#define STRINGID_PKMNFLEDFROMBATTLE 160
|
||||
#define STRINGID_PKMNFORESAWATTACK 161
|
||||
#define STRINGID_PKMNTOOKATTACK 162
|
||||
#define STRINGID_PKMNATTACK 163
|
||||
#define STRINGID_PKMNCENTERATTENTION 164
|
||||
#define STRINGID_PKMNCHARGINGPOWER 165
|
||||
#define STRINGID_NATUREPOWERTURNEDINTO 166
|
||||
#define STRINGID_PKMNSTATUSNORMAL 167
|
||||
#define STRINGID_PKMNHASNOMOVESLEFT 168
|
||||
#define STRINGID_PKMNSUBJECTEDTOTORMENT 169
|
||||
#define STRINGID_PKMNCANTUSEMOVETORMENT 170
|
||||
#define STRINGID_PKMNTIGHTENINGFOCUS 171
|
||||
#define STRINGID_PKMNFELLFORTAUNT 172
|
||||
#define STRINGID_PKMNCANTUSEMOVETAUNT 173
|
||||
#define STRINGID_PKMNREADYTOHELP 174
|
||||
#define STRINGID_PKMNSWITCHEDITEMS 175
|
||||
#define STRINGID_PKMNCOPIEDFOE 176
|
||||
#define STRINGID_PKMNMADEWISH 177
|
||||
#define STRINGID_PKMNWISHCAMETRUE 178
|
||||
#define STRINGID_PKMNPLANTEDROOTS 179
|
||||
#define STRINGID_PKMNABSORBEDNUTRIENTS 180
|
||||
#define STRINGID_PKMNANCHOREDITSELF 181
|
||||
#define STRINGID_PKMNWASMADEDROWSY 182
|
||||
#define STRINGID_PKMNKNOCKEDOFF 183
|
||||
#define STRINGID_PKMNSWAPPEDABILITIES 184
|
||||
#define STRINGID_PKMNSEALEDOPPONENTMOVE 185
|
||||
#define STRINGID_PKMNCANTUSEMOVESEALED 186
|
||||
#define STRINGID_PKMNWANTSGRUDGE 187
|
||||
#define STRINGID_PKMNLOSTPPGRUDGE 188
|
||||
#define STRINGID_PKMNSHROUDEDITSELF 189
|
||||
#define STRINGID_PKMNMOVEBOUNCED 190
|
||||
#define STRINGID_PKMNWAITSFORTARGET 191
|
||||
#define STRINGID_PKMNSNATCHEDMOVE 192
|
||||
#define STRINGID_PKMNMADEITRAIN 193
|
||||
#define STRINGID_PKMNRAISEDSPEED 194
|
||||
#define STRINGID_PKMNPROTECTEDBY 195
|
||||
#define STRINGID_PKMNPREVENTSUSAGE 196
|
||||
#define STRINGID_PKMNRESTOREDHPUSING 197
|
||||
#define STRINGID_PKMNCHANGEDTYPEWITH 198
|
||||
#define STRINGID_PKMNPREVENTSPARALYSISWITH 199
|
||||
#define STRINGID_PKMNPREVENTSROMANCEWITH 200
|
||||
#define STRINGID_PKMNPREVENTSPOISONINGWITH 201
|
||||
#define STRINGID_PKMNPREVENTSCONFUSIONWITH 202
|
||||
#define STRINGID_PKMNRAISEDFIREPOWERWITH 203
|
||||
#define STRINGID_PKMNANCHORSITSELFWITH 204
|
||||
#define STRINGID_PKMNCUTSATTACKWITH 205
|
||||
#define STRINGID_PKMNPREVENTSSTATLOSSWITH 206
|
||||
#define STRINGID_PKMNHURTSWITH 207
|
||||
#define STRINGID_PKMNTRACED 208
|
||||
#define STRINGID_STATSHARPLY 209
|
||||
#define STRINGID_STATROSE 210
|
||||
#define STRINGID_STATHARSHLY 211
|
||||
#define STRINGID_STATFELL 212
|
||||
#define STRINGID_PKMNSSTATCHANGED 213
|
||||
#define STRINGID_PKMNSSTATCHANGED2 214
|
||||
#define STRINGID_PKMNSSTATCHANGED3 215
|
||||
#define STRINGID_PKMNSSTATCHANGED4 216
|
||||
#define STRINGID_CRITICALHIT 217
|
||||
#define STRINGID_ONEHITKO 218
|
||||
#define STRINGID_123POOF 219
|
||||
#define STRINGID_ANDELLIPSIS 220
|
||||
#define STRINGID_NOTVERYEFFECTIVE 221
|
||||
#define STRINGID_SUPEREFFECTIVE 222
|
||||
#define STRINGID_GOTAWAYSAFELY 223
|
||||
#define STRINGID_WILDPKMNFLED 224
|
||||
#define STRINGID_NORUNNINGFROMTRAINERS 225
|
||||
#define STRINGID_CANTESCAPE 226
|
||||
#define STRINGID_DONTLEAVEBIRCH 227
|
||||
#define STRINGID_BUTNOTHINGHAPPENED 228
|
||||
#define STRINGID_BUTITFAILED 229
|
||||
#define STRINGID_ITHURTCONFUSION 230
|
||||
#define STRINGID_MIRRORMOVEFAILED 231
|
||||
#define STRINGID_STARTEDTORAIN 232
|
||||
#define STRINGID_DOWNPOURSTARTED 233
|
||||
#define STRINGID_RAINCONTINUES 234
|
||||
#define STRINGID_DOWNPOURCONTINUES 235
|
||||
#define STRINGID_RAINSTOPPED 236
|
||||
#define STRINGID_SANDSTORMBREWED 237
|
||||
#define STRINGID_SANDSTORMRAGES 238
|
||||
#define STRINGID_SANDSTORMSUBSIDED 239
|
||||
#define STRINGID_SUNLIGHTGOTBRIGHT 240
|
||||
#define STRINGID_SUNLIGHTSTRONG 241
|
||||
#define STRINGID_SUNLIGHTFADED 242
|
||||
#define STRINGID_STARTEDHAIL 243
|
||||
#define STRINGID_HAILCONTINUES 244
|
||||
#define STRINGID_HAILSTOPPED 245
|
||||
#define STRINGID_FAILEDTOSPITUP 246
|
||||
#define STRINGID_FAILEDTOSWALLOW 247
|
||||
#define STRINGID_WINDBECAMEHEATWAVE 248
|
||||
#define STRINGID_STATCHANGESGONE 249
|
||||
#define STRINGID_COINSSCATTERED 250
|
||||
#define STRINGID_TOOWEAKFORSUBSTITUTE 251
|
||||
#define STRINGID_SHAREDPAIN 252
|
||||
#define STRINGID_BELLCHIMED 253
|
||||
#define STRINGID_FAINTINTHREE 254
|
||||
#define STRINGID_NOPPLEFT 255
|
||||
#define STRINGID_BUTNOPPLEFT 256
|
||||
#define STRINGID_PLAYERUSEDITEM 257
|
||||
#define STRINGID_WALLYUSEDITEM 258
|
||||
#define STRINGID_TRAINERBLOCKEDBALL 259
|
||||
#define STRINGID_DONTBEATHIEF 260
|
||||
#define STRINGID_ITDODGEDBALL 261
|
||||
#define STRINGID_YOUMISSEDPKMN 262
|
||||
#define STRINGID_PKMNBROKEFREE 263
|
||||
#define STRINGID_ITAPPEAREDCAUGHT 264
|
||||
#define STRINGID_AARGHALMOSTHADIT 265
|
||||
#define STRINGID_SHOOTSOCLOSE 266
|
||||
#define STRINGID_GOTCHAPKMNCAUGHT 267
|
||||
#define STRINGID_GOTCHAPKMNCAUGHT2 268
|
||||
#define STRINGID_GIVENICKNAMECAPTURED 269
|
||||
#define STRINGID_PKMNSENTTOPC 270
|
||||
#define STRINGID_PKMNDATAADDEDTODEX 271
|
||||
#define STRINGID_ITISRAINING 272
|
||||
#define STRINGID_SANDSTORMISRAGING 273
|
||||
#define STRINGID_CANTESCAPE2 274
|
||||
#define STRINGID_PKMNIGNORESASLEEP 275
|
||||
#define STRINGID_PKMNIGNOREDORDERS 276
|
||||
#define STRINGID_PKMNBEGANTONAP 277
|
||||
#define STRINGID_PKMNLOAFING 278
|
||||
#define STRINGID_PKMNWONTOBEY 279
|
||||
#define STRINGID_PKMNTURNEDAWAY 280
|
||||
#define STRINGID_PKMNPRETENDNOTNOTICE 281
|
||||
#define STRINGID_ENEMYABOUTTOSWITCHPKMN 282
|
||||
#define STRINGID_CREPTCLOSER 283
|
||||
#define STRINGID_CANTGETCLOSER 284
|
||||
#define STRINGID_PKMNWATCHINGCAREFULLY 285
|
||||
#define STRINGID_PKMNCURIOUSABOUTX 286
|
||||
#define STRINGID_PKMNENTHRALLEDBYX 287
|
||||
#define STRINGID_PKMNIGNOREDX 288
|
||||
#define STRINGID_THREWPOKEBLOCKATPKMN 289
|
||||
#define STRINGID_OUTOFSAFARIBALLS 290
|
||||
#define STRINGID_PKMNSITEMCUREDPARALYSIS 291
|
||||
#define STRINGID_PKMNSITEMCUREDPOISON 292
|
||||
#define STRINGID_PKMNSITEMHEALEDBURN 293
|
||||
#define STRINGID_PKMNSITEMDEFROSTEDIT 294
|
||||
#define STRINGID_PKMNSITEMWOKEIT 295
|
||||
#define STRINGID_PKMNSITEMSNAPPEDOUT 296
|
||||
#define STRINGID_PKMNSITEMCUREDPROBLEM 297
|
||||
#define STRINGID_PKMNSITEMRESTOREDHEALTH 298
|
||||
#define STRINGID_PKMNSITEMRESTOREDPP 299
|
||||
#define STRINGID_PKMNSITEMRESTOREDSTATUS 300
|
||||
#define STRINGID_PKMNSITEMRESTOREDHPALITTLE 301
|
||||
#define STRINGID_ITEMALLOWSONLYYMOVE 302
|
||||
#define STRINGID_PKMNHUNGONWITHX 303
|
||||
#define STRINGID_EMPTYSTRING3 304
|
||||
#define STRINGID_PKMNSXPREVENTSBURNS 305
|
||||
#define STRINGID_PKMNSXBLOCKSY 306
|
||||
#define STRINGID_PKMNSXRESTOREDHPALITTLE2 307
|
||||
#define STRINGID_PKMNSXWHIPPEDUPSANDSTORM 308
|
||||
#define STRINGID_PKMNSXPREVENTSYLOSS 309
|
||||
#define STRINGID_PKMNSXINFATUATEDY 310
|
||||
#define STRINGID_PKMNSXMADEYINEFFECTIVE 311
|
||||
#define STRINGID_PKMNSXCUREDYPROBLEM 312
|
||||
#define STRINGID_ITSUCKEDLIQUIDOOZE 313
|
||||
#define STRINGID_PKMNTRANSFORMED 314
|
||||
#define STRINGID_ELECTRICITYWEAKENED 315
|
||||
#define STRINGID_FIREWEAKENED 316
|
||||
#define STRINGID_PKMNHIDUNDERWATER 317
|
||||
#define STRINGID_PKMNSPRANGUP 318
|
||||
#define STRINGID_HMMOVESCANTBEFORGOTTEN 319
|
||||
#define STRINGID_XFOUNDONEY 320
|
||||
#define STRINGID_PLAYERDEFEATEDTRAINER1 321
|
||||
#define STRINGID_SOOTHINGAROMA 322
|
||||
#define STRINGID_ITEMSCANTBEUSEDNOW 323
|
||||
#define STRINGID_FORXCOMMAYZ 324
|
||||
#define STRINGID_USINGXTHEYOFZN 325
|
||||
#define STRINGID_PKMNUSEDXTOGETPUMPED 326
|
||||
#define STRINGID_PKMNSXMADEYUSELESS 327
|
||||
#define STRINGID_PKMNTRAPPEDBYSANDTOMB 328
|
||||
#define STRINGID_EMPTYSTRING4 329
|
||||
#define STRINGID_ABOOSTED 330
|
||||
#define STRINGID_PKMNSXINTENSIFIEDSUN 331
|
||||
#define STRINGID_PKMNMAKESGROUNDMISS 332
|
||||
#define STRINGID_YOUTHROWABALLNOWRIGHT 333
|
||||
#define STRINGID_PKMNSXTOOKATTACK 334
|
||||
#define STRINGID_PKMNCHOSEXASDESTINY 335
|
||||
#define STRINGID_PKMNLOSTFOCUS 336
|
||||
#define STRINGID_USENEXTPKMN 337
|
||||
#define STRINGID_PKMNFLEDUSINGITS 338
|
||||
#define STRINGID_PKMNFLEDUSING 339
|
||||
#define STRINGID_PKMNWASDRAGGEDOUT 340
|
||||
#define STRINGID_PREVENTEDFROMWORKING 341
|
||||
#define STRINGID_PKMNSITEMNORMALIZEDSTATUS 342
|
||||
#define STRINGID_TRAINER1USEDITEM 343
|
||||
#define STRINGID_BOXISFULL 344
|
||||
#define STRINGID_PKMNAVOIDEDATTACK 345
|
||||
#define STRINGID_PKMNSXMADEITINEFFECTIVE 346
|
||||
#define STRINGID_PKMNSXPREVENTSFLINCHING 347
|
||||
#define STRINGID_PKMNALREADYHASBURN 348
|
||||
#define STRINGID_STATSWONTDECREASE2 349
|
||||
#define STRINGID_PKMNSXBLOCKSY2 350
|
||||
#define STRINGID_PKMNSXWOREOFF 351
|
||||
#define STRINGID_PKMNRAISEDDEFALITTLE 352
|
||||
#define STRINGID_PKMNRAISEDSPDEFALITTLE 353
|
||||
#define STRINGID_THEWALLSHATTERED 354
|
||||
#define STRINGID_PKMNSXPREVENTSYSZ 355
|
||||
#define STRINGID_PKMNSXCUREDITSYPROBLEM 356
|
||||
#define STRINGID_ATTACKERCANTESCAPE 357
|
||||
#define STRINGID_PKMNOBTAINEDX 358
|
||||
#define STRINGID_PKMNOBTAINEDX2 359
|
||||
#define STRINGID_PKMNOBTAINEDXYOBTAINEDZ 360
|
||||
#define STRINGID_BUTNOEFFECT 361
|
||||
#define STRINGID_PKMNSXHADNOEFFECTONY 362
|
||||
#define STRINGID_TWOENEMIESDEFEATED 363
|
||||
#define STRINGID_TRAINER2LOSETEXT 364
|
||||
#define STRINGID_PKMNINCAPABLEOFPOWER 365
|
||||
#define STRINGID_GLINTAPPEARSINEYE 366
|
||||
#define STRINGID_PKMNGETTINGINTOPOSITION 367
|
||||
#define STRINGID_PKMNBEGANGROWLINGDEEPLY 368
|
||||
#define STRINGID_PKMNEAGERFORMORE 369
|
||||
#define STRINGID_DEFEATEDOPPONENTBYREFEREE 370
|
||||
#define STRINGID_LOSTTOOPPONENTBYREFEREE 371
|
||||
#define STRINGID_TIEDOPPONENTBYREFEREE 372
|
||||
#define STRINGID_QUESTIONFORFEITMATCH 373
|
||||
#define STRINGID_FORFEITEDMATCH 374
|
||||
#define STRINGID_PKMNTRANSFERREDSOMEONESPC 375
|
||||
#define STRINGID_PKMNTRANSFERREDLANETTESPC 376
|
||||
#define STRINGID_PKMNBOXSOMEONESPCFULL 377
|
||||
#define STRINGID_PKMNBOXLANETTESPCFULL 378
|
||||
#define STRINGID_TRAINER1WINTEXT 379
|
||||
#define STRINGID_TRAINER2WINTEXT 380
|
||||
|
||||
#endif // GUARD_CONSTANTS_BATTLE_STRING_IDS_H
|
||||
|
@ -5,7 +5,7 @@
|
||||
#define AGBPrintInit()
|
||||
#define AGBPutc(cChr)
|
||||
#define AGBPrint(pBuf)
|
||||
#define AGBPrintf(pBuf, ...)
|
||||
#define AGBPrintf(pBuf, ...)
|
||||
#define AGBPrintFlush1Block()
|
||||
#define AGBPrintFlush()
|
||||
#define AGBAssert(pFile, nLine, pExpression, nStopProgram)
|
||||
@ -21,30 +21,30 @@ void AGBAssert(const char *pFile, int nLine, const char *pExpression, int nStopP
|
||||
|
||||
#undef AGB_ASSERT
|
||||
#ifdef NDEBUG
|
||||
#define AGB_ASSERT(exp)
|
||||
#define AGB_ASSERT(exp)
|
||||
#else
|
||||
#define AGB_ASSERT(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, 1);
|
||||
#define AGB_ASSERT(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, 1);
|
||||
#endif
|
||||
|
||||
#undef AGB_WARNING
|
||||
#ifdef NDEBUG
|
||||
#define AGB_WARNING(exp)
|
||||
#define AGB_WARNING(exp)
|
||||
#else
|
||||
#define AGB_WARNING(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, 0);
|
||||
#define AGB_WARNING(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, 0);
|
||||
#endif
|
||||
|
||||
// for matching purposes
|
||||
|
||||
#ifdef NDEBUG
|
||||
#define AGB_ASSERT_EX(exp, file, line)
|
||||
#define AGB_ASSERT_EX(exp, file, line)
|
||||
#else
|
||||
#define AGB_ASSERT_EX(exp, file, line) (exp) ? ((void*)0) : AGBAssert(file, line, #exp, 1);
|
||||
#define AGB_ASSERT_EX(exp, file, line) (exp) ? ((void*)0) : AGBAssert(file, line, #exp, 1);
|
||||
#endif
|
||||
|
||||
#ifdef NDEBUG
|
||||
#define AGB_WARNING_EX(exp, file, line)
|
||||
#define AGB_WARNING_EX(exp, file, line)
|
||||
#else
|
||||
#define AGB_WARNING_EX(exp, file, line) (exp) ? ((void*)0) : AGBAssert(file, line, #exp, 0);
|
||||
#define AGB_WARNING_EX(exp, file, line) (exp) ? ((void*)0) : AGBAssert(file, line, #exp, 0);
|
||||
#endif
|
||||
|
||||
#endif // GUARD_GBA_ISAGBPRINT_H
|
||||
|
@ -294,10 +294,10 @@ struct PlayerAvatar
|
||||
/*0x09*/ u8 newDirBackup; // during bike movement, the new direction as opposed to player's direction is backed up here.
|
||||
/*0x0A*/ u8 bikeFrameCounter; // on the mach bike, when this value is 1, the bike is moving but not accelerating yet for 1 tile. on the acro bike, this acts as a timer for acro bike.
|
||||
/*0x0B*/ u8 bikeSpeed;
|
||||
// acro bike only
|
||||
// acro bike only
|
||||
/*0x0C*/ u32 directionHistory; // up/down/left/right history is stored in each nybble, but using the field directions and not the io inputs.
|
||||
/*0x10*/ u32 abStartSelectHistory; // same as above but for A + B + start + select only
|
||||
// these two are timer history arrays which [0] is the active timer for acro bike. every element is backed up to the next element upon update.
|
||||
// these two are timer history arrays which [0] is the active timer for acro bike. every element is backed up to the next element upon update.
|
||||
/*0x14*/ u8 dirTimerHistory[8];
|
||||
/*0x1C*/ u8 abStartSelectTimerHistory[8];
|
||||
};
|
||||
|
@ -3360,7 +3360,7 @@ extern const u32 gRaySceneHushBg_Gfx[];
|
||||
extern const u32 gRaySceneHushRing_Gfx[];
|
||||
|
||||
// Pokeballs
|
||||
extern const u32 gItemIcon_MasterBall[];
|
||||
extern const u32 gItemIcon_MasterBall[];
|
||||
extern const u32 gItemIconPalette_MasterBall[];
|
||||
extern const u32 gItemIcon_UltraBall[];
|
||||
extern const u32 gItemIconPalette_UltraBall[];
|
||||
|
@ -17,10 +17,10 @@ enum PokemonSummaryScreenMode
|
||||
|
||||
enum PokemonSummaryScreenPage
|
||||
{
|
||||
PSS_PAGE_INFO,
|
||||
PSS_PAGE_SKILLS,
|
||||
PSS_PAGE_BATTLE_MOVES,
|
||||
PSS_PAGE_CONTEST_MOVES,
|
||||
PSS_PAGE_INFO,
|
||||
PSS_PAGE_SKILLS,
|
||||
PSS_PAGE_BATTLE_MOVES,
|
||||
PSS_PAGE_CONTEST_MOVES,
|
||||
};
|
||||
|
||||
#endif // GUARD_POKEMON_SUMMARY_SCREEN_H
|
||||
|
@ -25,8 +25,8 @@ struct UnkSaveSection
|
||||
|
||||
struct SaveSectionOffsets
|
||||
{
|
||||
u16 toAdd;
|
||||
u16 size;
|
||||
u16 toAdd;
|
||||
u16 size;
|
||||
};
|
||||
|
||||
// Emerald changes this definition to be the sectors per slot.
|
||||
@ -48,7 +48,7 @@ enum
|
||||
SAVE_NORMAL,
|
||||
SAVE_LINK,
|
||||
//EREADER_SAVE, // deprecated in Emerald
|
||||
SAVE_LINK2, // unknown 2nd link save
|
||||
SAVE_LINK2, // unknown 2nd link save
|
||||
SAVE_HALL_OF_FAME,
|
||||
SAVE_OVERWRITE_DIFFERENT_FILE,
|
||||
SAVE_HALL_OF_FAME_ERASE_BEFORE // unused
|
||||
|
@ -17,7 +17,7 @@ enum
|
||||
X_COORD,
|
||||
Y_COORD,
|
||||
ANIM_NUM,
|
||||
LAYER_TYPE
|
||||
LAYER_TYPE
|
||||
};
|
||||
|
||||
struct MartInfo
|
||||
@ -32,16 +32,16 @@ struct MartInfo
|
||||
|
||||
struct ShopData
|
||||
{
|
||||
/*0x0000*/ u16 tilemapBuffers[4][0x400];
|
||||
/*0x2000*/ u32 totalCost;
|
||||
/*0x2004*/ u16 itemsShowed;
|
||||
/*0x2006*/ u16 selectedRow;
|
||||
/*0x2008*/ u16 scrollOffset;
|
||||
/*0x200A*/ u8 maxQuantity;
|
||||
/*0x200B*/ u8 scrollIndicatorsTaskId;
|
||||
/*0x200C*/ u8 iconSlot;
|
||||
/*0x200D*/ u8 itemSpriteIds[2];
|
||||
/*0x2010*/ s16 viewportObjects[16][5];
|
||||
/*0x0000*/ u16 tilemapBuffers[4][0x400];
|
||||
/*0x2000*/ u32 totalCost;
|
||||
/*0x2004*/ u16 itemsShowed;
|
||||
/*0x2006*/ u16 selectedRow;
|
||||
/*0x2008*/ u16 scrollOffset;
|
||||
/*0x200A*/ u8 maxQuantity;
|
||||
/*0x200B*/ u8 scrollIndicatorsTaskId;
|
||||
/*0x200C*/ u8 iconSlot;
|
||||
/*0x200D*/ u8 itemSpriteIds[2];
|
||||
/*0x2010*/ s16 viewportObjects[16][5];
|
||||
};
|
||||
|
||||
void CreatePokemartMenu(const u16 *);
|
||||
|
@ -43,7 +43,7 @@ SECTIONS {
|
||||
{
|
||||
asm/crt0.o(.text);
|
||||
src/main.o(.text);
|
||||
src/malloc.o(.text);
|
||||
src/alloc.o(.text);
|
||||
src/dma3_manager.o(.text);
|
||||
src/gpu_regs.o(.text);
|
||||
src/bg.o(.text);
|
||||
|
210
src/alloc.c
Normal file
210
src/alloc.c
Normal file
@ -0,0 +1,210 @@
|
||||
#include "global.h"
|
||||
|
||||
static void *sHeapStart;
|
||||
static u32 sHeapSize;
|
||||
static u32 malloc_c_unused_0300000c; // needed to align dma3_manager.o(.bss)
|
||||
|
||||
#define MALLOC_SYSTEM_ID 0xA3A3
|
||||
|
||||
struct MemBlock {
|
||||
// Whether this block is currently allocated.
|
||||
bool16 flag;
|
||||
|
||||
// Magic number used for error checking. Should equal MALLOC_SYSTEM_ID.
|
||||
u16 magic;
|
||||
|
||||
// Size of the block (not including this header struct).
|
||||
u32 size;
|
||||
|
||||
// Previous block pointer. Equals sHeapStart if this is the first block.
|
||||
struct MemBlock *prev;
|
||||
|
||||
// Next block pointer. Equals sHeapStart if this is the last block.
|
||||
struct MemBlock *next;
|
||||
|
||||
// Data in the memory block. (Arrays of length 0 are a GNU extension.)
|
||||
u8 data[0];
|
||||
};
|
||||
|
||||
void PutMemBlockHeader(void *block, struct MemBlock *prev, struct MemBlock *next, u32 size)
|
||||
{
|
||||
struct MemBlock *header = (struct MemBlock *)block;
|
||||
|
||||
header->flag = FALSE;
|
||||
header->magic = MALLOC_SYSTEM_ID;
|
||||
header->size = size;
|
||||
header->prev = prev;
|
||||
header->next = next;
|
||||
}
|
||||
|
||||
void PutFirstMemBlockHeader(void *block, u32 size)
|
||||
{
|
||||
PutMemBlockHeader(block, (struct MemBlock *)block, (struct MemBlock *)block, size - sizeof(struct MemBlock));
|
||||
}
|
||||
|
||||
void *AllocInternal(void *heapStart, u32 size)
|
||||
{
|
||||
struct MemBlock *pos = (struct MemBlock *)heapStart;
|
||||
struct MemBlock *head = pos;
|
||||
struct MemBlock *splitBlock;
|
||||
u32 foundBlockSize;
|
||||
|
||||
// Alignment
|
||||
if (size & 3)
|
||||
size = 4 * ((size / 4) + 1);
|
||||
|
||||
for (;;) {
|
||||
// Loop through the blocks looking for unused block that's big enough.
|
||||
|
||||
if (!pos->flag) {
|
||||
foundBlockSize = pos->size;
|
||||
|
||||
if (foundBlockSize >= size) {
|
||||
if (foundBlockSize - size < 2 * sizeof(struct MemBlock)) {
|
||||
// The block isn't much bigger than the requested size,
|
||||
// so just use it.
|
||||
pos->flag = TRUE;
|
||||
} else {
|
||||
// The block is significantly bigger than the requested
|
||||
// size, so split the rest into a separate block.
|
||||
foundBlockSize -= sizeof(struct MemBlock);
|
||||
foundBlockSize -= size;
|
||||
|
||||
splitBlock = (struct MemBlock *)(pos->data + size);
|
||||
|
||||
pos->flag = TRUE;
|
||||
pos->size = size;
|
||||
|
||||
PutMemBlockHeader(splitBlock, pos, pos->next, foundBlockSize);
|
||||
|
||||
pos->next = splitBlock;
|
||||
|
||||
if (splitBlock->next != head)
|
||||
splitBlock->next->prev = splitBlock;
|
||||
}
|
||||
|
||||
return pos->data;
|
||||
}
|
||||
}
|
||||
|
||||
if (pos->next == head)
|
||||
return NULL;
|
||||
|
||||
pos = pos->next;
|
||||
}
|
||||
}
|
||||
|
||||
void FreeInternal(void *heapStart, void *pointer)
|
||||
{
|
||||
if (pointer) {
|
||||
struct MemBlock *head = (struct MemBlock *)heapStart;
|
||||
struct MemBlock *block = (struct MemBlock *)((u8 *)pointer - sizeof(struct MemBlock));
|
||||
block->flag = FALSE;
|
||||
|
||||
// If the freed block isn't the last one, merge with the next block
|
||||
// if it's not in use.
|
||||
if (block->next != head) {
|
||||
if (!block->next->flag) {
|
||||
block->size += sizeof(struct MemBlock) + block->next->size;
|
||||
block->next->magic = 0;
|
||||
block->next = block->next->next;
|
||||
if (block->next != head)
|
||||
block->next->prev = block;
|
||||
}
|
||||
}
|
||||
|
||||
// If the freed block isn't the first one, merge with the previous block
|
||||
// if it's not in use.
|
||||
if (block != head) {
|
||||
if (!block->prev->flag) {
|
||||
block->prev->next = block->next;
|
||||
|
||||
if (block->next != head)
|
||||
block->next->prev = block->prev;
|
||||
|
||||
block->magic = 0;
|
||||
block->prev->size += sizeof(struct MemBlock) + block->size;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void *AllocZeroedInternal(void *heapStart, u32 size)
|
||||
{
|
||||
void *mem = AllocInternal(heapStart, size);
|
||||
|
||||
if (mem != NULL) {
|
||||
if (size & 3)
|
||||
size = 4 * ((size / 4) + 1);
|
||||
|
||||
CpuFill32(0, mem, size);
|
||||
}
|
||||
|
||||
return mem;
|
||||
}
|
||||
|
||||
bool32 CheckMemBlockInternal(void *heapStart, void *pointer)
|
||||
{
|
||||
struct MemBlock *head = (struct MemBlock *)heapStart;
|
||||
struct MemBlock *block = (struct MemBlock *)((u8 *)pointer - sizeof(struct MemBlock));
|
||||
|
||||
if (block->magic != MALLOC_SYSTEM_ID)
|
||||
return FALSE;
|
||||
|
||||
if (block->next->magic != MALLOC_SYSTEM_ID)
|
||||
return FALSE;
|
||||
|
||||
if (block->next != head && block->next->prev != block)
|
||||
return FALSE;
|
||||
|
||||
if (block->prev->magic != MALLOC_SYSTEM_ID)
|
||||
return FALSE;
|
||||
|
||||
if (block->prev != head && block->prev->next != block)
|
||||
return FALSE;
|
||||
|
||||
if (block->next != head && block->next != (struct MemBlock *)(block->data + block->size))
|
||||
return FALSE;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void InitHeap(void *heapStart, u32 heapSize)
|
||||
{
|
||||
sHeapStart = heapStart;
|
||||
sHeapSize = heapSize;
|
||||
PutFirstMemBlockHeader(heapStart, heapSize);
|
||||
}
|
||||
|
||||
void *Alloc(u32 size)
|
||||
{
|
||||
AllocInternal(sHeapStart, size);
|
||||
}
|
||||
|
||||
void *AllocZeroed(u32 size)
|
||||
{
|
||||
AllocZeroedInternal(sHeapStart, size);
|
||||
}
|
||||
|
||||
void Free(void *pointer)
|
||||
{
|
||||
FreeInternal(sHeapStart, pointer);
|
||||
}
|
||||
|
||||
bool32 CheckMemBlock(void *pointer)
|
||||
{
|
||||
return CheckMemBlockInternal(sHeapStart, pointer);
|
||||
}
|
||||
|
||||
bool32 CheckHeap()
|
||||
{
|
||||
struct MemBlock *pos = (struct MemBlock *)sHeapStart;
|
||||
|
||||
do {
|
||||
if (!CheckMemBlockInternal(sHeapStart, pos->data))
|
||||
return FALSE;
|
||||
pos = pos->next;
|
||||
} while (pos != (struct MemBlock *)sHeapStart);
|
||||
|
||||
return TRUE;
|
||||
}
|
320
src/apprentice.c
320
src/apprentice.c
@ -9,7 +9,7 @@
|
||||
#include "item.h"
|
||||
#include "item_menu.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "menu.h"
|
||||
#include "new_game.h"
|
||||
#include "party_menu.h"
|
||||
@ -2047,172 +2047,172 @@ NAKED
|
||||
static void sub_81A1224(void)
|
||||
{
|
||||
asm_unified("\n\
|
||||
push {r4-r7,lr}\n\
|
||||
mov r7, r9\n\
|
||||
mov r6, r8\n\
|
||||
push {r6,r7}\n\
|
||||
ldr r1, =gSaveBlock2Ptr\n\
|
||||
ldr r3, [r1]\n\
|
||||
adds r0, r3, 0\n\
|
||||
adds r0, 0xB1\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 26\n\
|
||||
lsrs r0, 28\n\
|
||||
adds r7, r1, 0\n\
|
||||
cmp r0, 0x2\n\
|
||||
bhi _081A1242\n\
|
||||
b _081A1362\n\
|
||||
push {r4-r7,lr}\n\
|
||||
mov r7, r9\n\
|
||||
mov r6, r8\n\
|
||||
push {r6,r7}\n\
|
||||
ldr r1, =gSaveBlock2Ptr\n\
|
||||
ldr r3, [r1]\n\
|
||||
adds r0, r3, 0\n\
|
||||
adds r0, 0xB1\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 26\n\
|
||||
lsrs r0, 28\n\
|
||||
adds r7, r1, 0\n\
|
||||
cmp r0, 0x2\n\
|
||||
bhi _081A1242\n\
|
||||
b _081A1362\n\
|
||||
_081A1242:\n\
|
||||
movs r5, 0\n\
|
||||
movs r2, 0\n\
|
||||
adds r0, r3, 0\n\
|
||||
adds r0, 0xB8\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 30\n\
|
||||
ldr r1, =gSpecialVar_0x8005\n\
|
||||
mov r12, r1\n\
|
||||
ldr r1, =gSpecialVar_Result\n\
|
||||
mov r8, r1\n\
|
||||
cmp r0, 0\n\
|
||||
beq _081A127C\n\
|
||||
adds r3, r7, 0\n\
|
||||
movs r5, 0\n\
|
||||
movs r2, 0\n\
|
||||
adds r0, r3, 0\n\
|
||||
adds r0, 0xB8\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 30\n\
|
||||
ldr r1, =gSpecialVar_0x8005\n\
|
||||
mov r12, r1\n\
|
||||
ldr r1, =gSpecialVar_Result\n\
|
||||
mov r8, r1\n\
|
||||
cmp r0, 0\n\
|
||||
beq _081A127C\n\
|
||||
adds r3, r7, 0\n\
|
||||
_081A125C:\n\
|
||||
adds r0, r5, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r5, r0, 24\n\
|
||||
adds r0, r2, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r2, r0, 24\n\
|
||||
cmp r2, 0x8\n\
|
||||
bhi _081A127C\n\
|
||||
ldr r0, [r3]\n\
|
||||
lsls r1, r2, 2\n\
|
||||
adds r0, r1\n\
|
||||
adds r0, 0xB8\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 30\n\
|
||||
cmp r0, 0\n\
|
||||
bne _081A125C\n\
|
||||
adds r0, r5, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r5, r0, 24\n\
|
||||
adds r0, r2, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r2, r0, 24\n\
|
||||
cmp r2, 0x8\n\
|
||||
bhi _081A127C\n\
|
||||
ldr r0, [r3]\n\
|
||||
lsls r1, r2, 2\n\
|
||||
adds r0, r1\n\
|
||||
adds r0, 0xB8\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 30\n\
|
||||
cmp r0, 0\n\
|
||||
bne _081A125C\n\
|
||||
_081A127C:\n\
|
||||
movs r4, 0\n\
|
||||
cmp r4, r5\n\
|
||||
bcs _081A1322\n\
|
||||
ldr r0, [r7]\n\
|
||||
adds r0, 0xB1\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 26\n\
|
||||
lsrs r0, 28\n\
|
||||
subs r0, 0x3\n\
|
||||
cmp r4, r0\n\
|
||||
bge _081A1322\n\
|
||||
adds r6, r7, 0\n\
|
||||
mov r9, r4\n\
|
||||
movs r4, 0\n\
|
||||
cmp r4, r5\n\
|
||||
bcs _081A1322\n\
|
||||
ldr r0, [r7]\n\
|
||||
adds r0, 0xB1\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 26\n\
|
||||
lsrs r0, 28\n\
|
||||
subs r0, 0x3\n\
|
||||
cmp r4, r0\n\
|
||||
bge _081A1322\n\
|
||||
adds r6, r7, 0\n\
|
||||
mov r9, r4\n\
|
||||
_081A1296:\n\
|
||||
ldr r3, [r6]\n\
|
||||
lsls r0, r4, 2\n\
|
||||
adds r2, r3, r0\n\
|
||||
adds r0, r2, 0\n\
|
||||
adds r0, 0xB8\n\
|
||||
ldrb r1, [r0]\n\
|
||||
lsls r0, r1, 30\n\
|
||||
lsrs r0, 30\n\
|
||||
cmp r0, 0x1\n\
|
||||
bne _081A1308\n\
|
||||
lsrs r0, r1, 6\n\
|
||||
cmp r0, 0\n\
|
||||
beq _081A1308\n\
|
||||
adds r0, r2, 0\n\
|
||||
adds r0, 0xBA\n\
|
||||
ldrh r0, [r0]\n\
|
||||
mov r2, r12\n\
|
||||
ldrh r2, [r2]\n\
|
||||
cmp r0, r2\n\
|
||||
bne _081A1308\n\
|
||||
adds r0, r3, 0\n\
|
||||
adds r0, 0xB1\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 26\n\
|
||||
lsrs r0, 28\n\
|
||||
subs r0, 0x3\n\
|
||||
lsls r0, 2\n\
|
||||
adds r0, r3, r0\n\
|
||||
adds r0, 0xB8\n\
|
||||
ldrb r2, [r0]\n\
|
||||
movs r1, 0x3F\n\
|
||||
ands r1, r2\n\
|
||||
strb r1, [r0]\n\
|
||||
ldr r1, [r6]\n\
|
||||
adds r0, r1, 0\n\
|
||||
adds r0, 0xB1\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 26\n\
|
||||
lsrs r0, 28\n\
|
||||
subs r0, 0x3\n\
|
||||
lsls r0, 2\n\
|
||||
adds r1, r0\n\
|
||||
mov r2, r12\n\
|
||||
ldrh r0, [r2]\n\
|
||||
adds r1, 0xBA\n\
|
||||
strh r0, [r1]\n\
|
||||
mov r1, r9\n\
|
||||
mov r0, r8\n\
|
||||
strh r1, [r0]\n\
|
||||
b _081A1362\n\
|
||||
.pool\n\
|
||||
ldr r3, [r6]\n\
|
||||
lsls r0, r4, 2\n\
|
||||
adds r2, r3, r0\n\
|
||||
adds r0, r2, 0\n\
|
||||
adds r0, 0xB8\n\
|
||||
ldrb r1, [r0]\n\
|
||||
lsls r0, r1, 30\n\
|
||||
lsrs r0, 30\n\
|
||||
cmp r0, 0x1\n\
|
||||
bne _081A1308\n\
|
||||
lsrs r0, r1, 6\n\
|
||||
cmp r0, 0\n\
|
||||
beq _081A1308\n\
|
||||
adds r0, r2, 0\n\
|
||||
adds r0, 0xBA\n\
|
||||
ldrh r0, [r0]\n\
|
||||
mov r2, r12\n\
|
||||
ldrh r2, [r2]\n\
|
||||
cmp r0, r2\n\
|
||||
bne _081A1308\n\
|
||||
adds r0, r3, 0\n\
|
||||
adds r0, 0xB1\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 26\n\
|
||||
lsrs r0, 28\n\
|
||||
subs r0, 0x3\n\
|
||||
lsls r0, 2\n\
|
||||
adds r0, r3, r0\n\
|
||||
adds r0, 0xB8\n\
|
||||
ldrb r2, [r0]\n\
|
||||
movs r1, 0x3F\n\
|
||||
ands r1, r2\n\
|
||||
strb r1, [r0]\n\
|
||||
ldr r1, [r6]\n\
|
||||
adds r0, r1, 0\n\
|
||||
adds r0, 0xB1\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 26\n\
|
||||
lsrs r0, 28\n\
|
||||
subs r0, 0x3\n\
|
||||
lsls r0, 2\n\
|
||||
adds r1, r0\n\
|
||||
mov r2, r12\n\
|
||||
ldrh r0, [r2]\n\
|
||||
adds r1, 0xBA\n\
|
||||
strh r0, [r1]\n\
|
||||
mov r1, r9\n\
|
||||
mov r0, r8\n\
|
||||
strh r1, [r0]\n\
|
||||
b _081A1362\n\
|
||||
.pool\n\
|
||||
_081A1308:\n\
|
||||
adds r0, r4, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r4, r0, 24\n\
|
||||
cmp r4, r5\n\
|
||||
bcs _081A1322\n\
|
||||
ldr r0, [r6]\n\
|
||||
adds r0, 0xB1\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 26\n\
|
||||
lsrs r0, 28\n\
|
||||
subs r0, 0x3\n\
|
||||
cmp r4, r0\n\
|
||||
blt _081A1296\n\
|
||||
adds r0, r4, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r4, r0, 24\n\
|
||||
cmp r4, r5\n\
|
||||
bcs _081A1322\n\
|
||||
ldr r0, [r6]\n\
|
||||
adds r0, 0xB1\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 26\n\
|
||||
lsrs r0, 28\n\
|
||||
subs r0, 0x3\n\
|
||||
cmp r4, r0\n\
|
||||
blt _081A1296\n\
|
||||
_081A1322:\n\
|
||||
ldr r2, [r7]\n\
|
||||
adds r0, r2, 0\n\
|
||||
adds r0, 0xB1\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 26\n\
|
||||
lsrs r0, 28\n\
|
||||
subs r0, 0x3\n\
|
||||
lsls r0, 2\n\
|
||||
adds r2, r0\n\
|
||||
adds r2, 0xB8\n\
|
||||
ldrb r1, [r2]\n\
|
||||
movs r0, 0x3F\n\
|
||||
ands r0, r1\n\
|
||||
movs r1, 0x40\n\
|
||||
orrs r0, r1\n\
|
||||
strb r0, [r2]\n\
|
||||
ldr r1, [r7]\n\
|
||||
adds r0, r1, 0\n\
|
||||
adds r0, 0xB1\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 26\n\
|
||||
lsrs r0, 28\n\
|
||||
subs r0, 0x3\n\
|
||||
lsls r0, 2\n\
|
||||
adds r1, r0\n\
|
||||
mov r2, r12\n\
|
||||
ldrh r0, [r2]\n\
|
||||
adds r1, 0xBA\n\
|
||||
strh r0, [r1]\n\
|
||||
movs r0, 0x1\n\
|
||||
mov r1, r8\n\
|
||||
strh r0, [r1]\n\
|
||||
ldr r2, [r7]\n\
|
||||
adds r0, r2, 0\n\
|
||||
adds r0, 0xB1\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 26\n\
|
||||
lsrs r0, 28\n\
|
||||
subs r0, 0x3\n\
|
||||
lsls r0, 2\n\
|
||||
adds r2, r0\n\
|
||||
adds r2, 0xB8\n\
|
||||
ldrb r1, [r2]\n\
|
||||
movs r0, 0x3F\n\
|
||||
ands r0, r1\n\
|
||||
movs r1, 0x40\n\
|
||||
orrs r0, r1\n\
|
||||
strb r0, [r2]\n\
|
||||
ldr r1, [r7]\n\
|
||||
adds r0, r1, 0\n\
|
||||
adds r0, 0xB1\n\
|
||||
ldrb r0, [r0]\n\
|
||||
lsls r0, 26\n\
|
||||
lsrs r0, 28\n\
|
||||
subs r0, 0x3\n\
|
||||
lsls r0, 2\n\
|
||||
adds r1, r0\n\
|
||||
mov r2, r12\n\
|
||||
ldrh r0, [r2]\n\
|
||||
adds r1, 0xBA\n\
|
||||
strh r0, [r1]\n\
|
||||
movs r0, 0x1\n\
|
||||
mov r1, r8\n\
|
||||
strh r0, [r1]\n\
|
||||
_081A1362:\n\
|
||||
pop {r3,r4}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
pop {r3,r4}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
");
|
||||
}
|
||||
#endif // NONMATCHING
|
||||
|
@ -463,7 +463,7 @@ static u8 ChooseMoveOrAction_Doubles(void)
|
||||
{
|
||||
if (i == sBattler_AI || gBattleMons[i].hp == 0)
|
||||
{
|
||||
actionOrMoveIndex[i] = -1;
|
||||
actionOrMoveIndex[i] = 0xFF;
|
||||
bestMovePointsForTarget[i] = -1;
|
||||
}
|
||||
else
|
||||
|
@ -1386,54 +1386,54 @@ const struct BattleAnimBackground gBattleAnimBackgroundTable[] =
|
||||
|
||||
static void (* const sScriptCmdTable[])(void) =
|
||||
{
|
||||
ScriptCmd_loadspritegfx,
|
||||
ScriptCmd_unloadspritegfx,
|
||||
ScriptCmd_createsprite,
|
||||
ScriptCmd_createvisualtask,
|
||||
ScriptCmd_delay,
|
||||
ScriptCmd_waitforvisualfinish,
|
||||
ScriptCmd_hang1,
|
||||
ScriptCmd_hang2,
|
||||
ScriptCmd_end,
|
||||
ScriptCmd_playse,
|
||||
ScriptCmd_monbg,
|
||||
ScriptCmd_clearmonbg,
|
||||
ScriptCmd_setalpha,
|
||||
ScriptCmd_blendoff,
|
||||
ScriptCmd_call,
|
||||
ScriptCmd_return,
|
||||
ScriptCmd_setarg,
|
||||
ScriptCmd_choosetwoturnanim,
|
||||
ScriptCmd_jumpifmoveturn,
|
||||
ScriptCmd_goto,
|
||||
ScriptCmd_fadetobg,
|
||||
ScriptCmd_restorebg,
|
||||
ScriptCmd_waitbgfadeout,
|
||||
ScriptCmd_waitbgfadein,
|
||||
ScriptCmd_changebg,
|
||||
ScriptCmd_playsewithpan,
|
||||
ScriptCmd_setpan,
|
||||
ScriptCmd_panse_1B,
|
||||
ScriptCmd_loopsewithpan,
|
||||
ScriptCmd_waitplaysewithpan,
|
||||
ScriptCmd_setbldcnt,
|
||||
ScriptCmd_createsoundtask,
|
||||
ScriptCmd_waitsound,
|
||||
ScriptCmd_jumpargeq,
|
||||
ScriptCmd_monbg_22,
|
||||
ScriptCmd_clearmonbg_23,
|
||||
ScriptCmd_jumpifcontest,
|
||||
ScriptCmd_fadetobgfromset,
|
||||
ScriptCmd_panse_26,
|
||||
ScriptCmd_panse_27,
|
||||
ScriptCmd_monbgprio_28,
|
||||
ScriptCmd_monbgprio_29,
|
||||
ScriptCmd_monbgprio_2A,
|
||||
ScriptCmd_invisible,
|
||||
ScriptCmd_visible,
|
||||
ScriptCmd_doublebattle_2D,
|
||||
ScriptCmd_doublebattle_2E,
|
||||
ScriptCmd_stopsound
|
||||
ScriptCmd_loadspritegfx,
|
||||
ScriptCmd_unloadspritegfx,
|
||||
ScriptCmd_createsprite,
|
||||
ScriptCmd_createvisualtask,
|
||||
ScriptCmd_delay,
|
||||
ScriptCmd_waitforvisualfinish,
|
||||
ScriptCmd_hang1,
|
||||
ScriptCmd_hang2,
|
||||
ScriptCmd_end,
|
||||
ScriptCmd_playse,
|
||||
ScriptCmd_monbg,
|
||||
ScriptCmd_clearmonbg,
|
||||
ScriptCmd_setalpha,
|
||||
ScriptCmd_blendoff,
|
||||
ScriptCmd_call,
|
||||
ScriptCmd_return,
|
||||
ScriptCmd_setarg,
|
||||
ScriptCmd_choosetwoturnanim,
|
||||
ScriptCmd_jumpifmoveturn,
|
||||
ScriptCmd_goto,
|
||||
ScriptCmd_fadetobg,
|
||||
ScriptCmd_restorebg,
|
||||
ScriptCmd_waitbgfadeout,
|
||||
ScriptCmd_waitbgfadein,
|
||||
ScriptCmd_changebg,
|
||||
ScriptCmd_playsewithpan,
|
||||
ScriptCmd_setpan,
|
||||
ScriptCmd_panse_1B,
|
||||
ScriptCmd_loopsewithpan,
|
||||
ScriptCmd_waitplaysewithpan,
|
||||
ScriptCmd_setbldcnt,
|
||||
ScriptCmd_createsoundtask,
|
||||
ScriptCmd_waitsound,
|
||||
ScriptCmd_jumpargeq,
|
||||
ScriptCmd_monbg_22,
|
||||
ScriptCmd_clearmonbg_23,
|
||||
ScriptCmd_jumpifcontest,
|
||||
ScriptCmd_fadetobgfromset,
|
||||
ScriptCmd_panse_26,
|
||||
ScriptCmd_panse_27,
|
||||
ScriptCmd_monbgprio_28,
|
||||
ScriptCmd_monbgprio_29,
|
||||
ScriptCmd_monbgprio_2A,
|
||||
ScriptCmd_invisible,
|
||||
ScriptCmd_visible,
|
||||
ScriptCmd_doublebattle_2D,
|
||||
ScriptCmd_doublebattle_2E,
|
||||
ScriptCmd_stopsound
|
||||
};
|
||||
|
||||
// code
|
||||
|
@ -7,7 +7,7 @@
|
||||
#include "decompress.h"
|
||||
#include "dma3.h"
|
||||
#include "gpu_regs.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "palette.h"
|
||||
#include "pokemon_icon.h"
|
||||
#include "sprite.h"
|
||||
|
@ -389,50 +389,50 @@ void sub_8159308(u8 taskId)
|
||||
NAKED
|
||||
void sub_8159308(u8 taskId)
|
||||
{
|
||||
asm_unified(" push {r4,r5,lr}\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
adds r5, r0, 0\n\
|
||||
ldr r1, =gTasks\n\
|
||||
lsls r0, r5, 2\n\
|
||||
adds r0, r5\n\
|
||||
lsls r0, 3\n\
|
||||
adds r4, r0, r1\n\
|
||||
ldrh r2, [r4, 0xE]\n\
|
||||
ldrh r0, [r4, 0x1C]\n\
|
||||
adds r1, r0, 0x1\n\
|
||||
strh r1, [r4, 0x1C]\n\
|
||||
lsls r0, 16\n\
|
||||
asrs r0, 16\n\
|
||||
movs r3, 0x12\n\
|
||||
ldrsh r1, [r4, r3]\n\
|
||||
cmp r0, r1\n\
|
||||
bne _08159342\n\
|
||||
movs r0, 0\n\
|
||||
strh r0, [r4, 0x1C]\n\
|
||||
ldrh r1, [r4, 0x1E]\n\
|
||||
adds r0, r2, r1\n\
|
||||
strh r0, [r4, 0x1E]\n\
|
||||
movs r2, 0x1E\n\
|
||||
ldrsh r0, [r4, r2]\n\
|
||||
bl KeepPanInRange\n\
|
||||
strh r0, [r4, 0x1E]\n\
|
||||
asm_unified(" push {r4,r5,lr}\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
adds r5, r0, 0\n\
|
||||
ldr r1, =gTasks\n\
|
||||
lsls r0, r5, 2\n\
|
||||
adds r0, r5\n\
|
||||
lsls r0, 3\n\
|
||||
adds r4, r0, r1\n\
|
||||
ldrh r2, [r4, 0xE]\n\
|
||||
ldrh r0, [r4, 0x1C]\n\
|
||||
adds r1, r0, 0x1\n\
|
||||
strh r1, [r4, 0x1C]\n\
|
||||
lsls r0, 16\n\
|
||||
asrs r0, 16\n\
|
||||
movs r3, 0x12\n\
|
||||
ldrsh r1, [r4, r3]\n\
|
||||
cmp r0, r1\n\
|
||||
bne _08159342\n\
|
||||
movs r0, 0\n\
|
||||
strh r0, [r4, 0x1C]\n\
|
||||
ldrh r1, [r4, 0x1E]\n\
|
||||
adds r0, r2, r1\n\
|
||||
strh r0, [r4, 0x1E]\n\
|
||||
movs r2, 0x1E\n\
|
||||
ldrsh r0, [r4, r2]\n\
|
||||
bl KeepPanInRange\n\
|
||||
strh r0, [r4, 0x1E]\n\
|
||||
_08159342:\n\
|
||||
ldr r1, =gUnknown_02038440\n\
|
||||
ldrh r0, [r4, 0x1E]\n\
|
||||
strb r0, [r1]\n\
|
||||
movs r3, 0x1E\n\
|
||||
ldrsh r1, [r4, r3]\n\
|
||||
movs r2, 0xC\n\
|
||||
ldrsh r0, [r4, r2]\n\
|
||||
cmp r1, r0\n\
|
||||
bne _0815935A\n\
|
||||
adds r0, r5, 0\n\
|
||||
bl DestroyAnimVisualTask\n\
|
||||
ldr r1, =gUnknown_02038440\n\
|
||||
ldrh r0, [r4, 0x1E]\n\
|
||||
strb r0, [r1]\n\
|
||||
movs r3, 0x1E\n\
|
||||
ldrsh r1, [r4, r3]\n\
|
||||
movs r2, 0xC\n\
|
||||
ldrsh r0, [r4, r2]\n\
|
||||
cmp r1, r0\n\
|
||||
bne _0815935A\n\
|
||||
adds r0, r5, 0\n\
|
||||
bl DestroyAnimVisualTask\n\
|
||||
_0815935A:\n\
|
||||
pop {r4,r5}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.pool");
|
||||
pop {r4,r5}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.pool");
|
||||
}
|
||||
#endif
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "contest.h"
|
||||
#include "gpu_regs.h"
|
||||
#include "graphics.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "palette.h"
|
||||
#include "sound.h"
|
||||
#include "sprite.h"
|
||||
|
1208
src/battle_dome.c
1208
src/battle_dome.c
File diff suppressed because it is too large
Load Diff
@ -10,7 +10,7 @@
|
||||
#include "palette.h"
|
||||
#include "task.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "bg.h"
|
||||
#include "gpu_regs.h"
|
||||
#include "string_util.h"
|
||||
|
@ -6,7 +6,7 @@
|
||||
#include "constants/battle_anim.h"
|
||||
#include "battle_interface.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "graphics.h"
|
||||
#include "random.h"
|
||||
#include "util.h"
|
||||
|
@ -543,11 +543,11 @@ enum
|
||||
|
||||
static const u16 sStatusIconColors[] =
|
||||
{
|
||||
RGB(24, 12, 24), // PAL_STATUS_PSN
|
||||
RGB(23, 23, 3), // PAL_STATUS_PAR
|
||||
RGB(20, 20, 17), // PAL_STATUS_SLP
|
||||
RGB(17, 22, 28), // PAL_STATUS_FRZ
|
||||
RGB(28, 14, 10) // PAL_STATUS_BRN
|
||||
[PAL_STATUS_PSN] = RGB(24, 12, 24),
|
||||
[PAL_STATUS_PAR] = RGB(23, 23, 3),
|
||||
[PAL_STATUS_SLP] = RGB(20, 20, 17),
|
||||
[PAL_STATUS_FRZ] = RGB(17, 22, 28),
|
||||
[PAL_STATUS_BRN] = RGB(28, 14, 10),
|
||||
};
|
||||
|
||||
static const struct WindowTemplate sHealthboxWindowTemplate = {0, 0, 0, 8, 2, 0, 0}; // width = 8, height = 2
|
||||
@ -647,225 +647,225 @@ NAKED
|
||||
static void sub_8072308(s16 arg0, u16 *arg1, u8 arg2)
|
||||
{
|
||||
asm(".syntax unified\n\
|
||||
push {r4-r7,lr}\n\
|
||||
mov r7, r10\n\
|
||||
mov r6, r9\n\
|
||||
mov r5, r8\n\
|
||||
push {r5-r7}\n\
|
||||
sub sp, 0x4\n\
|
||||
adds r7, r1, 0\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r5, r0, 16\n\
|
||||
lsls r2, 24\n\
|
||||
lsrs r2, 24\n\
|
||||
mov r10, r2\n\
|
||||
movs r3, 0\n\
|
||||
movs r2, 0\n\
|
||||
push {r4-r7,lr}\n\
|
||||
mov r7, r10\n\
|
||||
mov r6, r9\n\
|
||||
mov r5, r8\n\
|
||||
push {r5-r7}\n\
|
||||
sub sp, 0x4\n\
|
||||
adds r7, r1, 0\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r5, r0, 16\n\
|
||||
lsls r2, 24\n\
|
||||
lsrs r2, 24\n\
|
||||
mov r10, r2\n\
|
||||
movs r3, 0\n\
|
||||
movs r2, 0\n\
|
||||
_08072324:\n\
|
||||
lsls r0, r3, 24\n\
|
||||
asrs r0, 24\n\
|
||||
mov r3, sp\n\
|
||||
adds r1, r3, r0\n\
|
||||
strb r2, [r1]\n\
|
||||
adds r0, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r3, r0, 24\n\
|
||||
asrs r0, 24\n\
|
||||
cmp r0, 0x3\n\
|
||||
ble _08072324\n\
|
||||
movs r3, 0x3\n\
|
||||
movs r0, 0x1\n\
|
||||
negs r0, r0\n\
|
||||
mov r9, r0\n\
|
||||
mov r8, sp\n\
|
||||
lsls r0, r3, 24\n\
|
||||
asrs r0, 24\n\
|
||||
mov r3, sp\n\
|
||||
adds r1, r3, r0\n\
|
||||
strb r2, [r1]\n\
|
||||
adds r0, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r3, r0, 24\n\
|
||||
asrs r0, 24\n\
|
||||
cmp r0, 0x3\n\
|
||||
ble _08072324\n\
|
||||
movs r3, 0x3\n\
|
||||
movs r0, 0x1\n\
|
||||
negs r0, r0\n\
|
||||
mov r9, r0\n\
|
||||
mov r8, sp\n\
|
||||
_08072344:\n\
|
||||
lsls r0, r5, 16\n\
|
||||
asrs r6, r0, 16\n\
|
||||
cmp r6, 0\n\
|
||||
ble _08072372\n\
|
||||
lsls r4, r3, 24\n\
|
||||
asrs r4, 24\n\
|
||||
mov r1, sp\n\
|
||||
adds r5, r1, r4\n\
|
||||
adds r0, r6, 0\n\
|
||||
movs r1, 0xA\n\
|
||||
bl __modsi3\n\
|
||||
strb r0, [r5]\n\
|
||||
adds r0, r6, 0\n\
|
||||
movs r1, 0xA\n\
|
||||
bl __divsi3\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r5, r0, 16\n\
|
||||
subs r4, 0x1\n\
|
||||
lsls r4, 24\n\
|
||||
lsrs r3, r4, 24\n\
|
||||
b _08072344\n\
|
||||
lsls r0, r5, 16\n\
|
||||
asrs r6, r0, 16\n\
|
||||
cmp r6, 0\n\
|
||||
ble _08072372\n\
|
||||
lsls r4, r3, 24\n\
|
||||
asrs r4, 24\n\
|
||||
mov r1, sp\n\
|
||||
adds r5, r1, r4\n\
|
||||
adds r0, r6, 0\n\
|
||||
movs r1, 0xA\n\
|
||||
bl __modsi3\n\
|
||||
strb r0, [r5]\n\
|
||||
adds r0, r6, 0\n\
|
||||
movs r1, 0xA\n\
|
||||
bl __divsi3\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r5, r0, 16\n\
|
||||
subs r4, 0x1\n\
|
||||
lsls r4, 24\n\
|
||||
lsrs r3, r4, 24\n\
|
||||
b _08072344\n\
|
||||
_08072372:\n\
|
||||
lsls r1, r3, 24\n\
|
||||
asrs r0, r1, 24\n\
|
||||
cmp r0, r9\n\
|
||||
ble _08072396\n\
|
||||
movs r4, 0xFF\n\
|
||||
movs r3, 0x1\n\
|
||||
negs r3, r3\n\
|
||||
lsls r1, r3, 24\n\
|
||||
asrs r0, r1, 24\n\
|
||||
cmp r0, r9\n\
|
||||
ble _08072396\n\
|
||||
movs r4, 0xFF\n\
|
||||
movs r3, 0x1\n\
|
||||
negs r3, r3\n\
|
||||
_08072380:\n\
|
||||
asrs r2, r1, 24\n\
|
||||
mov r5, sp\n\
|
||||
adds r1, r5, r2\n\
|
||||
ldrb r0, [r1]\n\
|
||||
orrs r0, r4\n\
|
||||
strb r0, [r1]\n\
|
||||
subs r2, 0x1\n\
|
||||
lsls r1, r2, 24\n\
|
||||
asrs r0, r1, 24\n\
|
||||
cmp r0, r3\n\
|
||||
bgt _08072380\n\
|
||||
asrs r2, r1, 24\n\
|
||||
mov r5, sp\n\
|
||||
adds r1, r5, r2\n\
|
||||
ldrb r0, [r1]\n\
|
||||
orrs r0, r4\n\
|
||||
strb r0, [r1]\n\
|
||||
subs r2, 0x1\n\
|
||||
lsls r1, r2, 24\n\
|
||||
asrs r0, r1, 24\n\
|
||||
cmp r0, r3\n\
|
||||
bgt _08072380\n\
|
||||
_08072396:\n\
|
||||
mov r1, r8\n\
|
||||
ldrb r0, [r1, 0x3]\n\
|
||||
cmp r0, 0xFF\n\
|
||||
bne _080723A2\n\
|
||||
movs r0, 0\n\
|
||||
strb r0, [r1, 0x3]\n\
|
||||
mov r1, r8\n\
|
||||
ldrb r0, [r1, 0x3]\n\
|
||||
cmp r0, 0xFF\n\
|
||||
bne _080723A2\n\
|
||||
movs r0, 0\n\
|
||||
strb r0, [r1, 0x3]\n\
|
||||
_080723A2:\n\
|
||||
mov r2, r10\n\
|
||||
cmp r2, 0\n\
|
||||
bne _08072432\n\
|
||||
movs r3, 0\n\
|
||||
movs r1, 0\n\
|
||||
movs r6, 0xFC\n\
|
||||
lsls r6, 8\n\
|
||||
movs r5, 0x1E\n\
|
||||
mov r12, r5\n\
|
||||
mov r2, r10\n\
|
||||
cmp r2, 0\n\
|
||||
bne _08072432\n\
|
||||
movs r3, 0\n\
|
||||
movs r1, 0\n\
|
||||
movs r6, 0xFC\n\
|
||||
lsls r6, 8\n\
|
||||
movs r5, 0x1E\n\
|
||||
mov r12, r5\n\
|
||||
_080723B4:\n\
|
||||
lsls r1, 24\n\
|
||||
asrs r2, r1, 24\n\
|
||||
mov r0, sp\n\
|
||||
adds r5, r0, r2\n\
|
||||
ldrb r0, [r5]\n\
|
||||
mov r8, r1\n\
|
||||
cmp r0, 0xFF\n\
|
||||
bne _080723EA\n\
|
||||
lsls r1, r2, 1\n\
|
||||
adds r1, r7\n\
|
||||
ldrh r2, [r1]\n\
|
||||
adds r0, r6, 0\n\
|
||||
ands r0, r2\n\
|
||||
mov r2, r12\n\
|
||||
orrs r0, r2\n\
|
||||
strh r0, [r1]\n\
|
||||
lsls r3, 24\n\
|
||||
asrs r1, r3, 23\n\
|
||||
adds r1, r7\n\
|
||||
adds r1, 0x40\n\
|
||||
ldrh r2, [r1]\n\
|
||||
adds r0, r6, 0\n\
|
||||
ands r0, r2\n\
|
||||
mov r5, r12\n\
|
||||
orrs r0, r5\n\
|
||||
strh r0, [r1]\n\
|
||||
b _0807241A\n\
|
||||
lsls r1, 24\n\
|
||||
asrs r2, r1, 24\n\
|
||||
mov r0, sp\n\
|
||||
adds r5, r0, r2\n\
|
||||
ldrb r0, [r5]\n\
|
||||
mov r8, r1\n\
|
||||
cmp r0, 0xFF\n\
|
||||
bne _080723EA\n\
|
||||
lsls r1, r2, 1\n\
|
||||
adds r1, r7\n\
|
||||
ldrh r2, [r1]\n\
|
||||
adds r0, r6, 0\n\
|
||||
ands r0, r2\n\
|
||||
mov r2, r12\n\
|
||||
orrs r0, r2\n\
|
||||
strh r0, [r1]\n\
|
||||
lsls r3, 24\n\
|
||||
asrs r1, r3, 23\n\
|
||||
adds r1, r7\n\
|
||||
adds r1, 0x40\n\
|
||||
ldrh r2, [r1]\n\
|
||||
adds r0, r6, 0\n\
|
||||
ands r0, r2\n\
|
||||
mov r5, r12\n\
|
||||
orrs r0, r5\n\
|
||||
strh r0, [r1]\n\
|
||||
b _0807241A\n\
|
||||
_080723EA:\n\
|
||||
lsls r2, 1\n\
|
||||
adds r2, r7\n\
|
||||
ldrh r0, [r2]\n\
|
||||
adds r1, r6, 0\n\
|
||||
ands r1, r0\n\
|
||||
ldrb r0, [r5]\n\
|
||||
adds r0, 0x14\n\
|
||||
orrs r1, r0\n\
|
||||
strh r1, [r2]\n\
|
||||
lsls r4, r3, 24\n\
|
||||
asrs r3, r4, 24\n\
|
||||
lsls r2, r3, 1\n\
|
||||
adds r2, r7\n\
|
||||
adds r2, 0x40\n\
|
||||
ldrh r0, [r2]\n\
|
||||
adds r1, r6, 0\n\
|
||||
ands r1, r0\n\
|
||||
mov r5, sp\n\
|
||||
adds r0, r5, r3\n\
|
||||
ldrb r0, [r0]\n\
|
||||
adds r0, 0x34\n\
|
||||
orrs r1, r0\n\
|
||||
strh r1, [r2]\n\
|
||||
adds r3, r4, 0\n\
|
||||
lsls r2, 1\n\
|
||||
adds r2, r7\n\
|
||||
ldrh r0, [r2]\n\
|
||||
adds r1, r6, 0\n\
|
||||
ands r1, r0\n\
|
||||
ldrb r0, [r5]\n\
|
||||
adds r0, 0x14\n\
|
||||
orrs r1, r0\n\
|
||||
strh r1, [r2]\n\
|
||||
lsls r4, r3, 24\n\
|
||||
asrs r3, r4, 24\n\
|
||||
lsls r2, r3, 1\n\
|
||||
adds r2, r7\n\
|
||||
adds r2, 0x40\n\
|
||||
ldrh r0, [r2]\n\
|
||||
adds r1, r6, 0\n\
|
||||
ands r1, r0\n\
|
||||
mov r5, sp\n\
|
||||
adds r0, r5, r3\n\
|
||||
ldrb r0, [r0]\n\
|
||||
adds r0, 0x34\n\
|
||||
orrs r1, r0\n\
|
||||
strh r1, [r2]\n\
|
||||
adds r3, r4, 0\n\
|
||||
_0807241A:\n\
|
||||
movs r0, 0x80\n\
|
||||
lsls r0, 17\n\
|
||||
add r0, r8\n\
|
||||
lsrs r1, r0, 24\n\
|
||||
movs r2, 0x80\n\
|
||||
lsls r2, 17\n\
|
||||
adds r0, r3, r2\n\
|
||||
lsrs r3, r0, 24\n\
|
||||
asrs r0, 24\n\
|
||||
cmp r0, 0x3\n\
|
||||
ble _080723B4\n\
|
||||
b _08072496\n\
|
||||
movs r0, 0x80\n\
|
||||
lsls r0, 17\n\
|
||||
add r0, r8\n\
|
||||
lsrs r1, r0, 24\n\
|
||||
movs r2, 0x80\n\
|
||||
lsls r2, 17\n\
|
||||
adds r0, r3, r2\n\
|
||||
lsrs r3, r0, 24\n\
|
||||
asrs r0, 24\n\
|
||||
cmp r0, 0x3\n\
|
||||
ble _080723B4\n\
|
||||
b _08072496\n\
|
||||
_08072432:\n\
|
||||
movs r3, 0\n\
|
||||
movs r4, 0xFC\n\
|
||||
lsls r4, 8\n\
|
||||
movs r6, 0x1E\n\
|
||||
movs r3, 0\n\
|
||||
movs r4, 0xFC\n\
|
||||
lsls r4, 8\n\
|
||||
movs r6, 0x1E\n\
|
||||
_0807243A:\n\
|
||||
lsls r1, r3, 24\n\
|
||||
asrs r2, r1, 24\n\
|
||||
mov r3, sp\n\
|
||||
adds r5, r3, r2\n\
|
||||
ldrb r0, [r5]\n\
|
||||
adds r3, r1, 0\n\
|
||||
cmp r0, 0xFF\n\
|
||||
bne _08072466\n\
|
||||
lsls r1, r2, 1\n\
|
||||
adds r1, r7\n\
|
||||
ldrh r2, [r1]\n\
|
||||
adds r0, r4, 0\n\
|
||||
ands r0, r2\n\
|
||||
orrs r0, r6\n\
|
||||
strh r0, [r1]\n\
|
||||
adds r1, 0x40\n\
|
||||
ldrh r2, [r1]\n\
|
||||
adds r0, r4, 0\n\
|
||||
ands r0, r2\n\
|
||||
orrs r0, r6\n\
|
||||
strh r0, [r1]\n\
|
||||
b _08072488\n\
|
||||
lsls r1, r3, 24\n\
|
||||
asrs r2, r1, 24\n\
|
||||
mov r3, sp\n\
|
||||
adds r5, r3, r2\n\
|
||||
ldrb r0, [r5]\n\
|
||||
adds r3, r1, 0\n\
|
||||
cmp r0, 0xFF\n\
|
||||
bne _08072466\n\
|
||||
lsls r1, r2, 1\n\
|
||||
adds r1, r7\n\
|
||||
ldrh r2, [r1]\n\
|
||||
adds r0, r4, 0\n\
|
||||
ands r0, r2\n\
|
||||
orrs r0, r6\n\
|
||||
strh r0, [r1]\n\
|
||||
adds r1, 0x40\n\
|
||||
ldrh r2, [r1]\n\
|
||||
adds r0, r4, 0\n\
|
||||
ands r0, r2\n\
|
||||
orrs r0, r6\n\
|
||||
strh r0, [r1]\n\
|
||||
b _08072488\n\
|
||||
_08072466:\n\
|
||||
lsls r2, 1\n\
|
||||
adds r2, r7\n\
|
||||
ldrh r0, [r2]\n\
|
||||
adds r1, r4, 0\n\
|
||||
ands r1, r0\n\
|
||||
ldrb r0, [r5]\n\
|
||||
adds r0, 0x14\n\
|
||||
orrs r1, r0\n\
|
||||
strh r1, [r2]\n\
|
||||
adds r2, 0x40\n\
|
||||
ldrh r0, [r2]\n\
|
||||
adds r1, r4, 0\n\
|
||||
ands r1, r0\n\
|
||||
ldrb r0, [r5]\n\
|
||||
adds r0, 0x34\n\
|
||||
orrs r1, r0\n\
|
||||
strh r1, [r2]\n\
|
||||
lsls r2, 1\n\
|
||||
adds r2, r7\n\
|
||||
ldrh r0, [r2]\n\
|
||||
adds r1, r4, 0\n\
|
||||
ands r1, r0\n\
|
||||
ldrb r0, [r5]\n\
|
||||
adds r0, 0x14\n\
|
||||
orrs r1, r0\n\
|
||||
strh r1, [r2]\n\
|
||||
adds r2, 0x40\n\
|
||||
ldrh r0, [r2]\n\
|
||||
adds r1, r4, 0\n\
|
||||
ands r1, r0\n\
|
||||
ldrb r0, [r5]\n\
|
||||
adds r0, 0x34\n\
|
||||
orrs r1, r0\n\
|
||||
strh r1, [r2]\n\
|
||||
_08072488:\n\
|
||||
movs r5, 0x80\n\
|
||||
lsls r5, 17\n\
|
||||
adds r0, r3, r5\n\
|
||||
lsrs r3, r0, 24\n\
|
||||
asrs r0, 24\n\
|
||||
cmp r0, 0x3\n\
|
||||
ble _0807243A\n\
|
||||
movs r5, 0x80\n\
|
||||
lsls r5, 17\n\
|
||||
adds r0, r3, r5\n\
|
||||
lsrs r3, r0, 24\n\
|
||||
asrs r0, 24\n\
|
||||
cmp r0, 0x3\n\
|
||||
ble _0807243A\n\
|
||||
_08072496:\n\
|
||||
add sp, 0x4\n\
|
||||
pop {r3-r5}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
mov r10, r5\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
add sp, 0x4\n\
|
||||
pop {r3-r5}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
mov r10, r5\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.syntax divided");
|
||||
}
|
||||
|
||||
|
@ -23,7 +23,7 @@
|
||||
#include "link_rfu.h"
|
||||
#include "load_save.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "m4a.h"
|
||||
#include "palette.h"
|
||||
#include "party_menu.h"
|
||||
@ -507,35 +507,35 @@ const struct TrainerMoney gTrainerMoneyTable[] =
|
||||
|
||||
static void (* const sTurnActionsFuncsTable[])(void) =
|
||||
{
|
||||
HandleAction_UseMove, // B_ACTION_USE_MOVE
|
||||
HandleAction_UseItem, // B_ACTION_USE_ITEM
|
||||
HandleAction_Switch, // B_ACTION_SWITCH
|
||||
HandleAction_Run, // B_ACTION_RUN
|
||||
HandleAction_WatchesCarefully, // B_ACTION_SAFARI_WATCH_CAREFULLY
|
||||
HandleAction_SafariZoneBallThrow, // B_ACTION_SAFARI_BALL
|
||||
HandleAction_ThrowPokeblock, // B_ACTION_SAFARI_POKEBLOCK
|
||||
HandleAction_GoNear, // B_ACTION_SAFARI_GO_NEAR
|
||||
HandleAction_SafariZoneRun, // B_ACTION_SAFARI_RUN
|
||||
HandleAction_WallyBallThrow, // B_ACTION_WALLY_THROW
|
||||
HandleAction_RunBattleScript, // B_ACTION_EXEC_SCRIPT
|
||||
HandleAction_Action11, // not sure about this one
|
||||
HandleAction_ActionFinished, // B_ACTION_FINISHED
|
||||
HandleAction_NothingIsFainted, // B_ACTION_NOTHING_FAINTED
|
||||
[B_ACTION_USE_MOVE] = HandleAction_UseMove,
|
||||
[B_ACTION_USE_ITEM] = HandleAction_UseItem,
|
||||
[B_ACTION_SWITCH] = HandleAction_Switch,
|
||||
[B_ACTION_RUN] = HandleAction_Run,
|
||||
[B_ACTION_SAFARI_WATCH_CAREFULLY] = HandleAction_WatchesCarefully,
|
||||
[B_ACTION_SAFARI_BALL] = HandleAction_SafariZoneBallThrow,
|
||||
[B_ACTION_SAFARI_POKEBLOCK] = HandleAction_ThrowPokeblock,
|
||||
[B_ACTION_SAFARI_GO_NEAR] = HandleAction_GoNear,
|
||||
[B_ACTION_SAFARI_RUN] = HandleAction_SafariZoneRun,
|
||||
[B_ACTION_WALLY_THROW] = HandleAction_WallyBallThrow,
|
||||
[B_ACTION_EXEC_SCRIPT] = HandleAction_RunBattleScript,
|
||||
[11] = HandleAction_Action11, // not sure about this one
|
||||
[B_ACTION_FINISHED] = HandleAction_ActionFinished,
|
||||
[B_ACTION_NOTHING_FAINTED] = HandleAction_NothingIsFainted,
|
||||
};
|
||||
|
||||
static void (* const sEndTurnFuncsTable[])(void) =
|
||||
{
|
||||
HandleEndTurn_ContinueBattle, // battle outcome 0
|
||||
HandleEndTurn_BattleWon, // B_OUTCOME_WON
|
||||
HandleEndTurn_BattleLost, // B_OUTCOME_LOST
|
||||
HandleEndTurn_BattleLost, // B_OUTCOME_DREW
|
||||
HandleEndTurn_RanFromBattle, // B_OUTCOME_RAN
|
||||
HandleEndTurn_FinishBattle, // B_OUTCOME_PLAYER_TELEPORTED
|
||||
HandleEndTurn_MonFled, // B_OUTCOME_MON_FLED
|
||||
HandleEndTurn_FinishBattle, // B_OUTCOME_CAUGHT
|
||||
HandleEndTurn_FinishBattle, // B_OUTCOME_NO_SAFARI_BALLS
|
||||
HandleEndTurn_FinishBattle, // B_OUTCOME_FORFEITED
|
||||
HandleEndTurn_FinishBattle, // B_OUTCOME_MON_TELEPORTED
|
||||
[0] = HandleEndTurn_ContinueBattle, //B_OUTCOME_NONE?
|
||||
[B_OUTCOME_WON] = HandleEndTurn_BattleWon,
|
||||
[B_OUTCOME_LOST] = HandleEndTurn_BattleLost,
|
||||
[B_OUTCOME_DREW] = HandleEndTurn_BattleLost,
|
||||
[B_OUTCOME_RAN] = HandleEndTurn_RanFromBattle,
|
||||
[B_OUTCOME_PLAYER_TELEPORTED] = HandleEndTurn_FinishBattle,
|
||||
[B_OUTCOME_MON_FLED] = HandleEndTurn_MonFled,
|
||||
[B_OUTCOME_CAUGHT] = HandleEndTurn_FinishBattle,
|
||||
[B_OUTCOME_NO_SAFARI_BALLS] = HandleEndTurn_FinishBattle,
|
||||
[B_OUTCOME_FORFEITED] = HandleEndTurn_FinishBattle,
|
||||
[B_OUTCOME_MON_TELEPORTED] = HandleEndTurn_FinishBattle,
|
||||
};
|
||||
|
||||
const u8 gStatusConditionString_PoisonJpn[8] = _("どく$$$$$");
|
||||
@ -3610,85 +3610,85 @@ NAKED
|
||||
static void BattleIntroOpponent1SendsOutMonAnimation(void)
|
||||
{
|
||||
asm(".syntax unified\n\
|
||||
push {r4-r6,lr}\n\
|
||||
ldr r0, =gBattleTypeFlags\n\
|
||||
ldr r2, [r0]\n\
|
||||
movs r0, 0x80\n\
|
||||
lsls r0, 17\n\
|
||||
ands r0, r2\n\
|
||||
cmp r0, 0\n\
|
||||
beq _0803B298\n\
|
||||
movs r0, 0x80\n\
|
||||
lsls r0, 18\n\
|
||||
ands r0, r2\n\
|
||||
cmp r0, 0\n\
|
||||
beq _0803B298\n\
|
||||
movs r1, 0x80\n\
|
||||
lsls r1, 24\n\
|
||||
ands r1, r2\n\
|
||||
negs r0, r1\n\
|
||||
orrs r0, r1\n\
|
||||
lsrs r5, r0, 31\n\
|
||||
b _0803B29A\n\
|
||||
.pool\n\
|
||||
push {r4-r6,lr}\n\
|
||||
ldr r0, =gBattleTypeFlags\n\
|
||||
ldr r2, [r0]\n\
|
||||
movs r0, 0x80\n\
|
||||
lsls r0, 17\n\
|
||||
ands r0, r2\n\
|
||||
cmp r0, 0\n\
|
||||
beq _0803B298\n\
|
||||
movs r0, 0x80\n\
|
||||
lsls r0, 18\n\
|
||||
ands r0, r2\n\
|
||||
cmp r0, 0\n\
|
||||
beq _0803B298\n\
|
||||
movs r1, 0x80\n\
|
||||
lsls r1, 24\n\
|
||||
ands r1, r2\n\
|
||||
negs r0, r1\n\
|
||||
orrs r0, r1\n\
|
||||
lsrs r5, r0, 31\n\
|
||||
b _0803B29A\n\
|
||||
.pool\n\
|
||||
_0803B288:\n\
|
||||
ldr r1, =gBattleMainFunc\n\
|
||||
ldr r0, =BattleIntroOpponent2SendsOutMonAnimation\n\
|
||||
b _0803B2F0\n\
|
||||
.pool\n\
|
||||
ldr r1, =gBattleMainFunc\n\
|
||||
ldr r0, =BattleIntroOpponent2SendsOutMonAnimation\n\
|
||||
b _0803B2F0\n\
|
||||
.pool\n\
|
||||
_0803B298:\n\
|
||||
movs r5, 0x1\n\
|
||||
movs r5, 0x1\n\
|
||||
_0803B29A:\n\
|
||||
ldr r0, =gBattleControllerExecFlags\n\
|
||||
ldr r2, [r0]\n\
|
||||
cmp r2, 0\n\
|
||||
bne _0803B2F2\n\
|
||||
ldr r0, =gActiveBattler\n\
|
||||
strb r2, [r0]\n\
|
||||
ldr r1, =gBattlersCount\n\
|
||||
adds r4, r0, 0\n\
|
||||
ldrb r1, [r1]\n\
|
||||
cmp r2, r1\n\
|
||||
bcs _0803B2EC\n\
|
||||
adds r6, r4, 0\n\
|
||||
ldr r0, =gBattleControllerExecFlags\n\
|
||||
ldr r2, [r0]\n\
|
||||
cmp r2, 0\n\
|
||||
bne _0803B2F2\n\
|
||||
ldr r0, =gActiveBattler\n\
|
||||
strb r2, [r0]\n\
|
||||
ldr r1, =gBattlersCount\n\
|
||||
adds r4, r0, 0\n\
|
||||
ldrb r1, [r1]\n\
|
||||
cmp r2, r1\n\
|
||||
bcs _0803B2EC\n\
|
||||
adds r6, r4, 0\n\
|
||||
_0803B2B2:\n\
|
||||
ldrb r0, [r4]\n\
|
||||
bl GetBattlerPosition\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
cmp r0, r5\n\
|
||||
bne _0803B2D8\n\
|
||||
movs r0, 0\n\
|
||||
bl BtlController_EmitIntroTrainerBallThrow\n\
|
||||
ldrb r0, [r4]\n\
|
||||
bl MarkBattlerForControllerExec\n\
|
||||
ldr r0, =gBattleTypeFlags\n\
|
||||
ldr r0, [r0]\n\
|
||||
ldr r1, =0x00008040\n\
|
||||
ands r0, r1\n\
|
||||
cmp r0, 0\n\
|
||||
bne _0803B288\n\
|
||||
ldrb r0, [r4]\n\
|
||||
bl GetBattlerPosition\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
cmp r0, r5\n\
|
||||
bne _0803B2D8\n\
|
||||
movs r0, 0\n\
|
||||
bl BtlController_EmitIntroTrainerBallThrow\n\
|
||||
ldrb r0, [r4]\n\
|
||||
bl MarkBattlerForControllerExec\n\
|
||||
ldr r0, =gBattleTypeFlags\n\
|
||||
ldr r0, [r0]\n\
|
||||
ldr r1, =0x00008040\n\
|
||||
ands r0, r1\n\
|
||||
cmp r0, 0\n\
|
||||
bne _0803B288\n\
|
||||
_0803B2D8:\n\
|
||||
ldrb r0, [r6]\n\
|
||||
adds r0, 0x1\n\
|
||||
strb r0, [r6]\n\
|
||||
ldr r1, =gBattlersCount\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
ldr r4, =gActiveBattler\n\
|
||||
ldrb r1, [r1]\n\
|
||||
cmp r0, r1\n\
|
||||
bcc _0803B2B2\n\
|
||||
ldrb r0, [r6]\n\
|
||||
adds r0, 0x1\n\
|
||||
strb r0, [r6]\n\
|
||||
ldr r1, =gBattlersCount\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
ldr r4, =gActiveBattler\n\
|
||||
ldrb r1, [r1]\n\
|
||||
cmp r0, r1\n\
|
||||
bcc _0803B2B2\n\
|
||||
_0803B2EC:\n\
|
||||
ldr r1, =gBattleMainFunc\n\
|
||||
ldr r0, =BattleIntroRecordMonsToDex\n\
|
||||
ldr r1, =gBattleMainFunc\n\
|
||||
ldr r0, =BattleIntroRecordMonsToDex\n\
|
||||
_0803B2F0:\n\
|
||||
str r0, [r1]\n\
|
||||
str r0, [r1]\n\
|
||||
_0803B2F2:\n\
|
||||
pop {r4-r6}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.pool\n\
|
||||
pop {r4-r6}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.pool\n\
|
||||
.syntax divided");
|
||||
}
|
||||
#endif // NONMATCHING
|
||||
@ -4591,10 +4591,10 @@ static void sub_803CDF8(void)
|
||||
|
||||
void SwapTurnOrder(u8 id1, u8 id2)
|
||||
{
|
||||
u32 temp;
|
||||
u32 temp;
|
||||
|
||||
SWAP(gActionsByTurnOrder[id1], gActionsByTurnOrder[id2], temp);
|
||||
SWAP(gBattlerByTurnOrder[id1], gBattlerByTurnOrder[id2], temp);
|
||||
SWAP(gActionsByTurnOrder[id1], gActionsByTurnOrder[id2], temp);
|
||||
SWAP(gBattlerByTurnOrder[id1], gBattlerByTurnOrder[id2], temp);
|
||||
}
|
||||
|
||||
u8 GetWhoStrikesFirst(u8 battler1, u8 battler2, bool8 ignoreChosenMoves)
|
||||
@ -5594,7 +5594,7 @@ bool8 TryRunFromBattle(u8 battler)
|
||||
|
||||
if (holdEffect == HOLD_EFFECT_CAN_ALWAYS_RUN)
|
||||
{
|
||||
gLastUsedItem = gBattleMons[battler].item ;
|
||||
gLastUsedItem = gBattleMons[battler].item;
|
||||
gProtectStructs[battler].fleeFlag = 1;
|
||||
effect++;
|
||||
}
|
||||
|
1882
src/battle_message.c
1882
src/battle_message.c
File diff suppressed because it is too large
Load Diff
@ -9,7 +9,7 @@
|
||||
#include "task.h"
|
||||
#include "battle_tower.h"
|
||||
#include "party_menu.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "palette.h"
|
||||
#include "script.h"
|
||||
#include "battle_setup.h"
|
||||
|
@ -21,7 +21,7 @@
|
||||
#include "main.h"
|
||||
#include "load_save.h"
|
||||
#include "script.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "overworld.h"
|
||||
#include "event_scripts.h"
|
||||
#include "constants/battle_frontier.h"
|
||||
@ -1458,7 +1458,7 @@ static u16 sub_81A9F90(u8 count)
|
||||
do
|
||||
{
|
||||
trainerId = sub_8162548(challengeNum + 1, battleNum);
|
||||
for (i = 0 ; i < count; i++)
|
||||
for (i = 0; i < count; i++)
|
||||
{
|
||||
if (gSaveBlock2Ptr->frontier.field_CB4[i] == trainerId)
|
||||
break;
|
||||
@ -1470,7 +1470,7 @@ static u16 sub_81A9F90(u8 count)
|
||||
do
|
||||
{
|
||||
trainerId = sub_8162548(challengeNum, battleNum);
|
||||
for (i = 0 ; i < count; i++)
|
||||
for (i = 0; i < count; i++)
|
||||
{
|
||||
if (gSaveBlock2Ptr->frontier.field_CB4[i] == trainerId)
|
||||
break;
|
||||
|
@ -17,7 +17,7 @@
|
||||
#include "list_menu.h"
|
||||
#include "mail.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "menu.h"
|
||||
#include "menu_helpers.h"
|
||||
#include "overworld.h"
|
||||
|
@ -18,7 +18,7 @@
|
||||
#include "international_string_util.h"
|
||||
#include "sound.h"
|
||||
#include "constants/songs.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "gpu_regs.h"
|
||||
#include "constants/game_stat.h"
|
||||
|
||||
|
@ -677,45 +677,45 @@ static const u32 sStatusFlagsForMoveEffects[] =
|
||||
|
||||
static const u8* const sMoveEffectBS_Ptrs[] =
|
||||
{
|
||||
BattleScript_MoveEffectSleep, // 0
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_SLEEP
|
||||
BattleScript_MoveEffectPoison, // MOVE_EFFECT_POISON
|
||||
BattleScript_MoveEffectBurn, // MOVE_EFFECT_BURN
|
||||
BattleScript_MoveEffectFreeze, // MOVE_EFFECT_FREEZE
|
||||
BattleScript_MoveEffectParalysis, // MOVE_EFFECT_PARALYSIS
|
||||
BattleScript_MoveEffectToxic, // MOVE_EFFECT_TOXIC
|
||||
BattleScript_MoveEffectConfusion, // MOVE_EFFECT_CONFUSION
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_FLINCH
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_TRI_ATTACK
|
||||
BattleScript_MoveEffectUproar, // MOVE_EFFECT_UPROAR
|
||||
BattleScript_MoveEffectPayDay, // MOVE_EFFECT_PAYDAY
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_CHARGING
|
||||
BattleScript_MoveEffectWrap, // MOVE_EFFECT_WRAP
|
||||
BattleScript_MoveEffectRecoil, // MOVE_EFFECT_RECOIL_25
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_ATK_PLUS_1
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_DEF_PLUS_1
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_SPD_PLUS_1
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_SP_ATK_PLUS_1
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_SP_DEF_PLUS_1
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_ACC_PLUS_1
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_EVS_PLUS_1
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_ATK_MINUS_1
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_DEF_MINUS_1
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_SPD_MINUS_1
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_SP_ATK_MINUS_1
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_SP_DEF_MINUS_1
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_ACC_MINUS_1
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_EVS_MINUS_1
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_RECHARGE
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_RAGE
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_STEAL_ITEM
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_PREVENT_ESCAPE
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_NIGHTMARE
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_ALL_STATS_UP
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_RAPIDSPIN
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_REMOVE_PARALYSIS
|
||||
BattleScript_MoveEffectSleep, // MOVE_EFFECT_ATK_DEF_DOWN
|
||||
BattleScript_MoveEffectRecoil, // MOVE_EFFECT_RECOIL_33
|
||||
[0] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_SLEEP] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_POISON] = BattleScript_MoveEffectPoison,
|
||||
[MOVE_EFFECT_BURN] = BattleScript_MoveEffectBurn,
|
||||
[MOVE_EFFECT_FREEZE] = BattleScript_MoveEffectFreeze,
|
||||
[MOVE_EFFECT_PARALYSIS] = BattleScript_MoveEffectParalysis,
|
||||
[MOVE_EFFECT_TOXIC] = BattleScript_MoveEffectToxic,
|
||||
[MOVE_EFFECT_CONFUSION] = BattleScript_MoveEffectConfusion,
|
||||
[MOVE_EFFECT_FLINCH] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_TRI_ATTACK] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_UPROAR] = BattleScript_MoveEffectUproar,
|
||||
[MOVE_EFFECT_PAYDAY] = BattleScript_MoveEffectPayDay,
|
||||
[MOVE_EFFECT_CHARGING] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_WRAP] = BattleScript_MoveEffectWrap,
|
||||
[MOVE_EFFECT_RECOIL_25] = BattleScript_MoveEffectRecoil,
|
||||
[MOVE_EFFECT_ATK_PLUS_1] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_DEF_PLUS_1] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_SPD_PLUS_1] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_SP_ATK_PLUS_1] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_SP_DEF_PLUS_1] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_ACC_PLUS_1] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_EVS_PLUS_1] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_ATK_MINUS_1] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_DEF_MINUS_1] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_SPD_MINUS_1] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_SP_ATK_MINUS_1] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_SP_DEF_MINUS_1] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_ACC_MINUS_1] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_EVS_MINUS_1] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_RECHARGE] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_RAGE] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_STEAL_ITEM] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_PREVENT_ESCAPE] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_NIGHTMARE] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_ALL_STATS_UP] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_RAPIDSPIN] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_REMOVE_PARALYSIS] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_ATK_DEF_DOWN] = BattleScript_MoveEffectSleep,
|
||||
[MOVE_EFFECT_RECOIL_33] = BattleScript_MoveEffectRecoil,
|
||||
};
|
||||
|
||||
static const struct WindowTemplate sUnusedWinTemplate = {0, 1, 3, 7, 0xF, 0x1F, 0x3F};
|
||||
@ -768,26 +768,26 @@ static const u16 sProtectSuccessRates[] = {USHRT_MAX, USHRT_MAX / 2, USHRT_MAX /
|
||||
|
||||
static const u16 sMovesForbiddenToCopy[] =
|
||||
{
|
||||
MOVE_METRONOME,
|
||||
MOVE_STRUGGLE,
|
||||
MOVE_SKETCH,
|
||||
MOVE_MIMIC,
|
||||
MIMIC_FORBIDDEN_END,
|
||||
MOVE_COUNTER,
|
||||
MOVE_MIRROR_COAT,
|
||||
MOVE_PROTECT,
|
||||
MOVE_DETECT,
|
||||
MOVE_ENDURE,
|
||||
MOVE_DESTINY_BOND,
|
||||
MOVE_SLEEP_TALK,
|
||||
MOVE_THIEF,
|
||||
MOVE_FOLLOW_ME,
|
||||
MOVE_SNATCH,
|
||||
MOVE_HELPING_HAND,
|
||||
MOVE_COVET,
|
||||
MOVE_TRICK,
|
||||
MOVE_FOCUS_PUNCH,
|
||||
METRONOME_FORBIDDEN_END
|
||||
MOVE_METRONOME,
|
||||
MOVE_STRUGGLE,
|
||||
MOVE_SKETCH,
|
||||
MOVE_MIMIC,
|
||||
MIMIC_FORBIDDEN_END,
|
||||
MOVE_COUNTER,
|
||||
MOVE_MIRROR_COAT,
|
||||
MOVE_PROTECT,
|
||||
MOVE_DETECT,
|
||||
MOVE_ENDURE,
|
||||
MOVE_DESTINY_BOND,
|
||||
MOVE_SLEEP_TALK,
|
||||
MOVE_THIEF,
|
||||
MOVE_FOLLOW_ME,
|
||||
MOVE_SNATCH,
|
||||
MOVE_HELPING_HAND,
|
||||
MOVE_COVET,
|
||||
MOVE_TRICK,
|
||||
MOVE_FOCUS_PUNCH,
|
||||
METRONOME_FORBIDDEN_END
|
||||
};
|
||||
|
||||
static const u8 sFlailHpScaleToPowerTable[] =
|
||||
@ -828,38 +828,38 @@ static const u16 sWeightToDamageTable[] =
|
||||
static const u16 sPickupItems[] =
|
||||
{
|
||||
ITEM_POTION,
|
||||
ITEM_ANTIDOTE,
|
||||
ITEM_SUPER_POTION,
|
||||
ITEM_GREAT_BALL,
|
||||
ITEM_REPEL,
|
||||
ITEM_ESCAPE_ROPE,
|
||||
ITEM_X_ATTACK,
|
||||
ITEM_FULL_HEAL,
|
||||
ITEM_ULTRA_BALL,
|
||||
ITEM_HYPER_POTION,
|
||||
ITEM_RARE_CANDY,
|
||||
ITEM_PROTEIN,
|
||||
ITEM_REVIVE,
|
||||
ITEM_HP_UP,
|
||||
ITEM_FULL_RESTORE,
|
||||
ITEM_MAX_REVIVE,
|
||||
ITEM_PP_UP,
|
||||
ITEM_MAX_ELIXIR,
|
||||
ITEM_ANTIDOTE,
|
||||
ITEM_SUPER_POTION,
|
||||
ITEM_GREAT_BALL,
|
||||
ITEM_REPEL,
|
||||
ITEM_ESCAPE_ROPE,
|
||||
ITEM_X_ATTACK,
|
||||
ITEM_FULL_HEAL,
|
||||
ITEM_ULTRA_BALL,
|
||||
ITEM_HYPER_POTION,
|
||||
ITEM_RARE_CANDY,
|
||||
ITEM_PROTEIN,
|
||||
ITEM_REVIVE,
|
||||
ITEM_HP_UP,
|
||||
ITEM_FULL_RESTORE,
|
||||
ITEM_MAX_REVIVE,
|
||||
ITEM_PP_UP,
|
||||
ITEM_MAX_ELIXIR,
|
||||
};
|
||||
|
||||
static const u16 sRarePickupItems[] =
|
||||
{
|
||||
ITEM_HYPER_POTION,
|
||||
ITEM_NUGGET,
|
||||
ITEM_KINGS_ROCK,
|
||||
ITEM_FULL_RESTORE,
|
||||
ITEM_ETHER,
|
||||
ITEM_WHITE_HERB,
|
||||
ITEM_TM44_REST,
|
||||
ITEM_ELIXIR,
|
||||
ITEM_TM01_FOCUS_PUNCH,
|
||||
ITEM_LEFTOVERS,
|
||||
ITEM_TM26_EARTHQUAKE,
|
||||
ITEM_NUGGET,
|
||||
ITEM_KINGS_ROCK,
|
||||
ITEM_FULL_RESTORE,
|
||||
ITEM_ETHER,
|
||||
ITEM_WHITE_HERB,
|
||||
ITEM_TM44_REST,
|
||||
ITEM_ELIXIR,
|
||||
ITEM_TM01_FOCUS_PUNCH,
|
||||
ITEM_LEFTOVERS,
|
||||
ITEM_TM26_EARTHQUAKE,
|
||||
};
|
||||
|
||||
static const u8 sPickupProbabilities[] =
|
||||
@ -917,10 +917,10 @@ const ALIGNED(4) u8 gUnknown_0831C494[][4] =
|
||||
|
||||
static const u8 sUnknown_0831C4F8[] =
|
||||
{
|
||||
0x03, 0x00, 0x01, 0x00, 0x00, 0x01, 0x03, 0x00,
|
||||
0x01, 0x02, 0x02, 0x00, 0x03, 0x01, 0x03, 0x01,
|
||||
0x02, 0x03, 0x03, 0x02, 0x01, 0x00, 0x02, 0x02,
|
||||
0x03, 0x00, 0x00, 0x00
|
||||
0x03, 0x00, 0x01, 0x00, 0x00, 0x01, 0x03, 0x00,
|
||||
0x01, 0x02, 0x02, 0x00, 0x03, 0x01, 0x03, 0x01,
|
||||
0x02, 0x03, 0x03, 0x02, 0x01, 0x00, 0x02, 0x02,
|
||||
0x03, 0x00, 0x00, 0x00
|
||||
};
|
||||
|
||||
static void atk00_attackcanceler(void)
|
||||
@ -3403,8 +3403,8 @@ static void atk23_getexp(void)
|
||||
|
||||
PREPARE_MON_NICK_WITH_PREFIX_BUFFER(gBattleTextBuff1, gBattleStruct->expGetterBattlerId, gBattleStruct->expGetterMonId)
|
||||
|
||||
// buffer 'gained' or 'gained a boosted'
|
||||
PREPARE_STRING_BUFFER(gBattleTextBuff2, i)
|
||||
// buffer 'gained' or 'gained a boosted'
|
||||
PREPARE_STRING_BUFFER(gBattleTextBuff2, i)
|
||||
|
||||
PREPARE_WORD_NUMBER_BUFFER(gBattleTextBuff3, 5, gBattleMoveDamage)
|
||||
|
||||
@ -4490,24 +4490,24 @@ static void atk48_playstatchangeanimation(void)
|
||||
|
||||
enum
|
||||
{
|
||||
ATK49_RAGE,
|
||||
ATK49_DEFROST,
|
||||
ATK49_SYNCHRONIZE_TARGET,
|
||||
ATK49_MOVE_END_ABILITIES,
|
||||
ATK49_STATUS_IMMUNITY_ABILITIES,
|
||||
ATK49_SYNCHRONIZE_ATTACKER,
|
||||
ATK49_CHOICE_MOVE,
|
||||
ATK49_CHANGED_ITEMS,
|
||||
ATK49_ATTACKER_INVISIBLE,
|
||||
ATK49_ATTACKER_VISIBLE,
|
||||
ATK49_TARGET_VISIBLE,
|
||||
ATK49_ITEM_EFFECTS_ALL,
|
||||
ATK49_KINGSROCK_SHELLBELL,
|
||||
ATK49_SUBSTITUTE,
|
||||
ATK49_UPDATE_LAST_MOVES,
|
||||
ATK49_MIRROR_MOVE,
|
||||
ATK49_NEXT_TARGET,
|
||||
ATK49_COUNT,
|
||||
ATK49_RAGE,
|
||||
ATK49_DEFROST,
|
||||
ATK49_SYNCHRONIZE_TARGET,
|
||||
ATK49_MOVE_END_ABILITIES,
|
||||
ATK49_STATUS_IMMUNITY_ABILITIES,
|
||||
ATK49_SYNCHRONIZE_ATTACKER,
|
||||
ATK49_CHOICE_MOVE,
|
||||
ATK49_CHANGED_ITEMS,
|
||||
ATK49_ATTACKER_INVISIBLE,
|
||||
ATK49_ATTACKER_VISIBLE,
|
||||
ATK49_TARGET_VISIBLE,
|
||||
ATK49_ITEM_EFFECTS_ALL,
|
||||
ATK49_KINGSROCK_SHELLBELL,
|
||||
ATK49_SUBSTITUTE,
|
||||
ATK49_UPDATE_LAST_MOVES,
|
||||
ATK49_MIRROR_MOVE,
|
||||
ATK49_NEXT_TARGET,
|
||||
ATK49_COUNT,
|
||||
};
|
||||
|
||||
static void atk49_moveend(void)
|
||||
@ -5560,7 +5560,7 @@ static void atk52_switchineffects(void)
|
||||
gDisableStructs[gActiveBattler].truantUnknownBit = 0;
|
||||
|
||||
if (!AbilityBattleEffects(ABILITYEFFECT_ON_SWITCHIN, gActiveBattler, 0, 0, 0)
|
||||
&& !ItemBattleEffects(ITEMEFFECT_ON_SWITCH_IN, gActiveBattler, FALSE))
|
||||
&& !ItemBattleEffects(ITEMEFFECT_ON_SWITCH_IN, gActiveBattler, FALSE))
|
||||
{
|
||||
gSideStatuses[GetBattlerSide(gActiveBattler)] &= ~(SIDE_STATUS_SPIKES_DAMAGED);
|
||||
|
||||
|
@ -7,7 +7,7 @@
|
||||
#include "field_effect.h"
|
||||
#include "gpu_regs.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "overworld.h"
|
||||
#include "palette.h"
|
||||
#include "random.h"
|
||||
@ -612,32 +612,32 @@ static const s16 gUnknown_085C8CF2[] = {4, 517, -1};
|
||||
|
||||
static const s16 *const gUnknown_085C8CF8[] =
|
||||
{
|
||||
gUnknown_085C8C90,
|
||||
gUnknown_085C8CA4,
|
||||
gUnknown_085C8C98,
|
||||
gUnknown_085C8C9E,
|
||||
gUnknown_085C8CEA,
|
||||
gUnknown_085C8CE4,
|
||||
gUnknown_085C8CF2,
|
||||
gUnknown_085C8CDE
|
||||
gUnknown_085C8C90,
|
||||
gUnknown_085C8CA4,
|
||||
gUnknown_085C8C98,
|
||||
gUnknown_085C8C9E,
|
||||
gUnknown_085C8CEA,
|
||||
gUnknown_085C8CE4,
|
||||
gUnknown_085C8CF2,
|
||||
gUnknown_085C8CDE
|
||||
};
|
||||
|
||||
static const s16 *const gUnknown_085C8D18[] =
|
||||
{
|
||||
gUnknown_085C8CBC,
|
||||
gUnknown_085C8CB0,
|
||||
gUnknown_085C8CB6,
|
||||
gUnknown_085C8CAA,
|
||||
gUnknown_085C8CCA,
|
||||
gUnknown_085C8CD8,
|
||||
gUnknown_085C8CC4,
|
||||
gUnknown_085C8CD2
|
||||
gUnknown_085C8CBC,
|
||||
gUnknown_085C8CB0,
|
||||
gUnknown_085C8CB6,
|
||||
gUnknown_085C8CAA,
|
||||
gUnknown_085C8CCA,
|
||||
gUnknown_085C8CD8,
|
||||
gUnknown_085C8CC4,
|
||||
gUnknown_085C8CD2
|
||||
};
|
||||
|
||||
static const s16 *const *const gUnknown_085C8D38[] =
|
||||
{
|
||||
gUnknown_085C8CF8,
|
||||
gUnknown_085C8D18
|
||||
gUnknown_085C8CF8,
|
||||
gUnknown_085C8D18
|
||||
};
|
||||
|
||||
static const TransitionStateFunc sPhase2_Groudon_Funcs[] =
|
||||
|
594
src/battle_tv.c
594
src/battle_tv.c
@ -815,324 +815,324 @@ void TryPutLinkBattleTvShowOnAir(void)
|
||||
{
|
||||
asm_unified(
|
||||
"push {r4-r7,lr}\n\
|
||||
mov r7, r10\n\
|
||||
mov r6, r9\n\
|
||||
mov r5, r8\n\
|
||||
push {r5-r7}\n\
|
||||
sub sp, 0x20\n\
|
||||
movs r0, 0\n\
|
||||
str r0, [sp]\n\
|
||||
movs r1, 0\n\
|
||||
str r1, [sp, 0x4]\n\
|
||||
movs r2, 0\n\
|
||||
str r2, [sp, 0x8]\n\
|
||||
ldr r3, =0x00007fff\n\
|
||||
str r3, [sp, 0xC]\n\
|
||||
movs r4, 0\n\
|
||||
str r4, [sp, 0x10]\n\
|
||||
movs r7, 0\n\
|
||||
str r7, [sp, 0x14]\n\
|
||||
mov r8, r0\n\
|
||||
ldr r0, =gBattleStruct\n\
|
||||
ldr r1, [r0]\n\
|
||||
adds r0, r1, 0\n\
|
||||
adds r0, 0xB3\n\
|
||||
ldrb r0, [r0]\n\
|
||||
cmp r0, 0\n\
|
||||
beq _0817E42A\n\
|
||||
b _0817E670\n\
|
||||
mov r7, r10\n\
|
||||
mov r6, r9\n\
|
||||
mov r5, r8\n\
|
||||
push {r5-r7}\n\
|
||||
sub sp, 0x20\n\
|
||||
movs r0, 0\n\
|
||||
str r0, [sp]\n\
|
||||
movs r1, 0\n\
|
||||
str r1, [sp, 0x4]\n\
|
||||
movs r2, 0\n\
|
||||
str r2, [sp, 0x8]\n\
|
||||
ldr r3, =0x00007fff\n\
|
||||
str r3, [sp, 0xC]\n\
|
||||
movs r4, 0\n\
|
||||
str r4, [sp, 0x10]\n\
|
||||
movs r7, 0\n\
|
||||
str r7, [sp, 0x14]\n\
|
||||
mov r8, r0\n\
|
||||
ldr r0, =gBattleStruct\n\
|
||||
ldr r1, [r0]\n\
|
||||
adds r0, r1, 0\n\
|
||||
adds r0, 0xB3\n\
|
||||
ldrb r0, [r0]\n\
|
||||
cmp r0, 0\n\
|
||||
beq _0817E42A\n\
|
||||
b _0817E670\n\
|
||||
_0817E42A:\n\
|
||||
movs r2, 0xD2\n\
|
||||
lsls r2, 1\n\
|
||||
adds r2, r1\n\
|
||||
mov r10, r2\n\
|
||||
movs r6, 0\n\
|
||||
movs r2, 0xD2\n\
|
||||
lsls r2, 1\n\
|
||||
adds r2, r1\n\
|
||||
mov r10, r2\n\
|
||||
movs r6, 0\n\
|
||||
_0817E434:\n\
|
||||
movs r0, 0x64\n\
|
||||
adds r4, r6, 0\n\
|
||||
muls r4, r0\n\
|
||||
ldr r0, =gPlayerParty\n\
|
||||
adds r0, r4, r0\n\
|
||||
movs r1, 0xB\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
cmp r0, 0\n\
|
||||
beq _0817E454\n\
|
||||
mov r0, r8\n\
|
||||
adds r0, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
mov r8, r0\n\
|
||||
movs r0, 0x64\n\
|
||||
adds r4, r6, 0\n\
|
||||
muls r4, r0\n\
|
||||
ldr r0, =gPlayerParty\n\
|
||||
adds r0, r4, r0\n\
|
||||
movs r1, 0xB\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
cmp r0, 0\n\
|
||||
beq _0817E454\n\
|
||||
mov r0, r8\n\
|
||||
adds r0, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
mov r8, r0\n\
|
||||
_0817E454:\n\
|
||||
ldr r5, =gEnemyParty\n\
|
||||
adds r0, r4, r5\n\
|
||||
movs r1, 0xB\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
cmp r0, 0\n\
|
||||
beq _0817E46A\n\
|
||||
adds r0, r7, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r7, r0, 24\n\
|
||||
ldr r5, =gEnemyParty\n\
|
||||
adds r0, r4, r5\n\
|
||||
movs r1, 0xB\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
cmp r0, 0\n\
|
||||
beq _0817E46A\n\
|
||||
adds r0, r7, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r7, r0, 24\n\
|
||||
_0817E46A:\n\
|
||||
adds r6, 0x1\n\
|
||||
cmp r6, 0x5\n\
|
||||
ble _0817E434\n\
|
||||
ldr r0, =gBattleTypeFlags\n\
|
||||
ldr r0, [r0]\n\
|
||||
movs r1, 0x2\n\
|
||||
ands r0, r1\n\
|
||||
cmp r0, 0\n\
|
||||
bne _0817E47E\n\
|
||||
b _0817E670\n\
|
||||
adds r6, 0x1\n\
|
||||
cmp r6, 0x5\n\
|
||||
ble _0817E434\n\
|
||||
ldr r0, =gBattleTypeFlags\n\
|
||||
ldr r0, [r0]\n\
|
||||
movs r1, 0x2\n\
|
||||
ands r0, r1\n\
|
||||
cmp r0, 0\n\
|
||||
bne _0817E47E\n\
|
||||
b _0817E670\n\
|
||||
_0817E47E:\n\
|
||||
cmp r8, r7\n\
|
||||
beq _0817E484\n\
|
||||
b _0817E670\n\
|
||||
cmp r8, r7\n\
|
||||
beq _0817E484\n\
|
||||
b _0817E670\n\
|
||||
_0817E484:\n\
|
||||
movs r6, 0\n\
|
||||
lsls r3, r6, 1\n\
|
||||
str r3, [sp, 0x18]\n\
|
||||
movs r4, 0x64\n\
|
||||
mov r8, r4\n\
|
||||
movs r6, 0\n\
|
||||
lsls r3, r6, 1\n\
|
||||
str r3, [sp, 0x18]\n\
|
||||
movs r4, 0x64\n\
|
||||
mov r8, r4\n\
|
||||
_0817E48E:\n\
|
||||
mov r1, r8\n\
|
||||
muls r1, r6\n\
|
||||
ldr r0, =gPlayerParty\n\
|
||||
adds r4, r1, r0\n\
|
||||
adds r0, r4, 0\n\
|
||||
movs r1, 0xB\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r7, r0, 16\n\
|
||||
adds r0, r6, 0x1\n\
|
||||
mov r9, r0\n\
|
||||
cmp r7, 0\n\
|
||||
beq _0817E4EE\n\
|
||||
adds r0, r4, 0\n\
|
||||
movs r1, 0x2D\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
cmp r0, 0\n\
|
||||
bne _0817E4EE\n\
|
||||
movs r4, 0\n\
|
||||
lsls r0, r6, 3\n\
|
||||
mov r2, r10\n\
|
||||
adds r1, r0, r2\n\
|
||||
movs r3, 0x3\n\
|
||||
mov r1, r8\n\
|
||||
muls r1, r6\n\
|
||||
ldr r0, =gPlayerParty\n\
|
||||
adds r4, r1, r0\n\
|
||||
adds r0, r4, 0\n\
|
||||
movs r1, 0xB\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r7, r0, 16\n\
|
||||
adds r0, r6, 0x1\n\
|
||||
mov r9, r0\n\
|
||||
cmp r7, 0\n\
|
||||
beq _0817E4EE\n\
|
||||
adds r0, r4, 0\n\
|
||||
movs r1, 0x2D\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
cmp r0, 0\n\
|
||||
bne _0817E4EE\n\
|
||||
movs r4, 0\n\
|
||||
lsls r0, r6, 3\n\
|
||||
mov r2, r10\n\
|
||||
adds r1, r0, r2\n\
|
||||
movs r3, 0x3\n\
|
||||
_0817E4C4:\n\
|
||||
lsls r0, r4, 16\n\
|
||||
asrs r0, 16\n\
|
||||
ldrh r4, [r1]\n\
|
||||
adds r0, r4\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r4, r0, 16\n\
|
||||
adds r1, 0x2\n\
|
||||
subs r3, 0x1\n\
|
||||
cmp r3, 0\n\
|
||||
bge _0817E4C4\n\
|
||||
ldr r1, [sp, 0x8]\n\
|
||||
lsls r0, r1, 16\n\
|
||||
lsls r1, r4, 16\n\
|
||||
cmp r0, r1\n\
|
||||
bge _0817E4EE\n\
|
||||
lsls r0, r6, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
str r0, [sp, 0x10]\n\
|
||||
lsrs r1, 16\n\
|
||||
str r1, [sp, 0x8]\n\
|
||||
str r7, [sp]\n\
|
||||
lsls r0, r4, 16\n\
|
||||
asrs r0, 16\n\
|
||||
ldrh r4, [r1]\n\
|
||||
adds r0, r4\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r4, r0, 16\n\
|
||||
adds r1, 0x2\n\
|
||||
subs r3, 0x1\n\
|
||||
cmp r3, 0\n\
|
||||
bge _0817E4C4\n\
|
||||
ldr r1, [sp, 0x8]\n\
|
||||
lsls r0, r1, 16\n\
|
||||
lsls r1, r4, 16\n\
|
||||
cmp r0, r1\n\
|
||||
bge _0817E4EE\n\
|
||||
lsls r0, r6, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
str r0, [sp, 0x10]\n\
|
||||
lsrs r1, 16\n\
|
||||
str r1, [sp, 0x8]\n\
|
||||
str r7, [sp]\n\
|
||||
_0817E4EE:\n\
|
||||
mov r0, r8\n\
|
||||
muls r0, r6\n\
|
||||
ldr r2, =gEnemyParty\n\
|
||||
adds r4, r0, r2\n\
|
||||
adds r0, r4, 0\n\
|
||||
movs r1, 0xB\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r7, r0, 16\n\
|
||||
ldr r3, [sp, 0x8]\n\
|
||||
lsls r3, 16\n\
|
||||
str r3, [sp, 0x1C]\n\
|
||||
cmp r7, 0\n\
|
||||
beq _0817E5A0\n\
|
||||
adds r0, r4, 0\n\
|
||||
movs r1, 0x2D\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
cmp r0, 0\n\
|
||||
bne _0817E5A0\n\
|
||||
movs r4, 0\n\
|
||||
ldr r0, [sp, 0xC]\n\
|
||||
lsls r2, r0, 16\n\
|
||||
movs r3, 0x1\n\
|
||||
lsls r1, r3, 1\n\
|
||||
adds r1, 0x1\n\
|
||||
lsls r1, 4\n\
|
||||
lsls r0, r6, 3\n\
|
||||
adds r0, r1\n\
|
||||
mov r3, r10\n\
|
||||
adds r1, r0, r3\n\
|
||||
movs r3, 0x3\n\
|
||||
mov r0, r8\n\
|
||||
muls r0, r6\n\
|
||||
ldr r2, =gEnemyParty\n\
|
||||
adds r4, r0, r2\n\
|
||||
adds r0, r4, 0\n\
|
||||
movs r1, 0xB\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r7, r0, 16\n\
|
||||
ldr r3, [sp, 0x8]\n\
|
||||
lsls r3, 16\n\
|
||||
str r3, [sp, 0x1C]\n\
|
||||
cmp r7, 0\n\
|
||||
beq _0817E5A0\n\
|
||||
adds r0, r4, 0\n\
|
||||
movs r1, 0x2D\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
cmp r0, 0\n\
|
||||
bne _0817E5A0\n\
|
||||
movs r4, 0\n\
|
||||
ldr r0, [sp, 0xC]\n\
|
||||
lsls r2, r0, 16\n\
|
||||
movs r3, 0x1\n\
|
||||
lsls r1, r3, 1\n\
|
||||
adds r1, 0x1\n\
|
||||
lsls r1, 4\n\
|
||||
lsls r0, r6, 3\n\
|
||||
adds r0, r1\n\
|
||||
mov r3, r10\n\
|
||||
adds r1, r0, r3\n\
|
||||
movs r3, 0x3\n\
|
||||
_0817E534:\n\
|
||||
lsls r0, r4, 16\n\
|
||||
asrs r0, 16\n\
|
||||
ldrh r4, [r1]\n\
|
||||
adds r0, r4\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r4, r0, 16\n\
|
||||
adds r1, 0x2\n\
|
||||
subs r3, 0x1\n\
|
||||
cmp r3, 0\n\
|
||||
bge _0817E534\n\
|
||||
asrs r1, r2, 16\n\
|
||||
lsls r5, r4, 16\n\
|
||||
asrs r0, r5, 16\n\
|
||||
cmp r1, r0\n\
|
||||
bne _0817E590\n\
|
||||
mov r0, r8\n\
|
||||
muls r0, r6\n\
|
||||
ldr r1, =gEnemyParty\n\
|
||||
adds r0, r1\n\
|
||||
movs r1, 0x19\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
adds r4, r0, 0\n\
|
||||
ldr r2, [sp, 0x14]\n\
|
||||
mov r0, r8\n\
|
||||
muls r0, r2\n\
|
||||
ldr r3, =gEnemyParty\n\
|
||||
adds r0, r3\n\
|
||||
movs r1, 0x19\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
cmp r4, r0\n\
|
||||
bls _0817E5A0\n\
|
||||
b _0817E594\n\
|
||||
.pool\n\
|
||||
lsls r0, r4, 16\n\
|
||||
asrs r0, 16\n\
|
||||
ldrh r4, [r1]\n\
|
||||
adds r0, r4\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r4, r0, 16\n\
|
||||
adds r1, 0x2\n\
|
||||
subs r3, 0x1\n\
|
||||
cmp r3, 0\n\
|
||||
bge _0817E534\n\
|
||||
asrs r1, r2, 16\n\
|
||||
lsls r5, r4, 16\n\
|
||||
asrs r0, r5, 16\n\
|
||||
cmp r1, r0\n\
|
||||
bne _0817E590\n\
|
||||
mov r0, r8\n\
|
||||
muls r0, r6\n\
|
||||
ldr r1, =gEnemyParty\n\
|
||||
adds r0, r1\n\
|
||||
movs r1, 0x19\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
adds r4, r0, 0\n\
|
||||
ldr r2, [sp, 0x14]\n\
|
||||
mov r0, r8\n\
|
||||
muls r0, r2\n\
|
||||
ldr r3, =gEnemyParty\n\
|
||||
adds r0, r3\n\
|
||||
movs r1, 0x19\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
cmp r4, r0\n\
|
||||
bls _0817E5A0\n\
|
||||
b _0817E594\n\
|
||||
.pool\n\
|
||||
_0817E590:\n\
|
||||
cmp r1, r0\n\
|
||||
ble _0817E5A0\n\
|
||||
cmp r1, r0\n\
|
||||
ble _0817E5A0\n\
|
||||
_0817E594:\n\
|
||||
lsls r0, r6, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
str r0, [sp, 0x14]\n\
|
||||
lsrs r5, 16\n\
|
||||
str r5, [sp, 0xC]\n\
|
||||
str r7, [sp, 0x4]\n\
|
||||
lsls r0, r6, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
str r0, [sp, 0x14]\n\
|
||||
lsrs r5, 16\n\
|
||||
str r5, [sp, 0xC]\n\
|
||||
str r7, [sp, 0x4]\n\
|
||||
_0817E5A0:\n\
|
||||
mov r6, r9\n\
|
||||
cmp r6, 0x5\n\
|
||||
bgt _0817E5A8\n\
|
||||
b _0817E48E\n\
|
||||
mov r6, r9\n\
|
||||
cmp r6, 0x5\n\
|
||||
bgt _0817E5A8\n\
|
||||
b _0817E48E\n\
|
||||
_0817E5A8:\n\
|
||||
movs r4, 0\n\
|
||||
movs r6, 0\n\
|
||||
movs r3, 0\n\
|
||||
ldr r5, =gPlayerParty\n\
|
||||
ldr r7, [sp, 0x10]\n\
|
||||
lsls r0, r7, 3\n\
|
||||
mov r1, r10\n\
|
||||
adds r2, r0, r1\n\
|
||||
movs r4, 0\n\
|
||||
movs r6, 0\n\
|
||||
movs r3, 0\n\
|
||||
ldr r5, =gPlayerParty\n\
|
||||
ldr r7, [sp, 0x10]\n\
|
||||
lsls r0, r7, 3\n\
|
||||
mov r1, r10\n\
|
||||
adds r2, r0, r1\n\
|
||||
_0817E5B8:\n\
|
||||
lsls r0, r4, 16\n\
|
||||
asrs r0, 16\n\
|
||||
movs r7, 0\n\
|
||||
ldrsh r1, [r2, r7]\n\
|
||||
cmp r0, r1\n\
|
||||
bge _0817E5C8\n\
|
||||
ldrh r4, [r2]\n\
|
||||
adds r6, r3, 0\n\
|
||||
lsls r0, r4, 16\n\
|
||||
asrs r0, 16\n\
|
||||
movs r7, 0\n\
|
||||
ldrsh r1, [r2, r7]\n\
|
||||
cmp r0, r1\n\
|
||||
bge _0817E5C8\n\
|
||||
ldrh r4, [r2]\n\
|
||||
adds r6, r3, 0\n\
|
||||
_0817E5C8:\n\
|
||||
adds r2, 0x2\n\
|
||||
adds r3, 0x1\n\
|
||||
cmp r3, 0x3\n\
|
||||
ble _0817E5B8\n\
|
||||
movs r0, 0x64\n\
|
||||
ldr r1, [sp, 0x10]\n\
|
||||
muls r0, r1\n\
|
||||
adds r0, r5\n\
|
||||
adds r1, r6, 0\n\
|
||||
adds r1, 0xD\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r4, r0, 16\n\
|
||||
ldr r2, [sp, 0x1C]\n\
|
||||
cmp r2, 0\n\
|
||||
beq _0817E670\n\
|
||||
cmp r4, 0\n\
|
||||
beq _0817E670\n\
|
||||
ldr r0, =gBattleTypeFlags\n\
|
||||
ldr r0, [r0]\n\
|
||||
movs r1, 0x40\n\
|
||||
ands r0, r1\n\
|
||||
cmp r0, 0\n\
|
||||
beq _0817E65C\n\
|
||||
ldr r3, [sp, 0x10]\n\
|
||||
cmp r3, 0x2\n\
|
||||
bhi _0817E620\n\
|
||||
ldr r0, =gBattleScripting\n\
|
||||
adds r0, 0x25\n\
|
||||
ldrb r0, [r0]\n\
|
||||
bl GetLinkTrainerFlankId\n\
|
||||
lsls r0, 16\n\
|
||||
cmp r0, 0\n\
|
||||
beq _0817E630\n\
|
||||
b _0817E670\n\
|
||||
.pool\n\
|
||||
adds r2, 0x2\n\
|
||||
adds r3, 0x1\n\
|
||||
cmp r3, 0x3\n\
|
||||
ble _0817E5B8\n\
|
||||
movs r0, 0x64\n\
|
||||
ldr r1, [sp, 0x10]\n\
|
||||
muls r0, r1\n\
|
||||
adds r0, r5\n\
|
||||
adds r1, r6, 0\n\
|
||||
adds r1, 0xD\n\
|
||||
movs r2, 0\n\
|
||||
bl GetMonData\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r4, r0, 16\n\
|
||||
ldr r2, [sp, 0x1C]\n\
|
||||
cmp r2, 0\n\
|
||||
beq _0817E670\n\
|
||||
cmp r4, 0\n\
|
||||
beq _0817E670\n\
|
||||
ldr r0, =gBattleTypeFlags\n\
|
||||
ldr r0, [r0]\n\
|
||||
movs r1, 0x40\n\
|
||||
ands r0, r1\n\
|
||||
cmp r0, 0\n\
|
||||
beq _0817E65C\n\
|
||||
ldr r3, [sp, 0x10]\n\
|
||||
cmp r3, 0x2\n\
|
||||
bhi _0817E620\n\
|
||||
ldr r0, =gBattleScripting\n\
|
||||
adds r0, 0x25\n\
|
||||
ldrb r0, [r0]\n\
|
||||
bl GetLinkTrainerFlankId\n\
|
||||
lsls r0, 16\n\
|
||||
cmp r0, 0\n\
|
||||
beq _0817E630\n\
|
||||
b _0817E670\n\
|
||||
.pool\n\
|
||||
_0817E620:\n\
|
||||
ldr r0, =gBattleScripting\n\
|
||||
adds r0, 0x25\n\
|
||||
ldrb r0, [r0]\n\
|
||||
bl GetLinkTrainerFlankId\n\
|
||||
lsls r0, 16\n\
|
||||
cmp r0, 0\n\
|
||||
beq _0817E670\n\
|
||||
ldr r0, =gBattleScripting\n\
|
||||
adds r0, 0x25\n\
|
||||
ldrb r0, [r0]\n\
|
||||
bl GetLinkTrainerFlankId\n\
|
||||
lsls r0, 16\n\
|
||||
cmp r0, 0\n\
|
||||
beq _0817E670\n\
|
||||
_0817E630:\n\
|
||||
movs r3, 0\n\
|
||||
ldr r7, [sp, 0x14]\n\
|
||||
cmp r7, 0x2\n\
|
||||
bls _0817E63A\n\
|
||||
movs r3, 0x1\n\
|
||||
movs r3, 0\n\
|
||||
ldr r7, [sp, 0x14]\n\
|
||||
cmp r7, 0x2\n\
|
||||
bls _0817E63A\n\
|
||||
movs r3, 0x1\n\
|
||||
_0817E63A:\n\
|
||||
lsls r0, r3, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
ldr r1, =gBattleScripting\n\
|
||||
adds r1, 0x25\n\
|
||||
ldrb r1, [r1]\n\
|
||||
bl sub_806EF84\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
adds r1, r4, 0\n\
|
||||
ldr r2, [sp]\n\
|
||||
ldr r3, [sp, 0x4]\n\
|
||||
bl PutBattleUpdateOnTheAir\n\
|
||||
b _0817E670\n\
|
||||
.pool\n\
|
||||
lsls r0, r3, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
ldr r1, =gBattleScripting\n\
|
||||
adds r1, 0x25\n\
|
||||
ldrb r1, [r1]\n\
|
||||
bl sub_806EF84\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
adds r1, r4, 0\n\
|
||||
ldr r2, [sp]\n\
|
||||
ldr r3, [sp, 0x4]\n\
|
||||
bl PutBattleUpdateOnTheAir\n\
|
||||
b _0817E670\n\
|
||||
.pool\n\
|
||||
_0817E65C:\n\
|
||||
ldr r0, =gBattleScripting\n\
|
||||
adds r0, 0x25\n\
|
||||
ldrb r1, [r0]\n\
|
||||
movs r0, 0x1\n\
|
||||
eors r0, r1\n\
|
||||
adds r1, r4, 0\n\
|
||||
ldr r2, [sp]\n\
|
||||
ldr r3, [sp, 0x4]\n\
|
||||
bl PutBattleUpdateOnTheAir\n\
|
||||
ldr r0, =gBattleScripting\n\
|
||||
adds r0, 0x25\n\
|
||||
ldrb r1, [r0]\n\
|
||||
movs r0, 0x1\n\
|
||||
eors r0, r1\n\
|
||||
adds r1, r4, 0\n\
|
||||
ldr r2, [sp]\n\
|
||||
ldr r3, [sp, 0x4]\n\
|
||||
bl PutBattleUpdateOnTheAir\n\
|
||||
_0817E670:\n\
|
||||
add sp, 0x20\n\
|
||||
pop {r3-r5}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
mov r10, r5\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.pool");
|
||||
add sp, 0x20\n\
|
||||
pop {r3-r5}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
mov r10, r5\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.pool");
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
#include "global.h"
|
||||
#include "battle.h"
|
||||
#include "battle_controllers.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "pokemon.h"
|
||||
#include "event_data.h"
|
||||
#include "constants/abilities.h"
|
||||
|
@ -12,7 +12,7 @@
|
||||
#include "bg.h"
|
||||
#include "palette.h"
|
||||
#include "decompress.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "gpu_regs.h"
|
||||
#include "text.h"
|
||||
#include "text_window.h"
|
||||
|
@ -1,7 +1,7 @@
|
||||
#include "global.h"
|
||||
#include "gpu_regs.h"
|
||||
#include "multiboot.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "bg.h"
|
||||
#include "graphics.h"
|
||||
#include "main.h"
|
||||
|
@ -21,7 +21,7 @@
|
||||
#include "string_util.h"
|
||||
#include "strings.h"
|
||||
#include "bg.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "scanline_effect.h"
|
||||
#include "gpu_regs.h"
|
||||
#include "graphics.h"
|
||||
|
@ -1,7 +1,7 @@
|
||||
#include "global.h"
|
||||
#include "gpu_regs.h"
|
||||
#include "bg.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "constants/items.h"
|
||||
#include "constants/event_objects.h"
|
||||
#include "constants/moves.h"
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "main.h"
|
||||
#include "task.h"
|
||||
#include "bg.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "window.h"
|
||||
#include "text.h"
|
||||
#include "menu.h"
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -247,253 +247,253 @@ const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_UnusedMauvilleOldM
|
||||
|
||||
|
||||
const struct EventObjectGraphicsInfo *const gEventObjectGraphicsInfoPointers[] = {
|
||||
&gEventObjectGraphicsInfo_BrendanNormal,
|
||||
&gEventObjectGraphicsInfo_BrendanMachBike,
|
||||
&gEventObjectGraphicsInfo_BrendanSurfing,
|
||||
&gEventObjectGraphicsInfo_BrendanFieldMove,
|
||||
&gEventObjectGraphicsInfo_QuintyPlump,
|
||||
&gEventObjectGraphicsInfo_NinjaBoy,
|
||||
&gEventObjectGraphicsInfo_Twin,
|
||||
&gEventObjectGraphicsInfo_Boy1,
|
||||
&gEventObjectGraphicsInfo_Girl1,
|
||||
&gEventObjectGraphicsInfo_Boy2,
|
||||
&gEventObjectGraphicsInfo_Girl2,
|
||||
&gEventObjectGraphicsInfo_LittleBoy,
|
||||
&gEventObjectGraphicsInfo_LittleGirl,
|
||||
&gEventObjectGraphicsInfo_Boy3,
|
||||
&gEventObjectGraphicsInfo_Girl3,
|
||||
&gEventObjectGraphicsInfo_RichBoy,
|
||||
&gEventObjectGraphicsInfo_Woman1,
|
||||
&gEventObjectGraphicsInfo_FatMan,
|
||||
&gEventObjectGraphicsInfo_PokefanF,
|
||||
&gEventObjectGraphicsInfo_Man1,
|
||||
&gEventObjectGraphicsInfo_Woman2,
|
||||
&gEventObjectGraphicsInfo_ExpertM,
|
||||
&gEventObjectGraphicsInfo_ExpertF,
|
||||
&gEventObjectGraphicsInfo_Man2,
|
||||
&gEventObjectGraphicsInfo_Woman3,
|
||||
&gEventObjectGraphicsInfo_PokefanM,
|
||||
&gEventObjectGraphicsInfo_Woman4,
|
||||
&gEventObjectGraphicsInfo_Cook,
|
||||
&gEventObjectGraphicsInfo_LinkReceptionist,
|
||||
&gEventObjectGraphicsInfo_OldMan,
|
||||
&gEventObjectGraphicsInfo_OldWoman,
|
||||
&gEventObjectGraphicsInfo_Camper,
|
||||
&gEventObjectGraphicsInfo_Picnicker,
|
||||
&gEventObjectGraphicsInfo_Man3,
|
||||
&gEventObjectGraphicsInfo_Woman5,
|
||||
&gEventObjectGraphicsInfo_Youngster,
|
||||
&gEventObjectGraphicsInfo_BugCatcher,
|
||||
&gEventObjectGraphicsInfo_PsychicM,
|
||||
&gEventObjectGraphicsInfo_SchoolKidM,
|
||||
&gEventObjectGraphicsInfo_Maniac,
|
||||
&gEventObjectGraphicsInfo_HexManiac,
|
||||
&gEventObjectGraphicsInfo_Rayquaza1,
|
||||
&gEventObjectGraphicsInfo_SwimmerM,
|
||||
&gEventObjectGraphicsInfo_SwimmerF,
|
||||
&gEventObjectGraphicsInfo_BlackBelt,
|
||||
&gEventObjectGraphicsInfo_Beauty,
|
||||
&gEventObjectGraphicsInfo_Scientist1,
|
||||
&gEventObjectGraphicsInfo_Lass,
|
||||
&gEventObjectGraphicsInfo_Gentleman,
|
||||
&gEventObjectGraphicsInfo_Sailor,
|
||||
&gEventObjectGraphicsInfo_Fisherman,
|
||||
&gEventObjectGraphicsInfo_RunningTriathleteM,
|
||||
&gEventObjectGraphicsInfo_RunningTriathleteF,
|
||||
&gEventObjectGraphicsInfo_TuberF,
|
||||
&gEventObjectGraphicsInfo_TuberM,
|
||||
&gEventObjectGraphicsInfo_Hiker,
|
||||
&gEventObjectGraphicsInfo_CyclingTriathleteM,
|
||||
&gEventObjectGraphicsInfo_CyclingTriathleteF,
|
||||
&gEventObjectGraphicsInfo_Nurse,
|
||||
&gEventObjectGraphicsInfo_ItemBall,
|
||||
&gEventObjectGraphicsInfo_BerryTree,
|
||||
&gEventObjectGraphicsInfo_BerryTreeEarlyStages,
|
||||
&gEventObjectGraphicsInfo_BerryTreeLateStages,
|
||||
&gEventObjectGraphicsInfo_BrendanAcroBike,
|
||||
&gEventObjectGraphicsInfo_ProfBirch,
|
||||
&gEventObjectGraphicsInfo_Man4,
|
||||
&gEventObjectGraphicsInfo_Man5,
|
||||
&gEventObjectGraphicsInfo_ReporterM,
|
||||
&gEventObjectGraphicsInfo_ReporterF,
|
||||
&gEventObjectGraphicsInfo_Bard,
|
||||
&gEventObjectGraphicsInfo_Anabel,
|
||||
&gEventObjectGraphicsInfo_Tucker,
|
||||
&gEventObjectGraphicsInfo_Greta,
|
||||
&gEventObjectGraphicsInfo_Spenser,
|
||||
&gEventObjectGraphicsInfo_Noland,
|
||||
&gEventObjectGraphicsInfo_Lucy,
|
||||
&gEventObjectGraphicsInfo_UnusedNatuDoll,
|
||||
&gEventObjectGraphicsInfo_UnusedMagnemiteDoll,
|
||||
&gEventObjectGraphicsInfo_UnusedSquirtleDoll,
|
||||
&gEventObjectGraphicsInfo_UnusedWooperDoll,
|
||||
&gEventObjectGraphicsInfo_UnusedPikachuDoll,
|
||||
&gEventObjectGraphicsInfo_UnusedPorygon2Doll,
|
||||
&gEventObjectGraphicsInfo_CuttableTree,
|
||||
&gEventObjectGraphicsInfo_MartEmployee,
|
||||
&gEventObjectGraphicsInfo_RooftopSaleWoman,
|
||||
&gEventObjectGraphicsInfo_Teala,
|
||||
&gEventObjectGraphicsInfo_BreakableRock,
|
||||
&gEventObjectGraphicsInfo_PushableBoulder,
|
||||
&gEventObjectGraphicsInfo_MrBrineysBoat,
|
||||
&gEventObjectGraphicsInfo_MayNormal,
|
||||
&gEventObjectGraphicsInfo_MayMachBike,
|
||||
&gEventObjectGraphicsInfo_MayAcroBike,
|
||||
&gEventObjectGraphicsInfo_MaySurfing,
|
||||
&gEventObjectGraphicsInfo_MayFieldMove,
|
||||
&gEventObjectGraphicsInfo_Truck,
|
||||
&gEventObjectGraphicsInfo_VigorothCarryingBox,
|
||||
&gEventObjectGraphicsInfo_VigorothFacingAway,
|
||||
&gEventObjectGraphicsInfo_BirchsBag,
|
||||
&gEventObjectGraphicsInfo_EnemyZigzagoon,
|
||||
&gEventObjectGraphicsInfo_Artist,
|
||||
&gEventObjectGraphicsInfo_RivalBrendanNormal,
|
||||
&gEventObjectGraphicsInfo_RivalBrendanMachBike,
|
||||
&gEventObjectGraphicsInfo_RivalBrendanAcroBike,
|
||||
&gEventObjectGraphicsInfo_RivalBrendanSurfing,
|
||||
&gEventObjectGraphicsInfo_RivalBrendanFieldMove,
|
||||
&gEventObjectGraphicsInfo_RivalMayNormal,
|
||||
&gEventObjectGraphicsInfo_RivalMayMachBike,
|
||||
&gEventObjectGraphicsInfo_RivalMayAcroBike,
|
||||
&gEventObjectGraphicsInfo_RivalMaySurfing,
|
||||
&gEventObjectGraphicsInfo_RivalMayFieldMove,
|
||||
&gEventObjectGraphicsInfo_Cameraman,
|
||||
&gEventObjectGraphicsInfo_BrendanUnderwater,
|
||||
&gEventObjectGraphicsInfo_MayUnderwater,
|
||||
&gEventObjectGraphicsInfo_MovingBox,
|
||||
&gEventObjectGraphicsInfo_CableCar,
|
||||
&gEventObjectGraphicsInfo_Scientist2,
|
||||
&gEventObjectGraphicsInfo_DevonEmployee,
|
||||
&gEventObjectGraphicsInfo_AquaMemberM,
|
||||
&gEventObjectGraphicsInfo_AquaMemberF,
|
||||
&gEventObjectGraphicsInfo_MagmaMemberM,
|
||||
&gEventObjectGraphicsInfo_MagmaMemberF,
|
||||
&gEventObjectGraphicsInfo_Sidney,
|
||||
&gEventObjectGraphicsInfo_Phoebe,
|
||||
&gEventObjectGraphicsInfo_Glacia,
|
||||
&gEventObjectGraphicsInfo_Drake,
|
||||
&gEventObjectGraphicsInfo_Roxanne,
|
||||
&gEventObjectGraphicsInfo_Brawly,
|
||||
&gEventObjectGraphicsInfo_Wattson,
|
||||
&gEventObjectGraphicsInfo_Flannery,
|
||||
&gEventObjectGraphicsInfo_Norman,
|
||||
&gEventObjectGraphicsInfo_Winona,
|
||||
&gEventObjectGraphicsInfo_Liza,
|
||||
&gEventObjectGraphicsInfo_Tate,
|
||||
&gEventObjectGraphicsInfo_Wallace,
|
||||
&gEventObjectGraphicsInfo_Steven,
|
||||
&gEventObjectGraphicsInfo_Wally,
|
||||
&gEventObjectGraphicsInfo_RubySapphireLittleBoy,
|
||||
&gEventObjectGraphicsInfo_BrendanFishing,
|
||||
&gEventObjectGraphicsInfo_MayFishing,
|
||||
&gEventObjectGraphicsInfo_HotSpringsOldWoman,
|
||||
&gEventObjectGraphicsInfo_SSTidal,
|
||||
&gEventObjectGraphicsInfo_SubmarineShadow,
|
||||
&gEventObjectGraphicsInfo_PichuDoll,
|
||||
&gEventObjectGraphicsInfo_PikachuDoll,
|
||||
&gEventObjectGraphicsInfo_MarillDoll,
|
||||
&gEventObjectGraphicsInfo_TogepiDoll,
|
||||
&gEventObjectGraphicsInfo_CyndaquilDoll,
|
||||
&gEventObjectGraphicsInfo_ChikoritaDoll,
|
||||
&gEventObjectGraphicsInfo_TotodileDoll,
|
||||
&gEventObjectGraphicsInfo_JigglypuffDoll,
|
||||
&gEventObjectGraphicsInfo_MeowthDoll,
|
||||
&gEventObjectGraphicsInfo_ClefairyDoll,
|
||||
&gEventObjectGraphicsInfo_DittoDoll,
|
||||
&gEventObjectGraphicsInfo_SmoochumDoll,
|
||||
&gEventObjectGraphicsInfo_TreeckoDoll,
|
||||
&gEventObjectGraphicsInfo_TorchicDoll,
|
||||
&gEventObjectGraphicsInfo_MudkipDoll,
|
||||
&gEventObjectGraphicsInfo_DuskullDoll,
|
||||
&gEventObjectGraphicsInfo_WynautDoll,
|
||||
&gEventObjectGraphicsInfo_BaltoyDoll,
|
||||
&gEventObjectGraphicsInfo_KecleonDoll,
|
||||
&gEventObjectGraphicsInfo_AzurillDoll,
|
||||
&gEventObjectGraphicsInfo_SkittyDoll,
|
||||
&gEventObjectGraphicsInfo_SwabluDoll,
|
||||
&gEventObjectGraphicsInfo_GulpinDoll,
|
||||
&gEventObjectGraphicsInfo_LotadDoll,
|
||||
&gEventObjectGraphicsInfo_SeedotDoll,
|
||||
&gEventObjectGraphicsInfo_PikaCushion,
|
||||
&gEventObjectGraphicsInfo_RoundCushion,
|
||||
&gEventObjectGraphicsInfo_KissCushion,
|
||||
&gEventObjectGraphicsInfo_ZigzagCushion,
|
||||
&gEventObjectGraphicsInfo_SpinCushion,
|
||||
&gEventObjectGraphicsInfo_DiamondCushion,
|
||||
&gEventObjectGraphicsInfo_BallCushion,
|
||||
&gEventObjectGraphicsInfo_GrassCushion,
|
||||
&gEventObjectGraphicsInfo_FireCushion,
|
||||
&gEventObjectGraphicsInfo_WaterCushion,
|
||||
&gEventObjectGraphicsInfo_BigSnorlaxDoll,
|
||||
&gEventObjectGraphicsInfo_BigRhydonDoll,
|
||||
&gEventObjectGraphicsInfo_BigLaprasDoll,
|
||||
&gEventObjectGraphicsInfo_BigVenusaurDoll,
|
||||
&gEventObjectGraphicsInfo_BigCharizardDoll,
|
||||
&gEventObjectGraphicsInfo_BigBlastoiseDoll,
|
||||
&gEventObjectGraphicsInfo_BigWailmerDoll,
|
||||
&gEventObjectGraphicsInfo_BigRegirockDoll,
|
||||
&gEventObjectGraphicsInfo_BigRegiceDoll,
|
||||
&gEventObjectGraphicsInfo_BigRegisteelDoll,
|
||||
&gEventObjectGraphicsInfo_Latias,
|
||||
&gEventObjectGraphicsInfo_Latios,
|
||||
&gEventObjectGraphicsInfo_GameboyKid,
|
||||
&gEventObjectGraphicsInfo_ContestJudge,
|
||||
&gEventObjectGraphicsInfo_BrendanWatering,
|
||||
&gEventObjectGraphicsInfo_MayWatering,
|
||||
&gEventObjectGraphicsInfo_BrendanDecorating,
|
||||
&gEventObjectGraphicsInfo_MayDecorating,
|
||||
&gEventObjectGraphicsInfo_Archie,
|
||||
&gEventObjectGraphicsInfo_Maxie,
|
||||
&gEventObjectGraphicsInfo_Kyogre1,
|
||||
&gEventObjectGraphicsInfo_Groudon1,
|
||||
&gEventObjectGraphicsInfo_Fossil,
|
||||
&gEventObjectGraphicsInfo_Regirock,
|
||||
&gEventObjectGraphicsInfo_Regice,
|
||||
&gEventObjectGraphicsInfo_Registeel,
|
||||
&gEventObjectGraphicsInfo_Skitty,
|
||||
&gEventObjectGraphicsInfo_Kecleon1,
|
||||
&gEventObjectGraphicsInfo_Kyogre2,
|
||||
&gEventObjectGraphicsInfo_Groudon2,
|
||||
&gEventObjectGraphicsInfo_Rayquaza2,
|
||||
&gEventObjectGraphicsInfo_Zigzagoon,
|
||||
&gEventObjectGraphicsInfo_Pikachu,
|
||||
&gEventObjectGraphicsInfo_Azumarill,
|
||||
&gEventObjectGraphicsInfo_Wingull,
|
||||
&gEventObjectGraphicsInfo_Kecleon2,
|
||||
&gEventObjectGraphicsInfo_TuberMSwimming,
|
||||
&gEventObjectGraphicsInfo_Azurill,
|
||||
&gEventObjectGraphicsInfo_Mom,
|
||||
&gEventObjectGraphicsInfo_LinkBrendan,
|
||||
&gEventObjectGraphicsInfo_LinkMay,
|
||||
&gEventObjectGraphicsInfo_Juan,
|
||||
&gEventObjectGraphicsInfo_Scott,
|
||||
&gEventObjectGraphicsInfo_Poochyena,
|
||||
&gEventObjectGraphicsInfo_Kyogre3,
|
||||
&gEventObjectGraphicsInfo_Groudon3,
|
||||
&gEventObjectGraphicsInfo_MysteryEventDeliveryman,
|
||||
&gEventObjectGraphicsInfo_Statue,
|
||||
&gEventObjectGraphicsInfo_Kirlia,
|
||||
&gEventObjectGraphicsInfo_Dusclops,
|
||||
&gEventObjectGraphicsInfo_UnionRoomAttendant,
|
||||
&gEventObjectGraphicsInfo_Sudowoodo,
|
||||
&gEventObjectGraphicsInfo_Mew,
|
||||
&gEventObjectGraphicsInfo_Red,
|
||||
&gEventObjectGraphicsInfo_Leaf,
|
||||
&gEventObjectGraphicsInfo_Deoxys,
|
||||
&gEventObjectGraphicsInfo_BirthIslandStone,
|
||||
&gEventObjectGraphicsInfo_Brandon,
|
||||
&gEventObjectGraphicsInfo_RubySapphireBrendan,
|
||||
&gEventObjectGraphicsInfo_RubySapphireMay,
|
||||
&gEventObjectGraphicsInfo_Lugia,
|
||||
&gEventObjectGraphicsInfo_HoOh,
|
||||
&gEventObjectGraphicsInfo_BrendanNormal,
|
||||
&gEventObjectGraphicsInfo_BrendanMachBike,
|
||||
&gEventObjectGraphicsInfo_BrendanSurfing,
|
||||
&gEventObjectGraphicsInfo_BrendanFieldMove,
|
||||
&gEventObjectGraphicsInfo_QuintyPlump,
|
||||
&gEventObjectGraphicsInfo_NinjaBoy,
|
||||
&gEventObjectGraphicsInfo_Twin,
|
||||
&gEventObjectGraphicsInfo_Boy1,
|
||||
&gEventObjectGraphicsInfo_Girl1,
|
||||
&gEventObjectGraphicsInfo_Boy2,
|
||||
&gEventObjectGraphicsInfo_Girl2,
|
||||
&gEventObjectGraphicsInfo_LittleBoy,
|
||||
&gEventObjectGraphicsInfo_LittleGirl,
|
||||
&gEventObjectGraphicsInfo_Boy3,
|
||||
&gEventObjectGraphicsInfo_Girl3,
|
||||
&gEventObjectGraphicsInfo_RichBoy,
|
||||
&gEventObjectGraphicsInfo_Woman1,
|
||||
&gEventObjectGraphicsInfo_FatMan,
|
||||
&gEventObjectGraphicsInfo_PokefanF,
|
||||
&gEventObjectGraphicsInfo_Man1,
|
||||
&gEventObjectGraphicsInfo_Woman2,
|
||||
&gEventObjectGraphicsInfo_ExpertM,
|
||||
&gEventObjectGraphicsInfo_ExpertF,
|
||||
&gEventObjectGraphicsInfo_Man2,
|
||||
&gEventObjectGraphicsInfo_Woman3,
|
||||
&gEventObjectGraphicsInfo_PokefanM,
|
||||
&gEventObjectGraphicsInfo_Woman4,
|
||||
&gEventObjectGraphicsInfo_Cook,
|
||||
&gEventObjectGraphicsInfo_LinkReceptionist,
|
||||
&gEventObjectGraphicsInfo_OldMan,
|
||||
&gEventObjectGraphicsInfo_OldWoman,
|
||||
&gEventObjectGraphicsInfo_Camper,
|
||||
&gEventObjectGraphicsInfo_Picnicker,
|
||||
&gEventObjectGraphicsInfo_Man3,
|
||||
&gEventObjectGraphicsInfo_Woman5,
|
||||
&gEventObjectGraphicsInfo_Youngster,
|
||||
&gEventObjectGraphicsInfo_BugCatcher,
|
||||
&gEventObjectGraphicsInfo_PsychicM,
|
||||
&gEventObjectGraphicsInfo_SchoolKidM,
|
||||
&gEventObjectGraphicsInfo_Maniac,
|
||||
&gEventObjectGraphicsInfo_HexManiac,
|
||||
&gEventObjectGraphicsInfo_Rayquaza1,
|
||||
&gEventObjectGraphicsInfo_SwimmerM,
|
||||
&gEventObjectGraphicsInfo_SwimmerF,
|
||||
&gEventObjectGraphicsInfo_BlackBelt,
|
||||
&gEventObjectGraphicsInfo_Beauty,
|
||||
&gEventObjectGraphicsInfo_Scientist1,
|
||||
&gEventObjectGraphicsInfo_Lass,
|
||||
&gEventObjectGraphicsInfo_Gentleman,
|
||||
&gEventObjectGraphicsInfo_Sailor,
|
||||
&gEventObjectGraphicsInfo_Fisherman,
|
||||
&gEventObjectGraphicsInfo_RunningTriathleteM,
|
||||
&gEventObjectGraphicsInfo_RunningTriathleteF,
|
||||
&gEventObjectGraphicsInfo_TuberF,
|
||||
&gEventObjectGraphicsInfo_TuberM,
|
||||
&gEventObjectGraphicsInfo_Hiker,
|
||||
&gEventObjectGraphicsInfo_CyclingTriathleteM,
|
||||
&gEventObjectGraphicsInfo_CyclingTriathleteF,
|
||||
&gEventObjectGraphicsInfo_Nurse,
|
||||
&gEventObjectGraphicsInfo_ItemBall,
|
||||
&gEventObjectGraphicsInfo_BerryTree,
|
||||
&gEventObjectGraphicsInfo_BerryTreeEarlyStages,
|
||||
&gEventObjectGraphicsInfo_BerryTreeLateStages,
|
||||
&gEventObjectGraphicsInfo_BrendanAcroBike,
|
||||
&gEventObjectGraphicsInfo_ProfBirch,
|
||||
&gEventObjectGraphicsInfo_Man4,
|
||||
&gEventObjectGraphicsInfo_Man5,
|
||||
&gEventObjectGraphicsInfo_ReporterM,
|
||||
&gEventObjectGraphicsInfo_ReporterF,
|
||||
&gEventObjectGraphicsInfo_Bard,
|
||||
&gEventObjectGraphicsInfo_Anabel,
|
||||
&gEventObjectGraphicsInfo_Tucker,
|
||||
&gEventObjectGraphicsInfo_Greta,
|
||||
&gEventObjectGraphicsInfo_Spenser,
|
||||
&gEventObjectGraphicsInfo_Noland,
|
||||
&gEventObjectGraphicsInfo_Lucy,
|
||||
&gEventObjectGraphicsInfo_UnusedNatuDoll,
|
||||
&gEventObjectGraphicsInfo_UnusedMagnemiteDoll,
|
||||
&gEventObjectGraphicsInfo_UnusedSquirtleDoll,
|
||||
&gEventObjectGraphicsInfo_UnusedWooperDoll,
|
||||
&gEventObjectGraphicsInfo_UnusedPikachuDoll,
|
||||
&gEventObjectGraphicsInfo_UnusedPorygon2Doll,
|
||||
&gEventObjectGraphicsInfo_CuttableTree,
|
||||
&gEventObjectGraphicsInfo_MartEmployee,
|
||||
&gEventObjectGraphicsInfo_RooftopSaleWoman,
|
||||
&gEventObjectGraphicsInfo_Teala,
|
||||
&gEventObjectGraphicsInfo_BreakableRock,
|
||||
&gEventObjectGraphicsInfo_PushableBoulder,
|
||||
&gEventObjectGraphicsInfo_MrBrineysBoat,
|
||||
&gEventObjectGraphicsInfo_MayNormal,
|
||||
&gEventObjectGraphicsInfo_MayMachBike,
|
||||
&gEventObjectGraphicsInfo_MayAcroBike,
|
||||
&gEventObjectGraphicsInfo_MaySurfing,
|
||||
&gEventObjectGraphicsInfo_MayFieldMove,
|
||||
&gEventObjectGraphicsInfo_Truck,
|
||||
&gEventObjectGraphicsInfo_VigorothCarryingBox,
|
||||
&gEventObjectGraphicsInfo_VigorothFacingAway,
|
||||
&gEventObjectGraphicsInfo_BirchsBag,
|
||||
&gEventObjectGraphicsInfo_EnemyZigzagoon,
|
||||
&gEventObjectGraphicsInfo_Artist,
|
||||
&gEventObjectGraphicsInfo_RivalBrendanNormal,
|
||||
&gEventObjectGraphicsInfo_RivalBrendanMachBike,
|
||||
&gEventObjectGraphicsInfo_RivalBrendanAcroBike,
|
||||
&gEventObjectGraphicsInfo_RivalBrendanSurfing,
|
||||
&gEventObjectGraphicsInfo_RivalBrendanFieldMove,
|
||||
&gEventObjectGraphicsInfo_RivalMayNormal,
|
||||
&gEventObjectGraphicsInfo_RivalMayMachBike,
|
||||
&gEventObjectGraphicsInfo_RivalMayAcroBike,
|
||||
&gEventObjectGraphicsInfo_RivalMaySurfing,
|
||||
&gEventObjectGraphicsInfo_RivalMayFieldMove,
|
||||
&gEventObjectGraphicsInfo_Cameraman,
|
||||
&gEventObjectGraphicsInfo_BrendanUnderwater,
|
||||
&gEventObjectGraphicsInfo_MayUnderwater,
|
||||
&gEventObjectGraphicsInfo_MovingBox,
|
||||
&gEventObjectGraphicsInfo_CableCar,
|
||||
&gEventObjectGraphicsInfo_Scientist2,
|
||||
&gEventObjectGraphicsInfo_DevonEmployee,
|
||||
&gEventObjectGraphicsInfo_AquaMemberM,
|
||||
&gEventObjectGraphicsInfo_AquaMemberF,
|
||||
&gEventObjectGraphicsInfo_MagmaMemberM,
|
||||
&gEventObjectGraphicsInfo_MagmaMemberF,
|
||||
&gEventObjectGraphicsInfo_Sidney,
|
||||
&gEventObjectGraphicsInfo_Phoebe,
|
||||
&gEventObjectGraphicsInfo_Glacia,
|
||||
&gEventObjectGraphicsInfo_Drake,
|
||||
&gEventObjectGraphicsInfo_Roxanne,
|
||||
&gEventObjectGraphicsInfo_Brawly,
|
||||
&gEventObjectGraphicsInfo_Wattson,
|
||||
&gEventObjectGraphicsInfo_Flannery,
|
||||
&gEventObjectGraphicsInfo_Norman,
|
||||
&gEventObjectGraphicsInfo_Winona,
|
||||
&gEventObjectGraphicsInfo_Liza,
|
||||
&gEventObjectGraphicsInfo_Tate,
|
||||
&gEventObjectGraphicsInfo_Wallace,
|
||||
&gEventObjectGraphicsInfo_Steven,
|
||||
&gEventObjectGraphicsInfo_Wally,
|
||||
&gEventObjectGraphicsInfo_RubySapphireLittleBoy,
|
||||
&gEventObjectGraphicsInfo_BrendanFishing,
|
||||
&gEventObjectGraphicsInfo_MayFishing,
|
||||
&gEventObjectGraphicsInfo_HotSpringsOldWoman,
|
||||
&gEventObjectGraphicsInfo_SSTidal,
|
||||
&gEventObjectGraphicsInfo_SubmarineShadow,
|
||||
&gEventObjectGraphicsInfo_PichuDoll,
|
||||
&gEventObjectGraphicsInfo_PikachuDoll,
|
||||
&gEventObjectGraphicsInfo_MarillDoll,
|
||||
&gEventObjectGraphicsInfo_TogepiDoll,
|
||||
&gEventObjectGraphicsInfo_CyndaquilDoll,
|
||||
&gEventObjectGraphicsInfo_ChikoritaDoll,
|
||||
&gEventObjectGraphicsInfo_TotodileDoll,
|
||||
&gEventObjectGraphicsInfo_JigglypuffDoll,
|
||||
&gEventObjectGraphicsInfo_MeowthDoll,
|
||||
&gEventObjectGraphicsInfo_ClefairyDoll,
|
||||
&gEventObjectGraphicsInfo_DittoDoll,
|
||||
&gEventObjectGraphicsInfo_SmoochumDoll,
|
||||
&gEventObjectGraphicsInfo_TreeckoDoll,
|
||||
&gEventObjectGraphicsInfo_TorchicDoll,
|
||||
&gEventObjectGraphicsInfo_MudkipDoll,
|
||||
&gEventObjectGraphicsInfo_DuskullDoll,
|
||||
&gEventObjectGraphicsInfo_WynautDoll,
|
||||
&gEventObjectGraphicsInfo_BaltoyDoll,
|
||||
&gEventObjectGraphicsInfo_KecleonDoll,
|
||||
&gEventObjectGraphicsInfo_AzurillDoll,
|
||||
&gEventObjectGraphicsInfo_SkittyDoll,
|
||||
&gEventObjectGraphicsInfo_SwabluDoll,
|
||||
&gEventObjectGraphicsInfo_GulpinDoll,
|
||||
&gEventObjectGraphicsInfo_LotadDoll,
|
||||
&gEventObjectGraphicsInfo_SeedotDoll,
|
||||
&gEventObjectGraphicsInfo_PikaCushion,
|
||||
&gEventObjectGraphicsInfo_RoundCushion,
|
||||
&gEventObjectGraphicsInfo_KissCushion,
|
||||
&gEventObjectGraphicsInfo_ZigzagCushion,
|
||||
&gEventObjectGraphicsInfo_SpinCushion,
|
||||
&gEventObjectGraphicsInfo_DiamondCushion,
|
||||
&gEventObjectGraphicsInfo_BallCushion,
|
||||
&gEventObjectGraphicsInfo_GrassCushion,
|
||||
&gEventObjectGraphicsInfo_FireCushion,
|
||||
&gEventObjectGraphicsInfo_WaterCushion,
|
||||
&gEventObjectGraphicsInfo_BigSnorlaxDoll,
|
||||
&gEventObjectGraphicsInfo_BigRhydonDoll,
|
||||
&gEventObjectGraphicsInfo_BigLaprasDoll,
|
||||
&gEventObjectGraphicsInfo_BigVenusaurDoll,
|
||||
&gEventObjectGraphicsInfo_BigCharizardDoll,
|
||||
&gEventObjectGraphicsInfo_BigBlastoiseDoll,
|
||||
&gEventObjectGraphicsInfo_BigWailmerDoll,
|
||||
&gEventObjectGraphicsInfo_BigRegirockDoll,
|
||||
&gEventObjectGraphicsInfo_BigRegiceDoll,
|
||||
&gEventObjectGraphicsInfo_BigRegisteelDoll,
|
||||
&gEventObjectGraphicsInfo_Latias,
|
||||
&gEventObjectGraphicsInfo_Latios,
|
||||
&gEventObjectGraphicsInfo_GameboyKid,
|
||||
&gEventObjectGraphicsInfo_ContestJudge,
|
||||
&gEventObjectGraphicsInfo_BrendanWatering,
|
||||
&gEventObjectGraphicsInfo_MayWatering,
|
||||
&gEventObjectGraphicsInfo_BrendanDecorating,
|
||||
&gEventObjectGraphicsInfo_MayDecorating,
|
||||
&gEventObjectGraphicsInfo_Archie,
|
||||
&gEventObjectGraphicsInfo_Maxie,
|
||||
&gEventObjectGraphicsInfo_Kyogre1,
|
||||
&gEventObjectGraphicsInfo_Groudon1,
|
||||
&gEventObjectGraphicsInfo_Fossil,
|
||||
&gEventObjectGraphicsInfo_Regirock,
|
||||
&gEventObjectGraphicsInfo_Regice,
|
||||
&gEventObjectGraphicsInfo_Registeel,
|
||||
&gEventObjectGraphicsInfo_Skitty,
|
||||
&gEventObjectGraphicsInfo_Kecleon1,
|
||||
&gEventObjectGraphicsInfo_Kyogre2,
|
||||
&gEventObjectGraphicsInfo_Groudon2,
|
||||
&gEventObjectGraphicsInfo_Rayquaza2,
|
||||
&gEventObjectGraphicsInfo_Zigzagoon,
|
||||
&gEventObjectGraphicsInfo_Pikachu,
|
||||
&gEventObjectGraphicsInfo_Azumarill,
|
||||
&gEventObjectGraphicsInfo_Wingull,
|
||||
&gEventObjectGraphicsInfo_Kecleon2,
|
||||
&gEventObjectGraphicsInfo_TuberMSwimming,
|
||||
&gEventObjectGraphicsInfo_Azurill,
|
||||
&gEventObjectGraphicsInfo_Mom,
|
||||
&gEventObjectGraphicsInfo_LinkBrendan,
|
||||
&gEventObjectGraphicsInfo_LinkMay,
|
||||
&gEventObjectGraphicsInfo_Juan,
|
||||
&gEventObjectGraphicsInfo_Scott,
|
||||
&gEventObjectGraphicsInfo_Poochyena,
|
||||
&gEventObjectGraphicsInfo_Kyogre3,
|
||||
&gEventObjectGraphicsInfo_Groudon3,
|
||||
&gEventObjectGraphicsInfo_MysteryEventDeliveryman,
|
||||
&gEventObjectGraphicsInfo_Statue,
|
||||
&gEventObjectGraphicsInfo_Kirlia,
|
||||
&gEventObjectGraphicsInfo_Dusclops,
|
||||
&gEventObjectGraphicsInfo_UnionRoomAttendant,
|
||||
&gEventObjectGraphicsInfo_Sudowoodo,
|
||||
&gEventObjectGraphicsInfo_Mew,
|
||||
&gEventObjectGraphicsInfo_Red,
|
||||
&gEventObjectGraphicsInfo_Leaf,
|
||||
&gEventObjectGraphicsInfo_Deoxys,
|
||||
&gEventObjectGraphicsInfo_BirthIslandStone,
|
||||
&gEventObjectGraphicsInfo_Brandon,
|
||||
&gEventObjectGraphicsInfo_RubySapphireBrendan,
|
||||
&gEventObjectGraphicsInfo_RubySapphireMay,
|
||||
&gEventObjectGraphicsInfo_Lugia,
|
||||
&gEventObjectGraphicsInfo_HoOh,
|
||||
};
|
||||
|
||||
const struct EventObjectGraphicsInfo *const gMauvilleOldManGraphicsInfoPointers[] = {
|
||||
&gEventObjectGraphicsInfo_Bard,
|
||||
&gEventObjectGraphicsInfo_Hipster,
|
||||
&gEventObjectGraphicsInfo_Trader,
|
||||
&gEventObjectGraphicsInfo_Storyteller,
|
||||
&gEventObjectGraphicsInfo_Giddy,
|
||||
&gEventObjectGraphicsInfo_UnusedMauvilleOldMan1,
|
||||
&gEventObjectGraphicsInfo_UnusedMauvilleOldMan2,
|
||||
&gEventObjectGraphicsInfo_Bard,
|
||||
&gEventObjectGraphicsInfo_Hipster,
|
||||
&gEventObjectGraphicsInfo_Trader,
|
||||
&gEventObjectGraphicsInfo_Storyteller,
|
||||
&gEventObjectGraphicsInfo_Giddy,
|
||||
&gEventObjectGraphicsInfo_UnusedMauvilleOldMan1,
|
||||
&gEventObjectGraphicsInfo_UnusedMauvilleOldMan2,
|
||||
};
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -134,7 +134,7 @@ const u32 gItemIconPalette_GreenShard[] = INCBIN_U32("graphics/items/icon_palett
|
||||
const u32 gItemIcon_HPUp[] = INCBIN_U32("graphics/items/icons/hp_up.4bpp.lz");
|
||||
const u32 gItemIconPalette_HPUp[] = INCBIN_U32("graphics/items/icon_palettes/hp_up.gbapal.lz");
|
||||
|
||||
const u32 gItemIcon_Vitamin[] = INCBIN_U32("graphics/items/icons/vitamin.4bpp.lz");
|
||||
const u32 gItemIcon_Vitamin[] = INCBIN_U32("graphics/items/icons/vitamin.4bpp.lz");
|
||||
const u32 gItemIconPalette_Protein[] = INCBIN_U32("graphics/items/icon_palettes/protein.gbapal.lz");
|
||||
const u32 gItemIconPalette_Iron[] = INCBIN_U32("graphics/items/icon_palettes/iron.gbapal.lz");
|
||||
const u32 gItemIconPalette_Carbos[] = INCBIN_U32("graphics/items/icon_palettes/carbos.gbapal.lz");
|
||||
|
@ -311,64 +311,64 @@ const u32 *const gItemIconTable[][2] =
|
||||
[ITEM_CLAW_FOSSIL] = {gItemIcon_ClawFossil, gItemIconPalette_HoennFossil},
|
||||
[ITEM_DEVON_SCOPE] = {gItemIcon_DevonScope, gItemIconPalette_DevonScope},
|
||||
// TMs / HMs
|
||||
[ITEM_TM01] = {gItemIcon_TM, gItemIconPalette_FightingTMHM}, // TM01
|
||||
[ITEM_TM02] = {gItemIcon_TM, gItemIconPalette_DragonTMHM}, // TM02
|
||||
[ITEM_TM03] = {gItemIcon_TM, gItemIconPalette_WaterTMHM}, // TM03
|
||||
[ITEM_TM04] = {gItemIcon_TM, gItemIconPalette_PsychicTMHM}, // TM04
|
||||
[ITEM_TM05] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // TM05
|
||||
[ITEM_TM06] = {gItemIcon_TM, gItemIconPalette_PoisonTMHM}, // TM06
|
||||
[ITEM_TM07] = {gItemIcon_TM, gItemIconPalette_IceTMHM}, // TM07
|
||||
[ITEM_TM08] = {gItemIcon_TM, gItemIconPalette_FightingTMHM}, // TM08
|
||||
[ITEM_TM09] = {gItemIcon_TM, gItemIconPalette_GrassTMHM}, // TM09
|
||||
[ITEM_TM10] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // TM10
|
||||
[ITEM_TM11] = {gItemIcon_TM, gItemIconPalette_FireTMHM}, // TM11
|
||||
[ITEM_TM12] = {gItemIcon_TM, gItemIconPalette_DarkTMHM}, // TM12
|
||||
[ITEM_TM13] = {gItemIcon_TM, gItemIconPalette_IceTMHM}, // TM13
|
||||
[ITEM_TM14] = {gItemIcon_TM, gItemIconPalette_IceTMHM}, // TM14
|
||||
[ITEM_TM15] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // TM15
|
||||
[ITEM_TM16] = {gItemIcon_TM, gItemIconPalette_PsychicTMHM}, // TM16
|
||||
[ITEM_TM17] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // TM17
|
||||
[ITEM_TM18] = {gItemIcon_TM, gItemIconPalette_WaterTMHM}, // TM18
|
||||
[ITEM_TM19] = {gItemIcon_TM, gItemIconPalette_GrassTMHM}, // TM19
|
||||
[ITEM_TM20] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // TM20
|
||||
[ITEM_TM21] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // TM21
|
||||
[ITEM_TM22] = {gItemIcon_TM, gItemIconPalette_GrassTMHM}, // TM22
|
||||
[ITEM_TM23] = {gItemIcon_TM, gItemIconPalette_SteelTMHM}, // TM23
|
||||
[ITEM_TM24] = {gItemIcon_TM, gItemIconPalette_ElectricTMHM}, // TM24
|
||||
[ITEM_TM25] = {gItemIcon_TM, gItemIconPalette_ElectricTMHM}, // TM25
|
||||
[ITEM_TM26] = {gItemIcon_TM, gItemIconPalette_GroundTMHM}, // TM26
|
||||
[ITEM_TM27] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // TM27
|
||||
[ITEM_TM28] = {gItemIcon_TM, gItemIconPalette_GroundTMHM}, // TM28
|
||||
[ITEM_TM29] = {gItemIcon_TM, gItemIconPalette_PsychicTMHM}, // TM29
|
||||
[ITEM_TM30] = {gItemIcon_TM, gItemIconPalette_GhostTMHM}, // TM30
|
||||
[ITEM_TM31] = {gItemIcon_TM, gItemIconPalette_FightingTMHM}, // TM31
|
||||
[ITEM_TM32] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // TM32
|
||||
[ITEM_TM33] = {gItemIcon_TM, gItemIconPalette_PsychicTMHM}, // TM33
|
||||
[ITEM_TM34] = {gItemIcon_TM, gItemIconPalette_ElectricTMHM}, // TM34
|
||||
[ITEM_TM35] = {gItemIcon_TM, gItemIconPalette_FireTMHM}, // TM35
|
||||
[ITEM_TM36] = {gItemIcon_TM, gItemIconPalette_PoisonTMHM}, // TM36
|
||||
[ITEM_TM37] = {gItemIcon_TM, gItemIconPalette_RockTMHM}, // TM37
|
||||
[ITEM_TM38] = {gItemIcon_TM, gItemIconPalette_FireTMHM}, // TM38
|
||||
[ITEM_TM39] = {gItemIcon_TM, gItemIconPalette_RockTMHM}, // TM39
|
||||
[ITEM_TM40] = {gItemIcon_TM, gItemIconPalette_FlyingTMHM}, // TM40
|
||||
[ITEM_TM41] = {gItemIcon_TM, gItemIconPalette_DarkTMHM}, // TM41
|
||||
[ITEM_TM42] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // TM42
|
||||
[ITEM_TM43] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // TM43
|
||||
[ITEM_TM44] = {gItemIcon_TM, gItemIconPalette_PsychicTMHM}, // TM44
|
||||
[ITEM_TM45] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // TM45
|
||||
[ITEM_TM46] = {gItemIcon_TM, gItemIconPalette_DarkTMHM}, // TM46
|
||||
[ITEM_TM47] = {gItemIcon_TM, gItemIconPalette_SteelTMHM}, // TM47
|
||||
[ITEM_TM48] = {gItemIcon_TM, gItemIconPalette_PsychicTMHM}, // TM48
|
||||
[ITEM_TM49] = {gItemIcon_TM, gItemIconPalette_DarkTMHM}, // TM49
|
||||
[ITEM_TM50] = {gItemIcon_TM, gItemIconPalette_FireTMHM}, // TM50
|
||||
[ITEM_HM01] = {gItemIcon_HM, gItemIconPalette_NormalTMHM}, // HM01
|
||||
[ITEM_HM02] = {gItemIcon_HM, gItemIconPalette_FlyingTMHM}, // HM02
|
||||
[ITEM_HM03] = {gItemIcon_HM, gItemIconPalette_WaterTMHM}, // HM03
|
||||
[ITEM_HM04] = {gItemIcon_HM, gItemIconPalette_NormalTMHM}, // HM04
|
||||
[ITEM_HM05] = {gItemIcon_HM, gItemIconPalette_NormalTMHM}, // HM05
|
||||
[ITEM_HM06] = {gItemIcon_HM, gItemIconPalette_FightingTMHM}, // HM06
|
||||
[ITEM_HM07] = {gItemIcon_HM, gItemIconPalette_WaterTMHM}, // HM07
|
||||
[ITEM_HM08] = {gItemIcon_HM, gItemIconPalette_WaterTMHM}, // HM08
|
||||
[ITEM_TM01] = {gItemIcon_TM, gItemIconPalette_FightingTMHM},
|
||||
[ITEM_TM02] = {gItemIcon_TM, gItemIconPalette_DragonTMHM},
|
||||
[ITEM_TM03] = {gItemIcon_TM, gItemIconPalette_WaterTMHM},
|
||||
[ITEM_TM04] = {gItemIcon_TM, gItemIconPalette_PsychicTMHM},
|
||||
[ITEM_TM05] = {gItemIcon_TM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM06] = {gItemIcon_TM, gItemIconPalette_PoisonTMHM},
|
||||
[ITEM_TM07] = {gItemIcon_TM, gItemIconPalette_IceTMHM},
|
||||
[ITEM_TM08] = {gItemIcon_TM, gItemIconPalette_FightingTMHM},
|
||||
[ITEM_TM09] = {gItemIcon_TM, gItemIconPalette_GrassTMHM},
|
||||
[ITEM_TM10] = {gItemIcon_TM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM11] = {gItemIcon_TM, gItemIconPalette_FireTMHM},
|
||||
[ITEM_TM12] = {gItemIcon_TM, gItemIconPalette_DarkTMHM},
|
||||
[ITEM_TM13] = {gItemIcon_TM, gItemIconPalette_IceTMHM},
|
||||
[ITEM_TM14] = {gItemIcon_TM, gItemIconPalette_IceTMHM},
|
||||
[ITEM_TM15] = {gItemIcon_TM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM16] = {gItemIcon_TM, gItemIconPalette_PsychicTMHM},
|
||||
[ITEM_TM17] = {gItemIcon_TM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM18] = {gItemIcon_TM, gItemIconPalette_WaterTMHM},
|
||||
[ITEM_TM19] = {gItemIcon_TM, gItemIconPalette_GrassTMHM},
|
||||
[ITEM_TM20] = {gItemIcon_TM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM21] = {gItemIcon_TM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM22] = {gItemIcon_TM, gItemIconPalette_GrassTMHM},
|
||||
[ITEM_TM23] = {gItemIcon_TM, gItemIconPalette_SteelTMHM},
|
||||
[ITEM_TM24] = {gItemIcon_TM, gItemIconPalette_ElectricTMHM},
|
||||
[ITEM_TM25] = {gItemIcon_TM, gItemIconPalette_ElectricTMHM},
|
||||
[ITEM_TM26] = {gItemIcon_TM, gItemIconPalette_GroundTMHM},
|
||||
[ITEM_TM27] = {gItemIcon_TM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM28] = {gItemIcon_TM, gItemIconPalette_GroundTMHM},
|
||||
[ITEM_TM29] = {gItemIcon_TM, gItemIconPalette_PsychicTMHM},
|
||||
[ITEM_TM30] = {gItemIcon_TM, gItemIconPalette_GhostTMHM},
|
||||
[ITEM_TM31] = {gItemIcon_TM, gItemIconPalette_FightingTMHM},
|
||||
[ITEM_TM32] = {gItemIcon_TM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM33] = {gItemIcon_TM, gItemIconPalette_PsychicTMHM},
|
||||
[ITEM_TM34] = {gItemIcon_TM, gItemIconPalette_ElectricTMHM},
|
||||
[ITEM_TM35] = {gItemIcon_TM, gItemIconPalette_FireTMHM},
|
||||
[ITEM_TM36] = {gItemIcon_TM, gItemIconPalette_PoisonTMHM},
|
||||
[ITEM_TM37] = {gItemIcon_TM, gItemIconPalette_RockTMHM},
|
||||
[ITEM_TM38] = {gItemIcon_TM, gItemIconPalette_FireTMHM},
|
||||
[ITEM_TM39] = {gItemIcon_TM, gItemIconPalette_RockTMHM},
|
||||
[ITEM_TM40] = {gItemIcon_TM, gItemIconPalette_FlyingTMHM},
|
||||
[ITEM_TM41] = {gItemIcon_TM, gItemIconPalette_DarkTMHM},
|
||||
[ITEM_TM42] = {gItemIcon_TM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM43] = {gItemIcon_TM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM44] = {gItemIcon_TM, gItemIconPalette_PsychicTMHM},
|
||||
[ITEM_TM45] = {gItemIcon_TM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM46] = {gItemIcon_TM, gItemIconPalette_DarkTMHM},
|
||||
[ITEM_TM47] = {gItemIcon_TM, gItemIconPalette_SteelTMHM},
|
||||
[ITEM_TM48] = {gItemIcon_TM, gItemIconPalette_PsychicTMHM},
|
||||
[ITEM_TM49] = {gItemIcon_TM, gItemIconPalette_DarkTMHM},
|
||||
[ITEM_TM50] = {gItemIcon_TM, gItemIconPalette_FireTMHM},
|
||||
[ITEM_HM01] = {gItemIcon_HM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_HM02] = {gItemIcon_HM, gItemIconPalette_FlyingTMHM},
|
||||
[ITEM_HM03] = {gItemIcon_HM, gItemIconPalette_WaterTMHM},
|
||||
[ITEM_HM04] = {gItemIcon_HM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_HM05] = {gItemIcon_HM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_HM06] = {gItemIcon_HM, gItemIconPalette_FightingTMHM},
|
||||
[ITEM_HM07] = {gItemIcon_HM, gItemIconPalette_WaterTMHM},
|
||||
[ITEM_HM08] = {gItemIcon_HM, gItemIconPalette_WaterTMHM},
|
||||
// ????????
|
||||
[ITEM_15B] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_15C] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
|
@ -1,138 +1,138 @@
|
||||
const u16 gSpeciesIdToCryId[] =
|
||||
{
|
||||
273, // TREECKO
|
||||
274, // GROVYLE
|
||||
275, // SCEPTILE
|
||||
270, // TORCHIC
|
||||
271, // COMBUSKEN
|
||||
272, // BLAZIKEN
|
||||
276, // MUDKIP
|
||||
277, // MARSHTOMP
|
||||
278, // SWAMPERT
|
||||
359, // POOCHYENA
|
||||
360, // MIGHTYENA
|
||||
378, // ZIGZAGOON
|
||||
375, // LINOONE
|
||||
290, // WURMPLE
|
||||
291, // SILCOON
|
||||
292, // BEAUTIFLY
|
||||
293, // CASCOON
|
||||
294, // DUSTOX
|
||||
283, // LOTAD
|
||||
284, // LOMBRE
|
||||
285, // LUDICOLO
|
||||
286, // SEEDOT
|
||||
287, // NUZLEAF
|
||||
288, // SHIFTRY
|
||||
301, // NINCADA
|
||||
302, // NINJASK
|
||||
303, // SHEDINJA
|
||||
266, // TAILLOW
|
||||
267, // SWELLOW
|
||||
374, // SHROOMISH
|
||||
373, // BRELOOM
|
||||
269, // SPINDA
|
||||
280, // WINGULL
|
||||
279, // PELIPPER
|
||||
310, // SURSKIT
|
||||
311, // MASQUERAIN
|
||||
377, // WAILMER
|
||||
381, // WAILORD
|
||||
312, // SKITTY
|
||||
313, // DELCATTY
|
||||
251, // KECLEON
|
||||
329, // BALTOY
|
||||
330, // CLAYDOL
|
||||
306, // NOSEPASS
|
||||
253, // TORKOAL
|
||||
362, // SABLEYE
|
||||
318, // BARBOACH
|
||||
319, // WHISCASH
|
||||
368, // LUVDISC
|
||||
320, // CORPHISH
|
||||
321, // CRAWDAUNT
|
||||
333, // FEEBAS
|
||||
334, // MILOTIC
|
||||
289, // CARVANHA
|
||||
260, // SHARPEDO
|
||||
324, // TRAPINCH
|
||||
325, // VIBRAVA
|
||||
326, // FLYGON
|
||||
304, // MAKUHITA
|
||||
305, // HARIYAMA
|
||||
254, // ELECTRIKE
|
||||
255, // MANECTRIC
|
||||
316, // NUMEL
|
||||
317, // CAMERUPT
|
||||
338, // SPHEAL
|
||||
339, // SEALEO
|
||||
340, // WALREIN
|
||||
327, // CACNEA
|
||||
328, // CACTURNE
|
||||
383, // SNORUNT
|
||||
307, // GLALIE
|
||||
331, // LUNATONE
|
||||
332, // SOLROCK
|
||||
262, // AZURILL
|
||||
322, // SPOINK
|
||||
323, // GRUMPIG
|
||||
308, // PLUSLE
|
||||
309, // MINUN
|
||||
363, // MAWILE
|
||||
336, // MEDITITE
|
||||
337, // MEDICHAM
|
||||
263, // SWABLU
|
||||
264, // ALTARIA
|
||||
258, // WYNAUT
|
||||
256, // DUSKULL
|
||||
361, // DUSCLOPS
|
||||
252, // ROSELIA
|
||||
298, // SLAKOTH
|
||||
299, // VIGOROTH
|
||||
300, // SLAKING
|
||||
314, // GULPIN
|
||||
315, // SWALOT
|
||||
376, // TROPIUS
|
||||
382, // WHISMUR
|
||||
380, // LOUDRED
|
||||
379, // EXPLOUD
|
||||
341, // CLAMPERL
|
||||
342, // HUNTAIL
|
||||
343, // GOREBYSS
|
||||
335, // ABSOL
|
||||
282, // SHUPPET
|
||||
281, // BANETTE
|
||||
259, // SEVIPER
|
||||
261, // ZANGOOSE
|
||||
367, // RELICANTH
|
||||
364, // ARON
|
||||
365, // LAIRON
|
||||
366, // AGGRON
|
||||
356, // CASTFORM
|
||||
357, // VOLBEAT
|
||||
358, // ILLUMISE
|
||||
344, // LILEEP
|
||||
345, // CRADILY
|
||||
346, // ANORITH
|
||||
347, // ARMALDO
|
||||
295, // RALTS
|
||||
296, // KIRLIA
|
||||
297, // GARDEVOIR
|
||||
351, // BAGON
|
||||
352, // SHELGON
|
||||
372, // SALAMENCE
|
||||
348, // BELDUM
|
||||
349, // METANG
|
||||
350, // METAGROSS
|
||||
353, // REGIROCK
|
||||
354, // REGICE
|
||||
355, // REGISTEEL
|
||||
370, // KYOGRE
|
||||
369, // GROUDON
|
||||
371, // RAYQUAZA
|
||||
257, // LATIAS
|
||||
384, // LATIOS
|
||||
385, // JIRACHI
|
||||
386, // DEOXYS
|
||||
387 // CHIMECHO
|
||||
[SPECIES_TREECKO - 277] = 273,
|
||||
[SPECIES_GROVYLE - 277] = 274,
|
||||
[SPECIES_SCEPTILE - 277] = 275,
|
||||
[SPECIES_TORCHIC - 277] = 270,
|
||||
[SPECIES_COMBUSKEN - 277] = 271,
|
||||
[SPECIES_BLAZIKEN - 277] = 272,
|
||||
[SPECIES_MUDKIP - 277] = 276,
|
||||
[SPECIES_MARSHTOMP - 277] = 277,
|
||||
[SPECIES_SWAMPERT - 277] = 278,
|
||||
[SPECIES_POOCHYENA - 277] = 359,
|
||||
[SPECIES_MIGHTYENA - 277] = 360,
|
||||
[SPECIES_ZIGZAGOON - 277] = 378,
|
||||
[SPECIES_LINOONE - 277] = 375,
|
||||
[SPECIES_WURMPLE - 277] = 290,
|
||||
[SPECIES_SILCOON - 277] = 291,
|
||||
[SPECIES_BEAUTIFLY - 277] = 292,
|
||||
[SPECIES_CASCOON - 277] = 293,
|
||||
[SPECIES_DUSTOX - 277] = 294,
|
||||
[SPECIES_LOTAD - 277] = 283,
|
||||
[SPECIES_LOMBRE - 277] = 284,
|
||||
[SPECIES_LUDICOLO - 277] = 285,
|
||||
[SPECIES_SEEDOT - 277] = 286,
|
||||
[SPECIES_NUZLEAF - 277] = 287,
|
||||
[SPECIES_SHIFTRY - 277] = 288,
|
||||
[SPECIES_NINCADA - 277] = 301,
|
||||
[SPECIES_NINJASK - 277] = 302,
|
||||
[SPECIES_SHEDINJA - 277] = 303,
|
||||
[SPECIES_TAILLOW - 277] = 266,
|
||||
[SPECIES_SWELLOW - 277] = 267,
|
||||
[SPECIES_SHROOMISH - 277] = 374,
|
||||
[SPECIES_BRELOOM - 277] = 373,
|
||||
[SPECIES_SPINDA - 277] = 269,
|
||||
[SPECIES_WINGULL - 277] = 280,
|
||||
[SPECIES_PELIPPER - 277] = 279,
|
||||
[SPECIES_SURSKIT - 277] = 310,
|
||||
[SPECIES_MASQUERAIN - 277] = 311,
|
||||
[SPECIES_WAILMER - 277] = 377,
|
||||
[SPECIES_WAILORD - 277] = 381,
|
||||
[SPECIES_SKITTY - 277] = 312,
|
||||
[SPECIES_DELCATTY - 277] = 313,
|
||||
[SPECIES_KECLEON - 277] = 251,
|
||||
[SPECIES_BALTOY - 277] = 329,
|
||||
[SPECIES_CLAYDOL - 277] = 330,
|
||||
[SPECIES_NOSEPASS - 277] = 306,
|
||||
[SPECIES_TORKOAL - 277] = 253,
|
||||
[SPECIES_SABLEYE - 277] = 362,
|
||||
[SPECIES_BARBOACH - 277] = 318,
|
||||
[SPECIES_WHISCASH - 277] = 319,
|
||||
[SPECIES_LUVDISC - 277] = 368,
|
||||
[SPECIES_CORPHISH - 277] = 320,
|
||||
[SPECIES_CRAWDAUNT - 277] = 321,
|
||||
[SPECIES_FEEBAS - 277] = 333,
|
||||
[SPECIES_MILOTIC - 277] = 334,
|
||||
[SPECIES_CARVANHA - 277] = 289,
|
||||
[SPECIES_SHARPEDO - 277] = 260,
|
||||
[SPECIES_TRAPINCH - 277] = 324,
|
||||
[SPECIES_VIBRAVA - 277] = 325,
|
||||
[SPECIES_FLYGON - 277] = 326,
|
||||
[SPECIES_MAKUHITA - 277] = 304,
|
||||
[SPECIES_HARIYAMA - 277] = 305,
|
||||
[SPECIES_ELECTRIKE - 277] = 254,
|
||||
[SPECIES_MANECTRIC - 277] = 255,
|
||||
[SPECIES_NUMEL - 277] = 316,
|
||||
[SPECIES_CAMERUPT - 277] = 317,
|
||||
[SPECIES_SPHEAL - 277] = 338,
|
||||
[SPECIES_SEALEO - 277] = 339,
|
||||
[SPECIES_WALREIN - 277] = 340,
|
||||
[SPECIES_CACNEA - 277] = 327,
|
||||
[SPECIES_CACTURNE - 277] = 328,
|
||||
[SPECIES_SNORUNT - 277] = 383,
|
||||
[SPECIES_GLALIE - 277] = 307,
|
||||
[SPECIES_LUNATONE - 277] = 331,
|
||||
[SPECIES_SOLROCK - 277] = 332,
|
||||
[SPECIES_AZURILL - 277] = 262,
|
||||
[SPECIES_SPOINK - 277] = 322,
|
||||
[SPECIES_GRUMPIG - 277] = 323,
|
||||
[SPECIES_PLUSLE - 277] = 308,
|
||||
[SPECIES_MINUN - 277] = 309,
|
||||
[SPECIES_MAWILE - 277] = 363,
|
||||
[SPECIES_MEDITITE - 277] = 336,
|
||||
[SPECIES_MEDICHAM - 277] = 337,
|
||||
[SPECIES_SWABLU - 277] = 263,
|
||||
[SPECIES_ALTARIA - 277] = 264,
|
||||
[SPECIES_WYNAUT - 277] = 258,
|
||||
[SPECIES_DUSKULL - 277] = 256,
|
||||
[SPECIES_DUSCLOPS - 277] = 361,
|
||||
[SPECIES_ROSELIA - 277] = 252,
|
||||
[SPECIES_SLAKOTH - 277] = 298,
|
||||
[SPECIES_VIGOROTH - 277] = 299,
|
||||
[SPECIES_SLAKING - 277] = 300,
|
||||
[SPECIES_GULPIN - 277] = 314,
|
||||
[SPECIES_SWALOT - 277] = 315,
|
||||
[SPECIES_TROPIUS - 277] = 376,
|
||||
[SPECIES_WHISMUR - 277] = 382,
|
||||
[SPECIES_LOUDRED - 277] = 380,
|
||||
[SPECIES_EXPLOUD - 277] = 379,
|
||||
[SPECIES_CLAMPERL - 277] = 341,
|
||||
[SPECIES_HUNTAIL - 277] = 342,
|
||||
[SPECIES_GOREBYSS - 277] = 343,
|
||||
[SPECIES_ABSOL - 277] = 335,
|
||||
[SPECIES_SHUPPET - 277] = 282,
|
||||
[SPECIES_BANETTE - 277] = 281,
|
||||
[SPECIES_SEVIPER - 277] = 259,
|
||||
[SPECIES_ZANGOOSE - 277] = 261,
|
||||
[SPECIES_RELICANTH - 277] = 367,
|
||||
[SPECIES_ARON - 277] = 364,
|
||||
[SPECIES_LAIRON - 277] = 365,
|
||||
[SPECIES_AGGRON - 277] = 366,
|
||||
[SPECIES_CASTFORM - 277] = 356,
|
||||
[SPECIES_VOLBEAT - 277] = 357,
|
||||
[SPECIES_ILLUMISE - 277] = 358,
|
||||
[SPECIES_LILEEP - 277] = 344,
|
||||
[SPECIES_CRADILY - 277] = 345,
|
||||
[SPECIES_ANORITH - 277] = 346,
|
||||
[SPECIES_ARMALDO - 277] = 347,
|
||||
[SPECIES_RALTS - 277] = 295,
|
||||
[SPECIES_KIRLIA - 277] = 296,
|
||||
[SPECIES_GARDEVOIR - 277] = 297,
|
||||
[SPECIES_BAGON - 277] = 351,
|
||||
[SPECIES_SHELGON - 277] = 352,
|
||||
[SPECIES_SALAMENCE - 277] = 372,
|
||||
[SPECIES_BELDUM - 277] = 348,
|
||||
[SPECIES_METANG - 277] = 349,
|
||||
[SPECIES_METAGROSS - 277] = 350,
|
||||
[SPECIES_REGIROCK - 277] = 353,
|
||||
[SPECIES_REGICE - 277] = 354,
|
||||
[SPECIES_REGISTEEL - 277] = 355,
|
||||
[SPECIES_KYOGRE - 277] = 370,
|
||||
[SPECIES_GROUDON - 277] = 369,
|
||||
[SPECIES_RAYQUAZA - 277] = 371,
|
||||
[SPECIES_LATIAS - 277] = 257,
|
||||
[SPECIES_LATIOS - 277] = 384,
|
||||
[SPECIES_JIRACHI - 277] = 385,
|
||||
[SPECIES_DEOXYS - 277] = 386,
|
||||
[SPECIES_CHIMECHO - 277] = 387,
|
||||
};
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,417 +1,419 @@
|
||||
#include "constants/species.h"
|
||||
|
||||
// This determines how much higher above the usual position the enemy Pokémon
|
||||
// is during battle. Species that float or fly have nonzero values.
|
||||
const u8 gEnemyMonElevation[] =
|
||||
{
|
||||
0, // 0
|
||||
0, // SPECIES_BULBASAUR
|
||||
0, // SPECIES_IVYSAUR
|
||||
0, // SPECIES_VENUSAUR
|
||||
0, // SPECIES_CHARMANDER
|
||||
0, // SPECIES_CHARMELEON
|
||||
0, // SPECIES_CHARIZARD
|
||||
0, // SPECIES_SQUIRTLE
|
||||
0, // SPECIES_WARTORTLE
|
||||
0, // SPECIES_BLASTOISE
|
||||
0, // SPECIES_CATERPIE
|
||||
0, // SPECIES_METAPOD
|
||||
8, // SPECIES_BUTTERFREE
|
||||
0, // SPECIES_WEEDLE
|
||||
0, // SPECIES_KAKUNA
|
||||
8, // SPECIES_BEEDRILL
|
||||
16, // SPECIES_PIDGEY
|
||||
0, // SPECIES_PIDGEOTTO
|
||||
4, // SPECIES_PIDGEOT
|
||||
0, // SPECIES_RATTATA
|
||||
0, // SPECIES_RATICATE
|
||||
0, // SPECIES_SPEAROW
|
||||
6, // SPECIES_FEAROW
|
||||
0, // SPECIES_EKANS
|
||||
0, // SPECIES_ARBOK
|
||||
0, // SPECIES_PIKACHU
|
||||
0, // SPECIES_RAICHU
|
||||
0, // SPECIES_SANDSHREW
|
||||
0, // SPECIES_SANDSLASH
|
||||
0, // SPECIES_NIDORAN_F
|
||||
0, // SPECIES_NIDORINA
|
||||
0, // SPECIES_NIDOQUEEN
|
||||
0, // SPECIES_NIDORAN_M
|
||||
0, // SPECIES_NIDORINO
|
||||
0, // SPECIES_NIDOKING
|
||||
0, // SPECIES_CLEFAIRY
|
||||
0, // SPECIES_CLEFABLE
|
||||
0, // SPECIES_VULPIX
|
||||
0, // SPECIES_NINETALES
|
||||
0, // SPECIES_JIGGLYPUFF
|
||||
0, // SPECIES_WIGGLYTUFF
|
||||
8, // SPECIES_ZUBAT
|
||||
8, // SPECIES_GOLBAT
|
||||
0, // SPECIES_ODDISH
|
||||
0, // SPECIES_GLOOM
|
||||
0, // SPECIES_VILEPLUME
|
||||
0, // SPECIES_PARAS
|
||||
0, // SPECIES_PARASECT
|
||||
0, // SPECIES_VENONAT
|
||||
8, // SPECIES_VENOMOTH
|
||||
0, // SPECIES_DIGLETT
|
||||
0, // SPECIES_DUGTRIO
|
||||
0, // SPECIES_MEOWTH
|
||||
0, // SPECIES_PERSIAN
|
||||
0, // SPECIES_PSYDUCK
|
||||
0, // SPECIES_GOLDUCK
|
||||
0, // SPECIES_MANKEY
|
||||
0, // SPECIES_PRIMEAPE
|
||||
0, // SPECIES_GROWLITHE
|
||||
0, // SPECIES_ARCANINE
|
||||
0, // SPECIES_POLIWAG
|
||||
0, // SPECIES_POLIWHIRL
|
||||
0, // SPECIES_POLIWRATH
|
||||
0, // SPECIES_ABRA
|
||||
0, // SPECIES_KADABRA
|
||||
0, // SPECIES_ALAKAZAM
|
||||
0, // SPECIES_MACHOP
|
||||
0, // SPECIES_MACHOKE
|
||||
0, // SPECIES_MACHAMP
|
||||
0, // SPECIES_BELLSPROUT
|
||||
0, // SPECIES_WEEPINBELL
|
||||
0, // SPECIES_VICTREEBEL
|
||||
0, // SPECIES_TENTACOOL
|
||||
0, // SPECIES_TENTACRUEL
|
||||
16, // SPECIES_GEODUDE
|
||||
0, // SPECIES_GRAVELER
|
||||
0, // SPECIES_GOLEM
|
||||
0, // SPECIES_PONYTA
|
||||
0, // SPECIES_RAPIDASH
|
||||
0, // SPECIES_SLOWPOKE
|
||||
0, // SPECIES_SLOWBRO
|
||||
16, // SPECIES_MAGNEMITE
|
||||
8, // SPECIES_MAGNETON
|
||||
0, // SPECIES_FARFETCHD
|
||||
0, // SPECIES_DODUO
|
||||
0, // SPECIES_DODRIO
|
||||
0, // SPECIES_SEEL
|
||||
0, // SPECIES_DEWGONG
|
||||
0, // SPECIES_GRIMER
|
||||
0, // SPECIES_MUK
|
||||
0, // SPECIES_SHELLDER
|
||||
0, // SPECIES_CLOYSTER
|
||||
4, // SPECIES_GASTLY
|
||||
4, // SPECIES_HAUNTER
|
||||
0, // SPECIES_GENGAR
|
||||
0, // SPECIES_ONIX
|
||||
0, // SPECIES_DROWZEE
|
||||
0, // SPECIES_HYPNO
|
||||
0, // SPECIES_KRABBY
|
||||
0, // SPECIES_KINGLER
|
||||
10, // SPECIES_VOLTORB
|
||||
12, // SPECIES_ELECTRODE
|
||||
0, // SPECIES_EXEGGCUTE
|
||||
0, // SPECIES_EXEGGUTOR
|
||||
0, // SPECIES_CUBONE
|
||||
0, // SPECIES_MAROWAK
|
||||
0, // SPECIES_HITMONLEE
|
||||
0, // SPECIES_HITMONCHAN
|
||||
0, // SPECIES_LICKITUNG
|
||||
8, // SPECIES_KOFFING
|
||||
6, // SPECIES_WEEZING
|
||||
0, // SPECIES_RHYHORN
|
||||
0, // SPECIES_RHYDON
|
||||
0, // SPECIES_CHANSEY
|
||||
0, // SPECIES_TANGELA
|
||||
0, // SPECIES_KANGASKHAN
|
||||
0, // SPECIES_HORSEA
|
||||
0, // SPECIES_SEADRA
|
||||
0, // SPECIES_GOLDEEN
|
||||
0, // SPECIES_SEAKING
|
||||
0, // SPECIES_STARYU
|
||||
0, // SPECIES_STARMIE
|
||||
0, // SPECIES_MR_MIME
|
||||
0, // SPECIES_SCYTHER
|
||||
0, // SPECIES_JYNX
|
||||
0, // SPECIES_ELECTABUZZ
|
||||
0, // SPECIES_MAGMAR
|
||||
0, // SPECIES_PINSIR
|
||||
0, // SPECIES_TAUROS
|
||||
0, // SPECIES_MAGIKARP
|
||||
0, // SPECIES_GYARADOS
|
||||
0, // SPECIES_LAPRAS
|
||||
0, // SPECIES_DITTO
|
||||
0, // SPECIES_EEVEE
|
||||
0, // SPECIES_VAPOREON
|
||||
0, // SPECIES_JOLTEON
|
||||
0, // SPECIES_FLAREON
|
||||
0, // SPECIES_PORYGON
|
||||
0, // SPECIES_OMANYTE
|
||||
0, // SPECIES_OMASTAR
|
||||
0, // SPECIES_KABUTO
|
||||
0, // SPECIES_KABUTOPS
|
||||
7, // SPECIES_AERODACTYL
|
||||
0, // SPECIES_SNORLAX
|
||||
6, // SPECIES_ARTICUNO
|
||||
8, // SPECIES_ZAPDOS
|
||||
5, // SPECIES_MOLTRES
|
||||
0, // SPECIES_DRATINI
|
||||
0, // SPECIES_DRAGONAIR
|
||||
6, // SPECIES_DRAGONITE
|
||||
0, // SPECIES_MEWTWO
|
||||
8, // SPECIES_MEW
|
||||
0, // SPECIES_CHIKORITA
|
||||
0, // SPECIES_BAYLEEF
|
||||
0, // SPECIES_MEGANIUM
|
||||
0, // SPECIES_CYNDAQUIL
|
||||
0, // SPECIES_QUILAVA
|
||||
0, // SPECIES_TYPHLOSION
|
||||
0, // SPECIES_TOTODILE
|
||||
0, // SPECIES_CROCONAW
|
||||
0, // SPECIES_FERALIGATR
|
||||
0, // SPECIES_SENTRET
|
||||
0, // SPECIES_FURRET
|
||||
0, // SPECIES_HOOTHOOT
|
||||
0, // SPECIES_NOCTOWL
|
||||
0, // SPECIES_LEDYBA
|
||||
8, // SPECIES_LEDIAN
|
||||
0, // SPECIES_SPINARAK
|
||||
0, // SPECIES_ARIADOS
|
||||
6, // SPECIES_CROBAT
|
||||
0, // SPECIES_CHINCHOU
|
||||
0, // SPECIES_LANTURN
|
||||
0, // SPECIES_PICHU
|
||||
0, // SPECIES_CLEFFA
|
||||
0, // SPECIES_IGGLYBUFF
|
||||
0, // SPECIES_TOGEPI
|
||||
0, // SPECIES_TOGETIC
|
||||
0, // SPECIES_NATU
|
||||
0, // SPECIES_XATU
|
||||
0, // SPECIES_MAREEP
|
||||
0, // SPECIES_FLAAFFY
|
||||
0, // SPECIES_AMPHAROS
|
||||
0, // SPECIES_BELLOSSOM
|
||||
0, // SPECIES_MARILL
|
||||
0, // SPECIES_AZUMARILL
|
||||
0, // SPECIES_SUDOWOODO
|
||||
0, // SPECIES_POLITOED
|
||||
11, // SPECIES_HOPPIP
|
||||
12, // SPECIES_SKIPLOOM
|
||||
9, // SPECIES_JUMPLUFF
|
||||
0, // SPECIES_AIPOM
|
||||
0, // SPECIES_SUNKERN
|
||||
0, // SPECIES_SUNFLORA
|
||||
8, // SPECIES_YANMA
|
||||
0, // SPECIES_WOOPER
|
||||
0, // SPECIES_QUAGSIRE
|
||||
0, // SPECIES_ESPEON
|
||||
0, // SPECIES_UMBREON
|
||||
0, // SPECIES_MURKROW
|
||||
0, // SPECIES_SLOWKING
|
||||
8, // SPECIES_MISDREAVUS
|
||||
8, // SPECIES_UNOWN
|
||||
0, // SPECIES_WOBBUFFET
|
||||
0, // SPECIES_GIRAFARIG
|
||||
0, // SPECIES_PINECO
|
||||
0, // SPECIES_FORRETRESS
|
||||
0, // SPECIES_DUNSPARCE
|
||||
6, // SPECIES_GLIGAR
|
||||
0, // SPECIES_STEELIX
|
||||
0, // SPECIES_SNUBBULL
|
||||
0, // SPECIES_GRANBULL
|
||||
0, // SPECIES_QWILFISH
|
||||
0, // SPECIES_SCIZOR
|
||||
0, // SPECIES_SHUCKLE
|
||||
0, // SPECIES_HERACROSS
|
||||
0, // SPECIES_SNEASEL
|
||||
0, // SPECIES_TEDDIURSA
|
||||
0, // SPECIES_URSARING
|
||||
0, // SPECIES_SLUGMA
|
||||
0, // SPECIES_MAGCARGO
|
||||
0, // SPECIES_SWINUB
|
||||
0, // SPECIES_PILOSWINE
|
||||
0, // SPECIES_CORSOLA
|
||||
0, // SPECIES_REMORAID
|
||||
0, // SPECIES_OCTILLERY
|
||||
0, // SPECIES_DELIBIRD
|
||||
0, // SPECIES_MANTINE
|
||||
0, // SPECIES_SKARMORY
|
||||
0, // SPECIES_HOUNDOUR
|
||||
0, // SPECIES_HOUNDOOM
|
||||
0, // SPECIES_KINGDRA
|
||||
0, // SPECIES_PHANPY
|
||||
0, // SPECIES_DONPHAN
|
||||
0, // SPECIES_PORYGON2
|
||||
0, // SPECIES_STANTLER
|
||||
0, // SPECIES_SMEARGLE
|
||||
0, // SPECIES_TYROGUE
|
||||
0, // SPECIES_HITMONTOP
|
||||
0, // SPECIES_SMOOCHUM
|
||||
0, // SPECIES_ELEKID
|
||||
0, // SPECIES_MAGBY
|
||||
0, // SPECIES_MILTANK
|
||||
0, // SPECIES_BLISSEY
|
||||
0, // SPECIES_RAIKOU
|
||||
0, // SPECIES_ENTEI
|
||||
0, // SPECIES_SUICUNE
|
||||
0, // SPECIES_LARVITAR
|
||||
0, // SPECIES_PUPITAR
|
||||
0, // SPECIES_TYRANITAR
|
||||
6, // SPECIES_LUGIA
|
||||
6, // SPECIES_HO_OH
|
||||
15, // SPECIES_CELEBI
|
||||
0, // 252
|
||||
0, // 253
|
||||
0, // 254
|
||||
0, // 255
|
||||
0, // 256
|
||||
0, // 257
|
||||
0, // 258
|
||||
0, // 259
|
||||
0, // 260
|
||||
0, // 261
|
||||
0, // 262
|
||||
0, // 263
|
||||
0, // 264
|
||||
0, // 265
|
||||
0, // 266
|
||||
0, // 267
|
||||
0, // 268
|
||||
0, // 269
|
||||
0, // 270
|
||||
0, // 271
|
||||
0, // 272
|
||||
0, // 273
|
||||
0, // 274
|
||||
0, // 275
|
||||
0, // 276
|
||||
0, // SPECIES_TREECKO
|
||||
0, // SPECIES_GROVYLE
|
||||
0, // SPECIES_SCEPTILE
|
||||
0, // SPECIES_TORCHIC
|
||||
0, // SPECIES_COMBUSKEN
|
||||
0, // SPECIES_BLAZIKEN
|
||||
0, // SPECIES_MUDKIP
|
||||
0, // SPECIES_MARSHTOMP
|
||||
0, // SPECIES_SWAMPERT
|
||||
0, // SPECIES_POOCHYENA
|
||||
0, // SPECIES_MIGHTYENA
|
||||
0, // SPECIES_ZIGZAGOON
|
||||
0, // SPECIES_LINOONE
|
||||
0, // SPECIES_WURMPLE
|
||||
0, // SPECIES_SILCOON
|
||||
8, // SPECIES_BEAUTIFLY
|
||||
0, // SPECIES_CASCOON
|
||||
10, // SPECIES_DUSTOX
|
||||
0, // SPECIES_LOTAD
|
||||
0, // SPECIES_LOMBRE
|
||||
0, // SPECIES_LUDICOLO
|
||||
0, // SPECIES_SEEDOT
|
||||
0, // SPECIES_NUZLEAF
|
||||
0, // SPECIES_SHIFTRY
|
||||
0, // SPECIES_NINCADA
|
||||
10, // SPECIES_NINJASK
|
||||
8, // SPECIES_SHEDINJA
|
||||
0, // SPECIES_TAILLOW
|
||||
0, // SPECIES_SWELLOW
|
||||
0, // SPECIES_SHROOMISH
|
||||
0, // SPECIES_BRELOOM
|
||||
0, // SPECIES_SPINDA
|
||||
16, // SPECIES_WINGULL
|
||||
8, // SPECIES_PELIPPER
|
||||
0, // SPECIES_SURSKIT
|
||||
10, // SPECIES_MASQUERAIN
|
||||
0, // SPECIES_WAILMER
|
||||
0, // SPECIES_WAILORD
|
||||
0, // SPECIES_SKITTY
|
||||
0, // SPECIES_DELCATTY
|
||||
0, // SPECIES_KECLEON
|
||||
4, // SPECIES_BALTOY
|
||||
10, // SPECIES_CLAYDOL
|
||||
0, // SPECIES_NOSEPASS
|
||||
0, // SPECIES_TORKOAL
|
||||
0, // SPECIES_SABLEYE
|
||||
0, // SPECIES_BARBOACH
|
||||
0, // SPECIES_WHISCASH
|
||||
0, // SPECIES_LUVDISC
|
||||
0, // SPECIES_CORPHISH
|
||||
0, // SPECIES_CRAWDAUNT
|
||||
0, // SPECIES_FEEBAS
|
||||
0, // SPECIES_MILOTIC
|
||||
0, // SPECIES_CARVANHA
|
||||
0, // SPECIES_SHARPEDO
|
||||
0, // SPECIES_TRAPINCH
|
||||
0, // SPECIES_VIBRAVA
|
||||
7, // SPECIES_FLYGON
|
||||
0, // SPECIES_MAKUHITA
|
||||
0, // SPECIES_HARIYAMA
|
||||
0, // SPECIES_ELECTRIKE
|
||||
0, // SPECIES_MANECTRIC
|
||||
0, // SPECIES_NUMEL
|
||||
0, // SPECIES_CAMERUPT
|
||||
0, // SPECIES_SPHEAL
|
||||
0, // SPECIES_SEALEO
|
||||
0, // SPECIES_WALREIN
|
||||
0, // SPECIES_CACNEA
|
||||
0, // SPECIES_CACTURNE
|
||||
0, // SPECIES_SNORUNT
|
||||
12, // SPECIES_GLALIE
|
||||
13, // SPECIES_LUNATONE
|
||||
4, // SPECIES_SOLROCK
|
||||
0, // SPECIES_AZURILL
|
||||
0, // SPECIES_SPOINK
|
||||
0, // SPECIES_GRUMPIG
|
||||
0, // SPECIES_PLUSLE
|
||||
0, // SPECIES_MINUN
|
||||
0, // SPECIES_MAWILE
|
||||
0, // SPECIES_MEDITITE
|
||||
0, // SPECIES_MEDICHAM
|
||||
12, // SPECIES_SWABLU
|
||||
8, // SPECIES_ALTARIA
|
||||
0, // SPECIES_WYNAUT
|
||||
9, // SPECIES_DUSKULL
|
||||
0, // SPECIES_DUSCLOPS
|
||||
0, // SPECIES_ROSELIA
|
||||
0, // SPECIES_SLAKOTH
|
||||
0, // SPECIES_VIGOROTH
|
||||
0, // SPECIES_SLAKING
|
||||
0, // SPECIES_GULPIN
|
||||
0, // SPECIES_SWALOT
|
||||
0, // SPECIES_TROPIUS
|
||||
0, // SPECIES_WHISMUR
|
||||
0, // SPECIES_LOUDRED
|
||||
0, // SPECIES_EXPLOUD
|
||||
0, // SPECIES_CLAMPERL
|
||||
0, // SPECIES_HUNTAIL
|
||||
0, // SPECIES_GOREBYSS
|
||||
0, // SPECIES_ABSOL
|
||||
12, // SPECIES_SHUPPET
|
||||
8, // SPECIES_BANETTE
|
||||
0, // SPECIES_SEVIPER
|
||||
0, // SPECIES_ZANGOOSE
|
||||
0, // SPECIES_RELICANTH
|
||||
0, // SPECIES_ARON
|
||||
0, // SPECIES_LAIRON
|
||||
0, // SPECIES_AGGRON
|
||||
16, // SPECIES_CASTFORM
|
||||
0, // SPECIES_VOLBEAT
|
||||
0, // SPECIES_ILLUMISE
|
||||
0, // SPECIES_LILEEP
|
||||
0, // SPECIES_CRADILY
|
||||
0, // SPECIES_ANORITH
|
||||
0, // SPECIES_ARMALDO
|
||||
0, // SPECIES_RALTS
|
||||
0, // SPECIES_KIRLIA
|
||||
0, // SPECIES_GARDEVOIR
|
||||
0, // SPECIES_BAGON
|
||||
0, // SPECIES_SHELGON
|
||||
0, // SPECIES_SALAMENCE
|
||||
8, // SPECIES_BELDUM
|
||||
0, // SPECIES_METANG
|
||||
0, // SPECIES_METAGROSS
|
||||
0, // SPECIES_REGIROCK
|
||||
0, // SPECIES_REGICE
|
||||
0, // SPECIES_REGISTEEL
|
||||
0, // SPECIES_KYOGRE
|
||||
0, // SPECIES_GROUDON
|
||||
6, // SPECIES_RAYQUAZA
|
||||
6, // SPECIES_LATIAS
|
||||
6, // SPECIES_LATIOS
|
||||
12, // SPECIES_JIRACHI
|
||||
8, // SPECIES_DEOXYS
|
||||
12, // SPECIES_CHIMECHO
|
||||
[SPECIES_NONE] = 0,
|
||||
[SPECIES_BULBASAUR] = 0,
|
||||
[SPECIES_IVYSAUR] = 0,
|
||||
[SPECIES_VENUSAUR] = 0,
|
||||
[SPECIES_CHARMANDER] = 0,
|
||||
[SPECIES_CHARMELEON] = 0,
|
||||
[SPECIES_CHARIZARD] = 0,
|
||||
[SPECIES_SQUIRTLE] = 0,
|
||||
[SPECIES_WARTORTLE] = 0,
|
||||
[SPECIES_BLASTOISE] = 0,
|
||||
[SPECIES_CATERPIE] = 0,
|
||||
[SPECIES_METAPOD] = 0,
|
||||
[SPECIES_BUTTERFREE] = 8,
|
||||
[SPECIES_WEEDLE] = 0,
|
||||
[SPECIES_KAKUNA] = 0,
|
||||
[SPECIES_BEEDRILL] = 8,
|
||||
[SPECIES_PIDGEY] = 16,
|
||||
[SPECIES_PIDGEOTTO] = 0,
|
||||
[SPECIES_PIDGEOT] = 4,
|
||||
[SPECIES_RATTATA] = 0,
|
||||
[SPECIES_RATICATE] = 0,
|
||||
[SPECIES_SPEAROW] = 0,
|
||||
[SPECIES_FEAROW] = 6,
|
||||
[SPECIES_EKANS] = 0,
|
||||
[SPECIES_ARBOK] = 0,
|
||||
[SPECIES_PIKACHU] = 0,
|
||||
[SPECIES_RAICHU] = 0,
|
||||
[SPECIES_SANDSHREW] = 0,
|
||||
[SPECIES_SANDSLASH] = 0,
|
||||
[SPECIES_NIDORAN_F] = 0,
|
||||
[SPECIES_NIDORINA] = 0,
|
||||
[SPECIES_NIDOQUEEN] = 0,
|
||||
[SPECIES_NIDORAN_M] = 0,
|
||||
[SPECIES_NIDORINO] = 0,
|
||||
[SPECIES_NIDOKING] = 0,
|
||||
[SPECIES_CLEFAIRY] = 0,
|
||||
[SPECIES_CLEFABLE] = 0,
|
||||
[SPECIES_VULPIX] = 0,
|
||||
[SPECIES_NINETALES] = 0,
|
||||
[SPECIES_JIGGLYPUFF] = 0,
|
||||
[SPECIES_WIGGLYTUFF] = 0,
|
||||
[SPECIES_ZUBAT] = 8,
|
||||
[SPECIES_GOLBAT] = 8,
|
||||
[SPECIES_ODDISH] = 0,
|
||||
[SPECIES_GLOOM] = 0,
|
||||
[SPECIES_VILEPLUME] = 0,
|
||||
[SPECIES_PARAS] = 0,
|
||||
[SPECIES_PARASECT] = 0,
|
||||
[SPECIES_VENONAT] = 0,
|
||||
[SPECIES_VENOMOTH] = 8,
|
||||
[SPECIES_DIGLETT] = 0,
|
||||
[SPECIES_DUGTRIO] = 0,
|
||||
[SPECIES_MEOWTH] = 0,
|
||||
[SPECIES_PERSIAN] = 0,
|
||||
[SPECIES_PSYDUCK] = 0,
|
||||
[SPECIES_GOLDUCK] = 0,
|
||||
[SPECIES_MANKEY] = 0,
|
||||
[SPECIES_PRIMEAPE] = 0,
|
||||
[SPECIES_GROWLITHE] = 0,
|
||||
[SPECIES_ARCANINE] = 0,
|
||||
[SPECIES_POLIWAG] = 0,
|
||||
[SPECIES_POLIWHIRL] = 0,
|
||||
[SPECIES_POLIWRATH] = 0,
|
||||
[SPECIES_ABRA] = 0,
|
||||
[SPECIES_KADABRA] = 0,
|
||||
[SPECIES_ALAKAZAM] = 0,
|
||||
[SPECIES_MACHOP] = 0,
|
||||
[SPECIES_MACHOKE] = 0,
|
||||
[SPECIES_MACHAMP] = 0,
|
||||
[SPECIES_BELLSPROUT] = 0,
|
||||
[SPECIES_WEEPINBELL] = 0,
|
||||
[SPECIES_VICTREEBEL] = 0,
|
||||
[SPECIES_TENTACOOL] = 0,
|
||||
[SPECIES_TENTACRUEL] = 0,
|
||||
[SPECIES_GEODUDE] = 16,
|
||||
[SPECIES_GRAVELER] = 0,
|
||||
[SPECIES_GOLEM] = 0,
|
||||
[SPECIES_PONYTA] = 0,
|
||||
[SPECIES_RAPIDASH] = 0,
|
||||
[SPECIES_SLOWPOKE] = 0,
|
||||
[SPECIES_SLOWBRO] = 0,
|
||||
[SPECIES_MAGNEMITE] = 16,
|
||||
[SPECIES_MAGNETON] = 8,
|
||||
[SPECIES_FARFETCHD] = 0,
|
||||
[SPECIES_DODUO] = 0,
|
||||
[SPECIES_DODRIO] = 0,
|
||||
[SPECIES_SEEL] = 0,
|
||||
[SPECIES_DEWGONG] = 0,
|
||||
[SPECIES_GRIMER] = 0,
|
||||
[SPECIES_MUK] = 0,
|
||||
[SPECIES_SHELLDER] = 0,
|
||||
[SPECIES_CLOYSTER] = 0,
|
||||
[SPECIES_GASTLY] = 4,
|
||||
[SPECIES_HAUNTER] = 4,
|
||||
[SPECIES_GENGAR] = 0,
|
||||
[SPECIES_ONIX] = 0,
|
||||
[SPECIES_DROWZEE] = 0,
|
||||
[SPECIES_HYPNO] = 0,
|
||||
[SPECIES_KRABBY] = 0,
|
||||
[SPECIES_KINGLER] = 0,
|
||||
[SPECIES_VOLTORB] = 10,
|
||||
[SPECIES_ELECTRODE] = 12,
|
||||
[SPECIES_EXEGGCUTE] = 0,
|
||||
[SPECIES_EXEGGUTOR] = 0,
|
||||
[SPECIES_CUBONE] = 0,
|
||||
[SPECIES_MAROWAK] = 0,
|
||||
[SPECIES_HITMONLEE] = 0,
|
||||
[SPECIES_HITMONCHAN] = 0,
|
||||
[SPECIES_LICKITUNG] = 0,
|
||||
[SPECIES_KOFFING] = 8,
|
||||
[SPECIES_WEEZING] = 6,
|
||||
[SPECIES_RHYHORN] = 0,
|
||||
[SPECIES_RHYDON] = 0,
|
||||
[SPECIES_CHANSEY] = 0,
|
||||
[SPECIES_TANGELA] = 0,
|
||||
[SPECIES_KANGASKHAN] = 0,
|
||||
[SPECIES_HORSEA] = 0,
|
||||
[SPECIES_SEADRA] = 0,
|
||||
[SPECIES_GOLDEEN] = 0,
|
||||
[SPECIES_SEAKING] = 0,
|
||||
[SPECIES_STARYU] = 0,
|
||||
[SPECIES_STARMIE] = 0,
|
||||
[SPECIES_MR_MIME] = 0,
|
||||
[SPECIES_SCYTHER] = 0,
|
||||
[SPECIES_JYNX] = 0,
|
||||
[SPECIES_ELECTABUZZ] = 0,
|
||||
[SPECIES_MAGMAR] = 0,
|
||||
[SPECIES_PINSIR] = 0,
|
||||
[SPECIES_TAUROS] = 0,
|
||||
[SPECIES_MAGIKARP] = 0,
|
||||
[SPECIES_GYARADOS] = 0,
|
||||
[SPECIES_LAPRAS] = 0,
|
||||
[SPECIES_DITTO] = 0,
|
||||
[SPECIES_EEVEE] = 0,
|
||||
[SPECIES_VAPOREON] = 0,
|
||||
[SPECIES_JOLTEON] = 0,
|
||||
[SPECIES_FLAREON] = 0,
|
||||
[SPECIES_PORYGON] = 0,
|
||||
[SPECIES_OMANYTE] = 0,
|
||||
[SPECIES_OMASTAR] = 0,
|
||||
[SPECIES_KABUTO] = 0,
|
||||
[SPECIES_KABUTOPS] = 0,
|
||||
[SPECIES_AERODACTYL] = 7,
|
||||
[SPECIES_SNORLAX] = 0,
|
||||
[SPECIES_ARTICUNO] = 6,
|
||||
[SPECIES_ZAPDOS] = 8,
|
||||
[SPECIES_MOLTRES] = 5,
|
||||
[SPECIES_DRATINI] = 0,
|
||||
[SPECIES_DRAGONAIR] = 0,
|
||||
[SPECIES_DRAGONITE] = 6,
|
||||
[SPECIES_MEWTWO] = 0,
|
||||
[SPECIES_MEW] = 8,
|
||||
[SPECIES_CHIKORITA] = 0,
|
||||
[SPECIES_BAYLEEF] = 0,
|
||||
[SPECIES_MEGANIUM] = 0,
|
||||
[SPECIES_CYNDAQUIL] = 0,
|
||||
[SPECIES_QUILAVA] = 0,
|
||||
[SPECIES_TYPHLOSION] = 0,
|
||||
[SPECIES_TOTODILE] = 0,
|
||||
[SPECIES_CROCONAW] = 0,
|
||||
[SPECIES_FERALIGATR] = 0,
|
||||
[SPECIES_SENTRET] = 0,
|
||||
[SPECIES_FURRET] = 0,
|
||||
[SPECIES_HOOTHOOT] = 0,
|
||||
[SPECIES_NOCTOWL] = 0,
|
||||
[SPECIES_LEDYBA] = 0,
|
||||
[SPECIES_LEDIAN] = 8,
|
||||
[SPECIES_SPINARAK] = 0,
|
||||
[SPECIES_ARIADOS] = 0,
|
||||
[SPECIES_CROBAT] = 6,
|
||||
[SPECIES_CHINCHOU] = 0,
|
||||
[SPECIES_LANTURN] = 0,
|
||||
[SPECIES_PICHU] = 0,
|
||||
[SPECIES_CLEFFA] = 0,
|
||||
[SPECIES_IGGLYBUFF] = 0,
|
||||
[SPECIES_TOGEPI] = 0,
|
||||
[SPECIES_TOGETIC] = 0,
|
||||
[SPECIES_NATU] = 0,
|
||||
[SPECIES_XATU] = 0,
|
||||
[SPECIES_MAREEP] = 0,
|
||||
[SPECIES_FLAAFFY] = 0,
|
||||
[SPECIES_AMPHAROS] = 0,
|
||||
[SPECIES_BELLOSSOM] = 0,
|
||||
[SPECIES_MARILL] = 0,
|
||||
[SPECIES_AZUMARILL] = 0,
|
||||
[SPECIES_SUDOWOODO] = 0,
|
||||
[SPECIES_POLITOED] = 0,
|
||||
[SPECIES_HOPPIP] = 11,
|
||||
[SPECIES_SKIPLOOM] = 12,
|
||||
[SPECIES_JUMPLUFF] = 9,
|
||||
[SPECIES_AIPOM] = 0,
|
||||
[SPECIES_SUNKERN] = 0,
|
||||
[SPECIES_SUNFLORA] = 0,
|
||||
[SPECIES_YANMA] = 8,
|
||||
[SPECIES_WOOPER] = 0,
|
||||
[SPECIES_QUAGSIRE] = 0,
|
||||
[SPECIES_ESPEON] = 0,
|
||||
[SPECIES_UMBREON] = 0,
|
||||
[SPECIES_MURKROW] = 0,
|
||||
[SPECIES_SLOWKING] = 0,
|
||||
[SPECIES_MISDREAVUS] = 8,
|
||||
[SPECIES_UNOWN] = 8,
|
||||
[SPECIES_WOBBUFFET] = 0,
|
||||
[SPECIES_GIRAFARIG] = 0,
|
||||
[SPECIES_PINECO] = 0,
|
||||
[SPECIES_FORRETRESS] = 0,
|
||||
[SPECIES_DUNSPARCE] = 0,
|
||||
[SPECIES_GLIGAR] = 6,
|
||||
[SPECIES_STEELIX] = 0,
|
||||
[SPECIES_SNUBBULL] = 0,
|
||||
[SPECIES_GRANBULL] = 0,
|
||||
[SPECIES_QWILFISH] = 0,
|
||||
[SPECIES_SCIZOR] = 0,
|
||||
[SPECIES_SHUCKLE] = 0,
|
||||
[SPECIES_HERACROSS] = 0,
|
||||
[SPECIES_SNEASEL] = 0,
|
||||
[SPECIES_TEDDIURSA] = 0,
|
||||
[SPECIES_URSARING] = 0,
|
||||
[SPECIES_SLUGMA] = 0,
|
||||
[SPECIES_MAGCARGO] = 0,
|
||||
[SPECIES_SWINUB] = 0,
|
||||
[SPECIES_PILOSWINE] = 0,
|
||||
[SPECIES_CORSOLA] = 0,
|
||||
[SPECIES_REMORAID] = 0,
|
||||
[SPECIES_OCTILLERY] = 0,
|
||||
[SPECIES_DELIBIRD] = 0,
|
||||
[SPECIES_MANTINE] = 0,
|
||||
[SPECIES_SKARMORY] = 0,
|
||||
[SPECIES_HOUNDOUR] = 0,
|
||||
[SPECIES_HOUNDOOM] = 0,
|
||||
[SPECIES_KINGDRA] = 0,
|
||||
[SPECIES_PHANPY] = 0,
|
||||
[SPECIES_DONPHAN] = 0,
|
||||
[SPECIES_PORYGON2] = 0,
|
||||
[SPECIES_STANTLER] = 0,
|
||||
[SPECIES_SMEARGLE] = 0,
|
||||
[SPECIES_TYROGUE] = 0,
|
||||
[SPECIES_HITMONTOP] = 0,
|
||||
[SPECIES_SMOOCHUM] = 0,
|
||||
[SPECIES_ELEKID] = 0,
|
||||
[SPECIES_MAGBY] = 0,
|
||||
[SPECIES_MILTANK] = 0,
|
||||
[SPECIES_BLISSEY] = 0,
|
||||
[SPECIES_RAIKOU] = 0,
|
||||
[SPECIES_ENTEI] = 0,
|
||||
[SPECIES_SUICUNE] = 0,
|
||||
[SPECIES_LARVITAR] = 0,
|
||||
[SPECIES_PUPITAR] = 0,
|
||||
[SPECIES_TYRANITAR] = 0,
|
||||
[SPECIES_LUGIA] = 6,
|
||||
[SPECIES_HO_OH] = 6,
|
||||
[SPECIES_CELEBI] = 15,
|
||||
[SPECIES_OLD_UNOWN_B] = 0,
|
||||
[SPECIES_OLD_UNOWN_C] = 0,
|
||||
[SPECIES_OLD_UNOWN_D] = 0,
|
||||
[SPECIES_OLD_UNOWN_E] = 0,
|
||||
[SPECIES_OLD_UNOWN_F] = 0,
|
||||
[SPECIES_OLD_UNOWN_G] = 0,
|
||||
[SPECIES_OLD_UNOWN_H] = 0,
|
||||
[SPECIES_OLD_UNOWN_I] = 0,
|
||||
[SPECIES_OLD_UNOWN_J] = 0,
|
||||
[SPECIES_OLD_UNOWN_K] = 0,
|
||||
[SPECIES_OLD_UNOWN_L] = 0,
|
||||
[SPECIES_OLD_UNOWN_M] = 0,
|
||||
[SPECIES_OLD_UNOWN_N] = 0,
|
||||
[SPECIES_OLD_UNOWN_O] = 0,
|
||||
[SPECIES_OLD_UNOWN_P] = 0,
|
||||
[SPECIES_OLD_UNOWN_Q] = 0,
|
||||
[SPECIES_OLD_UNOWN_R] = 0,
|
||||
[SPECIES_OLD_UNOWN_S] = 0,
|
||||
[SPECIES_OLD_UNOWN_T] = 0,
|
||||
[SPECIES_OLD_UNOWN_U] = 0,
|
||||
[SPECIES_OLD_UNOWN_V] = 0,
|
||||
[SPECIES_OLD_UNOWN_W] = 0,
|
||||
[SPECIES_OLD_UNOWN_X] = 0,
|
||||
[SPECIES_OLD_UNOWN_Y] = 0,
|
||||
[SPECIES_OLD_UNOWN_Z] = 0,
|
||||
[SPECIES_TREECKO] = 0,
|
||||
[SPECIES_GROVYLE] = 0,
|
||||
[SPECIES_SCEPTILE] = 0,
|
||||
[SPECIES_TORCHIC] = 0,
|
||||
[SPECIES_COMBUSKEN] = 0,
|
||||
[SPECIES_BLAZIKEN] = 0,
|
||||
[SPECIES_MUDKIP] = 0,
|
||||
[SPECIES_MARSHTOMP] = 0,
|
||||
[SPECIES_SWAMPERT] = 0,
|
||||
[SPECIES_POOCHYENA] = 0,
|
||||
[SPECIES_MIGHTYENA] = 0,
|
||||
[SPECIES_ZIGZAGOON] = 0,
|
||||
[SPECIES_LINOONE] = 0,
|
||||
[SPECIES_WURMPLE] = 0,
|
||||
[SPECIES_SILCOON] = 0,
|
||||
[SPECIES_BEAUTIFLY] = 8,
|
||||
[SPECIES_CASCOON] = 0,
|
||||
[SPECIES_DUSTOX] = 10,
|
||||
[SPECIES_LOTAD] = 0,
|
||||
[SPECIES_LOMBRE] = 0,
|
||||
[SPECIES_LUDICOLO] = 0,
|
||||
[SPECIES_SEEDOT] = 0,
|
||||
[SPECIES_NUZLEAF] = 0,
|
||||
[SPECIES_SHIFTRY] = 0,
|
||||
[SPECIES_NINCADA] = 0,
|
||||
[SPECIES_NINJASK] = 10,
|
||||
[SPECIES_SHEDINJA] = 8,
|
||||
[SPECIES_TAILLOW] = 0,
|
||||
[SPECIES_SWELLOW] = 0,
|
||||
[SPECIES_SHROOMISH] = 0,
|
||||
[SPECIES_BRELOOM] = 0,
|
||||
[SPECIES_SPINDA] = 0,
|
||||
[SPECIES_WINGULL] = 16,
|
||||
[SPECIES_PELIPPER] = 8,
|
||||
[SPECIES_SURSKIT] = 0,
|
||||
[SPECIES_MASQUERAIN] = 10,
|
||||
[SPECIES_WAILMER] = 0,
|
||||
[SPECIES_WAILORD] = 0,
|
||||
[SPECIES_SKITTY] = 0,
|
||||
[SPECIES_DELCATTY] = 0,
|
||||
[SPECIES_KECLEON] = 0,
|
||||
[SPECIES_BALTOY] = 4,
|
||||
[SPECIES_CLAYDOL] = 10,
|
||||
[SPECIES_NOSEPASS] = 0,
|
||||
[SPECIES_TORKOAL] = 0,
|
||||
[SPECIES_SABLEYE] = 0,
|
||||
[SPECIES_BARBOACH] = 0,
|
||||
[SPECIES_WHISCASH] = 0,
|
||||
[SPECIES_LUVDISC] = 0,
|
||||
[SPECIES_CORPHISH] = 0,
|
||||
[SPECIES_CRAWDAUNT] = 0,
|
||||
[SPECIES_FEEBAS] = 0,
|
||||
[SPECIES_MILOTIC] = 0,
|
||||
[SPECIES_CARVANHA] = 0,
|
||||
[SPECIES_SHARPEDO] = 0,
|
||||
[SPECIES_TRAPINCH] = 0,
|
||||
[SPECIES_VIBRAVA] = 0,
|
||||
[SPECIES_FLYGON] = 7,
|
||||
[SPECIES_MAKUHITA] = 0,
|
||||
[SPECIES_HARIYAMA] = 0,
|
||||
[SPECIES_ELECTRIKE] = 0,
|
||||
[SPECIES_MANECTRIC] = 0,
|
||||
[SPECIES_NUMEL] = 0,
|
||||
[SPECIES_CAMERUPT] = 0,
|
||||
[SPECIES_SPHEAL] = 0,
|
||||
[SPECIES_SEALEO] = 0,
|
||||
[SPECIES_WALREIN] = 0,
|
||||
[SPECIES_CACNEA] = 0,
|
||||
[SPECIES_CACTURNE] = 0,
|
||||
[SPECIES_SNORUNT] = 0,
|
||||
[SPECIES_GLALIE] = 12,
|
||||
[SPECIES_LUNATONE] = 13,
|
||||
[SPECIES_SOLROCK] = 4,
|
||||
[SPECIES_AZURILL] = 0,
|
||||
[SPECIES_SPOINK] = 0,
|
||||
[SPECIES_GRUMPIG] = 0,
|
||||
[SPECIES_PLUSLE] = 0,
|
||||
[SPECIES_MINUN] = 0,
|
||||
[SPECIES_MAWILE] = 0,
|
||||
[SPECIES_MEDITITE] = 0,
|
||||
[SPECIES_MEDICHAM] = 0,
|
||||
[SPECIES_SWABLU] = 12,
|
||||
[SPECIES_ALTARIA] = 8,
|
||||
[SPECIES_WYNAUT] = 0,
|
||||
[SPECIES_DUSKULL] = 9,
|
||||
[SPECIES_DUSCLOPS] = 0,
|
||||
[SPECIES_ROSELIA] = 0,
|
||||
[SPECIES_SLAKOTH] = 0,
|
||||
[SPECIES_VIGOROTH] = 0,
|
||||
[SPECIES_SLAKING] = 0,
|
||||
[SPECIES_GULPIN] = 0,
|
||||
[SPECIES_SWALOT] = 0,
|
||||
[SPECIES_TROPIUS] = 0,
|
||||
[SPECIES_WHISMUR] = 0,
|
||||
[SPECIES_LOUDRED] = 0,
|
||||
[SPECIES_EXPLOUD] = 0,
|
||||
[SPECIES_CLAMPERL] = 0,
|
||||
[SPECIES_HUNTAIL] = 0,
|
||||
[SPECIES_GOREBYSS] = 0,
|
||||
[SPECIES_ABSOL] = 0,
|
||||
[SPECIES_SHUPPET] = 12,
|
||||
[SPECIES_BANETTE] = 8,
|
||||
[SPECIES_SEVIPER] = 0,
|
||||
[SPECIES_ZANGOOSE] = 0,
|
||||
[SPECIES_RELICANTH] = 0,
|
||||
[SPECIES_ARON] = 0,
|
||||
[SPECIES_LAIRON] = 0,
|
||||
[SPECIES_AGGRON] = 0,
|
||||
[SPECIES_CASTFORM] = 16,
|
||||
[SPECIES_VOLBEAT] = 0,
|
||||
[SPECIES_ILLUMISE] = 0,
|
||||
[SPECIES_LILEEP] = 0,
|
||||
[SPECIES_CRADILY] = 0,
|
||||
[SPECIES_ANORITH] = 0,
|
||||
[SPECIES_ARMALDO] = 0,
|
||||
[SPECIES_RALTS] = 0,
|
||||
[SPECIES_KIRLIA] = 0,
|
||||
[SPECIES_GARDEVOIR] = 0,
|
||||
[SPECIES_BAGON] = 0,
|
||||
[SPECIES_SHELGON] = 0,
|
||||
[SPECIES_SALAMENCE] = 0,
|
||||
[SPECIES_BELDUM] = 8,
|
||||
[SPECIES_METANG] = 0,
|
||||
[SPECIES_METAGROSS] = 0,
|
||||
[SPECIES_REGIROCK] = 0,
|
||||
[SPECIES_REGICE] = 0,
|
||||
[SPECIES_REGISTEEL] = 0,
|
||||
[SPECIES_KYOGRE] = 0,
|
||||
[SPECIES_GROUDON] = 0,
|
||||
[SPECIES_RAYQUAZA] = 6,
|
||||
[SPECIES_LATIAS] = 6,
|
||||
[SPECIES_LATIOS] = 6,
|
||||
[SPECIES_JIRACHI] = 12,
|
||||
[SPECIES_DEOXYS] = 8,
|
||||
[SPECIES_CHIMECHO] = 12,
|
||||
};
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -7,7 +7,7 @@ const u8 gPokeBallItemDescription[] = _("A tool used for\ncatching wild\nPOKéMO
|
||||
const u8 gSafariBallItemDescription[] = _("A special BALL that\nis used only in the\nSAFARI ZONE.");
|
||||
const u8 gNetBallItemDescription[] = _("A BALL that works\nwell on WATER- and\nBUG-type POKéMON.");
|
||||
const u8 gDiveBallItemDescription[] = _("A BALL that works\nbetter on POKéMON\non the ocean floor.");
|
||||
const u8 gNestBallItemDescription[] = _("A BALL that works\nbetter on weaker\nPOKéMON.");
|
||||
const u8 gNestBallItemDescription[] = _("A BALL that works\nbetter on weaker\nPOKéMON.");
|
||||
const u8 gRepeatBallItemDescription[] = _("A BALL that works\nbetter on POKéMON\ncaught before.");
|
||||
const u8 gTimerBallItemDescription[] = _("A BALL that gains\npower in battles\ntaking many turns.");
|
||||
const u8 gLuxuryBallItemDescription[] = _("A cozy BALL that\nmakes POKéMON\nmore friendly.");
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,7 +1,7 @@
|
||||
#include "global.h"
|
||||
#include "data2.h"
|
||||
#include "graphics.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "constants/species.h"
|
||||
|
||||
const u16 gUnknown_082FF1D8[] = INCBIN_U16("graphics/link/minigame_digits.gbapal");
|
||||
|
@ -532,7 +532,7 @@ static void RemoveIVIndexFromList(u8 *ivs, u8 selectedIv)
|
||||
s32 i, j;
|
||||
u8 temp[NUM_STATS];
|
||||
|
||||
ivs[selectedIv] = 0xff;
|
||||
ivs[selectedIv] = 0xFF;
|
||||
for (i = 0; i < NUM_STATS; i++)
|
||||
{
|
||||
temp[i] = ivs[i];
|
||||
@ -541,7 +541,7 @@ static void RemoveIVIndexFromList(u8 *ivs, u8 selectedIv)
|
||||
j = 0;
|
||||
for (i = 0; i < NUM_STATS; i++)
|
||||
{
|
||||
if (temp[i] != 0xff)
|
||||
if (temp[i] != 0xFF)
|
||||
ivs[j++] = temp[i];
|
||||
}
|
||||
}
|
||||
@ -681,7 +681,7 @@ static void BuildEggMoveset(struct Pokemon *egg, struct BoxPokemon *father, stru
|
||||
{
|
||||
if (sHatchedEggFatherMoves[i] == sHatchedEggEggMoves[j])
|
||||
{
|
||||
if (GiveMoveToMon(egg, sHatchedEggFatherMoves[i]) == 0xffff)
|
||||
if (GiveMoveToMon(egg, sHatchedEggFatherMoves[i]) == 0xFFFF)
|
||||
DeleteFirstMoveAndGiveMoveToMon(egg, sHatchedEggFatherMoves[i]);
|
||||
break;
|
||||
}
|
||||
@ -700,7 +700,7 @@ static void BuildEggMoveset(struct Pokemon *egg, struct BoxPokemon *father, stru
|
||||
{
|
||||
if (sHatchedEggFatherMoves[i] == ItemIdToBattleMoveId(ITEM_TM01_FOCUS_PUNCH + j) && CanMonLearnTMHM(egg, j))
|
||||
{
|
||||
if (GiveMoveToMon(egg, sHatchedEggFatherMoves[i]) == 0xffff)
|
||||
if (GiveMoveToMon(egg, sHatchedEggFatherMoves[i]) == 0xFFFF)
|
||||
DeleteFirstMoveAndGiveMoveToMon(egg, sHatchedEggFatherMoves[i]);
|
||||
}
|
||||
}
|
||||
@ -725,7 +725,7 @@ static void BuildEggMoveset(struct Pokemon *egg, struct BoxPokemon *father, stru
|
||||
{
|
||||
if (sHatchedEggLevelUpMoves[j] != MOVE_NONE && sHatchedEggFinalMoves[i] == sHatchedEggLevelUpMoves[j])
|
||||
{
|
||||
if (GiveMoveToMon(egg, sHatchedEggFinalMoves[i]) == 0xffff)
|
||||
if (GiveMoveToMon(egg, sHatchedEggFinalMoves[i]) == 0xFFFF)
|
||||
DeleteFirstMoveAndGiveMoveToMon(egg, sHatchedEggFinalMoves[i]);
|
||||
break;
|
||||
}
|
||||
|
596
src/decompress.c
596
src/decompress.c
@ -2,7 +2,7 @@
|
||||
#include "decompress.h"
|
||||
#include "constants/species.h"
|
||||
#include "text.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "pokemon.h"
|
||||
|
||||
EWRAM_DATA ALIGNED(4) u8 gDecompressionBuffer[0x4000] = {0};
|
||||
@ -122,346 +122,346 @@ void sub_803471C()
|
||||
{
|
||||
asm(".syntax unified\n\
|
||||
push {r4-r7,lr}\n\
|
||||
mov r7, r10\n\
|
||||
mov r6, r9\n\
|
||||
mov r5, r8\n\
|
||||
push {r5-r7}\n\
|
||||
sub sp, 0x24\n\
|
||||
mov r9, r0\n\
|
||||
str r1, [sp]\n\
|
||||
str r2, [sp, 0x4]\n\
|
||||
adds r5, r3, 0\n\
|
||||
movs r0, 0x1\n\
|
||||
mov r1, r9\n\
|
||||
ands r0, r1\n\
|
||||
cmp r0, 0\n\
|
||||
bne _0803473C\n\
|
||||
b _080348D4\n\
|
||||
mov r7, r10\n\
|
||||
mov r6, r9\n\
|
||||
mov r5, r8\n\
|
||||
push {r5-r7}\n\
|
||||
sub sp, 0x24\n\
|
||||
mov r9, r0\n\
|
||||
str r1, [sp]\n\
|
||||
str r2, [sp, 0x4]\n\
|
||||
adds r5, r3, 0\n\
|
||||
movs r0, 0x1\n\
|
||||
mov r1, r9\n\
|
||||
ands r0, r1\n\
|
||||
cmp r0, 0\n\
|
||||
bne _0803473C\n\
|
||||
b _080348D4\n\
|
||||
_0803473C:\n\
|
||||
asrs r0, r1, 1\n\
|
||||
adds r0, 0x4\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
str r0, [sp, 0x8]\n\
|
||||
movs r0, 0\n\
|
||||
ldr r2, [sp]\n\
|
||||
cmp r0, r2\n\
|
||||
blt _08034750\n\
|
||||
b _08034964\n\
|
||||
asrs r0, r1, 1\n\
|
||||
adds r0, 0x4\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
str r0, [sp, 0x8]\n\
|
||||
movs r0, 0\n\
|
||||
ldr r2, [sp]\n\
|
||||
cmp r0, r2\n\
|
||||
blt _08034750\n\
|
||||
b _08034964\n\
|
||||
_08034750:\n\
|
||||
movs r4, 0x8\n\
|
||||
subs r1, r4, r1\n\
|
||||
str r1, [sp, 0x10]\n\
|
||||
movs r4, 0x8\n\
|
||||
subs r1, r4, r1\n\
|
||||
str r1, [sp, 0x10]\n\
|
||||
_08034756:\n\
|
||||
movs r7, 0\n\
|
||||
adds r0, 0x1\n\
|
||||
str r0, [sp, 0x14]\n\
|
||||
ldr r0, [sp, 0x10]\n\
|
||||
cmp r7, r0\n\
|
||||
bge _080347D2\n\
|
||||
ldr r1, [sp, 0x8]\n\
|
||||
lsls r1, 8\n\
|
||||
str r1, [sp, 0x18]\n\
|
||||
movs r2, 0\n\
|
||||
mov r10, r2\n\
|
||||
mov r0, r9\n\
|
||||
movs r4, 0x8\n\
|
||||
subs r0, r4, r0\n\
|
||||
str r0, [sp, 0xC]\n\
|
||||
movs r7, 0\n\
|
||||
adds r0, 0x1\n\
|
||||
str r0, [sp, 0x14]\n\
|
||||
ldr r0, [sp, 0x10]\n\
|
||||
cmp r7, r0\n\
|
||||
bge _080347D2\n\
|
||||
ldr r1, [sp, 0x8]\n\
|
||||
lsls r1, 8\n\
|
||||
str r1, [sp, 0x18]\n\
|
||||
movs r2, 0\n\
|
||||
mov r10, r2\n\
|
||||
mov r0, r9\n\
|
||||
movs r4, 0x8\n\
|
||||
subs r0, r4, r0\n\
|
||||
str r0, [sp, 0xC]\n\
|
||||
_08034774:\n\
|
||||
movs r3, 0\n\
|
||||
asrs r0, r7, 1\n\
|
||||
adds r1, r7, 0\n\
|
||||
movs r2, 0x1\n\
|
||||
ands r1, r2\n\
|
||||
str r1, [sp, 0x20]\n\
|
||||
lsls r0, 8\n\
|
||||
mov r8, r0\n\
|
||||
mov r12, r5\n\
|
||||
movs r3, 0\n\
|
||||
asrs r0, r7, 1\n\
|
||||
adds r1, r7, 0\n\
|
||||
movs r2, 0x1\n\
|
||||
ands r1, r2\n\
|
||||
str r1, [sp, 0x20]\n\
|
||||
lsls r0, 8\n\
|
||||
mov r8, r0\n\
|
||||
mov r12, r5\n\
|
||||
_08034786:\n\
|
||||
lsls r1, r3, 5\n\
|
||||
ldr r4, [sp, 0x18]\n\
|
||||
adds r0, r5, r4\n\
|
||||
adds r0, r1\n\
|
||||
mov r1, r8\n\
|
||||
adds r2, r0, r1\n\
|
||||
mov r1, r12\n\
|
||||
add r1, r8\n\
|
||||
movs r6, 0xF\n\
|
||||
lsls r1, r3, 5\n\
|
||||
ldr r4, [sp, 0x18]\n\
|
||||
adds r0, r5, r4\n\
|
||||
adds r0, r1\n\
|
||||
mov r1, r8\n\
|
||||
adds r2, r0, r1\n\
|
||||
mov r1, r12\n\
|
||||
add r1, r8\n\
|
||||
movs r6, 0xF\n\
|
||||
_08034798:\n\
|
||||
ldr r4, [sp, 0x20]\n\
|
||||
cmp r4, 0\n\
|
||||
bne _080347A8\n\
|
||||
strb r4, [r1]\n\
|
||||
add r4, sp, 0x20\n\
|
||||
ldrb r4, [r4]\n\
|
||||
strb r4, [r2, 0x10]\n\
|
||||
b _080347B6\n\
|
||||
ldr r4, [sp, 0x20]\n\
|
||||
cmp r4, 0\n\
|
||||
bne _080347A8\n\
|
||||
strb r4, [r1]\n\
|
||||
add r4, sp, 0x20\n\
|
||||
ldrb r4, [r4]\n\
|
||||
strb r4, [r2, 0x10]\n\
|
||||
b _080347B6\n\
|
||||
_080347A8:\n\
|
||||
mov r0, r10\n\
|
||||
strb r0, [r1, 0x10]\n\
|
||||
movs r4, 0x80\n\
|
||||
lsls r4, 1\n\
|
||||
adds r4, r2, r4\n\
|
||||
str r4, [sp, 0x1C]\n\
|
||||
strb r0, [r4]\n\
|
||||
mov r0, r10\n\
|
||||
strb r0, [r1, 0x10]\n\
|
||||
movs r4, 0x80\n\
|
||||
lsls r4, 1\n\
|
||||
adds r4, r2, r4\n\
|
||||
str r4, [sp, 0x1C]\n\
|
||||
strb r0, [r4]\n\
|
||||
_080347B6:\n\
|
||||
adds r2, 0x1\n\
|
||||
adds r1, 0x1\n\
|
||||
subs r6, 0x1\n\
|
||||
cmp r6, 0\n\
|
||||
bge _08034798\n\
|
||||
movs r0, 0x20\n\
|
||||
add r12, r0\n\
|
||||
adds r3, 0x1\n\
|
||||
cmp r3, 0x7\n\
|
||||
ble _08034786\n\
|
||||
adds r7, 0x1\n\
|
||||
ldr r1, [sp, 0xC]\n\
|
||||
cmp r7, r1\n\
|
||||
blt _08034774\n\
|
||||
adds r2, 0x1\n\
|
||||
adds r1, 0x1\n\
|
||||
subs r6, 0x1\n\
|
||||
cmp r6, 0\n\
|
||||
bge _08034798\n\
|
||||
movs r0, 0x20\n\
|
||||
add r12, r0\n\
|
||||
adds r3, 0x1\n\
|
||||
cmp r3, 0x7\n\
|
||||
ble _08034786\n\
|
||||
adds r7, 0x1\n\
|
||||
ldr r1, [sp, 0xC]\n\
|
||||
cmp r7, r1\n\
|
||||
blt _08034774\n\
|
||||
_080347D2:\n\
|
||||
movs r7, 0\n\
|
||||
movs r2, 0\n\
|
||||
movs r7, 0\n\
|
||||
movs r2, 0\n\
|
||||
_080347D6:\n\
|
||||
movs r6, 0\n\
|
||||
adds r4, r7, 0x1\n\
|
||||
mov r8, r4\n\
|
||||
lsls r4, r7, 5\n\
|
||||
movs r6, 0\n\
|
||||
adds r4, r7, 0x1\n\
|
||||
mov r8, r4\n\
|
||||
lsls r4, r7, 5\n\
|
||||
_080347DE:\n\
|
||||
adds r0, r6, 0x1\n\
|
||||
mov r10, r0\n\
|
||||
lsls r1, r6, 8\n\
|
||||
adds r0, r1, 0\n\
|
||||
adds r0, 0xC0\n\
|
||||
adds r0, r5, r0\n\
|
||||
adds r0, r4\n\
|
||||
adds r1, r5, r1\n\
|
||||
adds r1, r4\n\
|
||||
movs r3, 0x1F\n\
|
||||
adds r0, r6, 0x1\n\
|
||||
mov r10, r0\n\
|
||||
lsls r1, r6, 8\n\
|
||||
adds r0, r1, 0\n\
|
||||
adds r0, 0xC0\n\
|
||||
adds r0, r5, r0\n\
|
||||
adds r0, r4\n\
|
||||
adds r1, r5, r1\n\
|
||||
adds r1, r4\n\
|
||||
movs r3, 0x1F\n\
|
||||
_080347F2:\n\
|
||||
strb r2, [r1]\n\
|
||||
strb r2, [r0]\n\
|
||||
adds r0, 0x1\n\
|
||||
adds r1, 0x1\n\
|
||||
subs r3, 0x1\n\
|
||||
cmp r3, 0\n\
|
||||
bge _080347F2\n\
|
||||
mov r6, r10\n\
|
||||
cmp r6, 0x7\n\
|
||||
ble _080347DE\n\
|
||||
mov r7, r8\n\
|
||||
cmp r7, 0x1\n\
|
||||
ble _080347D6\n\
|
||||
mov r1, r9\n\
|
||||
cmp r1, 0x5\n\
|
||||
bne _08034818\n\
|
||||
movs r2, 0x90\n\
|
||||
lsls r2, 1\n\
|
||||
adds r5, r2\n\
|
||||
strb r2, [r1]\n\
|
||||
strb r2, [r0]\n\
|
||||
adds r0, 0x1\n\
|
||||
adds r1, 0x1\n\
|
||||
subs r3, 0x1\n\
|
||||
cmp r3, 0\n\
|
||||
bge _080347F2\n\
|
||||
mov r6, r10\n\
|
||||
cmp r6, 0x7\n\
|
||||
ble _080347DE\n\
|
||||
mov r7, r8\n\
|
||||
cmp r7, 0x1\n\
|
||||
ble _080347D6\n\
|
||||
mov r1, r9\n\
|
||||
cmp r1, 0x5\n\
|
||||
bne _08034818\n\
|
||||
movs r2, 0x90\n\
|
||||
lsls r2, 1\n\
|
||||
adds r5, r2\n\
|
||||
_08034818:\n\
|
||||
movs r7, 0\n\
|
||||
cmp r7, r9\n\
|
||||
bge _080348AE\n\
|
||||
movs r7, 0\n\
|
||||
cmp r7, r9\n\
|
||||
bge _080348AE\n\
|
||||
_0803481E:\n\
|
||||
movs r3, 0\n\
|
||||
adds r7, 0x1\n\
|
||||
mov r8, r7\n\
|
||||
cmp r3, r9\n\
|
||||
bge _0803488E\n\
|
||||
movs r3, 0\n\
|
||||
adds r7, 0x1\n\
|
||||
mov r8, r7\n\
|
||||
cmp r3, r9\n\
|
||||
bge _0803488E\n\
|
||||
_08034828:\n\
|
||||
adds r3, 0x1\n\
|
||||
mov r10, r3\n\
|
||||
ldr r4, [sp, 0x4]\n\
|
||||
adds r4, 0x20\n\
|
||||
adds r7, r5, 0\n\
|
||||
adds r7, 0x20\n\
|
||||
movs r0, 0x12\n\
|
||||
adds r0, r5\n\
|
||||
mov r12, r0\n\
|
||||
ldr r2, [sp, 0x4]\n\
|
||||
adds r3, r5, 0\n\
|
||||
movs r6, 0x3\n\
|
||||
adds r3, 0x1\n\
|
||||
mov r10, r3\n\
|
||||
ldr r4, [sp, 0x4]\n\
|
||||
adds r4, 0x20\n\
|
||||
adds r7, r5, 0\n\
|
||||
adds r7, 0x20\n\
|
||||
movs r0, 0x12\n\
|
||||
adds r0, r5\n\
|
||||
mov r12, r0\n\
|
||||
ldr r2, [sp, 0x4]\n\
|
||||
adds r3, r5, 0\n\
|
||||
movs r6, 0x3\n\
|
||||
_08034840:\n\
|
||||
ldrb r0, [r2]\n\
|
||||
mov r1, r12\n\
|
||||
strb r0, [r1]\n\
|
||||
ldrb r0, [r2, 0x1]\n\
|
||||
strb r0, [r1, 0x1]\n\
|
||||
ldrb r0, [r2, 0x2]\n\
|
||||
strb r0, [r1, 0x1E]\n\
|
||||
ldrb r0, [r2, 0x3]\n\
|
||||
strb r0, [r1, 0x1F]\n\
|
||||
movs r0, 0x81\n\
|
||||
lsls r0, 1\n\
|
||||
adds r1, r3, r0\n\
|
||||
ldrb r0, [r2, 0x10]\n\
|
||||
strb r0, [r1]\n\
|
||||
ldr r0, =0x00000103\n\
|
||||
adds r1, r3, r0\n\
|
||||
ldrb r0, [r2, 0x11]\n\
|
||||
strb r0, [r1]\n\
|
||||
movs r0, 0x90\n\
|
||||
lsls r0, 1\n\
|
||||
adds r1, r3, r0\n\
|
||||
ldrb r0, [r2, 0x12]\n\
|
||||
strb r0, [r1]\n\
|
||||
ldr r0, =0x00000121\n\
|
||||
adds r1, r3, r0\n\
|
||||
ldrb r0, [r2, 0x13]\n\
|
||||
strb r0, [r1]\n\
|
||||
movs r1, 0x4\n\
|
||||
add r12, r1\n\
|
||||
adds r2, 0x4\n\
|
||||
adds r3, 0x4\n\
|
||||
subs r6, 0x1\n\
|
||||
cmp r6, 0\n\
|
||||
bge _08034840\n\
|
||||
str r4, [sp, 0x4]\n\
|
||||
adds r5, r7, 0\n\
|
||||
mov r3, r10\n\
|
||||
cmp r3, r9\n\
|
||||
blt _08034828\n\
|
||||
ldrb r0, [r2]\n\
|
||||
mov r1, r12\n\
|
||||
strb r0, [r1]\n\
|
||||
ldrb r0, [r2, 0x1]\n\
|
||||
strb r0, [r1, 0x1]\n\
|
||||
ldrb r0, [r2, 0x2]\n\
|
||||
strb r0, [r1, 0x1E]\n\
|
||||
ldrb r0, [r2, 0x3]\n\
|
||||
strb r0, [r1, 0x1F]\n\
|
||||
movs r0, 0x81\n\
|
||||
lsls r0, 1\n\
|
||||
adds r1, r3, r0\n\
|
||||
ldrb r0, [r2, 0x10]\n\
|
||||
strb r0, [r1]\n\
|
||||
ldr r0, =0x00000103\n\
|
||||
adds r1, r3, r0\n\
|
||||
ldrb r0, [r2, 0x11]\n\
|
||||
strb r0, [r1]\n\
|
||||
movs r0, 0x90\n\
|
||||
lsls r0, 1\n\
|
||||
adds r1, r3, r0\n\
|
||||
ldrb r0, [r2, 0x12]\n\
|
||||
strb r0, [r1]\n\
|
||||
ldr r0, =0x00000121\n\
|
||||
adds r1, r3, r0\n\
|
||||
ldrb r0, [r2, 0x13]\n\
|
||||
strb r0, [r1]\n\
|
||||
movs r1, 0x4\n\
|
||||
add r12, r1\n\
|
||||
adds r2, 0x4\n\
|
||||
adds r3, 0x4\n\
|
||||
subs r6, 0x1\n\
|
||||
cmp r6, 0\n\
|
||||
bge _08034840\n\
|
||||
str r4, [sp, 0x4]\n\
|
||||
adds r5, r7, 0\n\
|
||||
mov r3, r10\n\
|
||||
cmp r3, r9\n\
|
||||
blt _08034828\n\
|
||||
_0803488E:\n\
|
||||
mov r2, r9\n\
|
||||
cmp r2, 0x7\n\
|
||||
bne _080348A0\n\
|
||||
adds r5, 0x20\n\
|
||||
b _080348A8\n\
|
||||
.pool\n\
|
||||
mov r2, r9\n\
|
||||
cmp r2, 0x7\n\
|
||||
bne _080348A0\n\
|
||||
adds r5, 0x20\n\
|
||||
b _080348A8\n\
|
||||
.pool\n\
|
||||
_080348A0:\n\
|
||||
mov r4, r9\n\
|
||||
cmp r4, 0x5\n\
|
||||
bne _080348A8\n\
|
||||
adds r5, 0x60\n\
|
||||
mov r4, r9\n\
|
||||
cmp r4, 0x5\n\
|
||||
bne _080348A8\n\
|
||||
adds r5, 0x60\n\
|
||||
_080348A8:\n\
|
||||
mov r7, r8\n\
|
||||
cmp r7, r9\n\
|
||||
blt _0803481E\n\
|
||||
mov r7, r8\n\
|
||||
cmp r7, r9\n\
|
||||
blt _0803481E\n\
|
||||
_080348AE:\n\
|
||||
mov r0, r9\n\
|
||||
cmp r0, 0x7\n\
|
||||
bne _080348BC\n\
|
||||
movs r1, 0x80\n\
|
||||
lsls r1, 1\n\
|
||||
adds r5, r1\n\
|
||||
b _080348C8\n\
|
||||
mov r0, r9\n\
|
||||
cmp r0, 0x7\n\
|
||||
bne _080348BC\n\
|
||||
movs r1, 0x80\n\
|
||||
lsls r1, 1\n\
|
||||
adds r5, r1\n\
|
||||
b _080348C8\n\
|
||||
_080348BC:\n\
|
||||
mov r2, r9\n\
|
||||
cmp r2, 0x5\n\
|
||||
bne _080348C8\n\
|
||||
movs r4, 0xF0\n\
|
||||
lsls r4, 1\n\
|
||||
adds r5, r4\n\
|
||||
mov r2, r9\n\
|
||||
cmp r2, 0x5\n\
|
||||
bne _080348C8\n\
|
||||
movs r4, 0xF0\n\
|
||||
lsls r4, 1\n\
|
||||
adds r5, r4\n\
|
||||
_080348C8:\n\
|
||||
ldr r0, [sp, 0x14]\n\
|
||||
ldr r1, [sp]\n\
|
||||
cmp r0, r1\n\
|
||||
bge _080348D2\n\
|
||||
b _08034756\n\
|
||||
ldr r0, [sp, 0x14]\n\
|
||||
ldr r1, [sp]\n\
|
||||
cmp r0, r1\n\
|
||||
bge _080348D2\n\
|
||||
b _08034756\n\
|
||||
_080348D2:\n\
|
||||
b _08034964\n\
|
||||
b _08034964\n\
|
||||
_080348D4:\n\
|
||||
movs r6, 0\n\
|
||||
ldr r2, [sp]\n\
|
||||
cmp r6, r2\n\
|
||||
bge _08034964\n\
|
||||
movs r6, 0\n\
|
||||
ldr r2, [sp]\n\
|
||||
cmp r6, r2\n\
|
||||
bge _08034964\n\
|
||||
_080348DC:\n\
|
||||
adds r6, 0x1\n\
|
||||
mov r10, r6\n\
|
||||
mov r4, r9\n\
|
||||
cmp r4, 0x6\n\
|
||||
bne _080348F4\n\
|
||||
movs r0, 0\n\
|
||||
movs r3, 0xFF\n\
|
||||
adds r6, 0x1\n\
|
||||
mov r10, r6\n\
|
||||
mov r4, r9\n\
|
||||
cmp r4, 0x6\n\
|
||||
bne _080348F4\n\
|
||||
movs r0, 0\n\
|
||||
movs r3, 0xFF\n\
|
||||
_080348EA:\n\
|
||||
strb r0, [r5]\n\
|
||||
adds r5, 0x1\n\
|
||||
subs r3, 0x1\n\
|
||||
cmp r3, 0\n\
|
||||
bge _080348EA\n\
|
||||
strb r0, [r5]\n\
|
||||
adds r5, 0x1\n\
|
||||
subs r3, 0x1\n\
|
||||
cmp r3, 0\n\
|
||||
bge _080348EA\n\
|
||||
_080348F4:\n\
|
||||
movs r7, 0\n\
|
||||
cmp r7, r9\n\
|
||||
bge _08034948\n\
|
||||
movs r7, 0\n\
|
||||
cmp r7, r9\n\
|
||||
bge _08034948\n\
|
||||
_080348FA:\n\
|
||||
adds r7, 0x1\n\
|
||||
mov r8, r7\n\
|
||||
mov r1, r9\n\
|
||||
lsls r0, r1, 5\n\
|
||||
cmp r1, 0x6\n\
|
||||
bne _08034914\n\
|
||||
movs r1, 0\n\
|
||||
movs r3, 0x1F\n\
|
||||
adds r7, 0x1\n\
|
||||
mov r8, r7\n\
|
||||
mov r1, r9\n\
|
||||
lsls r0, r1, 5\n\
|
||||
cmp r1, 0x6\n\
|
||||
bne _08034914\n\
|
||||
movs r1, 0\n\
|
||||
movs r3, 0x1F\n\
|
||||
_0803490A:\n\
|
||||
strb r1, [r5]\n\
|
||||
adds r5, 0x1\n\
|
||||
subs r3, 0x1\n\
|
||||
cmp r3, 0\n\
|
||||
bge _0803490A\n\
|
||||
strb r1, [r5]\n\
|
||||
adds r5, 0x1\n\
|
||||
subs r3, 0x1\n\
|
||||
cmp r3, 0\n\
|
||||
bge _0803490A\n\
|
||||
_08034914:\n\
|
||||
adds r1, r0, 0\n\
|
||||
cmp r1, 0\n\
|
||||
ble _0803492E\n\
|
||||
adds r3, r1, 0\n\
|
||||
adds r1, r0, 0\n\
|
||||
cmp r1, 0\n\
|
||||
ble _0803492E\n\
|
||||
adds r3, r1, 0\n\
|
||||
_0803491C:\n\
|
||||
ldr r2, [sp, 0x4]\n\
|
||||
ldrb r0, [r2]\n\
|
||||
strb r0, [r5]\n\
|
||||
adds r2, 0x1\n\
|
||||
str r2, [sp, 0x4]\n\
|
||||
adds r5, 0x1\n\
|
||||
subs r3, 0x1\n\
|
||||
cmp r3, 0\n\
|
||||
bne _0803491C\n\
|
||||
ldr r2, [sp, 0x4]\n\
|
||||
ldrb r0, [r2]\n\
|
||||
strb r0, [r5]\n\
|
||||
adds r2, 0x1\n\
|
||||
str r2, [sp, 0x4]\n\
|
||||
adds r5, 0x1\n\
|
||||
subs r3, 0x1\n\
|
||||
cmp r3, 0\n\
|
||||
bne _0803491C\n\
|
||||
_0803492E:\n\
|
||||
mov r4, r9\n\
|
||||
cmp r4, 0x6\n\
|
||||
bne _08034942\n\
|
||||
movs r0, 0\n\
|
||||
movs r3, 0x1F\n\
|
||||
mov r4, r9\n\
|
||||
cmp r4, 0x6\n\
|
||||
bne _08034942\n\
|
||||
movs r0, 0\n\
|
||||
movs r3, 0x1F\n\
|
||||
_08034938:\n\
|
||||
strb r0, [r5]\n\
|
||||
adds r5, 0x1\n\
|
||||
subs r3, 0x1\n\
|
||||
cmp r3, 0\n\
|
||||
bge _08034938\n\
|
||||
strb r0, [r5]\n\
|
||||
adds r5, 0x1\n\
|
||||
subs r3, 0x1\n\
|
||||
cmp r3, 0\n\
|
||||
bge _08034938\n\
|
||||
_08034942:\n\
|
||||
mov r7, r8\n\
|
||||
cmp r7, r9\n\
|
||||
blt _080348FA\n\
|
||||
mov r7, r8\n\
|
||||
cmp r7, r9\n\
|
||||
blt _080348FA\n\
|
||||
_08034948:\n\
|
||||
mov r0, r9\n\
|
||||
cmp r0, 0x6\n\
|
||||
bne _0803495C\n\
|
||||
movs r0, 0\n\
|
||||
movs r3, 0xFF\n\
|
||||
mov r0, r9\n\
|
||||
cmp r0, 0x6\n\
|
||||
bne _0803495C\n\
|
||||
movs r0, 0\n\
|
||||
movs r3, 0xFF\n\
|
||||
_08034952:\n\
|
||||
strb r0, [r5]\n\
|
||||
adds r5, 0x1\n\
|
||||
subs r3, 0x1\n\
|
||||
cmp r3, 0\n\
|
||||
bge _08034952\n\
|
||||
strb r0, [r5]\n\
|
||||
adds r5, 0x1\n\
|
||||
subs r3, 0x1\n\
|
||||
cmp r3, 0\n\
|
||||
bge _08034952\n\
|
||||
_0803495C:\n\
|
||||
mov r6, r10\n\
|
||||
ldr r1, [sp]\n\
|
||||
cmp r6, r1\n\
|
||||
blt _080348DC\n\
|
||||
mov r6, r10\n\
|
||||
ldr r1, [sp]\n\
|
||||
cmp r6, r1\n\
|
||||
blt _080348DC\n\
|
||||
_08034964:\n\
|
||||
add sp, 0x24\n\
|
||||
pop {r3-r5}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
mov r10, r5\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
add sp, 0x24\n\
|
||||
pop {r3-r5}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
mov r10, r5\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.syntax divided");
|
||||
}
|
||||
|
||||
u32 GetDecompressedDataSize(const u32 *ptr)
|
||||
{
|
||||
const u8 *ptr8 = (const u8 *)ptr;
|
||||
const u8 *ptr8 = (const u8 *)ptr;
|
||||
return (ptr8[3] << 16) | (ptr8[2] << 8) | (ptr8[1]);
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
#include "global.h"
|
||||
#include "constants/decorations.h"
|
||||
#include "decompress.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "text.h"
|
||||
#include "string_util.h"
|
||||
#include "international_string_util.h"
|
||||
@ -312,7 +312,7 @@ const struct SpriteFrameImage sDecorSelectorSpriteFrameImages = {
|
||||
};
|
||||
|
||||
const struct SpriteTemplate sDecorSelectorSpriteTemplate = {
|
||||
0xffff,
|
||||
0xFFFF,
|
||||
OVERWORLD_PLACE_DECOR_SELECTOR_PAL_TAG,
|
||||
&sDecorSelectorOam,
|
||||
sDecorSelectorAnims,
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "easy_chat.h"
|
||||
#include "event_data.h"
|
||||
#include "link.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "random.h"
|
||||
#include "text.h"
|
||||
#include "tv.h"
|
||||
|
@ -5,7 +5,7 @@
|
||||
#include "gpu_regs.h"
|
||||
#include "scanline_effect.h"
|
||||
#include "task.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "decompress.h"
|
||||
#include "bg.h"
|
||||
#include "window.h"
|
||||
|
@ -1,7 +1,7 @@
|
||||
|
||||
// Includes
|
||||
#include "global.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "constants/songs.h"
|
||||
#include "sound.h"
|
||||
#include "overworld.h"
|
||||
|
@ -17,7 +17,7 @@
|
||||
#include "menu.h"
|
||||
#include "trig.h"
|
||||
#include "random.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "dma3.h"
|
||||
#include "gpu_regs.h"
|
||||
#include "bg.h"
|
||||
|
@ -9,7 +9,7 @@
|
||||
#include "field_effect_helpers.h"
|
||||
#include "field_player_avatar.h"
|
||||
#include "fieldmap.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "mauville_old_man.h"
|
||||
#include "metatile_behavior.h"
|
||||
#include "overworld.h"
|
||||
@ -142,255 +142,255 @@ void (*const gCameraObjectFuncs[])(struct Sprite *) = {
|
||||
// movement type callbacks
|
||||
static void (*const sMovementTypeCallbacks[])(struct Sprite *) =
|
||||
{
|
||||
MovementType_None, // MOVEMENT_TYPE_NONE
|
||||
MovementType_LookAround, // MOVEMENT_TYPE_LOOK_AROUND
|
||||
MovementType_WanderAround, // MOVEMENT_TYPE_WANDER_AROUND
|
||||
MovementType_WanderUpAndDown, // MOVEMENT_TYPE_WANDER_UP_AND_DOWN
|
||||
MovementType_WanderUpAndDown, // MOVEMENT_TYPE_WANDER_DOWN_AND_UP
|
||||
MovementType_WanderLeftAndRight, // MOVEMENT_TYPE_WANDER_LEFT_AND_RIGHT
|
||||
MovementType_WanderLeftAndRight, // MOVEMENT_TYPE_WANDER_RIGHT_AND_LEFT
|
||||
MovementType_FaceDirection, // MOVEMENT_TYPE_FACE_UP
|
||||
MovementType_FaceDirection, // MOVEMENT_TYPE_FACE_DOWN
|
||||
MovementType_FaceDirection, // MOVEMENT_TYPE_FACE_LEFT
|
||||
MovementType_FaceDirection, // MOVEMENT_TYPE_FACE_RIGHT
|
||||
MovementType_Player, // MOVEMENT_TYPE_PLAYER
|
||||
MovementType_BerryTreeGrowth, // MOVEMENT_TYPE_BERRY_TREE_GROWTH
|
||||
MovementType_FaceDownAndUp, // MOVEMENT_TYPE_FACE_DOWN_AND_UP
|
||||
MovementType_FaceLeftAndRight, // MOVEMENT_TYPE_FACE_LEFT_AND_RIGHT
|
||||
MovementType_FaceUpAndLeft, // MOVEMENT_TYPE_FACE_UP_AND_LEFT
|
||||
MovementType_FaceUpAndRight, // MOVEMENT_TYPE_FACE_UP_AND_RIGHT
|
||||
MovementType_FaceDownAndLeft, // MOVEMENT_TYPE_FACE_DOWN_AND_LEFT
|
||||
MovementType_FaceDownAndRight, // MOVEMENT_TYPE_FACE_DOWN_AND_RIGHT
|
||||
MovementType_FaceDownUpAndLeft, // MOVEMENT_TYPE_FACE_DOWN_UP_AND_LEFT
|
||||
MovementType_FaceDownUpAndRight, // MOVEMENT_TYPE_FACE_DOWN_UP_AND_RIGHT
|
||||
MovementType_FaceUpRightAndLeft, // MOVEMENT_TYPE_FACE_UP_LEFT_AND_RIGHT
|
||||
MovementType_FaceDownRightAndLeft, // MOVEMENT_TYPE_FACE_DOWN_LEFT_AND_RIGHT
|
||||
MovementType_RotateCounterclockwise, // MOVEMENT_TYPE_ROTATE_COUNTERCLOCKWISE
|
||||
MovementType_RotateClockwise, // MOVEMENT_TYPE_ROTATE_CLOCKWISE
|
||||
MovementType_WalkBackAndForth, // MOVEMENT_TYPE_WALK_UP_AND_DOWN
|
||||
MovementType_WalkBackAndForth, // MOVEMENT_TYPE_WALK_DOWN_AND_UP
|
||||
MovementType_WalkBackAndForth, // MOVEMENT_TYPE_WALK_LEFT_AND_RIGHT
|
||||
MovementType_WalkBackAndForth, // MOVEMENT_TYPE_WALK_RIGHT_AND_LEFT
|
||||
MovementType_WalkSequenceUpRightLeftDown, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_LEFT_DOWN
|
||||
MovementType_WalkSequenceRightLeftDownUp, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_DOWN_UP
|
||||
MovementType_WalkSequenceDownUpRightLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_RIGHT_LEFT
|
||||
MovementType_WalkSequenceLeftDownUpRight, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_UP_RIGHT
|
||||
MovementType_WalkSequenceUpLeftRightDown, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_RIGHT_DOWN
|
||||
MovementType_WalkSequenceLeftRightDownUp, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_DOWN_UP
|
||||
MovementType_WalkSequenceDownUpLeftRight, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_LEFT_RIGHT
|
||||
MovementType_WalkSequenceRightDownUpLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_UP_LEFT
|
||||
MovementType_WalkSequenceLeftUpDownRight, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_DOWN_RIGHT
|
||||
MovementType_WalkSequenceUpDownRightLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_RIGHT_LEFT
|
||||
MovementType_WalkSequenceRightLeftUpDown, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_UP_DOWN
|
||||
MovementType_WalkSequenceDownRightLeftUp, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_LEFT_UP
|
||||
MovementType_WalkSequenceRightUpDownLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_DOWN_LEFT
|
||||
MovementType_WalkSequenceUpDownLeftRight, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_LEFT_RIGHT
|
||||
MovementType_WalkSequenceLeftRightUpDown, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_UP_DOWN
|
||||
MovementType_WalkSequenceDownLeftRightUp, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_RIGHT_UP
|
||||
MovementType_WalkSequenceUpLeftDownRight, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_DOWN_RIGHT
|
||||
MovementType_WalkSequenceDownRightUpLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_UP_LEFT
|
||||
MovementType_WalkSequenceLeftDownRightUp, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_RIGHT_UP
|
||||
MovementType_WalkSequenceRightUpLeftDown, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_LEFT_DOWN
|
||||
MovementType_WalkSequenceUpRightDownLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_DOWN_LEFT
|
||||
MovementType_WalkSequenceDownLeftUpRight, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_UP_RIGHT
|
||||
MovementType_WalkSequenceLeftUpRightDown, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_RIGHT_DOWN
|
||||
MovementType_WalkSequenceRightDownLeftUp, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_LEFT_UP
|
||||
MovementType_CopyPlayer, // MOVEMENT_TYPE_COPY_PLAYER
|
||||
MovementType_CopyPlayer, // MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE
|
||||
MovementType_CopyPlayer, // MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE
|
||||
MovementType_CopyPlayer, // MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE
|
||||
MovementType_TreeDisguise, // MOVEMENT_TYPE_TREE_DISGUISE
|
||||
MovementType_MountainDisguise, // MOVEMENT_TYPE_MOUNTAIN_DISGUISE
|
||||
MovementType_CopyPlayerInGrass, // MOVEMENT_TYPE_COPY_PLAYER_IN_GRASS
|
||||
MovementType_CopyPlayerInGrass, // MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE_IN_GRASS
|
||||
MovementType_CopyPlayerInGrass, // MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE_IN_GRASS
|
||||
MovementType_CopyPlayerInGrass, // MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE_IN_GRASS
|
||||
MovementType_Hidden, // MOVEMENT_TYPE_HIDDEN
|
||||
MovementType_WalkInPlace, // MOVEMENT_TYPE_WALK_IN_PLACE_DOWN
|
||||
MovementType_WalkInPlace, // MOVEMENT_TYPE_WALK_IN_PLACE_UP
|
||||
MovementType_WalkInPlace, // MOVEMENT_TYPE_WALK_IN_PLACE_LEFT
|
||||
MovementType_WalkInPlace, // MOVEMENT_TYPE_WALK_IN_PLACE_RIGHT
|
||||
MovementType_JogInPlace, // MOVEMENT_TYPE_JOG_IN_PLACE_DOWN
|
||||
MovementType_JogInPlace, // MOVEMENT_TYPE_JOG_IN_PLACE_UP
|
||||
MovementType_JogInPlace, // MOVEMENT_TYPE_JOG_IN_PLACE_LEFT
|
||||
MovementType_JogInPlace, // MOVEMENT_TYPE_JOG_IN_PLACE_RIGHT
|
||||
MovementType_RunInPlace, // MOVEMENT_TYPE_RUN_IN_PLACE_DOWN
|
||||
MovementType_RunInPlace, // MOVEMENT_TYPE_RUN_IN_PLACE_UP
|
||||
MovementType_RunInPlace, // MOVEMENT_TYPE_RUN_IN_PLACE_LEFT
|
||||
MovementType_RunInPlace, // MOVEMENT_TYPE_RUN_IN_PLACE_RIGHT
|
||||
MovementType_Invisible, // MOVEMENT_TYPE_INVISIBLE
|
||||
MovementType_WalkSlowlyInPlace, // MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_DOWN
|
||||
MovementType_WalkSlowlyInPlace, // MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_UP
|
||||
MovementType_WalkSlowlyInPlace, // MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_LEFT
|
||||
MovementType_WalkSlowlyInPlace, // MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_RIGHT
|
||||
[MOVEMENT_TYPE_NONE] = MovementType_None,
|
||||
[MOVEMENT_TYPE_LOOK_AROUND] = MovementType_LookAround,
|
||||
[MOVEMENT_TYPE_WANDER_AROUND] = MovementType_WanderAround,
|
||||
[MOVEMENT_TYPE_WANDER_UP_AND_DOWN] = MovementType_WanderUpAndDown,
|
||||
[MOVEMENT_TYPE_WANDER_DOWN_AND_UP] = MovementType_WanderUpAndDown,
|
||||
[MOVEMENT_TYPE_WANDER_LEFT_AND_RIGHT] = MovementType_WanderLeftAndRight,
|
||||
[MOVEMENT_TYPE_WANDER_RIGHT_AND_LEFT] = MovementType_WanderLeftAndRight,
|
||||
[MOVEMENT_TYPE_FACE_UP] = MovementType_FaceDirection,
|
||||
[MOVEMENT_TYPE_FACE_DOWN] = MovementType_FaceDirection,
|
||||
[MOVEMENT_TYPE_FACE_LEFT] = MovementType_FaceDirection,
|
||||
[MOVEMENT_TYPE_FACE_RIGHT] = MovementType_FaceDirection,
|
||||
[MOVEMENT_TYPE_PLAYER] = MovementType_Player,
|
||||
[MOVEMENT_TYPE_BERRY_TREE_GROWTH] = MovementType_BerryTreeGrowth,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_AND_UP] = MovementType_FaceDownAndUp,
|
||||
[MOVEMENT_TYPE_FACE_LEFT_AND_RIGHT] = MovementType_FaceLeftAndRight,
|
||||
[MOVEMENT_TYPE_FACE_UP_AND_LEFT] = MovementType_FaceUpAndLeft,
|
||||
[MOVEMENT_TYPE_FACE_UP_AND_RIGHT] = MovementType_FaceUpAndRight,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_AND_LEFT] = MovementType_FaceDownAndLeft,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_AND_RIGHT] = MovementType_FaceDownAndRight,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_UP_AND_LEFT] = MovementType_FaceDownUpAndLeft,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_UP_AND_RIGHT] = MovementType_FaceDownUpAndRight,
|
||||
[MOVEMENT_TYPE_FACE_UP_LEFT_AND_RIGHT] = MovementType_FaceUpRightAndLeft,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_LEFT_AND_RIGHT] = MovementType_FaceDownRightAndLeft,
|
||||
[MOVEMENT_TYPE_ROTATE_COUNTERCLOCKWISE] = MovementType_RotateCounterclockwise,
|
||||
[MOVEMENT_TYPE_ROTATE_CLOCKWISE] = MovementType_RotateClockwise,
|
||||
[MOVEMENT_TYPE_WALK_UP_AND_DOWN] = MovementType_WalkBackAndForth,
|
||||
[MOVEMENT_TYPE_WALK_DOWN_AND_UP] = MovementType_WalkBackAndForth,
|
||||
[MOVEMENT_TYPE_WALK_LEFT_AND_RIGHT] = MovementType_WalkBackAndForth,
|
||||
[MOVEMENT_TYPE_WALK_RIGHT_AND_LEFT] = MovementType_WalkBackAndForth,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_LEFT_DOWN] = MovementType_WalkSequenceUpRightLeftDown,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_DOWN_UP] = MovementType_WalkSequenceRightLeftDownUp,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_RIGHT_LEFT] = MovementType_WalkSequenceDownUpRightLeft,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_UP_RIGHT] = MovementType_WalkSequenceLeftDownUpRight,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_RIGHT_DOWN] = MovementType_WalkSequenceUpLeftRightDown,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_DOWN_UP] = MovementType_WalkSequenceLeftRightDownUp,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_LEFT_RIGHT] = MovementType_WalkSequenceDownUpLeftRight,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_UP_LEFT] = MovementType_WalkSequenceRightDownUpLeft,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_DOWN_RIGHT] = MovementType_WalkSequenceLeftUpDownRight,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_RIGHT_LEFT] = MovementType_WalkSequenceUpDownRightLeft,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_UP_DOWN] = MovementType_WalkSequenceRightLeftUpDown,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_LEFT_UP] = MovementType_WalkSequenceDownRightLeftUp,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_DOWN_LEFT] = MovementType_WalkSequenceRightUpDownLeft,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_LEFT_RIGHT] = MovementType_WalkSequenceUpDownLeftRight,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_UP_DOWN] = MovementType_WalkSequenceLeftRightUpDown,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_RIGHT_UP] = MovementType_WalkSequenceDownLeftRightUp,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_DOWN_RIGHT] = MovementType_WalkSequenceUpLeftDownRight,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_UP_LEFT] = MovementType_WalkSequenceDownRightUpLeft,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_RIGHT_UP] = MovementType_WalkSequenceLeftDownRightUp,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_LEFT_DOWN] = MovementType_WalkSequenceRightUpLeftDown,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_DOWN_LEFT] = MovementType_WalkSequenceUpRightDownLeft,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_UP_RIGHT] = MovementType_WalkSequenceDownLeftUpRight,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_RIGHT_DOWN] = MovementType_WalkSequenceLeftUpRightDown,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_LEFT_UP] = MovementType_WalkSequenceRightDownLeftUp,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER] = MovementType_CopyPlayer,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE] = MovementType_CopyPlayer,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE] = MovementType_CopyPlayer,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE] = MovementType_CopyPlayer,
|
||||
[MOVEMENT_TYPE_TREE_DISGUISE] = MovementType_TreeDisguise,
|
||||
[MOVEMENT_TYPE_MOUNTAIN_DISGUISE] = MovementType_MountainDisguise,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_IN_GRASS] = MovementType_CopyPlayerInGrass,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE_IN_GRASS] = MovementType_CopyPlayerInGrass,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE_IN_GRASS] = MovementType_CopyPlayerInGrass,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE_IN_GRASS] = MovementType_CopyPlayerInGrass,
|
||||
[MOVEMENT_TYPE_HIDDEN] = MovementType_Hidden,
|
||||
[MOVEMENT_TYPE_WALK_IN_PLACE_DOWN] = MovementType_WalkInPlace,
|
||||
[MOVEMENT_TYPE_WALK_IN_PLACE_UP] = MovementType_WalkInPlace,
|
||||
[MOVEMENT_TYPE_WALK_IN_PLACE_LEFT] = MovementType_WalkInPlace,
|
||||
[MOVEMENT_TYPE_WALK_IN_PLACE_RIGHT] = MovementType_WalkInPlace,
|
||||
[MOVEMENT_TYPE_JOG_IN_PLACE_DOWN] = MovementType_JogInPlace,
|
||||
[MOVEMENT_TYPE_JOG_IN_PLACE_UP] = MovementType_JogInPlace,
|
||||
[MOVEMENT_TYPE_JOG_IN_PLACE_LEFT] = MovementType_JogInPlace,
|
||||
[MOVEMENT_TYPE_JOG_IN_PLACE_RIGHT] = MovementType_JogInPlace,
|
||||
[MOVEMENT_TYPE_RUN_IN_PLACE_DOWN] = MovementType_RunInPlace,
|
||||
[MOVEMENT_TYPE_RUN_IN_PLACE_UP] = MovementType_RunInPlace,
|
||||
[MOVEMENT_TYPE_RUN_IN_PLACE_LEFT] = MovementType_RunInPlace,
|
||||
[MOVEMENT_TYPE_RUN_IN_PLACE_RIGHT] = MovementType_RunInPlace,
|
||||
[MOVEMENT_TYPE_INVISIBLE] = MovementType_Invisible,
|
||||
[MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_DOWN] = MovementType_WalkSlowlyInPlace,
|
||||
[MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_UP] = MovementType_WalkSlowlyInPlace,
|
||||
[MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_LEFT] = MovementType_WalkSlowlyInPlace,
|
||||
[MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_RIGHT] = MovementType_WalkSlowlyInPlace,
|
||||
};
|
||||
|
||||
const u8 gRangedMovementTypes[] = {
|
||||
0, // MOVEMENT_TYPE_NONE
|
||||
0, // MOVEMENT_TYPE_LOOK_AROUND
|
||||
1, // MOVEMENT_TYPE_WANDER_AROUND
|
||||
1, // MOVEMENT_TYPE_WANDER_UP_AND_DOWN
|
||||
1, // MOVEMENT_TYPE_WANDER_DOWN_AND_UP
|
||||
1, // MOVEMENT_TYPE_WANDER_LEFT_AND_RIGHT
|
||||
1, // MOVEMENT_TYPE_WANDER_RIGHT_AND_LEFT
|
||||
0, // MOVEMENT_TYPE_FACE_UP
|
||||
0, // MOVEMENT_TYPE_FACE_DOWN
|
||||
0, // MOVEMENT_TYPE_FACE_LEFT
|
||||
0, // MOVEMENT_TYPE_FACE_RIGHT
|
||||
0, // MOVEMENT_TYPE_PLAYER
|
||||
0, // MOVEMENT_TYPE_BERRY_TREE_GROWTH
|
||||
0, // MOVEMENT_TYPE_FACE_DOWN_AND_UP
|
||||
0, // MOVEMENT_TYPE_FACE_LEFT_AND_RIGHT
|
||||
0, // MOVEMENT_TYPE_FACE_UP_AND_LEFT
|
||||
0, // MOVEMENT_TYPE_FACE_UP_AND_RIGHT
|
||||
0, // MOVEMENT_TYPE_FACE_DOWN_AND_LEFT
|
||||
0, // MOVEMENT_TYPE_FACE_DOWN_AND_RIGHT
|
||||
0, // MOVEMENT_TYPE_FACE_DOWN_UP_AND_LEFT
|
||||
0, // MOVEMENT_TYPE_FACE_DOWN_UP_AND_RIGHT
|
||||
0, // MOVEMENT_TYPE_FACE_UP_LEFT_AND_RIGHT
|
||||
0, // MOVEMENT_TYPE_FACE_DOWN_LEFT_AND_RIGHT
|
||||
0, // MOVEMENT_TYPE_ROTATE_COUNTERCLOCKWISE
|
||||
0, // MOVEMENT_TYPE_ROTATE_CLOCKWISE
|
||||
1, // MOVEMENT_TYPE_WALK_UP_AND_DOWN
|
||||
1, // MOVEMENT_TYPE_WALK_DOWN_AND_UP
|
||||
1, // MOVEMENT_TYPE_WALK_LEFT_AND_RIGHT
|
||||
1, // MOVEMENT_TYPE_WALK_RIGHT_AND_LEFT
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_LEFT_DOWN
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_DOWN_UP
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_RIGHT_LEFT
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_UP_RIGHT
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_RIGHT_DOWN
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_DOWN_UP
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_LEFT_RIGHT
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_UP_LEFT
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_DOWN_RIGHT
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_RIGHT_LEFT
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_UP_DOWN
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_LEFT_UP
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_DOWN_LEFT
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_LEFT_RIGHT
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_UP_DOWN
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_RIGHT_UP
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_DOWN_RIGHT
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_UP_LEFT
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_RIGHT_UP
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_LEFT_DOWN
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_DOWN_LEFT
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_UP_RIGHT
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_RIGHT_DOWN
|
||||
1, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_LEFT_UP
|
||||
1, // MOVEMENT_TYPE_COPY_PLAYER
|
||||
1, // MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE
|
||||
1, // MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE
|
||||
1, // MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE
|
||||
0, // MOVEMENT_TYPE_TREE_DISGUISE
|
||||
0, // MOVEMENT_TYPE_MOUNTAIN_DISGUISE
|
||||
1, // MOVEMENT_TYPE_COPY_PLAYER_IN_GRASS
|
||||
1, // MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE_IN_GRASS
|
||||
1, // MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE_IN_GRASS
|
||||
1, // MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE_IN_GRASS
|
||||
0, // MOVEMENT_TYPE_HIDDEN
|
||||
0, // MOVEMENT_TYPE_WALK_IN_PLACE_DOWN
|
||||
0, // MOVEMENT_TYPE_WALK_IN_PLACE_UP
|
||||
0, // MOVEMENT_TYPE_WALK_IN_PLACE_LEFT
|
||||
0, // MOVEMENT_TYPE_WALK_IN_PLACE_RIGHT
|
||||
0, // MOVEMENT_TYPE_JOG_IN_PLACE_DOWN
|
||||
0, // MOVEMENT_TYPE_JOG_IN_PLACE_UP
|
||||
0, // MOVEMENT_TYPE_JOG_IN_PLACE_LEFT
|
||||
0, // MOVEMENT_TYPE_JOG_IN_PLACE_RIGHT
|
||||
0, // MOVEMENT_TYPE_RUN_IN_PLACE_DOWN
|
||||
0, // MOVEMENT_TYPE_RUN_IN_PLACE_UP
|
||||
0, // MOVEMENT_TYPE_RUN_IN_PLACE_LEFT
|
||||
0, // MOVEMENT_TYPE_RUN_IN_PLACE_RIGHT
|
||||
0, // MOVEMENT_TYPE_INVISIBLE
|
||||
0, // MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_DOWN
|
||||
0, // MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_UP
|
||||
0, // MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_LEFT
|
||||
0, // MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_RIGHT
|
||||
[MOVEMENT_TYPE_NONE] = 0,
|
||||
[MOVEMENT_TYPE_LOOK_AROUND] = 0,
|
||||
[MOVEMENT_TYPE_WANDER_AROUND] = 1,
|
||||
[MOVEMENT_TYPE_WANDER_UP_AND_DOWN] = 1,
|
||||
[MOVEMENT_TYPE_WANDER_DOWN_AND_UP] = 1,
|
||||
[MOVEMENT_TYPE_WANDER_LEFT_AND_RIGHT] = 1,
|
||||
[MOVEMENT_TYPE_WANDER_RIGHT_AND_LEFT] = 1,
|
||||
[MOVEMENT_TYPE_FACE_UP] = 0,
|
||||
[MOVEMENT_TYPE_FACE_DOWN] = 0,
|
||||
[MOVEMENT_TYPE_FACE_LEFT] = 0,
|
||||
[MOVEMENT_TYPE_FACE_RIGHT] = 0,
|
||||
[MOVEMENT_TYPE_PLAYER] = 0,
|
||||
[MOVEMENT_TYPE_BERRY_TREE_GROWTH] = 0,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_AND_UP] = 0,
|
||||
[MOVEMENT_TYPE_FACE_LEFT_AND_RIGHT] = 0,
|
||||
[MOVEMENT_TYPE_FACE_UP_AND_LEFT] = 0,
|
||||
[MOVEMENT_TYPE_FACE_UP_AND_RIGHT] = 0,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_AND_LEFT] = 0,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_AND_RIGHT] = 0,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_UP_AND_LEFT] = 0,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_UP_AND_RIGHT] = 0,
|
||||
[MOVEMENT_TYPE_FACE_UP_LEFT_AND_RIGHT] = 0,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_LEFT_AND_RIGHT] = 0,
|
||||
[MOVEMENT_TYPE_ROTATE_COUNTERCLOCKWISE] = 0,
|
||||
[MOVEMENT_TYPE_ROTATE_CLOCKWISE] = 0,
|
||||
[MOVEMENT_TYPE_WALK_UP_AND_DOWN] = 1,
|
||||
[MOVEMENT_TYPE_WALK_DOWN_AND_UP] = 1,
|
||||
[MOVEMENT_TYPE_WALK_LEFT_AND_RIGHT] = 1,
|
||||
[MOVEMENT_TYPE_WALK_RIGHT_AND_LEFT] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_LEFT_DOWN] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_DOWN_UP] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_RIGHT_LEFT] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_UP_RIGHT] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_RIGHT_DOWN] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_DOWN_UP] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_LEFT_RIGHT] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_UP_LEFT] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_DOWN_RIGHT] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_RIGHT_LEFT] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_UP_DOWN] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_LEFT_UP] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_DOWN_LEFT] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_LEFT_RIGHT] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_UP_DOWN] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_RIGHT_UP] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_DOWN_RIGHT] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_UP_LEFT] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_RIGHT_UP] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_LEFT_DOWN] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_DOWN_LEFT] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_UP_RIGHT] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_RIGHT_DOWN] = 1,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_LEFT_UP] = 1,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER] = 1,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE] = 1,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE] = 1,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE] = 1,
|
||||
[MOVEMENT_TYPE_TREE_DISGUISE] = 0,
|
||||
[MOVEMENT_TYPE_MOUNTAIN_DISGUISE] = 0,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_IN_GRASS] = 1,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE_IN_GRASS] = 1,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE_IN_GRASS] = 1,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE_IN_GRASS] = 1,
|
||||
[MOVEMENT_TYPE_HIDDEN] = 0,
|
||||
[MOVEMENT_TYPE_WALK_IN_PLACE_DOWN] = 0,
|
||||
[MOVEMENT_TYPE_WALK_IN_PLACE_UP] = 0,
|
||||
[MOVEMENT_TYPE_WALK_IN_PLACE_LEFT] = 0,
|
||||
[MOVEMENT_TYPE_WALK_IN_PLACE_RIGHT] = 0,
|
||||
[MOVEMENT_TYPE_JOG_IN_PLACE_DOWN] = 0,
|
||||
[MOVEMENT_TYPE_JOG_IN_PLACE_UP] = 0,
|
||||
[MOVEMENT_TYPE_JOG_IN_PLACE_LEFT] = 0,
|
||||
[MOVEMENT_TYPE_JOG_IN_PLACE_RIGHT] = 0,
|
||||
[MOVEMENT_TYPE_RUN_IN_PLACE_DOWN] = 0,
|
||||
[MOVEMENT_TYPE_RUN_IN_PLACE_UP] = 0,
|
||||
[MOVEMENT_TYPE_RUN_IN_PLACE_LEFT] = 0,
|
||||
[MOVEMENT_TYPE_RUN_IN_PLACE_RIGHT] = 0,
|
||||
[MOVEMENT_TYPE_INVISIBLE] = 0,
|
||||
[MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_DOWN] = 0,
|
||||
[MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_UP] = 0,
|
||||
[MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_LEFT] = 0,
|
||||
[MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_RIGHT] = 0,
|
||||
};
|
||||
|
||||
const u8 gInitialMovementTypeFacingDirections[] = {
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_NONE
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_LOOK_AROUND
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_WANDER_AROUND
|
||||
DIR_NORTH, // MOVEMENT_TYPE_WANDER_UP_AND_DOWN
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_WANDER_DOWN_AND_UP
|
||||
DIR_WEST, // MOVEMENT_TYPE_WANDER_LEFT_AND_RIGHT
|
||||
DIR_EAST, // MOVEMENT_TYPE_WANDER_RIGHT_AND_LEFT
|
||||
DIR_NORTH, // MOVEMENT_TYPE_FACE_UP
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_FACE_DOWN
|
||||
DIR_WEST, // MOVEMENT_TYPE_FACE_LEFT
|
||||
DIR_EAST, // MOVEMENT_TYPE_FACE_RIGHT
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_PLAYER
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_BERRY_TREE_GROWTH
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_FACE_DOWN_AND_UP
|
||||
DIR_WEST, // MOVEMENT_TYPE_FACE_LEFT_AND_RIGHT
|
||||
DIR_NORTH, // MOVEMENT_TYPE_FACE_UP_AND_LEFT
|
||||
DIR_NORTH, // MOVEMENT_TYPE_FACE_UP_AND_RIGHT
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_FACE_DOWN_AND_LEFT
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_FACE_DOWN_AND_RIGHT
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_FACE_DOWN_UP_AND_LEFT
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_FACE_DOWN_UP_AND_RIGHT
|
||||
DIR_NORTH, // MOVEMENT_TYPE_FACE_UP_LEFT_AND_RIGHT
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_FACE_DOWN_LEFT_AND_RIGHT
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_ROTATE_COUNTERCLOCKWISE
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_ROTATE_CLOCKWISE
|
||||
DIR_NORTH, // MOVEMENT_TYPE_WALK_UP_AND_DOWN
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_WALK_DOWN_AND_UP
|
||||
DIR_WEST, // MOVEMENT_TYPE_WALK_LEFT_AND_RIGHT
|
||||
DIR_EAST, // MOVEMENT_TYPE_WALK_RIGHT_AND_LEFT
|
||||
DIR_NORTH, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_LEFT_DOWN
|
||||
DIR_EAST, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_DOWN_UP
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_RIGHT_LEFT
|
||||
DIR_WEST, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_UP_RIGHT
|
||||
DIR_NORTH, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_RIGHT_DOWN
|
||||
DIR_WEST, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_DOWN_UP
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_LEFT_RIGHT
|
||||
DIR_EAST, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_UP_LEFT
|
||||
DIR_WEST, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_DOWN_RIGHT
|
||||
DIR_NORTH, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_RIGHT_LEFT
|
||||
DIR_EAST, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_UP_DOWN
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_LEFT_UP
|
||||
DIR_EAST, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_DOWN_LEFT
|
||||
DIR_NORTH, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_LEFT_RIGHT
|
||||
DIR_WEST, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_UP_DOWN
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_RIGHT_UP
|
||||
DIR_NORTH, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_DOWN_RIGHT
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_UP_LEFT
|
||||
DIR_WEST, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_RIGHT_UP
|
||||
DIR_EAST, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_LEFT_DOWN
|
||||
DIR_NORTH, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_DOWN_LEFT
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_UP_RIGHT
|
||||
DIR_WEST, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_RIGHT_DOWN
|
||||
DIR_EAST, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_LEFT_UP
|
||||
DIR_NORTH, // MOVEMENT_TYPE_COPY_PLAYER
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE
|
||||
DIR_WEST, // MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE
|
||||
DIR_EAST, // MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_TREE_DISGUISE
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_MOUNTAIN_DISGUISE
|
||||
DIR_NORTH, // MOVEMENT_TYPE_COPY_PLAYER_IN_GRASS
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE_IN_GRASS
|
||||
DIR_WEST, // MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE_IN_GRASS
|
||||
DIR_EAST, // MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE_IN_GRASS
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_HIDDEN
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_WALK_IN_PLACE_DOWN
|
||||
DIR_NORTH, // MOVEMENT_TYPE_WALK_IN_PLACE_UP
|
||||
DIR_WEST, // MOVEMENT_TYPE_WALK_IN_PLACE_LEFT
|
||||
DIR_EAST, // MOVEMENT_TYPE_WALK_IN_PLACE_RIGHT
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_JOG_IN_PLACE_DOWN
|
||||
DIR_NORTH, // MOVEMENT_TYPE_JOG_IN_PLACE_UP
|
||||
DIR_WEST, // MOVEMENT_TYPE_JOG_IN_PLACE_LEFT
|
||||
DIR_EAST, // MOVEMENT_TYPE_JOG_IN_PLACE_RIGHT
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_RUN_IN_PLACE_DOWN
|
||||
DIR_NORTH, // MOVEMENT_TYPE_RUN_IN_PLACE_UP
|
||||
DIR_WEST, // MOVEMENT_TYPE_RUN_IN_PLACE_LEFT
|
||||
DIR_EAST, // MOVEMENT_TYPE_RUN_IN_PLACE_RIGHT
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_INVISIBLE
|
||||
DIR_SOUTH, // MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_DOWN
|
||||
DIR_NORTH, // MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_UP
|
||||
DIR_WEST, // MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_LEFT
|
||||
DIR_EAST, // MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_RIGHT
|
||||
[MOVEMENT_TYPE_NONE] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_LOOK_AROUND] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_WANDER_AROUND] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_WANDER_UP_AND_DOWN] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_WANDER_DOWN_AND_UP] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_WANDER_LEFT_AND_RIGHT] = DIR_WEST,
|
||||
[MOVEMENT_TYPE_WANDER_RIGHT_AND_LEFT] = DIR_EAST,
|
||||
[MOVEMENT_TYPE_FACE_UP] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_FACE_DOWN] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_FACE_LEFT] = DIR_WEST,
|
||||
[MOVEMENT_TYPE_FACE_RIGHT] = DIR_EAST,
|
||||
[MOVEMENT_TYPE_PLAYER] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_BERRY_TREE_GROWTH] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_AND_UP] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_FACE_LEFT_AND_RIGHT] = DIR_WEST,
|
||||
[MOVEMENT_TYPE_FACE_UP_AND_LEFT] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_FACE_UP_AND_RIGHT] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_AND_LEFT] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_AND_RIGHT] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_UP_AND_LEFT] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_UP_AND_RIGHT] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_FACE_UP_LEFT_AND_RIGHT] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_FACE_DOWN_LEFT_AND_RIGHT] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_ROTATE_COUNTERCLOCKWISE] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_ROTATE_CLOCKWISE] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_WALK_UP_AND_DOWN] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_WALK_DOWN_AND_UP] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_WALK_LEFT_AND_RIGHT] = DIR_WEST,
|
||||
[MOVEMENT_TYPE_WALK_RIGHT_AND_LEFT] = DIR_EAST,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_LEFT_DOWN] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_DOWN_UP] = DIR_EAST,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_RIGHT_LEFT] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_UP_RIGHT] = DIR_WEST,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_RIGHT_DOWN] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_DOWN_UP] = DIR_WEST,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_LEFT_RIGHT] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_UP_LEFT] = DIR_EAST,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_DOWN_RIGHT] = DIR_WEST,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_RIGHT_LEFT] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_UP_DOWN] = DIR_EAST,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_LEFT_UP] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_DOWN_LEFT] = DIR_EAST,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_LEFT_RIGHT] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_UP_DOWN] = DIR_WEST,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_RIGHT_UP] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_DOWN_RIGHT] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_UP_LEFT] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_RIGHT_UP] = DIR_WEST,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_LEFT_DOWN] = DIR_EAST,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_DOWN_LEFT] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_UP_RIGHT] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_RIGHT_DOWN] = DIR_WEST,
|
||||
[MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_LEFT_UP] = DIR_EAST,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE] = DIR_WEST,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE] = DIR_EAST,
|
||||
[MOVEMENT_TYPE_TREE_DISGUISE] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_MOUNTAIN_DISGUISE] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_IN_GRASS] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE_IN_GRASS] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE_IN_GRASS] = DIR_WEST,
|
||||
[MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE_IN_GRASS] = DIR_EAST,
|
||||
[MOVEMENT_TYPE_HIDDEN] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_WALK_IN_PLACE_DOWN] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_WALK_IN_PLACE_UP] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_WALK_IN_PLACE_LEFT] = DIR_WEST,
|
||||
[MOVEMENT_TYPE_WALK_IN_PLACE_RIGHT] = DIR_EAST,
|
||||
[MOVEMENT_TYPE_JOG_IN_PLACE_DOWN] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_JOG_IN_PLACE_UP] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_JOG_IN_PLACE_LEFT] = DIR_WEST,
|
||||
[MOVEMENT_TYPE_JOG_IN_PLACE_RIGHT] = DIR_EAST,
|
||||
[MOVEMENT_TYPE_RUN_IN_PLACE_DOWN] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_RUN_IN_PLACE_UP] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_RUN_IN_PLACE_LEFT] = DIR_WEST,
|
||||
[MOVEMENT_TYPE_RUN_IN_PLACE_RIGHT] = DIR_EAST,
|
||||
[MOVEMENT_TYPE_INVISIBLE] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_DOWN] = DIR_SOUTH,
|
||||
[MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_UP] = DIR_NORTH,
|
||||
[MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_LEFT] = DIR_WEST,
|
||||
[MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_RIGHT] = DIR_EAST,
|
||||
};
|
||||
|
||||
#define EVENT_OBJ_PAL_TAG_0 0x1103
|
||||
@ -668,181 +668,181 @@ const s16 gMovementDelaysShort[] = {32, 48, 64, 80};
|
||||
#include "data/field_event_obj/movement_type_func_tables.h"
|
||||
|
||||
const u8 gFaceDirectionAnimNums[] = {
|
||||
0, // DIR_NONE
|
||||
0, // DIR_SOUTH
|
||||
1, // DIR_NORTH
|
||||
2, // DIR_WEST
|
||||
3, // DIR_EAST
|
||||
0, // DIR_SOUTHWEST
|
||||
0, // DIR_SOUTHEAST
|
||||
1, // DIR_NORTHWEST
|
||||
1, // DIR_NORTHEAST
|
||||
[DIR_NONE] = 0,
|
||||
[DIR_SOUTH] = 0,
|
||||
[DIR_NORTH] = 1,
|
||||
[DIR_WEST] = 2,
|
||||
[DIR_EAST] = 3,
|
||||
[DIR_SOUTHWEST] = 0,
|
||||
[DIR_SOUTHEAST] = 0,
|
||||
[DIR_NORTHWEST] = 1,
|
||||
[DIR_NORTHEAST] = 1,
|
||||
};
|
||||
const u8 gMoveDirectionAnimNums[] = {
|
||||
4, // DIR_NONE
|
||||
4, // DIR_SOUTH
|
||||
5, // DIR_NORTH
|
||||
6, // DIR_WEST
|
||||
7, // DIR_EAST
|
||||
4, // DIR_SOUTHWEST
|
||||
4, // DIR_SOUTHEAST
|
||||
5, // DIR_NORTHWEST
|
||||
5, // DIR_NORTHEAST
|
||||
[DIR_NONE] = 4,
|
||||
[DIR_SOUTH] = 4,
|
||||
[DIR_NORTH] = 5,
|
||||
[DIR_WEST] = 6,
|
||||
[DIR_EAST] = 7,
|
||||
[DIR_SOUTHWEST] = 4,
|
||||
[DIR_SOUTHEAST] = 4,
|
||||
[DIR_NORTHWEST] = 5,
|
||||
[DIR_NORTHEAST] = 5,
|
||||
};
|
||||
const u8 gMoveDirectionFastAnimNums[] = {
|
||||
8, // DIR_NONE
|
||||
8, // DIR_SOUTH
|
||||
9, // DIR_NORTH
|
||||
10, // DIR_WEST
|
||||
11, // DIR_EAST
|
||||
8, // DIR_SOUTHWEST
|
||||
8, // DIR_SOUTHEAST
|
||||
9, // DIR_NORTHWEST
|
||||
9, // DIR_NORTHEAST
|
||||
[DIR_NONE] = 8,
|
||||
[DIR_SOUTH] = 8,
|
||||
[DIR_NORTH] = 9,
|
||||
[DIR_WEST] = 10,
|
||||
[DIR_EAST] = 11,
|
||||
[DIR_SOUTHWEST] = 8,
|
||||
[DIR_SOUTHEAST] = 8,
|
||||
[DIR_NORTHWEST] = 9,
|
||||
[DIR_NORTHEAST] = 9,
|
||||
};
|
||||
const u8 gMoveDirectionFasterAnimNums[] = {
|
||||
12, // DIR_NONE
|
||||
12, // DIR_SOUTH
|
||||
13, // DIR_NORTH
|
||||
14, // DIR_WEST
|
||||
15, // DIR_EAST
|
||||
12, // DIR_SOUTHWEST
|
||||
12, // DIR_SOUTHEAST
|
||||
13, // DIR_NORTHWEST
|
||||
13, // DIR_NORTHEAST
|
||||
[DIR_NONE] = 12,
|
||||
[DIR_SOUTH] = 12,
|
||||
[DIR_NORTH] = 13,
|
||||
[DIR_WEST] = 14,
|
||||
[DIR_EAST] = 15,
|
||||
[DIR_SOUTHWEST] = 12,
|
||||
[DIR_SOUTHEAST] = 12,
|
||||
[DIR_NORTHWEST] = 13,
|
||||
[DIR_NORTHEAST] = 13,
|
||||
};
|
||||
const u8 gMoveDirectionFastestAnimNums[] = {
|
||||
16, // DIR_NONE
|
||||
16, // DIR_SOUTH
|
||||
17, // DIR_NORTH
|
||||
18, // DIR_WEST
|
||||
19, // DIR_EAST
|
||||
16, // DIR_SOUTHWEST
|
||||
16, // DIR_SOUTHEAST
|
||||
17, // DIR_NORTHWEST
|
||||
17, // DIR_NORTHEAST
|
||||
[DIR_NONE] = 16,
|
||||
[DIR_SOUTH] = 16,
|
||||
[DIR_NORTH] = 17,
|
||||
[DIR_WEST] = 18,
|
||||
[DIR_EAST] = 19,
|
||||
[DIR_SOUTHWEST] = 16,
|
||||
[DIR_SOUTHEAST] = 16,
|
||||
[DIR_NORTHWEST] = 17,
|
||||
[DIR_NORTHEAST] = 17,
|
||||
};
|
||||
const u8 gJumpSpecialDirectionAnimNums[] = { // used for jumping onto surf mon
|
||||
20, // DIR_NONE
|
||||
20, // DIR_SOUTH
|
||||
21, // DIR_NORTH
|
||||
22, // DIR_WEST
|
||||
23, // DIR_EAST
|
||||
20, // DIR_SOUTHWEST
|
||||
20, // DIR_SOUTHEAST
|
||||
21, // DIR_NORTHWEST
|
||||
21, // DIR_NORTHEAST
|
||||
[DIR_NONE] = 20,
|
||||
[DIR_SOUTH] = 20,
|
||||
[DIR_NORTH] = 21,
|
||||
[DIR_WEST] = 22,
|
||||
[DIR_EAST] = 23,
|
||||
[DIR_SOUTHWEST] = 20,
|
||||
[DIR_SOUTHEAST] = 20,
|
||||
[DIR_NORTHWEST] = 21,
|
||||
[DIR_NORTHEAST] = 21,
|
||||
};
|
||||
const u8 gAcroWheelieDirectionAnimNums[] = {
|
||||
20, // DIR_NONE
|
||||
20, // DIR_SOUTH
|
||||
21, // DIR_NORTH
|
||||
22, // DIR_WEST
|
||||
23, // DIR_EAST
|
||||
20, // DIR_SOUTHWEST
|
||||
20, // DIR_SOUTHEAST
|
||||
21, // DIR_NORTHWEST
|
||||
21, // DIR_NORTHEAST
|
||||
[DIR_NONE] = 20,
|
||||
[DIR_SOUTH] = 20,
|
||||
[DIR_NORTH] = 21,
|
||||
[DIR_WEST] = 22,
|
||||
[DIR_EAST] = 23,
|
||||
[DIR_SOUTHWEST] = 20,
|
||||
[DIR_SOUTHEAST] = 20,
|
||||
[DIR_NORTHWEST] = 21,
|
||||
[DIR_NORTHEAST] = 21,
|
||||
};
|
||||
const u8 gUnrefAnimNums_08375633[] = {
|
||||
24, // DIR_NONE
|
||||
24, // DIR_SOUTH
|
||||
25, // DIR_NORTH
|
||||
26, // DIR_WEST
|
||||
27, // DIR_EAST
|
||||
24, // DIR_SOUTHWEST
|
||||
24, // DIR_SOUTHEAST
|
||||
25, // DIR_NORTHWEST
|
||||
25, // DIR_NORTHEAST
|
||||
[DIR_NONE] = 24,
|
||||
[DIR_SOUTH] = 24,
|
||||
[DIR_NORTH] = 25,
|
||||
[DIR_WEST] = 26,
|
||||
[DIR_EAST] = 27,
|
||||
[DIR_SOUTHWEST] = 24,
|
||||
[DIR_SOUTHEAST] = 24,
|
||||
[DIR_NORTHWEST] = 25,
|
||||
[DIR_NORTHEAST] = 25,
|
||||
};
|
||||
const u8 gAcroEndWheelieDirectionAnimNums[] = {
|
||||
28, // DIR_NONE
|
||||
28, // DIR_SOUTH
|
||||
29, // DIR_NORTH
|
||||
30, // DIR_WEST
|
||||
31, // DIR_EAST
|
||||
28, // DIR_SOUTHWEST
|
||||
28, // DIR_SOUTHEAST
|
||||
29, // DIR_NORTHWEST
|
||||
29, // DIR_NORTHEAST
|
||||
[DIR_NONE] = 28,
|
||||
[DIR_SOUTH] = 28,
|
||||
[DIR_NORTH] = 29,
|
||||
[DIR_WEST] = 30,
|
||||
[DIR_EAST] = 31,
|
||||
[DIR_SOUTHWEST] = 28,
|
||||
[DIR_SOUTHEAST] = 28,
|
||||
[DIR_NORTHWEST] = 29,
|
||||
[DIR_NORTHEAST] = 29,
|
||||
};
|
||||
const u8 gAcroUnusedActionDirectionAnimNums[] = {
|
||||
32, // DIR_NONE
|
||||
32, // DIR_SOUTH
|
||||
33, // DIR_NORTH
|
||||
34, // DIR_WEST
|
||||
35, // DIR_EAST
|
||||
32, // DIR_SOUTHWEST
|
||||
32, // DIR_SOUTHEAST
|
||||
33, // DIR_NORTHWEST
|
||||
33, // DIR_NORTHEAST
|
||||
[DIR_NONE] = 32,
|
||||
[DIR_SOUTH] = 32,
|
||||
[DIR_NORTH] = 33,
|
||||
[DIR_WEST] = 34,
|
||||
[DIR_EAST] = 35,
|
||||
[DIR_SOUTHWEST] = 32,
|
||||
[DIR_SOUTHEAST] = 32,
|
||||
[DIR_NORTHWEST] = 33,
|
||||
[DIR_NORTHEAST] = 33,
|
||||
};
|
||||
const u8 gAcroWheeliePedalDirectionAnimNums[] = {
|
||||
36, // DIR_NONE
|
||||
36, // DIR_SOUTH
|
||||
37, // DIR_NORTH
|
||||
38, // DIR_WEST
|
||||
39, // DIR_EAST
|
||||
36, // DIR_SOUTHWEST
|
||||
36, // DIR_SOUTHEAST
|
||||
37, // DIR_NORTHWEST
|
||||
37, // DIR_NORTHEAST
|
||||
[DIR_NONE] = 36,
|
||||
[DIR_SOUTH] = 36,
|
||||
[DIR_NORTH] = 37,
|
||||
[DIR_WEST] = 38,
|
||||
[DIR_EAST] = 39,
|
||||
[DIR_SOUTHWEST] = 36,
|
||||
[DIR_SOUTHEAST] = 36,
|
||||
[DIR_NORTHWEST] = 37,
|
||||
[DIR_NORTHEAST] = 37,
|
||||
};
|
||||
const u8 gFishingDirectionAnimNums[] = {
|
||||
0, // DIR_NONE
|
||||
0, // DIR_SOUTH
|
||||
1, // DIR_NORTH
|
||||
2, // DIR_WEST
|
||||
3, // DIR_EAST
|
||||
0, // DIR_SOUTHWEST
|
||||
0, // DIR_SOUTHEAST
|
||||
1, // DIR_NORTHWEST
|
||||
1, // DIR_NORTHEAST
|
||||
[DIR_NONE] = 0,
|
||||
[DIR_SOUTH] = 0,
|
||||
[DIR_NORTH] = 1,
|
||||
[DIR_WEST] = 2,
|
||||
[DIR_EAST] = 3,
|
||||
[DIR_SOUTHWEST] = 0,
|
||||
[DIR_SOUTHEAST] = 0,
|
||||
[DIR_NORTHWEST] = 1,
|
||||
[DIR_NORTHEAST] = 1,
|
||||
};
|
||||
const u8 gFishingNoCatchDirectionAnimNums[] = {
|
||||
4, // DIR_NONE
|
||||
4, // DIR_SOUTH
|
||||
5, // DIR_NORTH
|
||||
6, // DIR_WEST
|
||||
7, // DIR_EAST
|
||||
4, // DIR_SOUTHWEST
|
||||
4, // DIR_SOUTHEAST
|
||||
5, // DIR_NORTHWEST
|
||||
5, // DIR_NORTHEAST
|
||||
[DIR_NONE] = 4,
|
||||
[DIR_SOUTH] = 4,
|
||||
[DIR_NORTH] = 5,
|
||||
[DIR_WEST] = 6,
|
||||
[DIR_EAST] = 7,
|
||||
[DIR_SOUTHWEST] = 4,
|
||||
[DIR_SOUTHEAST] = 4,
|
||||
[DIR_NORTHWEST] = 5,
|
||||
[DIR_NORTHEAST] = 5,
|
||||
};
|
||||
const u8 gFishingBiteDirectionAnimNums[] = {
|
||||
8, // DIR_NONE
|
||||
8, // DIR_SOUTH
|
||||
9, // DIR_NORTH
|
||||
10, // DIR_WEST
|
||||
11, // DIR_EAST
|
||||
8, // DIR_SOUTHWEST
|
||||
8, // DIR_SOUTHEAST
|
||||
9, // DIR_NORTHWEST
|
||||
9, // DIR_NORTHEAST
|
||||
[DIR_NONE] = 8,
|
||||
[DIR_SOUTH] = 8,
|
||||
[DIR_NORTH] = 9,
|
||||
[DIR_WEST] = 10,
|
||||
[DIR_EAST] = 11,
|
||||
[DIR_SOUTHWEST] = 8,
|
||||
[DIR_SOUTHEAST] = 8,
|
||||
[DIR_NORTHWEST] = 9,
|
||||
[DIR_NORTHEAST] = 9,
|
||||
};
|
||||
const u8 gRunningDirectionAnimNums[] = {
|
||||
20, // DIR_NONE
|
||||
20, // DIR_SOUTH
|
||||
21, // DIR_NORTH
|
||||
22, // DIR_WEST
|
||||
23, // DIR_EAST
|
||||
20, // DIR_SOUTHWEST
|
||||
20, // DIR_SOUTHEAST
|
||||
21, // DIR_NORTHWEST
|
||||
21, // DIR_NORTHEAST
|
||||
[DIR_NONE] = 20,
|
||||
[DIR_SOUTH] = 20,
|
||||
[DIR_NORTH] = 21,
|
||||
[DIR_WEST] = 22,
|
||||
[DIR_EAST] = 23,
|
||||
[DIR_SOUTHWEST] = 20,
|
||||
[DIR_SOUTHEAST] = 20,
|
||||
[DIR_NORTHWEST] = 21,
|
||||
[DIR_NORTHEAST] = 21,
|
||||
};
|
||||
|
||||
const u8 gTrainerFacingDirectionMovementTypes[] = {
|
||||
MOVEMENT_TYPE_FACE_DOWN, // DIR_NONE
|
||||
MOVEMENT_TYPE_FACE_DOWN, // DIR_SOUTH
|
||||
MOVEMENT_TYPE_FACE_UP, // DIR_NORTH
|
||||
MOVEMENT_TYPE_FACE_LEFT, // DIR_WEST
|
||||
MOVEMENT_TYPE_FACE_RIGHT, // DIR_EAST
|
||||
MOVEMENT_TYPE_FACE_DOWN, // DIR_SOUTHWEST
|
||||
MOVEMENT_TYPE_FACE_DOWN, // DIR_SOUTHEAST
|
||||
MOVEMENT_TYPE_FACE_UP, // DIR_NORTHWEST
|
||||
MOVEMENT_TYPE_FACE_UP, // DIR_NORTHEAST
|
||||
[DIR_NONE] = MOVEMENT_TYPE_FACE_DOWN,
|
||||
[DIR_SOUTH] = MOVEMENT_TYPE_FACE_DOWN,
|
||||
[DIR_NORTH] = MOVEMENT_TYPE_FACE_UP,
|
||||
[DIR_WEST] = MOVEMENT_TYPE_FACE_LEFT,
|
||||
[DIR_EAST] = MOVEMENT_TYPE_FACE_RIGHT,
|
||||
[DIR_SOUTHWEST] = MOVEMENT_TYPE_FACE_DOWN,
|
||||
[DIR_SOUTHEAST] = MOVEMENT_TYPE_FACE_DOWN,
|
||||
[DIR_NORTHWEST] = MOVEMENT_TYPE_FACE_UP,
|
||||
[DIR_NORTHEAST] = MOVEMENT_TYPE_FACE_UP,
|
||||
};
|
||||
|
||||
bool8 (*const gOppositeDirectionBlockedMetatileFuncs[])(u8) = {
|
||||
|
@ -2,7 +2,7 @@
|
||||
#include "evolution_scene.h"
|
||||
#include "evolution_graphics.h"
|
||||
#include "sprite.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "task.h"
|
||||
#include "palette.h"
|
||||
#include "main.h"
|
||||
|
@ -305,7 +305,7 @@ const union AnimCmd *const gNewGameBirchImageAnimTable[] = {
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gNewGameBirchObjectTemplate = {
|
||||
.tileTag = 0xffff,
|
||||
.tileTag = 0xFFFF,
|
||||
.paletteTag = 4102,
|
||||
.oam = &gNewGameBirchOamAttributes,
|
||||
.anims = gNewGameBirchImageAnimTable,
|
||||
@ -383,7 +383,7 @@ const union AnimCmd *const gSpriteAnimTable_855C300[] = {
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSpriteTemplate_855C304 = {
|
||||
.tileTag = 0xffff,
|
||||
.tileTag = 0xFFFF,
|
||||
.paletteTag = 4103,
|
||||
.oam = &gOamData_855C218,
|
||||
.anims = gSpriteAnimTable_855C2F8,
|
||||
@ -393,7 +393,7 @@ const struct SpriteTemplate gSpriteTemplate_855C304 = {
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSpriteTemplate_855C31C = {
|
||||
.tileTag = 0xffff,
|
||||
.tileTag = 0xFFFF,
|
||||
.paletteTag = 4100,
|
||||
.oam = &gOamData_855C220,
|
||||
.anims = gSpriteAnimTable_855C2F8,
|
||||
@ -403,7 +403,7 @@ const struct SpriteTemplate gSpriteTemplate_855C31C = {
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSpriteTemplate_855C334 = {
|
||||
.tileTag = 0xffff,
|
||||
.tileTag = 0xFFFF,
|
||||
.paletteTag = 4112,
|
||||
.oam = &gOamData_855C220,
|
||||
.anims = gSpriteAnimTable_855C300,
|
||||
@ -413,7 +413,7 @@ const struct SpriteTemplate gSpriteTemplate_855C334 = {
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSpriteTemplate_855C34C = {
|
||||
.tileTag = 0xffff,
|
||||
.tileTag = 0xFFFF,
|
||||
.paletteTag = 4112,
|
||||
.oam = &gOamData_855C26C,
|
||||
.anims = gSpriteAnimTable_855C300,
|
||||
@ -3591,7 +3591,7 @@ const union AnimCmd *const gSpriteAnimTable_855C5DC[] = {
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_0855C5EC = {
|
||||
.tileTag = 0xffff,
|
||||
.tileTag = 0xFFFF,
|
||||
.paletteTag = 4378,
|
||||
.oam = &gOamData_855C218,
|
||||
.anims = gSpriteAnimTable_855C5DC,
|
||||
|
@ -1007,15 +1007,15 @@ void UpdateSurfBlobFieldEffect(struct Sprite *sprite)
|
||||
static void SynchroniseSurfAnim(struct EventObject *eventObject, struct Sprite *sprite)
|
||||
{
|
||||
u8 surfBlobDirectionAnims[] = {
|
||||
0, // DIR_NONE
|
||||
0, // DIR_SOUTH
|
||||
1, // DIR_NORTH
|
||||
2, // DIR_WEST
|
||||
3, // DIR_EAST
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
[DIR_NONE] = 0,
|
||||
[DIR_SOUTH] = 0,
|
||||
[DIR_NORTH] = 1,
|
||||
[DIR_WEST] = 2,
|
||||
[DIR_EAST] = 3,
|
||||
[DIR_SOUTHWEST] = 0,
|
||||
[DIR_SOUTHEAST] = 0,
|
||||
[DIR_NORTHWEST] = 1,
|
||||
[DIR_NORTHEAST] = 1,
|
||||
};
|
||||
|
||||
if (sub_8155640(sprite) == 0)
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include "gpu_regs.h"
|
||||
#include "international_string_util.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "menu.h"
|
||||
#include "palette.h"
|
||||
#include "region_map.h"
|
||||
|
@ -20,7 +20,7 @@
|
||||
#include "link.h"
|
||||
#include "list_menu.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "match_call.h"
|
||||
#include "menu.h"
|
||||
#include "overworld.h"
|
||||
@ -1691,22 +1691,22 @@ const struct WindowTemplate gUnknown_085B2BAC = {
|
||||
};
|
||||
|
||||
const u8 *const gElevatorFloorsTable[] = {
|
||||
gText_B4F,
|
||||
gText_B3F,
|
||||
gText_B2F,
|
||||
gText_B1F,
|
||||
gText_1F,
|
||||
gText_2F,
|
||||
gText_3F,
|
||||
gText_4F,
|
||||
gText_5F,
|
||||
gText_6F,
|
||||
gText_7F,
|
||||
gText_8F,
|
||||
gText_9F,
|
||||
gText_10F,
|
||||
gText_11F,
|
||||
gText_Rooftop
|
||||
gText_B4F,
|
||||
gText_B3F,
|
||||
gText_B2F,
|
||||
gText_B1F,
|
||||
gText_1F,
|
||||
gText_2F,
|
||||
gText_3F,
|
||||
gText_4F,
|
||||
gText_5F,
|
||||
gText_6F,
|
||||
gText_7F,
|
||||
gText_8F,
|
||||
gText_9F,
|
||||
gText_10F,
|
||||
gText_11F,
|
||||
gText_Rooftop
|
||||
};
|
||||
|
||||
const u16 gUnknown_085B2BF4[][3] =
|
||||
@ -1957,7 +1957,7 @@ void sub_8139D98(void)
|
||||
|
||||
bool32 warp0_in_pokecenter(void)
|
||||
{
|
||||
static const u16 gUnknown_085B2C2A[] = { 0x0202, 0x0301, 0x0405, 0x0504, 0x0604, 0x0700, 0x0804, 0x090b, 0x0a05, 0x0b05, 0x0c02, 0x0d06, 0x0e03, 0x0f02, 0x100c, 0x100a, 0x1a35, 0x193c, 0xffff };
|
||||
static const u16 gUnknown_085B2C2A[] = { 0x0202, 0x0301, 0x0405, 0x0504, 0x0604, 0x0700, 0x0804, 0x090b, 0x0a05, 0x0b05, 0x0c02, 0x0d06, 0x0e03, 0x0f02, 0x100c, 0x100a, 0x1a35, 0x193c, 0xFFFF };
|
||||
|
||||
int i;
|
||||
u16 map = (gLastUsedWarp.mapGroup << 8) + gLastUsedWarp.mapNum;
|
||||
@ -2946,10 +2946,10 @@ void sub_813AA44(void)
|
||||
|
||||
static void sub_813AA60(u16 a0, u16 a1)
|
||||
{
|
||||
static const u16 gUnknown_085B312C[] = { 0x004b, 0x0067, 0x0057, 0x004f, 0x0054, 0x0055, 0x0056, 0x0050, 0x0051, 0x0052, 0xffff };
|
||||
static const u16 gUnknown_085B3142[] = { 0x0071, 0x006f, 0x0072, 0x0073, 0x0074, 0xffff };
|
||||
static const u16 gUnknown_085B314E[] = { 0x0040, 0x0043, 0x0041, 0x0046, 0x0042, 0x003f, 0xffff };
|
||||
static const u16 gUnknown_085B315C[] = { 0x00c8, 0x00b4, 0x00b7, 0x00b9, 0x00b3, 0x00ba, 0x00bb, 0x00c4, 0x00c6, 0xffff };
|
||||
static const u16 gUnknown_085B312C[] = { 0x004b, 0x0067, 0x0057, 0x004f, 0x0054, 0x0055, 0x0056, 0x0050, 0x0051, 0x0052, 0xFFFF };
|
||||
static const u16 gUnknown_085B3142[] = { 0x0071, 0x006f, 0x0072, 0x0073, 0x0074, 0xFFFF };
|
||||
static const u16 gUnknown_085B314E[] = { 0x0040, 0x0043, 0x0041, 0x0046, 0x0042, 0x003f, 0xFFFF };
|
||||
static const u16 gUnknown_085B315C[] = { 0x00c8, 0x00b4, 0x00b7, 0x00b9, 0x00b3, 0x00ba, 0x00bb, 0x00c4, 0x00c6, 0xFFFF };
|
||||
|
||||
static const u8 *const gUnknown_085B3170[] = {
|
||||
BattleFrontier_BattlePointExchangeServiceCorner_Text_2601AA,
|
||||
@ -3841,7 +3841,7 @@ bool32 sub_813B9C0(void)
|
||||
MAP_TRADE_CENTER,
|
||||
MAP_RECORD_CORNER,
|
||||
MAP_DOUBLE_BATTLE_COLOSSEUM,
|
||||
0xffff
|
||||
0xFFFF
|
||||
};
|
||||
|
||||
int i;
|
||||
|
@ -496,7 +496,7 @@ u16 GetBehaviorByMetatileId(u16 metatile)
|
||||
}
|
||||
else
|
||||
{
|
||||
return 0xff;
|
||||
return 0xFF;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
#include "field_player_avatar.h"
|
||||
#include "fieldmap.h"
|
||||
#include "fldeff_cut.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "metatile_behavior.h"
|
||||
#include "overworld.h"
|
||||
#include "party_menu.h"
|
||||
|
@ -2,7 +2,7 @@
|
||||
#include "event_data.h"
|
||||
#include "event_object_movement.h"
|
||||
#include "field_camera.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "random.h"
|
||||
#include "roulette_util.h"
|
||||
#include "script.h"
|
||||
|
@ -8,7 +8,7 @@
|
||||
#include "fieldmap.h"
|
||||
#include "global.fieldmap.h"
|
||||
#include "gpu_regs.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "menu.h"
|
||||
#include "random.h"
|
||||
#include "script.h"
|
||||
@ -458,104 +458,104 @@ static void sub_81BF2B8(u8* a, u16 b, u8 c, u8 d, u8 e)
|
||||
{
|
||||
asm_unified("\n\
|
||||
push {r4-r7,lr}\n\
|
||||
mov r7, r10\n\
|
||||
mov r6, r9\n\
|
||||
mov r5, r8\n\
|
||||
push {r5-r7}\n\
|
||||
sub sp, 0x8\n\
|
||||
str r0, [sp]\n\
|
||||
mov r10, r1\n\
|
||||
adds r6, r2, 0\n\
|
||||
mov r8, r3\n\
|
||||
ldr r0, [sp, 0x28]\n\
|
||||
mov r9, r0\n\
|
||||
lsls r1, 16\n\
|
||||
lsrs r1, 16\n\
|
||||
mov r10, r1\n\
|
||||
lsls r6, 24\n\
|
||||
lsrs r6, 24\n\
|
||||
mov r0, r8\n\
|
||||
lsls r0, 24\n\
|
||||
mov r8, r0\n\
|
||||
lsrs r7, r0, 24\n\
|
||||
mov r1, r9\n\
|
||||
lsls r1, 24\n\
|
||||
lsrs r1, 24\n\
|
||||
mov r9, r1\n\
|
||||
mov r0, r10\n\
|
||||
adds r1, r7, 0\n\
|
||||
bl __divsi3\n\
|
||||
adds r5, r0, 0\n\
|
||||
lsls r5, 24\n\
|
||||
lsrs r4, r5, 24\n\
|
||||
ldr r3, =gUnknown_030012A8\n\
|
||||
strh r4, [r3]\n\
|
||||
mov r0, r10\n\
|
||||
adds r1, r7, 0\n\
|
||||
str r3, [sp, 0x4]\n\
|
||||
bl __modsi3\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r2, r0, 24\n\
|
||||
ldr r3, [sp, 0x4]\n\
|
||||
strh r2, [r3, 0x2]\n\
|
||||
movs r1, 0x7\n\
|
||||
ands r4, r1\n\
|
||||
ands r2, r1\n\
|
||||
strh r4, [r3, 0x4]\n\
|
||||
strh r2, [r3, 0x6]\n\
|
||||
lsrs r0, 27\n\
|
||||
lsrs r5, 27\n\
|
||||
strh r0, [r3, 0x8]\n\
|
||||
strh r5, [r3, 0xA]\n\
|
||||
mov r1, r8\n\
|
||||
lsrs r1, 27\n\
|
||||
lsls r1, 6\n\
|
||||
mov r8, r1\n\
|
||||
mov r1, r8\n\
|
||||
muls r1, r5\n\
|
||||
lsls r0, 6\n\
|
||||
adds r1, r0\n\
|
||||
lsls r1, 16\n\
|
||||
lsrs r1, 16\n\
|
||||
strh r1, [r3, 0xC]\n\
|
||||
lsls r4, 3\n\
|
||||
adds r4, r2\n\
|
||||
adds r1, r4\n\
|
||||
lsls r4, r1, 16\n\
|
||||
lsrs r4, 17\n\
|
||||
strh r1, [r3, 0xE]\n\
|
||||
movs r1, 0x1\n\
|
||||
mov r0, r10\n\
|
||||
ands r1, r0\n\
|
||||
movs r2, 0x1\n\
|
||||
eors r1, r2\n\
|
||||
lsls r0, r1, 2\n\
|
||||
lsls r6, r0\n\
|
||||
eors r1, r2\n\
|
||||
lsls r1, 2\n\
|
||||
movs r0, 0xF\n\
|
||||
lsls r0, r1\n\
|
||||
orrs r6, r0\n\
|
||||
lsls r6, 24\n\
|
||||
lsrs r6, 24\n\
|
||||
mov r1, r9\n\
|
||||
lsls r1, 5\n\
|
||||
mov r9, r1\n\
|
||||
add r9, r4\n\
|
||||
ldr r1, [sp]\n\
|
||||
add r1, r9\n\
|
||||
ldrb r0, [r1]\n\
|
||||
ands r6, r0\n\
|
||||
strb r6, [r1]\n\
|
||||
add sp, 0x8\n\
|
||||
pop {r3-r5}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
mov r10, r5\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.pool\n\
|
||||
mov r7, r10\n\
|
||||
mov r6, r9\n\
|
||||
mov r5, r8\n\
|
||||
push {r5-r7}\n\
|
||||
sub sp, 0x8\n\
|
||||
str r0, [sp]\n\
|
||||
mov r10, r1\n\
|
||||
adds r6, r2, 0\n\
|
||||
mov r8, r3\n\
|
||||
ldr r0, [sp, 0x28]\n\
|
||||
mov r9, r0\n\
|
||||
lsls r1, 16\n\
|
||||
lsrs r1, 16\n\
|
||||
mov r10, r1\n\
|
||||
lsls r6, 24\n\
|
||||
lsrs r6, 24\n\
|
||||
mov r0, r8\n\
|
||||
lsls r0, 24\n\
|
||||
mov r8, r0\n\
|
||||
lsrs r7, r0, 24\n\
|
||||
mov r1, r9\n\
|
||||
lsls r1, 24\n\
|
||||
lsrs r1, 24\n\
|
||||
mov r9, r1\n\
|
||||
mov r0, r10\n\
|
||||
adds r1, r7, 0\n\
|
||||
bl __divsi3\n\
|
||||
adds r5, r0, 0\n\
|
||||
lsls r5, 24\n\
|
||||
lsrs r4, r5, 24\n\
|
||||
ldr r3, =gUnknown_030012A8\n\
|
||||
strh r4, [r3]\n\
|
||||
mov r0, r10\n\
|
||||
adds r1, r7, 0\n\
|
||||
str r3, [sp, 0x4]\n\
|
||||
bl __modsi3\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r2, r0, 24\n\
|
||||
ldr r3, [sp, 0x4]\n\
|
||||
strh r2, [r3, 0x2]\n\
|
||||
movs r1, 0x7\n\
|
||||
ands r4, r1\n\
|
||||
ands r2, r1\n\
|
||||
strh r4, [r3, 0x4]\n\
|
||||
strh r2, [r3, 0x6]\n\
|
||||
lsrs r0, 27\n\
|
||||
lsrs r5, 27\n\
|
||||
strh r0, [r3, 0x8]\n\
|
||||
strh r5, [r3, 0xA]\n\
|
||||
mov r1, r8\n\
|
||||
lsrs r1, 27\n\
|
||||
lsls r1, 6\n\
|
||||
mov r8, r1\n\
|
||||
mov r1, r8\n\
|
||||
muls r1, r5\n\
|
||||
lsls r0, 6\n\
|
||||
adds r1, r0\n\
|
||||
lsls r1, 16\n\
|
||||
lsrs r1, 16\n\
|
||||
strh r1, [r3, 0xC]\n\
|
||||
lsls r4, 3\n\
|
||||
adds r4, r2\n\
|
||||
adds r1, r4\n\
|
||||
lsls r4, r1, 16\n\
|
||||
lsrs r4, 17\n\
|
||||
strh r1, [r3, 0xE]\n\
|
||||
movs r1, 0x1\n\
|
||||
mov r0, r10\n\
|
||||
ands r1, r0\n\
|
||||
movs r2, 0x1\n\
|
||||
eors r1, r2\n\
|
||||
lsls r0, r1, 2\n\
|
||||
lsls r6, r0\n\
|
||||
eors r1, r2\n\
|
||||
lsls r1, 2\n\
|
||||
movs r0, 0xF\n\
|
||||
lsls r0, r1\n\
|
||||
orrs r6, r0\n\
|
||||
lsls r6, 24\n\
|
||||
lsrs r6, 24\n\
|
||||
mov r1, r9\n\
|
||||
lsls r1, 5\n\
|
||||
mov r9, r1\n\
|
||||
add r9, r4\n\
|
||||
ldr r1, [sp]\n\
|
||||
add r1, r9\n\
|
||||
ldrb r0, [r1]\n\
|
||||
ands r6, r0\n\
|
||||
strb r6, [r1]\n\
|
||||
add sp, 0x8\n\
|
||||
pop {r3-r5}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
mov r10, r5\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.pool\n\
|
||||
");
|
||||
}
|
||||
#endif // NONMATCHING
|
||||
|
@ -24,7 +24,7 @@
|
||||
#include "data2.h"
|
||||
#include "record_mixing.h"
|
||||
#include "strings.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "save.h"
|
||||
#include "load_save.h"
|
||||
#include "battle_dome.h"
|
||||
|
192
src/gpu_regs.c
192
src/gpu_regs.c
@ -20,166 +20,166 @@ static void UpdateRegDispstatIntrBits(u16 regIE);
|
||||
|
||||
void InitGpuRegManager(void)
|
||||
{
|
||||
s32 i;
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < GPU_REG_BUF_SIZE; i++)
|
||||
for (i = 0; i < GPU_REG_BUF_SIZE; i++)
|
||||
{
|
||||
sGpuRegBuffer[i] = 0;
|
||||
sGpuRegWaitingList[i] = EMPTY_SLOT;
|
||||
}
|
||||
sGpuRegBuffer[i] = 0;
|
||||
sGpuRegWaitingList[i] = EMPTY_SLOT;
|
||||
}
|
||||
|
||||
sGpuRegBufferLocked = FALSE;
|
||||
sShouldSyncRegIE = FALSE;
|
||||
sRegIE = 0;
|
||||
sGpuRegBufferLocked = FALSE;
|
||||
sShouldSyncRegIE = FALSE;
|
||||
sRegIE = 0;
|
||||
}
|
||||
|
||||
static void CopyBufferedValueToGpuReg(u8 regOffset)
|
||||
{
|
||||
if (regOffset == REG_OFFSET_DISPSTAT)
|
||||
if (regOffset == REG_OFFSET_DISPSTAT)
|
||||
{
|
||||
REG_DISPSTAT &= ~(DISPSTAT_HBLANK_INTR | DISPSTAT_VBLANK_INTR);
|
||||
REG_DISPSTAT |= GPU_REG_BUF(REG_OFFSET_DISPSTAT);
|
||||
}
|
||||
else
|
||||
REG_DISPSTAT &= ~(DISPSTAT_HBLANK_INTR | DISPSTAT_VBLANK_INTR);
|
||||
REG_DISPSTAT |= GPU_REG_BUF(REG_OFFSET_DISPSTAT);
|
||||
}
|
||||
else
|
||||
{
|
||||
GPU_REG(regOffset) = GPU_REG_BUF(regOffset);
|
||||
}
|
||||
GPU_REG(regOffset) = GPU_REG_BUF(regOffset);
|
||||
}
|
||||
}
|
||||
|
||||
void CopyBufferedValuesToGpuRegs(void)
|
||||
{
|
||||
if (!sGpuRegBufferLocked)
|
||||
if (!sGpuRegBufferLocked)
|
||||
{
|
||||
s32 i;
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < GPU_REG_BUF_SIZE; i++)
|
||||
for (i = 0; i < GPU_REG_BUF_SIZE; i++)
|
||||
{
|
||||
u8 regOffset = sGpuRegWaitingList[i];
|
||||
if (regOffset == EMPTY_SLOT)
|
||||
return;
|
||||
CopyBufferedValueToGpuReg(regOffset);
|
||||
sGpuRegWaitingList[i] = EMPTY_SLOT;
|
||||
}
|
||||
}
|
||||
u8 regOffset = sGpuRegWaitingList[i];
|
||||
if (regOffset == EMPTY_SLOT)
|
||||
return;
|
||||
CopyBufferedValueToGpuReg(regOffset);
|
||||
sGpuRegWaitingList[i] = EMPTY_SLOT;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void SetGpuReg(u8 regOffset, u16 value)
|
||||
{
|
||||
if (regOffset < GPU_REG_BUF_SIZE)
|
||||
{
|
||||
u16 vcount;
|
||||
if (regOffset < GPU_REG_BUF_SIZE)
|
||||
{
|
||||
u16 vcount;
|
||||
|
||||
GPU_REG_BUF(regOffset) = value;
|
||||
vcount = REG_VCOUNT & 0xFF;
|
||||
GPU_REG_BUF(regOffset) = value;
|
||||
vcount = REG_VCOUNT & 0xFF;
|
||||
|
||||
if ((vcount >= 161 && vcount <= 225)
|
||||
|| (REG_DISPCNT & DISPCNT_FORCED_BLANK)) {
|
||||
CopyBufferedValueToGpuReg(regOffset);
|
||||
} else {
|
||||
s32 i;
|
||||
if ((vcount >= 161 && vcount <= 225)
|
||||
|| (REG_DISPCNT & DISPCNT_FORCED_BLANK)) {
|
||||
CopyBufferedValueToGpuReg(regOffset);
|
||||
} else {
|
||||
s32 i;
|
||||
|
||||
sGpuRegBufferLocked = TRUE;
|
||||
sGpuRegBufferLocked = TRUE;
|
||||
|
||||
for (i = 0; i < GPU_REG_BUF_SIZE && sGpuRegWaitingList[i] != EMPTY_SLOT; i++) {
|
||||
if (sGpuRegWaitingList[i] == regOffset) {
|
||||
sGpuRegBufferLocked = FALSE;
|
||||
return;
|
||||
}
|
||||
}
|
||||
for (i = 0; i < GPU_REG_BUF_SIZE && sGpuRegWaitingList[i] != EMPTY_SLOT; i++) {
|
||||
if (sGpuRegWaitingList[i] == regOffset) {
|
||||
sGpuRegBufferLocked = FALSE;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
sGpuRegWaitingList[i] = regOffset;
|
||||
sGpuRegBufferLocked = FALSE;
|
||||
}
|
||||
}
|
||||
sGpuRegWaitingList[i] = regOffset;
|
||||
sGpuRegBufferLocked = FALSE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void SetGpuReg_ForcedBlank(u8 regOffset, u16 value)
|
||||
{
|
||||
if (regOffset < GPU_REG_BUF_SIZE)
|
||||
{
|
||||
GPU_REG_BUF(regOffset) = value;
|
||||
if (regOffset < GPU_REG_BUF_SIZE)
|
||||
{
|
||||
GPU_REG_BUF(regOffset) = value;
|
||||
|
||||
if (REG_DISPCNT & DISPCNT_FORCED_BLANK) {
|
||||
CopyBufferedValueToGpuReg(regOffset);
|
||||
} else {
|
||||
s32 i;
|
||||
if (REG_DISPCNT & DISPCNT_FORCED_BLANK) {
|
||||
CopyBufferedValueToGpuReg(regOffset);
|
||||
} else {
|
||||
s32 i;
|
||||
|
||||
sGpuRegBufferLocked = TRUE;
|
||||
sGpuRegBufferLocked = TRUE;
|
||||
|
||||
for (i = 0; i < GPU_REG_BUF_SIZE && sGpuRegWaitingList[i] != EMPTY_SLOT; i++) {
|
||||
if (sGpuRegWaitingList[i] == regOffset) {
|
||||
sGpuRegBufferLocked = FALSE;
|
||||
return;
|
||||
}
|
||||
}
|
||||
for (i = 0; i < GPU_REG_BUF_SIZE && sGpuRegWaitingList[i] != EMPTY_SLOT; i++) {
|
||||
if (sGpuRegWaitingList[i] == regOffset) {
|
||||
sGpuRegBufferLocked = FALSE;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
sGpuRegWaitingList[i] = regOffset;
|
||||
sGpuRegBufferLocked = FALSE;
|
||||
}
|
||||
}
|
||||
sGpuRegWaitingList[i] = regOffset;
|
||||
sGpuRegBufferLocked = FALSE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
u16 GetGpuReg(u8 regOffset)
|
||||
{
|
||||
if (regOffset == REG_OFFSET_DISPSTAT)
|
||||
return REG_DISPSTAT;
|
||||
if (regOffset == REG_OFFSET_DISPSTAT)
|
||||
return REG_DISPSTAT;
|
||||
|
||||
if (regOffset == REG_OFFSET_VCOUNT)
|
||||
return REG_VCOUNT;
|
||||
if (regOffset == REG_OFFSET_VCOUNT)
|
||||
return REG_VCOUNT;
|
||||
|
||||
return GPU_REG_BUF(regOffset);
|
||||
return GPU_REG_BUF(regOffset);
|
||||
}
|
||||
|
||||
void SetGpuRegBits(u8 regOffset, u16 mask)
|
||||
{
|
||||
u16 regValue = GPU_REG_BUF(regOffset);
|
||||
SetGpuReg(regOffset, regValue | mask);
|
||||
u16 regValue = GPU_REG_BUF(regOffset);
|
||||
SetGpuReg(regOffset, regValue | mask);
|
||||
}
|
||||
|
||||
void ClearGpuRegBits(u8 regOffset, u16 mask)
|
||||
{
|
||||
u16 regValue = GPU_REG_BUF(regOffset);
|
||||
SetGpuReg(regOffset, regValue & ~mask);
|
||||
u16 regValue = GPU_REG_BUF(regOffset);
|
||||
SetGpuReg(regOffset, regValue & ~mask);
|
||||
}
|
||||
|
||||
static void SyncRegIE(void)
|
||||
{
|
||||
if (sShouldSyncRegIE) {
|
||||
u16 temp = REG_IME;
|
||||
REG_IME = 0;
|
||||
REG_IE = sRegIE;
|
||||
REG_IME = temp;
|
||||
sShouldSyncRegIE = FALSE;
|
||||
}
|
||||
if (sShouldSyncRegIE) {
|
||||
u16 temp = REG_IME;
|
||||
REG_IME = 0;
|
||||
REG_IE = sRegIE;
|
||||
REG_IME = temp;
|
||||
sShouldSyncRegIE = FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
void EnableInterrupts(u16 mask)
|
||||
{
|
||||
sRegIE |= mask;
|
||||
sShouldSyncRegIE = TRUE;
|
||||
SyncRegIE();
|
||||
UpdateRegDispstatIntrBits(sRegIE);
|
||||
sRegIE |= mask;
|
||||
sShouldSyncRegIE = TRUE;
|
||||
SyncRegIE();
|
||||
UpdateRegDispstatIntrBits(sRegIE);
|
||||
}
|
||||
|
||||
void DisableInterrupts(u16 mask)
|
||||
{
|
||||
sRegIE &= ~mask;
|
||||
sShouldSyncRegIE = TRUE;
|
||||
SyncRegIE();
|
||||
UpdateRegDispstatIntrBits(sRegIE);
|
||||
sRegIE &= ~mask;
|
||||
sShouldSyncRegIE = TRUE;
|
||||
SyncRegIE();
|
||||
UpdateRegDispstatIntrBits(sRegIE);
|
||||
}
|
||||
|
||||
static void UpdateRegDispstatIntrBits(u16 regIE)
|
||||
{
|
||||
u16 oldValue = GetGpuReg(REG_OFFSET_DISPSTAT) & (DISPSTAT_HBLANK_INTR | DISPSTAT_VBLANK_INTR);
|
||||
u16 newValue = 0;
|
||||
u16 oldValue = GetGpuReg(REG_OFFSET_DISPSTAT) & (DISPSTAT_HBLANK_INTR | DISPSTAT_VBLANK_INTR);
|
||||
u16 newValue = 0;
|
||||
|
||||
if (regIE & INTR_FLAG_VBLANK)
|
||||
newValue |= DISPSTAT_VBLANK_INTR;
|
||||
if (regIE & INTR_FLAG_VBLANK)
|
||||
newValue |= DISPSTAT_VBLANK_INTR;
|
||||
|
||||
if (regIE & INTR_FLAG_HBLANK)
|
||||
newValue |= DISPSTAT_HBLANK_INTR;
|
||||
if (regIE & INTR_FLAG_HBLANK)
|
||||
newValue |= DISPSTAT_HBLANK_INTR;
|
||||
|
||||
if (oldValue != newValue)
|
||||
SetGpuReg(REG_OFFSET_DISPSTAT, newValue);
|
||||
if (oldValue != newValue)
|
||||
SetGpuReg(REG_OFFSET_DISPSTAT, newValue);
|
||||
}
|
||||
|
@ -6,7 +6,7 @@
|
||||
#include "pokemon.h"
|
||||
#include "text.h"
|
||||
#include "text_window.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "gpu_regs.h"
|
||||
#include "graphics.h"
|
||||
#include "main.h"
|
||||
|
@ -5,7 +5,7 @@
|
||||
#include "task.h"
|
||||
#include "title_screen.h"
|
||||
#include "libgcnmultiboot.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "gpu_regs.h"
|
||||
#include "link.h"
|
||||
#include "multiboot_pokemon_colosseum.h"
|
||||
@ -62,10 +62,10 @@ static const u32 gIntro3MiscTiles[] = INCBIN_U32("graphics/intro/intro3_misc.4bp
|
||||
static const u16 gIntro1FlygonPalette[] = INCBIN_U16("graphics/intro/intro1_flygon.gbapal");
|
||||
static const u32 gIntro1EonTiles_Unused[] = INCBIN_U32("graphics/intro/intro1_eon.4bpp.lz");
|
||||
static const u8 sUnknownBytes[] = {
|
||||
0x02, 0x03, 0x04, 0x05, 0x01, 0x01, 0x01, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x02, 0x0D,
|
||||
0x02, 0x03, 0x04, 0x05, 0x01, 0x01, 0x01, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x02, 0x0D,
|
||||
0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x02, 0x0D, 0x0E, 0x0F,
|
||||
0x10, 0x11, 0x12, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x02, 0x0D, 0x0E, 0x0F, 0x10,
|
||||
0x11, 0x12, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x00
|
||||
0x11, 0x12, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x00
|
||||
};
|
||||
static const struct CompressedSpriteSheet gUnknown_085E4A74[] =
|
||||
{
|
||||
|
270
src/item.c
270
src/item.c
@ -4,7 +4,7 @@
|
||||
#include "string_util.h"
|
||||
#include "text.h"
|
||||
#include "event_data.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "secret_base.h"
|
||||
#include "item_menu.h"
|
||||
#include "strings.h"
|
||||
@ -244,152 +244,152 @@ NAKED
|
||||
bool8 CheckBagHasSpace(u16 itemId, u16 count)
|
||||
{
|
||||
asm_unified("push {r4-r7,lr}\n\
|
||||
mov r7, r10\n\
|
||||
mov r6, r9\n\
|
||||
mov r5, r8\n\
|
||||
push {r5-r7}\n\
|
||||
sub sp, 0x4\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r0, 16\n\
|
||||
mov r8, r0\n\
|
||||
lsls r1, 16\n\
|
||||
lsrs r5, r1, 16\n\
|
||||
bl ItemId_GetPocket\n\
|
||||
lsls r0, 24\n\
|
||||
cmp r0, 0\n\
|
||||
beq _080D6906\n\
|
||||
bl InBattlePyramid\n\
|
||||
lsls r0, 24\n\
|
||||
cmp r0, 0\n\
|
||||
bne _080D6838\n\
|
||||
ldr r0, =0x00004004\n\
|
||||
bl FlagGet\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
cmp r0, 0x1\n\
|
||||
bne _080D684C\n\
|
||||
mov r7, r10\n\
|
||||
mov r6, r9\n\
|
||||
mov r5, r8\n\
|
||||
push {r5-r7}\n\
|
||||
sub sp, 0x4\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r0, 16\n\
|
||||
mov r8, r0\n\
|
||||
lsls r1, 16\n\
|
||||
lsrs r5, r1, 16\n\
|
||||
bl ItemId_GetPocket\n\
|
||||
lsls r0, 24\n\
|
||||
cmp r0, 0\n\
|
||||
beq _080D6906\n\
|
||||
bl InBattlePyramid\n\
|
||||
lsls r0, 24\n\
|
||||
cmp r0, 0\n\
|
||||
bne _080D6838\n\
|
||||
ldr r0, =0x00004004\n\
|
||||
bl FlagGet\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
cmp r0, 0x1\n\
|
||||
bne _080D684C\n\
|
||||
_080D6838:\n\
|
||||
mov r0, r8\n\
|
||||
adds r1, r5, 0\n\
|
||||
bl CheckPyramidBagHasSpace\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
b _080D6916\n\
|
||||
.pool\n\
|
||||
mov r0, r8\n\
|
||||
adds r1, r5, 0\n\
|
||||
bl CheckPyramidBagHasSpace\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
b _080D6916\n\
|
||||
.pool\n\
|
||||
_080D684C:\n\
|
||||
mov r0, r8\n\
|
||||
bl ItemId_GetPocket\n\
|
||||
subs r0, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r2, r0, 24\n\
|
||||
ldr r7, =0x000003e7\n\
|
||||
cmp r2, 0x3\n\
|
||||
beq _080D6860\n\
|
||||
movs r7, 0x63\n\
|
||||
mov r0, r8\n\
|
||||
bl ItemId_GetPocket\n\
|
||||
subs r0, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r2, r0, 24\n\
|
||||
ldr r7, =0x000003e7\n\
|
||||
cmp r2, 0x3\n\
|
||||
beq _080D6860\n\
|
||||
movs r7, 0x63\n\
|
||||
_080D6860:\n\
|
||||
movs r6, 0\n\
|
||||
ldr r1, =gBagPockets\n\
|
||||
lsls r4, r2, 3\n\
|
||||
adds r0, r4, r1\n\
|
||||
mov r9, r4\n\
|
||||
ldrb r0, [r0, 0x4]\n\
|
||||
cmp r6, r0\n\
|
||||
bcs _080D68BC\n\
|
||||
subs r0, r2, 0x2\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
mov r10, r0\n\
|
||||
movs r6, 0\n\
|
||||
ldr r1, =gBagPockets\n\
|
||||
lsls r4, r2, 3\n\
|
||||
adds r0, r4, r1\n\
|
||||
mov r9, r4\n\
|
||||
ldrb r0, [r0, 0x4]\n\
|
||||
cmp r6, r0\n\
|
||||
bcs _080D68BC\n\
|
||||
subs r0, r2, 0x2\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
mov r10, r0\n\
|
||||
_080D6878:\n\
|
||||
adds r0, r4, r1\n\
|
||||
ldr r1, [r0]\n\
|
||||
lsls r0, r6, 2\n\
|
||||
adds r1, r0, r1\n\
|
||||
ldrh r0, [r1]\n\
|
||||
cmp r0, r8\n\
|
||||
bne _080D68AC\n\
|
||||
adds r0, r1, 0x2\n\
|
||||
str r2, [sp]\n\
|
||||
bl GetBagItemQuantity\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r1, r0, 16\n\
|
||||
adds r0, r1, r5\n\
|
||||
ldr r2, [sp]\n\
|
||||
cmp r0, r7\n\
|
||||
ble _080D6914\n\
|
||||
mov r0, r10\n\
|
||||
cmp r0, 0x1\n\
|
||||
bls _080D6906\n\
|
||||
subs r0, r7, r1\n\
|
||||
subs r0, r5, r0\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r5, r0, 16\n\
|
||||
cmp r5, 0\n\
|
||||
beq _080D6914\n\
|
||||
adds r0, r4, r1\n\
|
||||
ldr r1, [r0]\n\
|
||||
lsls r0, r6, 2\n\
|
||||
adds r1, r0, r1\n\
|
||||
ldrh r0, [r1]\n\
|
||||
cmp r0, r8\n\
|
||||
bne _080D68AC\n\
|
||||
adds r0, r1, 0x2\n\
|
||||
str r2, [sp]\n\
|
||||
bl GetBagItemQuantity\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r1, r0, 16\n\
|
||||
adds r0, r1, r5\n\
|
||||
ldr r2, [sp]\n\
|
||||
cmp r0, r7\n\
|
||||
ble _080D6914\n\
|
||||
mov r0, r10\n\
|
||||
cmp r0, 0x1\n\
|
||||
bls _080D6906\n\
|
||||
subs r0, r7, r1\n\
|
||||
subs r0, r5, r0\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r5, r0, 16\n\
|
||||
cmp r5, 0\n\
|
||||
beq _080D6914\n\
|
||||
_080D68AC:\n\
|
||||
adds r0, r6, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
ldr r1, =gBagPockets\n\
|
||||
adds r0, r4, r1\n\
|
||||
ldrb r0, [r0, 0x4]\n\
|
||||
cmp r6, r0\n\
|
||||
bcc _080D6878\n\
|
||||
adds r0, r6, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
ldr r1, =gBagPockets\n\
|
||||
adds r0, r4, r1\n\
|
||||
ldrb r0, [r0, 0x4]\n\
|
||||
cmp r6, r0\n\
|
||||
bcc _080D6878\n\
|
||||
_080D68BC:\n\
|
||||
cmp r5, 0\n\
|
||||
beq _080D6914\n\
|
||||
movs r6, 0\n\
|
||||
ldr r3, =gBagPockets\n\
|
||||
mov r1, r9\n\
|
||||
adds r0, r1, r3\n\
|
||||
ldrb r0, [r0, 0x4]\n\
|
||||
cmp r6, r0\n\
|
||||
bcs _080D6902\n\
|
||||
adds r4, r3, 0\n\
|
||||
subs r0, r2, 0x2\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r2, r0, 24\n\
|
||||
cmp r5, 0\n\
|
||||
beq _080D6914\n\
|
||||
movs r6, 0\n\
|
||||
ldr r3, =gBagPockets\n\
|
||||
mov r1, r9\n\
|
||||
adds r0, r1, r3\n\
|
||||
ldrb r0, [r0, 0x4]\n\
|
||||
cmp r6, r0\n\
|
||||
bcs _080D6902\n\
|
||||
adds r4, r3, 0\n\
|
||||
subs r0, r2, 0x2\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r2, r0, 24\n\
|
||||
_080D68D6:\n\
|
||||
adds r0, r1, r4\n\
|
||||
ldr r1, [r0]\n\
|
||||
lsls r0, r6, 2\n\
|
||||
adds r0, r1\n\
|
||||
ldrh r0, [r0]\n\
|
||||
cmp r0, 0\n\
|
||||
bne _080D68F2\n\
|
||||
cmp r5, r7\n\
|
||||
bls _080D6914\n\
|
||||
cmp r2, 0x1\n\
|
||||
bls _080D6906\n\
|
||||
subs r0, r5, r7\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r5, r0, 16\n\
|
||||
adds r0, r1, r4\n\
|
||||
ldr r1, [r0]\n\
|
||||
lsls r0, r6, 2\n\
|
||||
adds r0, r1\n\
|
||||
ldrh r0, [r0]\n\
|
||||
cmp r0, 0\n\
|
||||
bne _080D68F2\n\
|
||||
cmp r5, r7\n\
|
||||
bls _080D6914\n\
|
||||
cmp r2, 0x1\n\
|
||||
bls _080D6906\n\
|
||||
subs r0, r5, r7\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r5, r0, 16\n\
|
||||
_080D68F2:\n\
|
||||
adds r0, r6, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
mov r1, r9\n\
|
||||
adds r0, r1, r3\n\
|
||||
ldrb r0, [r0, 0x4]\n\
|
||||
cmp r6, r0\n\
|
||||
bcc _080D68D6\n\
|
||||
adds r0, r6, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
mov r1, r9\n\
|
||||
adds r0, r1, r3\n\
|
||||
ldrb r0, [r0, 0x4]\n\
|
||||
cmp r6, r0\n\
|
||||
bcc _080D68D6\n\
|
||||
_080D6902:\n\
|
||||
cmp r5, 0\n\
|
||||
beq _080D6914\n\
|
||||
cmp r5, 0\n\
|
||||
beq _080D6914\n\
|
||||
_080D6906:\n\
|
||||
movs r0, 0\n\
|
||||
b _080D6916\n\
|
||||
.pool\n\
|
||||
movs r0, 0\n\
|
||||
b _080D6916\n\
|
||||
.pool\n\
|
||||
_080D6914:\n\
|
||||
movs r0, 0x1\n\
|
||||
movs r0, 0x1\n\
|
||||
_080D6916:\n\
|
||||
add sp, 0x4\n\
|
||||
pop {r3-r5}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
mov r10, r5\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r1}\n\
|
||||
bx r1");
|
||||
add sp, 0x4\n\
|
||||
pop {r3-r5}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
mov r10, r5\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r1}\n\
|
||||
bx r1");
|
||||
}
|
||||
#endif // NONMATCHING
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
#include "decompress.h"
|
||||
#include "graphics.h"
|
||||
#include "item_icon.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "sprite.h"
|
||||
#include "constants/items.h"
|
||||
|
||||
|
@ -23,7 +23,7 @@
|
||||
#include "link.h"
|
||||
#include "mail.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "map_name_popup.h"
|
||||
#include "menu.h"
|
||||
#include "money.h"
|
||||
|
@ -338,8 +338,8 @@ static const struct Landmark *const Landmarks_MtChimney_2[] =
|
||||
|
||||
static const struct LandmarkList gLandmarkLists[] =
|
||||
{
|
||||
{MAPSEC_ROUTE_103, 2, Landmarks_Route103_2},
|
||||
{MAPSEC_ROUTE_104, 0, Landmarks_Route104_0},
|
||||
{MAPSEC_ROUTE_103, 2, Landmarks_Route103_2},
|
||||
{MAPSEC_ROUTE_104, 0, Landmarks_Route104_0},
|
||||
{MAPSEC_ROUTE_104, 1, Landmarks_Route104_1},
|
||||
{MAPSEC_ROUTE_105, 0, Landmarks_Route105_0},
|
||||
{MAPSEC_ROUTE_106, 1, Landmarks_Route106_1},
|
||||
|
@ -9,7 +9,7 @@
|
||||
#include "gpu_regs.h"
|
||||
#include "learn_move.h"
|
||||
#include "list_menu.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "menu.h"
|
||||
#include "menu_helpers.h"
|
||||
#include "overworld.h"
|
||||
|
@ -2,7 +2,7 @@
|
||||
// Includes
|
||||
#include "global.h"
|
||||
#include "m4a.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "reset_save_heap.h"
|
||||
#include "save.h"
|
||||
#include "bg.h"
|
||||
|
@ -1,4 +1,5 @@
|
||||
#include "global.h"
|
||||
#include "alloc.h"
|
||||
#include "battle.h"
|
||||
#include "berry_blender.h"
|
||||
#include "decompress.h"
|
||||
@ -7,7 +8,6 @@
|
||||
#include "librfu.h"
|
||||
#include "link.h"
|
||||
#include "link_rfu.h"
|
||||
#include "malloc.h"
|
||||
#include "overworld.h"
|
||||
#include "random.h"
|
||||
#include "palette.h"
|
||||
@ -276,7 +276,7 @@ const struct {
|
||||
{ gBlockSendBuffer, 40 }
|
||||
};
|
||||
const u16 gUnknown_082ED6E0[] = {
|
||||
0x0002, 0x7f7d, 0x0000, 0xffff
|
||||
0x0002, 0x7f7d, 0x0000, 0xFFFF
|
||||
};
|
||||
|
||||
const char sUnref_082ED6E8[][15] = {
|
||||
@ -1469,7 +1469,7 @@ static u8 sub_800D294(void)
|
||||
|
||||
for (i = 0; i < gUnknown_03007890->unk_08; i++)
|
||||
{
|
||||
for (ptr = gUnknown_03004140.unk_20; *ptr != 0xffff; ptr++)
|
||||
for (ptr = gUnknown_03004140.unk_20; *ptr != 0xFFFF; ptr++)
|
||||
{
|
||||
if (gUnknown_03007890->unk_14[i].unk_04 == *ptr)
|
||||
{
|
||||
@ -3077,7 +3077,7 @@ bool32 sub_800F1E0(void)
|
||||
{
|
||||
if (gUnknown_03005000.unk_14[i][1])
|
||||
{
|
||||
if (gUnknown_03005000.unk_cee[i] != 0xff && (gUnknown_03005000.unk_14[i][0] >> 5) != ((gUnknown_03005000.unk_cee[i] + 1) & 7))
|
||||
if (gUnknown_03005000.unk_cee[i] != 0xFF && (gUnknown_03005000.unk_14[i][0] >> 5) != ((gUnknown_03005000.unk_cee[i] + 1) & 7))
|
||||
{
|
||||
if (++gUnknown_03005000.unk_cea[i] > 4)
|
||||
sub_8011170(0x8100);
|
||||
@ -3778,7 +3778,7 @@ bool32 sub_8010454(u32 a0)
|
||||
s32 i;
|
||||
for (i = 0; gUnknown_082ED6E0[i] != a0; i++)
|
||||
{
|
||||
if (gUnknown_082ED6E0[i] == 0xffff)
|
||||
if (gUnknown_082ED6E0[i] == 0xFFFF)
|
||||
return FALSE;
|
||||
}
|
||||
return TRUE;
|
||||
@ -3906,7 +3906,7 @@ void sub_80106D4(void)
|
||||
u32 sub_8010714(u16 a0, const u8 *a1)
|
||||
{
|
||||
u8 r0 = sub_8011CE4(a1, a0);
|
||||
if (r0 == 0xff)
|
||||
if (r0 == 0xFF)
|
||||
return 2;
|
||||
if (gUnknown_03007880[r0]->unk_0 == 0)
|
||||
return 1;
|
||||
|
@ -8,7 +8,7 @@
|
||||
#include "trig.h"
|
||||
#include "decompress.h"
|
||||
#include "palette.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "strings.h"
|
||||
#include "sound.h"
|
||||
#include "constants/songs.h"
|
||||
@ -953,52 +953,52 @@ void ListMenuSetUnkIndicatorsStructField(u8 taskId, u8 field, s32 value)
|
||||
case 0:
|
||||
case 1:
|
||||
data->field_4 = (void*)(value);
|
||||
break;
|
||||
break;
|
||||
case 2:
|
||||
data->field_C = value;
|
||||
break;
|
||||
break;
|
||||
case 3:
|
||||
data->field_E = value;
|
||||
break;
|
||||
break;
|
||||
case 4:
|
||||
data->field_10 = value;
|
||||
break;
|
||||
break;
|
||||
case 5:
|
||||
data->field_11 = value;
|
||||
break;
|
||||
break;
|
||||
case 6:
|
||||
data->field_12 = value;
|
||||
break;
|
||||
break;
|
||||
case 7:
|
||||
data->field_13 = value;
|
||||
break;
|
||||
break;
|
||||
case 8:
|
||||
data->field_14_0 = value;
|
||||
break;
|
||||
break;
|
||||
case 9:
|
||||
data->field_14_1 = value;
|
||||
break;
|
||||
break;
|
||||
case 10:
|
||||
data->field_15_0 = value;
|
||||
break;
|
||||
break;
|
||||
case 11:
|
||||
data->field_15_1 = value;
|
||||
break;
|
||||
break;
|
||||
case 12:
|
||||
data->field_16_0 = value;
|
||||
break;
|
||||
break;
|
||||
case 13:
|
||||
data->field_16_1 = value;
|
||||
break;
|
||||
break;
|
||||
case 14:
|
||||
data->field_16_2 = value;
|
||||
break;
|
||||
break;
|
||||
case 15:
|
||||
data->field_17_0 = value;
|
||||
break;
|
||||
break;
|
||||
case 16:
|
||||
data->field_17_1 = value;
|
||||
break;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include "main.h"
|
||||
#include "pokemon.h"
|
||||
#include "random.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "item.h"
|
||||
#include "overworld.h"
|
||||
#include "decoration_inventory.h"
|
||||
|
@ -17,7 +17,7 @@
|
||||
#include "bg.h"
|
||||
#include "pokemon_icon.h"
|
||||
#include "constants/species.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "easy_chat.h"
|
||||
|
||||
extern const u16 gMailPalette_Orange[];
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "global.h"
|
||||
#include "crt0.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "link.h"
|
||||
#include "link_rfu.h"
|
||||
#include "librfu.h"
|
||||
|
@ -335,25 +335,25 @@ static const struct MenuAction sMenuActions_Gender[] = {
|
||||
|
||||
static const u8 *const gMalePresetNames[] = {
|
||||
gText_DefaultNameStu,
|
||||
gText_DefaultNameMilton,
|
||||
gText_DefaultNameTom,
|
||||
gText_DefaultNameKenny,
|
||||
gText_DefaultNameReid,
|
||||
gText_DefaultNameJude,
|
||||
gText_DefaultNameJaxson,
|
||||
gText_DefaultNameEaston,
|
||||
gText_DefaultNameWalker,
|
||||
gText_DefaultNameTeru,
|
||||
gText_DefaultNameJohnny,
|
||||
gText_DefaultNameBrett,
|
||||
gText_DefaultNameSeth,
|
||||
gText_DefaultNameTerry,
|
||||
gText_DefaultNameCasey,
|
||||
gText_DefaultNameDarren,
|
||||
gText_DefaultNameLandon,
|
||||
gText_DefaultNameCollin,
|
||||
gText_DefaultNameStanley,
|
||||
gText_DefaultNameQuincy
|
||||
gText_DefaultNameMilton,
|
||||
gText_DefaultNameTom,
|
||||
gText_DefaultNameKenny,
|
||||
gText_DefaultNameReid,
|
||||
gText_DefaultNameJude,
|
||||
gText_DefaultNameJaxson,
|
||||
gText_DefaultNameEaston,
|
||||
gText_DefaultNameWalker,
|
||||
gText_DefaultNameTeru,
|
||||
gText_DefaultNameJohnny,
|
||||
gText_DefaultNameBrett,
|
||||
gText_DefaultNameSeth,
|
||||
gText_DefaultNameTerry,
|
||||
gText_DefaultNameCasey,
|
||||
gText_DefaultNameDarren,
|
||||
gText_DefaultNameLandon,
|
||||
gText_DefaultNameCollin,
|
||||
gText_DefaultNameStanley,
|
||||
gText_DefaultNameQuincy
|
||||
};
|
||||
|
||||
static const u8 *const gFemalePresetNames[] = {
|
||||
|
210
src/malloc.c
210
src/malloc.c
@ -1,210 +0,0 @@
|
||||
#include "global.h"
|
||||
|
||||
static void *sHeapStart;
|
||||
static u32 sHeapSize;
|
||||
static u32 malloc_c_unused_0300000c; // needed to align dma3_manager.o(.bss)
|
||||
|
||||
#define MALLOC_SYSTEM_ID 0xA3A3
|
||||
|
||||
struct MemBlock {
|
||||
// Whether this block is currently allocated.
|
||||
bool16 flag;
|
||||
|
||||
// Magic number used for error checking. Should equal MALLOC_SYSTEM_ID.
|
||||
u16 magic;
|
||||
|
||||
// Size of the block (not including this header struct).
|
||||
u32 size;
|
||||
|
||||
// Previous block pointer. Equals sHeapStart if this is the first block.
|
||||
struct MemBlock *prev;
|
||||
|
||||
// Next block pointer. Equals sHeapStart if this is the last block.
|
||||
struct MemBlock *next;
|
||||
|
||||
// Data in the memory block. (Arrays of length 0 are a GNU extension.)
|
||||
u8 data[0];
|
||||
};
|
||||
|
||||
void PutMemBlockHeader(void *block, struct MemBlock *prev, struct MemBlock *next, u32 size)
|
||||
{
|
||||
struct MemBlock *header = (struct MemBlock *)block;
|
||||
|
||||
header->flag = FALSE;
|
||||
header->magic = MALLOC_SYSTEM_ID;
|
||||
header->size = size;
|
||||
header->prev = prev;
|
||||
header->next = next;
|
||||
}
|
||||
|
||||
void PutFirstMemBlockHeader(void *block, u32 size)
|
||||
{
|
||||
PutMemBlockHeader(block, (struct MemBlock *)block, (struct MemBlock *)block, size - sizeof(struct MemBlock));
|
||||
}
|
||||
|
||||
void *AllocInternal(void *heapStart, u32 size)
|
||||
{
|
||||
struct MemBlock *pos = (struct MemBlock *)heapStart;
|
||||
struct MemBlock *head = pos;
|
||||
struct MemBlock *splitBlock;
|
||||
u32 foundBlockSize;
|
||||
|
||||
// Alignment
|
||||
if (size & 3)
|
||||
size = 4 * ((size / 4) + 1);
|
||||
|
||||
for (;;) {
|
||||
// Loop through the blocks looking for unused block that's big enough.
|
||||
|
||||
if (!pos->flag) {
|
||||
foundBlockSize = pos->size;
|
||||
|
||||
if (foundBlockSize >= size) {
|
||||
if (foundBlockSize - size < 2 * sizeof(struct MemBlock)) {
|
||||
// The block isn't much bigger than the requested size,
|
||||
// so just use it.
|
||||
pos->flag = TRUE;
|
||||
} else {
|
||||
// The block is significantly bigger than the requested
|
||||
// size, so split the rest into a separate block.
|
||||
foundBlockSize -= sizeof(struct MemBlock);
|
||||
foundBlockSize -= size;
|
||||
|
||||
splitBlock = (struct MemBlock *)(pos->data + size);
|
||||
|
||||
pos->flag = TRUE;
|
||||
pos->size = size;
|
||||
|
||||
PutMemBlockHeader(splitBlock, pos, pos->next, foundBlockSize);
|
||||
|
||||
pos->next = splitBlock;
|
||||
|
||||
if (splitBlock->next != head)
|
||||
splitBlock->next->prev = splitBlock;
|
||||
}
|
||||
|
||||
return pos->data;
|
||||
}
|
||||
}
|
||||
|
||||
if (pos->next == head)
|
||||
return NULL;
|
||||
|
||||
pos = pos->next;
|
||||
}
|
||||
}
|
||||
|
||||
void FreeInternal(void *heapStart, void *pointer)
|
||||
{
|
||||
if (pointer) {
|
||||
struct MemBlock *head = (struct MemBlock *)heapStart;
|
||||
struct MemBlock *block = (struct MemBlock *)((u8 *)pointer - sizeof(struct MemBlock));
|
||||
block->flag = FALSE;
|
||||
|
||||
// If the freed block isn't the last one, merge with the next block
|
||||
// if it's not in use.
|
||||
if (block->next != head) {
|
||||
if (!block->next->flag) {
|
||||
block->size += sizeof(struct MemBlock) + block->next->size;
|
||||
block->next->magic = 0;
|
||||
block->next = block->next->next;
|
||||
if (block->next != head)
|
||||
block->next->prev = block;
|
||||
}
|
||||
}
|
||||
|
||||
// If the freed block isn't the first one, merge with the previous block
|
||||
// if it's not in use.
|
||||
if (block != head) {
|
||||
if (!block->prev->flag) {
|
||||
block->prev->next = block->next;
|
||||
|
||||
if (block->next != head)
|
||||
block->next->prev = block->prev;
|
||||
|
||||
block->magic = 0;
|
||||
block->prev->size += sizeof(struct MemBlock) + block->size;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void *AllocZeroedInternal(void *heapStart, u32 size)
|
||||
{
|
||||
void *mem = AllocInternal(heapStart, size);
|
||||
|
||||
if (mem != NULL) {
|
||||
if (size & 3)
|
||||
size = 4 * ((size / 4) + 1);
|
||||
|
||||
CpuFill32(0, mem, size);
|
||||
}
|
||||
|
||||
return mem;
|
||||
}
|
||||
|
||||
bool32 CheckMemBlockInternal(void *heapStart, void *pointer)
|
||||
{
|
||||
struct MemBlock *head = (struct MemBlock *)heapStart;
|
||||
struct MemBlock *block = (struct MemBlock *)((u8 *)pointer - sizeof(struct MemBlock));
|
||||
|
||||
if (block->magic != MALLOC_SYSTEM_ID)
|
||||
return FALSE;
|
||||
|
||||
if (block->next->magic != MALLOC_SYSTEM_ID)
|
||||
return FALSE;
|
||||
|
||||
if (block->next != head && block->next->prev != block)
|
||||
return FALSE;
|
||||
|
||||
if (block->prev->magic != MALLOC_SYSTEM_ID)
|
||||
return FALSE;
|
||||
|
||||
if (block->prev != head && block->prev->next != block)
|
||||
return FALSE;
|
||||
|
||||
if (block->next != head && block->next != (struct MemBlock *)(block->data + block->size))
|
||||
return FALSE;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void InitHeap(void *heapStart, u32 heapSize)
|
||||
{
|
||||
sHeapStart = heapStart;
|
||||
sHeapSize = heapSize;
|
||||
PutFirstMemBlockHeader(heapStart, heapSize);
|
||||
}
|
||||
|
||||
void *Alloc(u32 size)
|
||||
{
|
||||
AllocInternal(sHeapStart, size);
|
||||
}
|
||||
|
||||
void *AllocZeroed(u32 size)
|
||||
{
|
||||
AllocZeroedInternal(sHeapStart, size);
|
||||
}
|
||||
|
||||
void Free(void *pointer)
|
||||
{
|
||||
FreeInternal(sHeapStart, pointer);
|
||||
}
|
||||
|
||||
bool32 CheckMemBlock(void *pointer)
|
||||
{
|
||||
return CheckMemBlockInternal(sHeapStart, pointer);
|
||||
}
|
||||
|
||||
bool32 CheckHeap()
|
||||
{
|
||||
struct MemBlock *pos = (struct MemBlock *)sHeapStart;
|
||||
|
||||
do {
|
||||
if (!CheckMemBlockInternal(sHeapStart, pos->data))
|
||||
return FALSE;
|
||||
pos = pos->next;
|
||||
} while (pos != (struct MemBlock *)sHeapStart);
|
||||
|
||||
return TRUE;
|
||||
}
|
462
src/menu.c
462
src/menu.c
@ -7,7 +7,7 @@
|
||||
#include "main.h"
|
||||
#include "sound.h"
|
||||
#include "menu_helpers.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "task.h"
|
||||
#include "dma3.h"
|
||||
#include "string_util.h"
|
||||
@ -2096,253 +2096,253 @@ void sub_819A080(struct UnkStruct_819A080 *a0, struct UnkStruct_819A080 *a1, u16
|
||||
NAKED
|
||||
void sub_819A080(struct UnkStruct_819A080 *a0, struct UnkStruct_819A080 *a1, u16 a2, u16 a3, u16 a4, u16 a5, u16 a6, u16 a7)
|
||||
{
|
||||
asm("push {r4-r7,lr}\n\
|
||||
mov r7, r10\n\
|
||||
mov r6, r9\n\
|
||||
mov r5, r8\n\
|
||||
push {r5-r7}\n\
|
||||
sub sp, #0x28\n\
|
||||
str r0, [sp]\n\
|
||||
str r1, [sp, #0x4]\n\
|
||||
ldr r0, [sp, #0x48]\n\
|
||||
ldr r4, [sp, #0x4C]\n\
|
||||
ldr r1, [sp, #0x50]\n\
|
||||
ldr r5, [sp, #0x54]\n\
|
||||
lsl r2, #16\n\
|
||||
lsr r2, #16\n\
|
||||
str r2, [sp, #0x8]\n\
|
||||
lsl r3, #16\n\
|
||||
lsr r3, #16\n\
|
||||
lsl r0, #16\n\
|
||||
lsr r0, #16\n\
|
||||
str r0, [sp, #0xC]\n\
|
||||
lsl r4, #16\n\
|
||||
lsr r4, #16\n\
|
||||
lsl r1, #16\n\
|
||||
lsr r1, #16\n\
|
||||
lsl r5, #16\n\
|
||||
lsr r5, #16\n\
|
||||
ldr r2, [sp, #0x4]\n\
|
||||
ldrh r0, [r2, #0x4]\n\
|
||||
ldr r2, [sp, #0xC]\n\
|
||||
sub r0, r2\n\
|
||||
ldr r2, [sp, #0x8]\n\
|
||||
add r2, r1, r2\n\
|
||||
str r2, [sp, #0x10]\n\
|
||||
cmp r0, r1\n\
|
||||
bge _0819A0CC\n\
|
||||
ldr r1, [sp, #0x8]\n\
|
||||
add r0, r1\n\
|
||||
str r0, [sp, #0x10]\n\
|
||||
asm("push {r4-r7,lr}\n\
|
||||
mov r7, r10\n\
|
||||
mov r6, r9\n\
|
||||
mov r5, r8\n\
|
||||
push {r5-r7}\n\
|
||||
sub sp, #0x28\n\
|
||||
str r0, [sp]\n\
|
||||
str r1, [sp, #0x4]\n\
|
||||
ldr r0, [sp, #0x48]\n\
|
||||
ldr r4, [sp, #0x4C]\n\
|
||||
ldr r1, [sp, #0x50]\n\
|
||||
ldr r5, [sp, #0x54]\n\
|
||||
lsl r2, #16\n\
|
||||
lsr r2, #16\n\
|
||||
str r2, [sp, #0x8]\n\
|
||||
lsl r3, #16\n\
|
||||
lsr r3, #16\n\
|
||||
lsl r0, #16\n\
|
||||
lsr r0, #16\n\
|
||||
str r0, [sp, #0xC]\n\
|
||||
lsl r4, #16\n\
|
||||
lsr r4, #16\n\
|
||||
lsl r1, #16\n\
|
||||
lsr r1, #16\n\
|
||||
lsl r5, #16\n\
|
||||
lsr r5, #16\n\
|
||||
ldr r2, [sp, #0x4]\n\
|
||||
ldrh r0, [r2, #0x4]\n\
|
||||
ldr r2, [sp, #0xC]\n\
|
||||
sub r0, r2\n\
|
||||
ldr r2, [sp, #0x8]\n\
|
||||
add r2, r1, r2\n\
|
||||
str r2, [sp, #0x10]\n\
|
||||
cmp r0, r1\n\
|
||||
bge _0819A0CC\n\
|
||||
ldr r1, [sp, #0x8]\n\
|
||||
add r0, r1\n\
|
||||
str r0, [sp, #0x10]\n\
|
||||
_0819A0CC:\n\
|
||||
ldr r2, [sp, #0x4]\n\
|
||||
ldrh r1, [r2, #0x6]\n\
|
||||
sub r0, r1, r4\n\
|
||||
cmp r0, r5\n\
|
||||
bge _0819A0DE\n\
|
||||
add r0, r3, r1\n\
|
||||
sub r0, r4\n\
|
||||
str r0, [sp, #0x14]\n\
|
||||
b _0819A0E2\n\
|
||||
ldr r2, [sp, #0x4]\n\
|
||||
ldrh r1, [r2, #0x6]\n\
|
||||
sub r0, r1, r4\n\
|
||||
cmp r0, r5\n\
|
||||
bge _0819A0DE\n\
|
||||
add r0, r3, r1\n\
|
||||
sub r0, r4\n\
|
||||
str r0, [sp, #0x14]\n\
|
||||
b _0819A0E2\n\
|
||||
_0819A0DE:\n\
|
||||
add r5, r3, r5\n\
|
||||
str r5, [sp, #0x14]\n\
|
||||
add r5, r3, r5\n\
|
||||
str r5, [sp, #0x14]\n\
|
||||
_0819A0E2:\n\
|
||||
ldr r0, [sp]\n\
|
||||
ldrh r1, [r0, #0x4]\n\
|
||||
mov r2, #0x7\n\
|
||||
add r0, r1, #0\n\
|
||||
and r0, r2\n\
|
||||
add r1, r0\n\
|
||||
asr r1, #3\n\
|
||||
str r1, [sp, #0x18]\n\
|
||||
ldr r0, [sp, #0x4]\n\
|
||||
ldrh r1, [r0, #0x4]\n\
|
||||
add r0, r1, #0\n\
|
||||
and r0, r2\n\
|
||||
add r1, r0\n\
|
||||
asr r1, #3\n\
|
||||
str r1, [sp, #0x1C]\n\
|
||||
mov r12, r3\n\
|
||||
mov r8, r4\n\
|
||||
ldr r1, [sp, #0x14]\n\
|
||||
cmp r12, r1\n\
|
||||
blt _0819A10C\n\
|
||||
b _0819A24A\n\
|
||||
ldr r0, [sp]\n\
|
||||
ldrh r1, [r0, #0x4]\n\
|
||||
mov r2, #0x7\n\
|
||||
add r0, r1, #0\n\
|
||||
and r0, r2\n\
|
||||
add r1, r0\n\
|
||||
asr r1, #3\n\
|
||||
str r1, [sp, #0x18]\n\
|
||||
ldr r0, [sp, #0x4]\n\
|
||||
ldrh r1, [r0, #0x4]\n\
|
||||
add r0, r1, #0\n\
|
||||
and r0, r2\n\
|
||||
add r1, r0\n\
|
||||
asr r1, #3\n\
|
||||
str r1, [sp, #0x1C]\n\
|
||||
mov r12, r3\n\
|
||||
mov r8, r4\n\
|
||||
ldr r1, [sp, #0x14]\n\
|
||||
cmp r12, r1\n\
|
||||
blt _0819A10C\n\
|
||||
b _0819A24A\n\
|
||||
_0819A10C:\n\
|
||||
ldr r5, [sp, #0x8]\n\
|
||||
ldr r6, [sp, #0xC]\n\
|
||||
mov r2, r12\n\
|
||||
add r2, #0x1\n\
|
||||
str r2, [sp, #0x20]\n\
|
||||
mov r0, r8\n\
|
||||
add r0, #0x1\n\
|
||||
str r0, [sp, #0x24]\n\
|
||||
ldr r1, [sp, #0x10]\n\
|
||||
cmp r5, r1\n\
|
||||
blt _0819A124\n\
|
||||
b _0819A23A\n\
|
||||
ldr r5, [sp, #0x8]\n\
|
||||
ldr r6, [sp, #0xC]\n\
|
||||
mov r2, r12\n\
|
||||
add r2, #0x1\n\
|
||||
str r2, [sp, #0x20]\n\
|
||||
mov r0, r8\n\
|
||||
add r0, #0x1\n\
|
||||
str r0, [sp, #0x24]\n\
|
||||
ldr r1, [sp, #0x10]\n\
|
||||
cmp r5, r1\n\
|
||||
blt _0819A124\n\
|
||||
b _0819A23A\n\
|
||||
_0819A124:\n\
|
||||
mov r7, #0x1\n\
|
||||
mov r2, #0xF0\n\
|
||||
mov r10, r2\n\
|
||||
mov r0, #0xF\n\
|
||||
mov r9, r0\n\
|
||||
mov r7, #0x1\n\
|
||||
mov r2, #0xF0\n\
|
||||
mov r10, r2\n\
|
||||
mov r0, #0xF\n\
|
||||
mov r9, r0\n\
|
||||
_0819A12E:\n\
|
||||
asr r0, r5, #1\n\
|
||||
mov r1, #0x3\n\
|
||||
and r0, r1\n\
|
||||
ldr r2, [sp]\n\
|
||||
ldr r1, [r2]\n\
|
||||
add r1, r0\n\
|
||||
asr r0, r5, #3\n\
|
||||
lsl r0, #5\n\
|
||||
add r1, r0\n\
|
||||
mov r2, r12\n\
|
||||
asr r0, r2, #3\n\
|
||||
ldr r2, [sp, #0x18]\n\
|
||||
mul r0, r2\n\
|
||||
lsl r0, #5\n\
|
||||
add r1, r0\n\
|
||||
mov r2, r12\n\
|
||||
lsl r0, r2, #29\n\
|
||||
lsr r0, #27\n\
|
||||
add r3, r1, r0\n\
|
||||
asr r0, r6, #1\n\
|
||||
mov r1, #0x3\n\
|
||||
and r0, r1\n\
|
||||
ldr r2, [sp, #0x4]\n\
|
||||
ldr r1, [r2]\n\
|
||||
add r1, r0\n\
|
||||
asr r0, r6, #3\n\
|
||||
lsl r0, #5\n\
|
||||
add r1, r0\n\
|
||||
mov r2, r8\n\
|
||||
asr r0, r2, #3\n\
|
||||
ldr r2, [sp, #0x1C]\n\
|
||||
mul r0, r2\n\
|
||||
lsl r0, #5\n\
|
||||
add r1, r0\n\
|
||||
mov r2, r8\n\
|
||||
lsl r0, r2, #29\n\
|
||||
lsr r0, #27\n\
|
||||
add r4, r1, r0\n\
|
||||
add r0, r4, #0\n\
|
||||
and r0, r7\n\
|
||||
cmp r0, #0\n\
|
||||
beq _0819A1DA\n\
|
||||
sub r4, #0x1\n\
|
||||
add r0, r6, #0\n\
|
||||
and r0, r7\n\
|
||||
cmp r0, #0\n\
|
||||
beq _0819A1B2\n\
|
||||
ldrh r0, [r4]\n\
|
||||
ldr r2, =0x00000fff\n\
|
||||
and r2, r0\n\
|
||||
add r0, r5, #0\n\
|
||||
and r0, r7\n\
|
||||
cmp r0, #0\n\
|
||||
beq _0819A1A8\n\
|
||||
ldrb r1, [r3]\n\
|
||||
mov r0, r10\n\
|
||||
and r0, r1\n\
|
||||
lsl r0, #8\n\
|
||||
b _0819A22A\n\
|
||||
.pool\n\
|
||||
asr r0, r5, #1\n\
|
||||
mov r1, #0x3\n\
|
||||
and r0, r1\n\
|
||||
ldr r2, [sp]\n\
|
||||
ldr r1, [r2]\n\
|
||||
add r1, r0\n\
|
||||
asr r0, r5, #3\n\
|
||||
lsl r0, #5\n\
|
||||
add r1, r0\n\
|
||||
mov r2, r12\n\
|
||||
asr r0, r2, #3\n\
|
||||
ldr r2, [sp, #0x18]\n\
|
||||
mul r0, r2\n\
|
||||
lsl r0, #5\n\
|
||||
add r1, r0\n\
|
||||
mov r2, r12\n\
|
||||
lsl r0, r2, #29\n\
|
||||
lsr r0, #27\n\
|
||||
add r3, r1, r0\n\
|
||||
asr r0, r6, #1\n\
|
||||
mov r1, #0x3\n\
|
||||
and r0, r1\n\
|
||||
ldr r2, [sp, #0x4]\n\
|
||||
ldr r1, [r2]\n\
|
||||
add r1, r0\n\
|
||||
asr r0, r6, #3\n\
|
||||
lsl r0, #5\n\
|
||||
add r1, r0\n\
|
||||
mov r2, r8\n\
|
||||
asr r0, r2, #3\n\
|
||||
ldr r2, [sp, #0x1C]\n\
|
||||
mul r0, r2\n\
|
||||
lsl r0, #5\n\
|
||||
add r1, r0\n\
|
||||
mov r2, r8\n\
|
||||
lsl r0, r2, #29\n\
|
||||
lsr r0, #27\n\
|
||||
add r4, r1, r0\n\
|
||||
add r0, r4, #0\n\
|
||||
and r0, r7\n\
|
||||
cmp r0, #0\n\
|
||||
beq _0819A1DA\n\
|
||||
sub r4, #0x1\n\
|
||||
add r0, r6, #0\n\
|
||||
and r0, r7\n\
|
||||
cmp r0, #0\n\
|
||||
beq _0819A1B2\n\
|
||||
ldrh r0, [r4]\n\
|
||||
ldr r2, =0x00000fff\n\
|
||||
and r2, r0\n\
|
||||
add r0, r5, #0\n\
|
||||
and r0, r7\n\
|
||||
cmp r0, #0\n\
|
||||
beq _0819A1A8\n\
|
||||
ldrb r1, [r3]\n\
|
||||
mov r0, r10\n\
|
||||
and r0, r1\n\
|
||||
lsl r0, #8\n\
|
||||
b _0819A22A\n\
|
||||
.pool\n\
|
||||
_0819A1A8:\n\
|
||||
ldrb r1, [r3]\n\
|
||||
mov r0, r9\n\
|
||||
and r0, r1\n\
|
||||
lsl r0, #12\n\
|
||||
b _0819A22A\n\
|
||||
ldrb r1, [r3]\n\
|
||||
mov r0, r9\n\
|
||||
and r0, r1\n\
|
||||
lsl r0, #12\n\
|
||||
b _0819A22A\n\
|
||||
_0819A1B2:\n\
|
||||
ldrh r0, [r4]\n\
|
||||
ldr r2, =0x0000f0ff\n\
|
||||
and r2, r0\n\
|
||||
add r0, r5, #0\n\
|
||||
and r0, r7\n\
|
||||
cmp r0, #0\n\
|
||||
beq _0819A1D0\n\
|
||||
ldrb r1, [r3]\n\
|
||||
mov r0, r10\n\
|
||||
and r0, r1\n\
|
||||
lsl r0, #4\n\
|
||||
b _0819A22A\n\
|
||||
.pool\n\
|
||||
ldrh r0, [r4]\n\
|
||||
ldr r2, =0x0000f0ff\n\
|
||||
and r2, r0\n\
|
||||
add r0, r5, #0\n\
|
||||
and r0, r7\n\
|
||||
cmp r0, #0\n\
|
||||
beq _0819A1D0\n\
|
||||
ldrb r1, [r3]\n\
|
||||
mov r0, r10\n\
|
||||
and r0, r1\n\
|
||||
lsl r0, #4\n\
|
||||
b _0819A22A\n\
|
||||
.pool\n\
|
||||
_0819A1D0:\n\
|
||||
ldrb r1, [r3]\n\
|
||||
mov r0, r9\n\
|
||||
and r0, r1\n\
|
||||
lsl r0, #8\n\
|
||||
b _0819A22A\n\
|
||||
ldrb r1, [r3]\n\
|
||||
mov r0, r9\n\
|
||||
and r0, r1\n\
|
||||
lsl r0, #8\n\
|
||||
b _0819A22A\n\
|
||||
_0819A1DA:\n\
|
||||
add r0, r6, #0\n\
|
||||
and r0, r7\n\
|
||||
cmp r0, #0\n\
|
||||
beq _0819A206\n\
|
||||
ldrh r0, [r4]\n\
|
||||
ldr r2, =0x0000ff0f\n\
|
||||
and r2, r0\n\
|
||||
add r0, r5, #0\n\
|
||||
and r0, r7\n\
|
||||
cmp r0, #0\n\
|
||||
beq _0819A1FC\n\
|
||||
ldrb r1, [r3]\n\
|
||||
mov r0, r10\n\
|
||||
b _0819A228\n\
|
||||
.pool\n\
|
||||
add r0, r6, #0\n\
|
||||
and r0, r7\n\
|
||||
cmp r0, #0\n\
|
||||
beq _0819A206\n\
|
||||
ldrh r0, [r4]\n\
|
||||
ldr r2, =0x0000ff0f\n\
|
||||
and r2, r0\n\
|
||||
add r0, r5, #0\n\
|
||||
and r0, r7\n\
|
||||
cmp r0, #0\n\
|
||||
beq _0819A1FC\n\
|
||||
ldrb r1, [r3]\n\
|
||||
mov r0, r10\n\
|
||||
b _0819A228\n\
|
||||
.pool\n\
|
||||
_0819A1FC:\n\
|
||||
ldrb r1, [r3]\n\
|
||||
mov r0, r9\n\
|
||||
and r0, r1\n\
|
||||
lsl r0, #4\n\
|
||||
b _0819A22A\n\
|
||||
ldrb r1, [r3]\n\
|
||||
mov r0, r9\n\
|
||||
and r0, r1\n\
|
||||
lsl r0, #4\n\
|
||||
b _0819A22A\n\
|
||||
_0819A206:\n\
|
||||
ldrh r0, [r4]\n\
|
||||
ldr r2, =0x0000fff0\n\
|
||||
and r2, r0\n\
|
||||
add r0, r5, #0\n\
|
||||
and r0, r7\n\
|
||||
cmp r0, #0\n\
|
||||
beq _0819A224\n\
|
||||
ldrb r1, [r3]\n\
|
||||
mov r0, r10\n\
|
||||
and r0, r1\n\
|
||||
lsr r0, #4\n\
|
||||
b _0819A22A\n\
|
||||
.pool\n\
|
||||
ldrh r0, [r4]\n\
|
||||
ldr r2, =0x0000fff0\n\
|
||||
and r2, r0\n\
|
||||
add r0, r5, #0\n\
|
||||
and r0, r7\n\
|
||||
cmp r0, #0\n\
|
||||
beq _0819A224\n\
|
||||
ldrb r1, [r3]\n\
|
||||
mov r0, r10\n\
|
||||
and r0, r1\n\
|
||||
lsr r0, #4\n\
|
||||
b _0819A22A\n\
|
||||
.pool\n\
|
||||
_0819A224:\n\
|
||||
ldrb r1, [r3]\n\
|
||||
mov r0, r9\n\
|
||||
ldrb r1, [r3]\n\
|
||||
mov r0, r9\n\
|
||||
_0819A228:\n\
|
||||
and r0, r1\n\
|
||||
and r0, r1\n\
|
||||
_0819A22A:\n\
|
||||
orr r2, r0\n\
|
||||
strh r2, [r4]\n\
|
||||
add r5, #0x1\n\
|
||||
add r6, #0x1\n\
|
||||
ldr r0, [sp, #0x10]\n\
|
||||
cmp r5, r0\n\
|
||||
bge _0819A23A\n\
|
||||
b _0819A12E\n\
|
||||
orr r2, r0\n\
|
||||
strh r2, [r4]\n\
|
||||
add r5, #0x1\n\
|
||||
add r6, #0x1\n\
|
||||
ldr r0, [sp, #0x10]\n\
|
||||
cmp r5, r0\n\
|
||||
bge _0819A23A\n\
|
||||
b _0819A12E\n\
|
||||
_0819A23A:\n\
|
||||
ldr r1, [sp, #0x20]\n\
|
||||
mov r12, r1\n\
|
||||
ldr r2, [sp, #0x24]\n\
|
||||
mov r8, r2\n\
|
||||
ldr r0, [sp, #0x14]\n\
|
||||
cmp r12, r0\n\
|
||||
bge _0819A24A\n\
|
||||
b _0819A10C\n\
|
||||
ldr r1, [sp, #0x20]\n\
|
||||
mov r12, r1\n\
|
||||
ldr r2, [sp, #0x24]\n\
|
||||
mov r8, r2\n\
|
||||
ldr r0, [sp, #0x14]\n\
|
||||
cmp r12, r0\n\
|
||||
bge _0819A24A\n\
|
||||
b _0819A10C\n\
|
||||
_0819A24A:\n\
|
||||
add sp, #0x28\n\
|
||||
pop {r3-r5}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
mov r10, r5\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n");
|
||||
add sp, #0x28\n\
|
||||
pop {r3-r5}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
mov r10, r5\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n");
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -10,246 +10,246 @@
|
||||
// wonder what the third flag is supposed to do
|
||||
static const u8 sTileBitAttributes[] =
|
||||
{
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_NORMAL
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_WALL
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, TRUE), // MB_TALL_GRASS
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, TRUE), // MB_LONG_GRASS
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_04
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, TRUE), // MB_UNUSED_05
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, TRUE), // MB_DEEP_SAND
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SHORT_GRASS
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, TRUE), // MB_UNUSED_CAVE
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_LONG_GRASS_SOUTH_EDGE
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_NO_RUNNING
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, TRUE), // MB_INDOOR_ENCOUNTER
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_MOUNTAIN_TOP
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_BATTLE_PYRAMID_WARP
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_MOSSDEEP_GYM_WARP
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_MT_PYRE_HOLE
|
||||
TILE_ATTRIBUTES(TRUE, TRUE, TRUE), // MB_POND_WATER
|
||||
TILE_ATTRIBUTES(TRUE, TRUE, TRUE), // MB_SEMI_DEEP_WATER
|
||||
TILE_ATTRIBUTES(TRUE, TRUE, TRUE), // MB_DEEP_WATER
|
||||
TILE_ATTRIBUTES(TRUE, TRUE, FALSE), // MB_WATERFALL
|
||||
TILE_ATTRIBUTES(TRUE, TRUE, FALSE), // MB_SOOTOPOLIS_DEEP_WATER
|
||||
TILE_ATTRIBUTES(TRUE, TRUE, TRUE), // MB_OCEAN_WATER
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_PUDDLE
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SHALLOW_WATER
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_SOOTOPOLIS_DEEP_WATER
|
||||
TILE_ATTRIBUTES(TRUE, TRUE, FALSE), // MB_NO_SURFACING
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_SOOTOPOLIS_DEEP_WATER_2
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_STAIRS_OUTSIDE_ABANDONED_SHIP
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SHOAL_CAVE_ENTRANCE
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_1D
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_1E
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_1F
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_ICE
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SAND
|
||||
TILE_ATTRIBUTES(TRUE, TRUE, TRUE), // MB_SEAWEED
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_UNUSED_23
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, TRUE), // MB_ASHGRASS
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, TRUE), // MB_FOOTPRINTS
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_THIN_ICE
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_CRACKED_ICE
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_HOT_SPRINGS
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_LAVARIDGE_GYM_B1F_WARP
|
||||
TILE_ATTRIBUTES(TRUE, TRUE, TRUE), // MB_SEAWEED_NO_SURFACING
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_REFLECTION_UNDER_BRIDGE
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_2C
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_2D
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_2E
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_2F
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_IMPASSABLE_EAST
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_IMPASSABLE_WEST
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_IMPASSABLE_NORTH
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_IMPASSABLE_SOUTH
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_IMPASSABLE_NORTHEAST
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_IMPASSABLE_NORTHWEST
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_IMPASSABLE_SOUTHEAST
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_IMPASSABLE_SOUTHWEST
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_JUMP_EAST
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_JUMP_WEST
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_JUMP_NORTH
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_JUMP_SOUTH
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_JUMP_NORTHEAST
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_JUMP_NORTHWEST
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_JUMP_SOUTHEAST
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_JUMP_SOUTHWEST
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_WALK_EAST
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_WALK_WEST
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_WALK_NORTH
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_WALK_SOUTH
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SLIDE_EAST
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SLIDE_WEST
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SLIDE_NORTH
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SLIDE_SOUTH
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_TRICK_HOUSE_PUZZLE_8_FLOOR
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_UNUSED_49
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_UNUSED_4A
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_4B
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_4C
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_4D
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_4E
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_4F
|
||||
TILE_ATTRIBUTES(TRUE, TRUE, FALSE), // MB_EASTWARD_CURRENT
|
||||
TILE_ATTRIBUTES(TRUE, TRUE, FALSE), // MB_WESTWARD_CURRENT
|
||||
TILE_ATTRIBUTES(TRUE, TRUE, FALSE), // MB_NORTHWARD_CURRENT
|
||||
TILE_ATTRIBUTES(TRUE, TRUE, FALSE), // MB_SOUTHWARD_CURRENT
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_54
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_55
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_56
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_57
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_58
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_59
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_5A
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_5B
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_5C
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_5D
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_5E
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_5F
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_NON_ANIMATED_DOOR
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_LADDER
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_EAST_ARROW_WARP
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_WEST_ARROW_WARP
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_NORTH_ARROW_WARP
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SOUTH_ARROW_WARP
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_CRACKED_FLOOR_HOLE
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_AQUA_HIDEOUT_WARP
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_LAVARIDGE_GYM_1F_WARP
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_ANIMATED_DOOR
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_UP_ESCALATOR
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_DOWN_ESCALATOR
|
||||
TILE_ATTRIBUTES(TRUE, TRUE, FALSE), // MB_WATER_DOOR
|
||||
TILE_ATTRIBUTES(TRUE, TRUE, FALSE), // MB_WATER_SOUTH_ARROW_WARP
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_DEEP_SOUTH_WARP
|
||||
TILE_ATTRIBUTES(TRUE, TRUE, FALSE), // MB_UNUSED_6F
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_WARP_OR_BRIDGE
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_UNUSED_71
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_ROUTE120_NORTH_BRIDGE_1
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_ROUTE120_NORTH_BRIDGE_2
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_PACIFIDLOG_VERTICAL_LOG_1
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_PACIFIDLOG_VERTICAL_LOG_2
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_PACIFIDLOG_HORIZONTAL_LOG_1
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_PACIFIDLOG_HORIZONTAL_LOG_2
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_FORTREE_BRIDGE
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_79
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_ROUTE120_SOUTH_BRIDGE_1
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_ROUTE120_SOUTH_BRIDGE_2
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_ROUTE120_NORTH_BRIDGE_3
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_ROUTE120_NORTH_BRIDGE_4
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_UNUSED_7E
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_ROUTE110_BRIDGE
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_COUNTER
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_81
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_82
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_PC
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_CABLE_BOX_RESULTS_1
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_REGION_MAP
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_TELEVISION
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_POKEBLOCK_FEEDER
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_88
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SLOT_MACHINE
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_ROULETTE
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_CLOSED_SOOTOPOLIS_DOOR
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_TRICK_HOUSE_PUZZLE_DOOR
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_PETALBURG_GYM_DOOR
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_RUNNING_SHOES_INSTRUCTION
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_QUESTIONNAIRE
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_SPOT_RED_CAVE
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_SPOT_RED_CAVE_OPEN
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_SPOT_BROWN_CAVE
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_SPOT_BROWN_CAVE_OPEN
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_SPOT_YELLOW_CAVE
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_SPOT_YELLOW_CAVE_OPEN
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_SPOT_TREE_LEFT
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_SPOT_TREE_LEFT_OPEN
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_SPOT_SHRUB
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_SPOT_SHRUB_OPEN
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_SPOT_BLUE_CAVE
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_SPOT_BLUE_CAVE_OPEN
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_SPOT_TREE_RIGHT
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_SPOT_TREE_RIGHT_OPEN
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_9E
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_9F
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_BERRY_TREE_SOIL
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_A1
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_A2
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_A3
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_A4
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_A5
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_A6
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_A7
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_A8
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_A9
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_AA
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_AB
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_AC
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_AD
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_AE
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_AF
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_PC
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_REGISTER_PC
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SECRET_BASE_UNUSED
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_BLOCK_DECORATION
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_DECORATION
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SECRET_BASE_LARGE_MAT_EDGE
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_B6
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_NORTH_WALL
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SECRET_BASE_BALLOON
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SECRET_BASE_IMPASSABLE
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SECRET_BASE_GLITTER_MAT
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SECRET_BASE_JUMP_MAT
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SECRET_BASE_SPIN_MAT
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SECRET_BASE_SOUND_MAT
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SECRET_BASE_BREAKABLE_DOOR
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_SAND_ORNAMENT
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_IMPASSABLE_SOUTH_AND_NORTH
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_IMPASSABLE_WEST_AND_EAST
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SECRET_BASE_HOLE
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_LARGE_MAT_CENTER
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_SECRET_BASE_TV_SHIELD
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_PLAYER_ROOM_PC_ON
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_C6
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SECRET_BASE_POSTER
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_C8
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_C9
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_CA
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_CB
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_CC
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_CD
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_CE
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_CF
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_MUDDY_SLOPE
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_BUMPY_SLOPE
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_CRACKED_FLOOR
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_ISOLATED_VERTICAL_RAIL
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_ISOLATED_HORIZONTAL_RAIL
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_VERTICAL_RAIL
|
||||
TILE_ATTRIBUTES(TRUE, FALSE, FALSE), // MB_HORIZONTAL_RAIL
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_D7
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_D8
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_D9
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_DA
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_DB
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_DC
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_DD
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_DE
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_DF
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_PICTURE_BOOK_SHELF
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_BOOKSHELF
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_POKEMON_CENTER_BOOKSHELF
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_VASE
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_TRASH_CAN
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_SHOP_SHELF
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_BLUEPRINT
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_CABLE_BOX_RESULTS_2
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_WIRELESS_BOX_RESULTS
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_TRAINER_HILL_TIMER
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNKNOWN_CLOSED_DOOR
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_EB
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_EC
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_ED
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_EE
|
||||
TILE_ATTRIBUTES(FALSE, FALSE, FALSE), // MB_UNUSED_EF
|
||||
[MB_NORMAL] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_WALL] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_TALL_GRASS] = TILE_ATTRIBUTES(TRUE, FALSE, TRUE),
|
||||
[MB_LONG_GRASS] = TILE_ATTRIBUTES(TRUE, FALSE, TRUE),
|
||||
[MB_UNUSED_04] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_05] = TILE_ATTRIBUTES(FALSE, FALSE, TRUE),
|
||||
[MB_DEEP_SAND] = TILE_ATTRIBUTES(TRUE, FALSE, TRUE),
|
||||
[MB_SHORT_GRASS] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_UNUSED_CAVE] = TILE_ATTRIBUTES(TRUE, FALSE, TRUE),
|
||||
[MB_LONG_GRASS_SOUTH_EDGE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_NO_RUNNING] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_INDOOR_ENCOUNTER] = TILE_ATTRIBUTES(TRUE, FALSE, TRUE),
|
||||
[MB_MOUNTAIN_TOP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_BATTLE_PYRAMID_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_MOSSDEEP_GYM_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_MT_PYRE_HOLE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_POND_WATER] = TILE_ATTRIBUTES(TRUE, TRUE, TRUE),
|
||||
[MB_SEMI_DEEP_WATER] = TILE_ATTRIBUTES(TRUE, TRUE, TRUE),
|
||||
[MB_DEEP_WATER] = TILE_ATTRIBUTES(TRUE, TRUE, TRUE),
|
||||
[MB_WATERFALL] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE),
|
||||
[MB_SOOTOPOLIS_DEEP_WATER] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE),
|
||||
[MB_OCEAN_WATER] = TILE_ATTRIBUTES(TRUE, TRUE, TRUE),
|
||||
[MB_PUDDLE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SHALLOW_WATER] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_UNUSED_SOOTOPOLIS_DEEP_WATER] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_NO_SURFACING] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE),
|
||||
[MB_UNUSED_SOOTOPOLIS_DEEP_WATER_2] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_STAIRS_OUTSIDE_ABANDONED_SHIP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SHOAL_CAVE_ENTRANCE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_UNUSED_1D] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_1E] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_1F] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_ICE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SAND] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SEAWEED] = TILE_ATTRIBUTES(TRUE, TRUE, TRUE),
|
||||
[MB_UNUSED_23] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_ASHGRASS] = TILE_ATTRIBUTES(TRUE, FALSE, TRUE),
|
||||
[MB_FOOTPRINTS] = TILE_ATTRIBUTES(TRUE, FALSE, TRUE),
|
||||
[MB_THIN_ICE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_CRACKED_ICE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_HOT_SPRINGS] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_LAVARIDGE_GYM_B1F_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SEAWEED_NO_SURFACING] = TILE_ATTRIBUTES(TRUE, TRUE, TRUE),
|
||||
[MB_REFLECTION_UNDER_BRIDGE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_UNUSED_2C] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_2D] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_2E] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_2F] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_IMPASSABLE_EAST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_IMPASSABLE_WEST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_IMPASSABLE_NORTH] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_IMPASSABLE_SOUTH] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_IMPASSABLE_NORTHEAST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_IMPASSABLE_NORTHWEST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_IMPASSABLE_SOUTHEAST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_IMPASSABLE_SOUTHWEST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_JUMP_EAST] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_JUMP_WEST] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_JUMP_NORTH] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_JUMP_SOUTH] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_JUMP_NORTHEAST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_JUMP_NORTHWEST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_JUMP_SOUTHEAST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_JUMP_SOUTHWEST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_WALK_EAST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_WALK_WEST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_WALK_NORTH] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_WALK_SOUTH] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SLIDE_EAST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SLIDE_WEST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SLIDE_NORTH] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SLIDE_SOUTH] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_TRICK_HOUSE_PUZZLE_8_FLOOR] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_UNUSED_49] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_UNUSED_4A] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_UNUSED_4B] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_4C] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_4D] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_4E] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_4F] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_EASTWARD_CURRENT] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE),
|
||||
[MB_WESTWARD_CURRENT] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE),
|
||||
[MB_NORTHWARD_CURRENT] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE),
|
||||
[MB_SOUTHWARD_CURRENT] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE),
|
||||
[MB_UNUSED_54] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_55] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_56] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_57] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_58] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_59] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_5A] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_5B] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_5C] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_5D] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_5E] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_5F] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_NON_ANIMATED_DOOR] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_LADDER] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_EAST_ARROW_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_WEST_ARROW_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_NORTH_ARROW_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SOUTH_ARROW_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_CRACKED_FLOOR_HOLE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_AQUA_HIDEOUT_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_LAVARIDGE_GYM_1F_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_ANIMATED_DOOR] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_UP_ESCALATOR] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_DOWN_ESCALATOR] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_WATER_DOOR] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE),
|
||||
[MB_WATER_SOUTH_ARROW_WARP] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE),
|
||||
[MB_DEEP_SOUTH_WARP] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_UNUSED_6F] = TILE_ATTRIBUTES(TRUE, TRUE, FALSE),
|
||||
[MB_WARP_OR_BRIDGE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_71] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_ROUTE120_NORTH_BRIDGE_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_ROUTE120_NORTH_BRIDGE_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_PACIFIDLOG_VERTICAL_LOG_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_PACIFIDLOG_VERTICAL_LOG_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_PACIFIDLOG_HORIZONTAL_LOG_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_PACIFIDLOG_HORIZONTAL_LOG_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_FORTREE_BRIDGE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_UNUSED_79] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_ROUTE120_SOUTH_BRIDGE_1] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_ROUTE120_SOUTH_BRIDGE_2] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_ROUTE120_NORTH_BRIDGE_3] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_ROUTE120_NORTH_BRIDGE_4] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_UNUSED_7E] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_ROUTE110_BRIDGE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_COUNTER] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_81] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_82] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_PC] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_CABLE_BOX_RESULTS_1] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_REGION_MAP] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_TELEVISION] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_POKEBLOCK_FEEDER] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_88] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SLOT_MACHINE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_ROULETTE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_CLOSED_SOOTOPOLIS_DOOR] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_TRICK_HOUSE_PUZZLE_DOOR] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_PETALBURG_GYM_DOOR] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_RUNNING_SHOES_INSTRUCTION] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_QUESTIONNAIRE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_SPOT_RED_CAVE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_SPOT_RED_CAVE_OPEN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_SPOT_BROWN_CAVE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_SPOT_BROWN_CAVE_OPEN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_SPOT_YELLOW_CAVE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_SPOT_YELLOW_CAVE_OPEN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_SPOT_TREE_LEFT] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_SPOT_TREE_LEFT_OPEN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_SPOT_SHRUB] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_SPOT_SHRUB_OPEN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_SPOT_BLUE_CAVE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_SPOT_BLUE_CAVE_OPEN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_SPOT_TREE_RIGHT] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_SPOT_TREE_RIGHT_OPEN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_9E] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_9F] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_BERRY_TREE_SOIL] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_A1] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_A2] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_A3] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_A4] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_A5] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_A6] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_A7] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_A8] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_A9] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_AA] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_AB] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_AC] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_AD] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_AE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_AF] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_PC] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_REGISTER_PC] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_UNUSED] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_BLOCK_DECORATION] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_DECORATION] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_LARGE_MAT_EDGE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_UNUSED_B6] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_NORTH_WALL] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_BALLOON] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_IMPASSABLE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_GLITTER_MAT] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_JUMP_MAT] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_SPIN_MAT] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_SOUND_MAT] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_BREAKABLE_DOOR] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_SAND_ORNAMENT] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_IMPASSABLE_SOUTH_AND_NORTH] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_IMPASSABLE_WEST_AND_EAST] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_HOLE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_LARGE_MAT_CENTER] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_TV_SHIELD] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_PLAYER_ROOM_PC_ON] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_C6] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SECRET_BASE_POSTER] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_C8] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_C9] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_CA] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_CB] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_CC] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_CD] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_CE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_CF] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_MUDDY_SLOPE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_BUMPY_SLOPE] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_CRACKED_FLOOR] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_ISOLATED_VERTICAL_RAIL] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_ISOLATED_HORIZONTAL_RAIL] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_VERTICAL_RAIL] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_HORIZONTAL_RAIL] = TILE_ATTRIBUTES(TRUE, FALSE, FALSE),
|
||||
[MB_UNUSED_D7] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_D8] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_D9] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_DA] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_DB] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_DC] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_DD] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_DE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_DF] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_PICTURE_BOOK_SHELF] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_BOOKSHELF] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_POKEMON_CENTER_BOOKSHELF] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_VASE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_TRASH_CAN] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_SHOP_SHELF] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_BLUEPRINT] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_CABLE_BOX_RESULTS_2] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_WIRELESS_BOX_RESULTS] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_TRAINER_HILL_TIMER] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNKNOWN_CLOSED_DOOR] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_EB] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_EC] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_ED] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_EE] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
[MB_UNUSED_EF] = TILE_ATTRIBUTES(FALSE, FALSE, FALSE),
|
||||
};
|
||||
|
||||
bool8 MetatileBehavior_IsATile(u8 metatileBehavior)
|
||||
|
@ -1,7 +1,7 @@
|
||||
#include "global.h"
|
||||
#include "event_object_movement.h"
|
||||
#include "fieldmap.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "mossdeep_gym.h"
|
||||
#include "script_movement.h"
|
||||
#include "constants/event_object_movement_constants.h"
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "global.h"
|
||||
#include "naming_screen.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "palette.h"
|
||||
#include "task.h"
|
||||
#include "sprite.h"
|
||||
|
@ -205,14 +205,14 @@ void NewGameInitData(void)
|
||||
ScriptContext2_RunNewScript(EventScript_2715DE);
|
||||
ResetMiniGamesResults();
|
||||
copy_strings_to_sav1();
|
||||
SetLilycoveLady();
|
||||
ResetAllApprenticeData();
|
||||
ClearRankingHallRecords();
|
||||
sub_8195E10();
|
||||
sub_801AFD8();
|
||||
sub_800E5AC();
|
||||
sub_81D54BC();
|
||||
ResetContestLinkResults();
|
||||
SetLilycoveLady();
|
||||
ResetAllApprenticeData();
|
||||
ClearRankingHallRecords();
|
||||
sub_8195E10();
|
||||
sub_801AFD8();
|
||||
sub_800E5AC();
|
||||
sub_81D54BC();
|
||||
ResetContestLinkResults();
|
||||
}
|
||||
|
||||
static void ResetMiniGamesResults(void)
|
||||
|
@ -27,7 +27,7 @@
|
||||
#include "link_rfu.h"
|
||||
#include "load_save.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "m4a.h"
|
||||
#include "map_name_popup.h"
|
||||
#include "menu.h"
|
||||
@ -296,15 +296,51 @@ static const u8 sUnusedData[] =
|
||||
|
||||
const struct UCoords32 gDirectionToVectors[] =
|
||||
{
|
||||
{ 0, 0}, // DIR_NONE
|
||||
{ 0, 1}, // DIR_SOUTH
|
||||
{ 0, -1}, // DIR_NORTH
|
||||
{-1, 0}, // DIR_WEST
|
||||
{ 1, 0}, // DIR_EAST
|
||||
{-1, 1}, // DIR_SOUTHWEST
|
||||
{ 1, 1}, // DIR_SOUTHEAST
|
||||
{-1, -1}, // DIR_NORTHWEST
|
||||
{ 1, -1}, // DIR_NORTHEAST
|
||||
[DIR_NONE] =
|
||||
{
|
||||
.x = 0,
|
||||
.y = 0,
|
||||
},
|
||||
[DIR_SOUTH] =
|
||||
{
|
||||
.x = 0,
|
||||
.y = 1,
|
||||
},
|
||||
[DIR_NORTH] =
|
||||
{
|
||||
.x = 0,
|
||||
.y = -1,
|
||||
},
|
||||
[DIR_WEST] =
|
||||
{
|
||||
.x = -1,
|
||||
.y = 0,
|
||||
},
|
||||
[DIR_EAST] =
|
||||
{
|
||||
.x = 1,
|
||||
.y = 0,
|
||||
},
|
||||
[DIR_SOUTHWEST] =
|
||||
{
|
||||
.x = -1,
|
||||
.y = 1,
|
||||
},
|
||||
[DIR_SOUTHEAST] =
|
||||
{
|
||||
.x = 1,
|
||||
.y = 1,
|
||||
},
|
||||
[DIR_NORTHWEST] =
|
||||
{
|
||||
.x = -1,
|
||||
.y = -1,
|
||||
},
|
||||
[DIR_NORTHEAST] =
|
||||
{
|
||||
.x = 1,
|
||||
.y = -1,
|
||||
},
|
||||
};
|
||||
|
||||
static const struct BgTemplate gUnknown_08339DAC[] =
|
||||
|
@ -15,7 +15,7 @@
|
||||
#include "list_menu.h"
|
||||
#include "mail.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "menu.h"
|
||||
#include "menu_helpers.h"
|
||||
#include "overworld.h"
|
||||
|
@ -13,7 +13,7 @@
|
||||
#include "lilycove_lady.h"
|
||||
#include "list_menu.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "menu.h"
|
||||
#include "menu_helpers.h"
|
||||
#include "overworld.h"
|
||||
|
@ -7,7 +7,7 @@
|
||||
#include "gpu_regs.h"
|
||||
#include "graphics.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "menu.h"
|
||||
#include "menu_helpers.h"
|
||||
#include "m4a.h"
|
||||
@ -88,31 +88,31 @@ EWRAM_DATA static struct CompressedSpritePalette sPokeblockSpritePal = {0};
|
||||
// const rom data
|
||||
static const u8 sNatureToMonPokeblockAnim[][2] =
|
||||
{
|
||||
{ 0, 0 }, // HARDY
|
||||
{ 3, 0 }, // LONELY
|
||||
{ 4, 1 }, // BRAVE
|
||||
{ 5, 0 }, // ADAMANT
|
||||
{ 10, 0 }, // NAUGHTY
|
||||
{ 13, 0 }, // BOLD
|
||||
{ 15, 0 }, // DOCILE
|
||||
{ 16, 2 }, // RELAXED
|
||||
{ 18, 0 }, // IMPISH
|
||||
{ 19, 0 }, // LAX
|
||||
{ 20, 0 }, // TIMID
|
||||
{ 25, 0 }, // HASTY
|
||||
{ 27, 3 }, // SERIOUS
|
||||
{ 28, 0 }, // JOLLY
|
||||
{ 29, 0 }, // NAIVE
|
||||
{ 33, 4 }, // MODEST
|
||||
{ 36, 0 }, // MILD
|
||||
{ 37, 0 }, // QUIET
|
||||
{ 39, 0 }, // BASHFUL
|
||||
{ 42, 0 }, // RASH
|
||||
{ 45, 0 }, // CALM
|
||||
{ 46, 5 }, // GENTLE
|
||||
{ 47, 6 }, // SASSY
|
||||
{ 48, 0 }, // CAREFUL
|
||||
{ 53, 0 }, // QUIRKY
|
||||
[NATURE_HARDY] = { 0, 0 },
|
||||
[NATURE_LONELY] = { 3, 0 },
|
||||
[NATURE_BRAVE] = { 4, 1 },
|
||||
[NATURE_ADAMANT] = { 5, 0 },
|
||||
[NATURE_NAUGHTY] = { 10, 0 },
|
||||
[NATURE_BOLD] = { 13, 0 },
|
||||
[NATURE_DOCILE] = { 15, 0 },
|
||||
[NATURE_RELAXED] = { 16, 2 },
|
||||
[NATURE_IMPISH] = { 18, 0 },
|
||||
[NATURE_LAX] = { 19, 0 },
|
||||
[NATURE_TIMID] = { 20, 0 },
|
||||
[NATURE_HASTY] = { 25, 0 },
|
||||
[NATURE_SERIOUS] = { 27, 3 },
|
||||
[NATURE_JOLLY] = { 28, 0 },
|
||||
[NATURE_NAIVE] = { 29, 0 },
|
||||
[NATURE_MODEST] = { 33, 4 },
|
||||
[NATURE_MILD] = { 36, 0 },
|
||||
[NATURE_QUIET] = { 37, 0 },
|
||||
[NATURE_BASHFUL] = { 39, 0 },
|
||||
[NATURE_RASH] = { 42, 0 },
|
||||
[NATURE_CALM] = { 45, 0 },
|
||||
[NATURE_GENTLE] = { 46, 5 },
|
||||
[NATURE_SASSY] = { 47, 6 },
|
||||
[NATURE_CAREFUL] = { 48, 0 },
|
||||
[NATURE_QUIRKY] = { 53, 0 },
|
||||
};
|
||||
|
||||
static const s16 sMonPokeblockAnims[][10] =
|
||||
|
715
src/pokedex.c
715
src/pokedex.c
@ -8,7 +8,7 @@
|
||||
#include "graphics.h"
|
||||
#include "international_string_util.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "menu.h"
|
||||
#include "m4a.h"
|
||||
#include "overworld.h"
|
||||
@ -3577,61 +3577,61 @@ void sub_80BFD0C(u8 a, u16 unused)
|
||||
{
|
||||
asm(".syntax unified\n\
|
||||
push {r4-r7,lr}\n\
|
||||
mov r7, r8\n\
|
||||
push {r7}\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
mov r8, r0\n\
|
||||
movs r0, 0x1\n\
|
||||
bl GetBgTilemapBuffer\n\
|
||||
adds r7, r0, 0\n\
|
||||
movs r1, 0\n\
|
||||
mov r7, r8\n\
|
||||
push {r7}\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
mov r8, r0\n\
|
||||
movs r0, 0x1\n\
|
||||
bl GetBgTilemapBuffer\n\
|
||||
adds r7, r0, 0\n\
|
||||
movs r1, 0\n\
|
||||
_080BFD22:\n\
|
||||
lsls r0, r1, 3\n\
|
||||
subs r0, r1\n\
|
||||
adds r0, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r5, r0, 24\n\
|
||||
movs r3, 0x80\n\
|
||||
lsls r3, 7\n\
|
||||
cmp r1, r8\n\
|
||||
bne _080BFD38\n\
|
||||
movs r3, 0x80\n\
|
||||
lsls r3, 6\n\
|
||||
lsls r0, r1, 3\n\
|
||||
subs r0, r1\n\
|
||||
adds r0, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r5, r0, 24\n\
|
||||
movs r3, 0x80\n\
|
||||
lsls r3, 7\n\
|
||||
cmp r1, r8\n\
|
||||
bne _080BFD38\n\
|
||||
movs r3, 0x80\n\
|
||||
lsls r3, 6\n\
|
||||
_080BFD38:\n\
|
||||
movs r2, 0\n\
|
||||
adds r6, r1, 0x1\n\
|
||||
ldr r4, =0x00000fff\n\
|
||||
movs r2, 0\n\
|
||||
adds r6, r1, 0x1\n\
|
||||
ldr r4, =0x00000fff\n\
|
||||
_080BFD3E:\n\
|
||||
adds r1, r5, r2\n\
|
||||
lsls r1, 1\n\
|
||||
adds r1, r7\n\
|
||||
ldrh r0, [r1]\n\
|
||||
ands r0, r4\n\
|
||||
orrs r0, r3\n\
|
||||
strh r0, [r1]\n\
|
||||
adds r1, 0x40\n\
|
||||
ldrh r0, [r1]\n\
|
||||
ands r0, r4\n\
|
||||
orrs r0, r3\n\
|
||||
strh r0, [r1]\n\
|
||||
adds r0, r2, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r2, r0, 24\n\
|
||||
cmp r2, 0x6\n\
|
||||
bls _080BFD3E\n\
|
||||
lsls r0, r6, 24\n\
|
||||
lsrs r1, r0, 24\n\
|
||||
cmp r1, 0x3\n\
|
||||
bls _080BFD22\n\
|
||||
movs r0, 0x1\n\
|
||||
bl CopyBgTilemapBufferToVram\n\
|
||||
pop {r3}\n\
|
||||
mov r8, r3\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.pool\n\
|
||||
adds r1, r5, r2\n\
|
||||
lsls r1, 1\n\
|
||||
adds r1, r7\n\
|
||||
ldrh r0, [r1]\n\
|
||||
ands r0, r4\n\
|
||||
orrs r0, r3\n\
|
||||
strh r0, [r1]\n\
|
||||
adds r1, 0x40\n\
|
||||
ldrh r0, [r1]\n\
|
||||
ands r0, r4\n\
|
||||
orrs r0, r3\n\
|
||||
strh r0, [r1]\n\
|
||||
adds r0, r2, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r2, r0, 24\n\
|
||||
cmp r2, 0x6\n\
|
||||
bls _080BFD3E\n\
|
||||
lsls r0, r6, 24\n\
|
||||
lsrs r1, r0, 24\n\
|
||||
cmp r1, 0x3\n\
|
||||
bls _080BFD22\n\
|
||||
movs r0, 0x1\n\
|
||||
bl CopyBgTilemapBufferToVram\n\
|
||||
pop {r3}\n\
|
||||
mov r8, r3\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.pool\n\
|
||||
.syntax divided\n");
|
||||
}
|
||||
#endif
|
||||
@ -3667,66 +3667,66 @@ void sub_80BFD7C(u8 a, u16 b)
|
||||
{
|
||||
asm(".syntax unified\n\
|
||||
push {r4-r7,lr}\n\
|
||||
mov r7, r8\n\
|
||||
push {r7}\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
mov r8, r0\n\
|
||||
movs r0, 0x1\n\
|
||||
bl GetBgTilemapBuffer\n\
|
||||
adds r7, r0, 0\n\
|
||||
movs r1, 0\n\
|
||||
mov r7, r8\n\
|
||||
push {r7}\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
mov r8, r0\n\
|
||||
movs r0, 0x1\n\
|
||||
bl GetBgTilemapBuffer\n\
|
||||
adds r7, r0, 0\n\
|
||||
movs r1, 0\n\
|
||||
_080BFD92:\n\
|
||||
lsls r0, r1, 3\n\
|
||||
subs r0, r1\n\
|
||||
adds r0, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
cmp r1, r8\n\
|
||||
beq _080BFDA4\n\
|
||||
cmp r1, 0x3\n\
|
||||
bne _080BFDAA\n\
|
||||
lsls r0, r1, 3\n\
|
||||
subs r0, r1\n\
|
||||
adds r0, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
cmp r1, r8\n\
|
||||
beq _080BFDA4\n\
|
||||
cmp r1, 0x3\n\
|
||||
bne _080BFDAA\n\
|
||||
_080BFDA4:\n\
|
||||
movs r3, 0x80\n\
|
||||
lsls r3, 6\n\
|
||||
b _080BFDAE\n\
|
||||
movs r3, 0x80\n\
|
||||
lsls r3, 6\n\
|
||||
b _080BFDAE\n\
|
||||
_080BFDAA:\n\
|
||||
movs r3, 0x80\n\
|
||||
lsls r3, 7\n\
|
||||
movs r3, 0x80\n\
|
||||
lsls r3, 7\n\
|
||||
_080BFDAE:\n\
|
||||
movs r2, 0\n\
|
||||
adds r5, r1, 0x1\n\
|
||||
ldr r4, =0x00000fff\n\
|
||||
movs r2, 0\n\
|
||||
adds r5, r1, 0x1\n\
|
||||
ldr r4, =0x00000fff\n\
|
||||
_080BFDB4:\n\
|
||||
adds r1, r6, r2\n\
|
||||
lsls r1, 1\n\
|
||||
adds r1, r7\n\
|
||||
ldrh r0, [r1]\n\
|
||||
ands r0, r4\n\
|
||||
orrs r0, r3\n\
|
||||
strh r0, [r1]\n\
|
||||
adds r1, 0x40\n\
|
||||
ldrh r0, [r1]\n\
|
||||
ands r0, r4\n\
|
||||
orrs r0, r3\n\
|
||||
strh r0, [r1]\n\
|
||||
adds r0, r2, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r2, r0, 24\n\
|
||||
cmp r2, 0x6\n\
|
||||
bls _080BFDB4\n\
|
||||
lsls r0, r5, 24\n\
|
||||
lsrs r1, r0, 24\n\
|
||||
cmp r1, 0x3\n\
|
||||
bls _080BFD92\n\
|
||||
movs r0, 0x1\n\
|
||||
bl CopyBgTilemapBufferToVram\n\
|
||||
pop {r3}\n\
|
||||
mov r8, r3\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.pool\n\
|
||||
adds r1, r6, r2\n\
|
||||
lsls r1, 1\n\
|
||||
adds r1, r7\n\
|
||||
ldrh r0, [r1]\n\
|
||||
ands r0, r4\n\
|
||||
orrs r0, r3\n\
|
||||
strh r0, [r1]\n\
|
||||
adds r1, 0x40\n\
|
||||
ldrh r0, [r1]\n\
|
||||
ands r0, r4\n\
|
||||
orrs r0, r3\n\
|
||||
strh r0, [r1]\n\
|
||||
adds r0, r2, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r2, r0, 24\n\
|
||||
cmp r2, 0x6\n\
|
||||
bls _080BFDB4\n\
|
||||
lsls r0, r5, 24\n\
|
||||
lsrs r1, r0, 24\n\
|
||||
cmp r1, 0x3\n\
|
||||
bls _080BFD92\n\
|
||||
movs r0, 0x1\n\
|
||||
bl CopyBgTilemapBufferToVram\n\
|
||||
pop {r3}\n\
|
||||
mov r8, r3\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.pool\n\
|
||||
.syntax divided\n");
|
||||
}
|
||||
#endif
|
||||
@ -4031,216 +4031,216 @@ void sub_80C0460(u16 weight, u8 left, u8 top)
|
||||
{
|
||||
asm(".syntax unified\n\
|
||||
push {r4-r7,lr}\n\
|
||||
mov r7, r10\n\
|
||||
mov r6, r9\n\
|
||||
mov r5, r8\n\
|
||||
push {r5-r7}\n\
|
||||
sub sp, 0x14\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r0, 16\n\
|
||||
lsls r1, 24\n\
|
||||
lsrs r1, 24\n\
|
||||
mov r10, r1\n\
|
||||
lsls r2, 24\n\
|
||||
lsrs r2, 24\n\
|
||||
str r2, [sp, 0x10]\n\
|
||||
ldr r5, =0x000186a0\n\
|
||||
muls r0, r5\n\
|
||||
ldr r1, =0x000011b8\n\
|
||||
bl __divsi3\n\
|
||||
adds r7, r0, 0\n\
|
||||
movs r1, 0xA\n\
|
||||
bl __umodsi3\n\
|
||||
cmp r0, 0x4\n\
|
||||
bls _080C0494\n\
|
||||
adds r7, 0xA\n\
|
||||
mov r7, r10\n\
|
||||
mov r6, r9\n\
|
||||
mov r5, r8\n\
|
||||
push {r5-r7}\n\
|
||||
sub sp, 0x14\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r0, 16\n\
|
||||
lsls r1, 24\n\
|
||||
lsrs r1, 24\n\
|
||||
mov r10, r1\n\
|
||||
lsls r2, 24\n\
|
||||
lsrs r2, 24\n\
|
||||
str r2, [sp, 0x10]\n\
|
||||
ldr r5, =0x000186a0\n\
|
||||
muls r0, r5\n\
|
||||
ldr r1, =0x000011b8\n\
|
||||
bl __divsi3\n\
|
||||
adds r7, r0, 0\n\
|
||||
movs r1, 0xA\n\
|
||||
bl __umodsi3\n\
|
||||
cmp r0, 0x4\n\
|
||||
bls _080C0494\n\
|
||||
adds r7, 0xA\n\
|
||||
_080C0494:\n\
|
||||
movs r0, 0\n\
|
||||
mov r8, r0\n\
|
||||
mov r4, sp\n\
|
||||
adds r0, r7, 0\n\
|
||||
adds r1, r5, 0\n\
|
||||
bl __udivsi3\n\
|
||||
adds r0, 0xA1\n\
|
||||
strb r0, [r4]\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
cmp r0, 0xA1\n\
|
||||
bne _080C04C0\n\
|
||||
movs r6, 0x1\n\
|
||||
mov r1, sp\n\
|
||||
movs r0, 0x77\n\
|
||||
strb r0, [r1]\n\
|
||||
b _080C04C6\n\
|
||||
.pool\n\
|
||||
movs r0, 0\n\
|
||||
mov r8, r0\n\
|
||||
mov r4, sp\n\
|
||||
adds r0, r7, 0\n\
|
||||
adds r1, r5, 0\n\
|
||||
bl __udivsi3\n\
|
||||
adds r0, 0xA1\n\
|
||||
strb r0, [r4]\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
cmp r0, 0xA1\n\
|
||||
bne _080C04C0\n\
|
||||
movs r6, 0x1\n\
|
||||
mov r1, sp\n\
|
||||
movs r0, 0x77\n\
|
||||
strb r0, [r1]\n\
|
||||
b _080C04C6\n\
|
||||
.pool\n\
|
||||
_080C04C0:\n\
|
||||
movs r1, 0x1\n\
|
||||
mov r8, r1\n\
|
||||
movs r6, 0x1\n\
|
||||
movs r1, 0x1\n\
|
||||
mov r8, r1\n\
|
||||
movs r6, 0x1\n\
|
||||
_080C04C6:\n\
|
||||
ldr r1, =0x000186a0\n\
|
||||
adds r0, r7, 0\n\
|
||||
bl __umodsi3\n\
|
||||
adds r7, r0, 0\n\
|
||||
mov r4, sp\n\
|
||||
adds r4, 0x1\n\
|
||||
ldr r1, =0x00002710\n\
|
||||
bl __udivsi3\n\
|
||||
adds r0, 0xA1\n\
|
||||
strb r0, [r4]\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
cmp r0, 0xA1\n\
|
||||
bne _080C0504\n\
|
||||
mov r2, r8\n\
|
||||
cmp r2, 0\n\
|
||||
bne _080C0504\n\
|
||||
adds r1, r6, 0\n\
|
||||
adds r0, r1, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
add r1, sp\n\
|
||||
movs r0, 0x77\n\
|
||||
strb r0, [r1]\n\
|
||||
b _080C050E\n\
|
||||
.pool\n\
|
||||
ldr r1, =0x000186a0\n\
|
||||
adds r0, r7, 0\n\
|
||||
bl __umodsi3\n\
|
||||
adds r7, r0, 0\n\
|
||||
mov r4, sp\n\
|
||||
adds r4, 0x1\n\
|
||||
ldr r1, =0x00002710\n\
|
||||
bl __udivsi3\n\
|
||||
adds r0, 0xA1\n\
|
||||
strb r0, [r4]\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
cmp r0, 0xA1\n\
|
||||
bne _080C0504\n\
|
||||
mov r2, r8\n\
|
||||
cmp r2, 0\n\
|
||||
bne _080C0504\n\
|
||||
adds r1, r6, 0\n\
|
||||
adds r0, r1, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
add r1, sp\n\
|
||||
movs r0, 0x77\n\
|
||||
strb r0, [r1]\n\
|
||||
b _080C050E\n\
|
||||
.pool\n\
|
||||
_080C0504:\n\
|
||||
movs r3, 0x1\n\
|
||||
mov r8, r3\n\
|
||||
adds r0, r6, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
movs r3, 0x1\n\
|
||||
mov r8, r3\n\
|
||||
adds r0, r6, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
_080C050E:\n\
|
||||
ldr r1, =0x00002710\n\
|
||||
adds r0, r7, 0\n\
|
||||
bl __umodsi3\n\
|
||||
adds r7, r0, 0\n\
|
||||
mov r0, sp\n\
|
||||
adds r4, r0, r6\n\
|
||||
movs r1, 0xFA\n\
|
||||
lsls r1, 2\n\
|
||||
adds r0, r7, 0\n\
|
||||
bl __udivsi3\n\
|
||||
adds r0, 0xA1\n\
|
||||
strb r0, [r4]\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
cmp r0, 0xA1\n\
|
||||
bne _080C054C\n\
|
||||
mov r1, r8\n\
|
||||
cmp r1, 0\n\
|
||||
bne _080C054C\n\
|
||||
adds r1, r6, 0\n\
|
||||
adds r0, r1, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
add r1, sp\n\
|
||||
movs r0, 0x77\n\
|
||||
strb r0, [r1]\n\
|
||||
b _080C0552\n\
|
||||
.pool\n\
|
||||
ldr r1, =0x00002710\n\
|
||||
adds r0, r7, 0\n\
|
||||
bl __umodsi3\n\
|
||||
adds r7, r0, 0\n\
|
||||
mov r0, sp\n\
|
||||
adds r4, r0, r6\n\
|
||||
movs r1, 0xFA\n\
|
||||
lsls r1, 2\n\
|
||||
adds r0, r7, 0\n\
|
||||
bl __udivsi3\n\
|
||||
adds r0, 0xA1\n\
|
||||
strb r0, [r4]\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
cmp r0, 0xA1\n\
|
||||
bne _080C054C\n\
|
||||
mov r1, r8\n\
|
||||
cmp r1, 0\n\
|
||||
bne _080C054C\n\
|
||||
adds r1, r6, 0\n\
|
||||
adds r0, r1, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
add r1, sp\n\
|
||||
movs r0, 0x77\n\
|
||||
strb r0, [r1]\n\
|
||||
b _080C0552\n\
|
||||
.pool\n\
|
||||
_080C054C:\n\
|
||||
adds r0, r6, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
adds r0, r6, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
_080C0552:\n\
|
||||
movs r1, 0xFA\n\
|
||||
lsls r1, 2\n\
|
||||
adds r0, r7, 0\n\
|
||||
bl __umodsi3\n\
|
||||
adds r7, r0, 0\n\
|
||||
adds r1, r6, 0\n\
|
||||
adds r0, r1, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
adds r5, r6, 0\n\
|
||||
mov r2, sp\n\
|
||||
adds r4, r2, r1\n\
|
||||
adds r0, r7, 0\n\
|
||||
movs r1, 0x64\n\
|
||||
bl __udivsi3\n\
|
||||
adds r0, 0xA1\n\
|
||||
movs r3, 0\n\
|
||||
mov r9, r3\n\
|
||||
strb r0, [r4]\n\
|
||||
adds r0, r7, 0\n\
|
||||
movs r1, 0x64\n\
|
||||
bl __umodsi3\n\
|
||||
adds r7, r0, 0\n\
|
||||
adds r0, r5, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
adds r1, r6, 0\n\
|
||||
mov r2, sp\n\
|
||||
adds r0, r2, r5\n\
|
||||
movs r3, 0xAD\n\
|
||||
mov r8, r3\n\
|
||||
mov r2, r8\n\
|
||||
strb r2, [r0]\n\
|
||||
adds r0, r1, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
adds r5, r6, 0\n\
|
||||
mov r3, sp\n\
|
||||
adds r4, r3, r1\n\
|
||||
adds r0, r7, 0\n\
|
||||
movs r1, 0xA\n\
|
||||
bl __udivsi3\n\
|
||||
adds r0, 0xA1\n\
|
||||
strb r0, [r4]\n\
|
||||
adds r0, r5, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
adds r1, r6, 0\n\
|
||||
mov r2, sp\n\
|
||||
adds r0, r2, r5\n\
|
||||
mov r3, r9\n\
|
||||
strb r3, [r0]\n\
|
||||
adds r0, r1, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
adds r2, r6, 0\n\
|
||||
add r1, sp\n\
|
||||
movs r0, 0xE0\n\
|
||||
strb r0, [r1]\n\
|
||||
adds r0, r2, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
adds r3, r6, 0\n\
|
||||
mov r0, sp\n\
|
||||
adds r1, r0, r2\n\
|
||||
movs r0, 0xD6\n\
|
||||
strb r0, [r1]\n\
|
||||
adds r0, r3, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
adds r2, r6, 0\n\
|
||||
mov r0, sp\n\
|
||||
adds r1, r0, r3\n\
|
||||
movs r0, 0xE7\n\
|
||||
strb r0, [r1]\n\
|
||||
adds r0, r2, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
mov r3, sp\n\
|
||||
adds r1, r3, r2\n\
|
||||
mov r2, r8\n\
|
||||
strb r2, [r1]\n\
|
||||
adds r1, r3, r0\n\
|
||||
movs r0, 0xFF\n\
|
||||
strb r0, [r1]\n\
|
||||
mov r0, sp\n\
|
||||
mov r1, r10\n\
|
||||
ldr r2, [sp, 0x10]\n\
|
||||
bl sub_80BE8DC\n\
|
||||
add sp, 0x14\n\
|
||||
pop {r3-r5}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
mov r10, r5\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
movs r1, 0xFA\n\
|
||||
lsls r1, 2\n\
|
||||
adds r0, r7, 0\n\
|
||||
bl __umodsi3\n\
|
||||
adds r7, r0, 0\n\
|
||||
adds r1, r6, 0\n\
|
||||
adds r0, r1, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
adds r5, r6, 0\n\
|
||||
mov r2, sp\n\
|
||||
adds r4, r2, r1\n\
|
||||
adds r0, r7, 0\n\
|
||||
movs r1, 0x64\n\
|
||||
bl __udivsi3\n\
|
||||
adds r0, 0xA1\n\
|
||||
movs r3, 0\n\
|
||||
mov r9, r3\n\
|
||||
strb r0, [r4]\n\
|
||||
adds r0, r7, 0\n\
|
||||
movs r1, 0x64\n\
|
||||
bl __umodsi3\n\
|
||||
adds r7, r0, 0\n\
|
||||
adds r0, r5, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
adds r1, r6, 0\n\
|
||||
mov r2, sp\n\
|
||||
adds r0, r2, r5\n\
|
||||
movs r3, 0xAD\n\
|
||||
mov r8, r3\n\
|
||||
mov r2, r8\n\
|
||||
strb r2, [r0]\n\
|
||||
adds r0, r1, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
adds r5, r6, 0\n\
|
||||
mov r3, sp\n\
|
||||
adds r4, r3, r1\n\
|
||||
adds r0, r7, 0\n\
|
||||
movs r1, 0xA\n\
|
||||
bl __udivsi3\n\
|
||||
adds r0, 0xA1\n\
|
||||
strb r0, [r4]\n\
|
||||
adds r0, r5, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
adds r1, r6, 0\n\
|
||||
mov r2, sp\n\
|
||||
adds r0, r2, r5\n\
|
||||
mov r3, r9\n\
|
||||
strb r3, [r0]\n\
|
||||
adds r0, r1, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
adds r2, r6, 0\n\
|
||||
add r1, sp\n\
|
||||
movs r0, 0xE0\n\
|
||||
strb r0, [r1]\n\
|
||||
adds r0, r2, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
adds r3, r6, 0\n\
|
||||
mov r0, sp\n\
|
||||
adds r1, r0, r2\n\
|
||||
movs r0, 0xD6\n\
|
||||
strb r0, [r1]\n\
|
||||
adds r0, r3, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
adds r2, r6, 0\n\
|
||||
mov r0, sp\n\
|
||||
adds r1, r0, r3\n\
|
||||
movs r0, 0xE7\n\
|
||||
strb r0, [r1]\n\
|
||||
adds r0, r2, 0x1\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
mov r3, sp\n\
|
||||
adds r1, r3, r2\n\
|
||||
mov r2, r8\n\
|
||||
strb r2, [r1]\n\
|
||||
adds r1, r3, r0\n\
|
||||
movs r0, 0xFF\n\
|
||||
strb r0, [r1]\n\
|
||||
mov r0, sp\n\
|
||||
mov r1, r10\n\
|
||||
ldr r2, [sp, 0x10]\n\
|
||||
bl sub_80BE8DC\n\
|
||||
add sp, 0x14\n\
|
||||
pop {r3-r5}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
mov r10, r5\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.syntax divided\n");
|
||||
}
|
||||
#endif
|
||||
@ -4763,7 +4763,6 @@ int sub_80C0F30(u8 dexMode, u8 sortMode, u8 abcGroup, u8 bodyColor, u8 type1, u8
|
||||
sPokedexView->pokedexList[i].dexNum = 0xFFFF;
|
||||
sPokedexView->pokedexList[i].seen = FALSE;
|
||||
sPokedexView->pokedexList[i].owned = FALSE;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -5234,54 +5233,54 @@ void sub_80C1D98(u8 a, u8 b, u8 c, u8 d)
|
||||
{
|
||||
asm(".syntax unified\n\
|
||||
push {r4-r7,lr}\n\
|
||||
mov r7, r8\n\
|
||||
push {r7}\n\
|
||||
adds r4, r3, 0\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
lsls r1, 24\n\
|
||||
lsrs r1, 24\n\
|
||||
mov r8, r1\n\
|
||||
lsls r2, 24\n\
|
||||
lsrs r5, r2, 24\n\
|
||||
lsls r4, 24\n\
|
||||
lsrs r4, 24\n\
|
||||
movs r0, 0x3\n\
|
||||
bl GetBgTilemapBuffer\n\
|
||||
adds r2, r0, 0\n\
|
||||
movs r3, 0\n\
|
||||
cmp r3, r4\n\
|
||||
bcs _080C1DEC\n\
|
||||
lsls r0, r5, 6\n\
|
||||
adds r7, r0, r2\n\
|
||||
ldr r5, =0x00000fff\n\
|
||||
lsls r2, r6, 12\n\
|
||||
mov r7, r8\n\
|
||||
push {r7}\n\
|
||||
adds r4, r3, 0\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r6, r0, 24\n\
|
||||
lsls r1, 24\n\
|
||||
lsrs r1, 24\n\
|
||||
mov r8, r1\n\
|
||||
lsls r2, 24\n\
|
||||
lsrs r5, r2, 24\n\
|
||||
lsls r4, 24\n\
|
||||
lsrs r4, 24\n\
|
||||
movs r0, 0x3\n\
|
||||
bl GetBgTilemapBuffer\n\
|
||||
adds r2, r0, 0\n\
|
||||
movs r3, 0\n\
|
||||
cmp r3, r4\n\
|
||||
bcs _080C1DEC\n\
|
||||
lsls r0, r5, 6\n\
|
||||
adds r7, r0, r2\n\
|
||||
ldr r5, =0x00000fff\n\
|
||||
lsls r2, r6, 12\n\
|
||||
_080C1DC8:\n\
|
||||
mov r0, r8\n\
|
||||
adds r1, r0, r3\n\
|
||||
lsls r1, 1\n\
|
||||
adds r1, r7\n\
|
||||
ldrh r0, [r1]\n\
|
||||
ands r0, r5\n\
|
||||
orrs r0, r2\n\
|
||||
strh r0, [r1]\n\
|
||||
adds r1, 0x40\n\
|
||||
ldrh r0, [r1]\n\
|
||||
ands r0, r5\n\
|
||||
orrs r0, r2\n\
|
||||
strh r0, [r1]\n\
|
||||
adds r0, r3, 0x1\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r3, r0, 16\n\
|
||||
cmp r3, r4\n\
|
||||
bcc _080C1DC8\n\
|
||||
mov r0, r8\n\
|
||||
adds r1, r0, r3\n\
|
||||
lsls r1, 1\n\
|
||||
adds r1, r7\n\
|
||||
ldrh r0, [r1]\n\
|
||||
ands r0, r5\n\
|
||||
orrs r0, r2\n\
|
||||
strh r0, [r1]\n\
|
||||
adds r1, 0x40\n\
|
||||
ldrh r0, [r1]\n\
|
||||
ands r0, r5\n\
|
||||
orrs r0, r2\n\
|
||||
strh r0, [r1]\n\
|
||||
adds r0, r3, 0x1\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r3, r0, 16\n\
|
||||
cmp r3, r4\n\
|
||||
bcc _080C1DC8\n\
|
||||
_080C1DEC:\n\
|
||||
pop {r3}\n\
|
||||
mov r8, r3\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.pool\n\
|
||||
pop {r3}\n\
|
||||
mov r8, r3\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.pool\n\
|
||||
.syntax divided\n");
|
||||
}
|
||||
#endif
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include "gpu_regs.h"
|
||||
#include "graphics.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "menu.h"
|
||||
#include "overworld.h"
|
||||
#include "palette.h"
|
||||
|
@ -2,7 +2,7 @@
|
||||
#include "bg.h"
|
||||
#include "m4a.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "palette.h"
|
||||
#include "pokedex_cry_screen.h"
|
||||
#include "sound.h"
|
||||
|
1666
src/pokemon.c
1666
src/pokemon.c
File diff suppressed because it is too large
Load Diff
@ -786,31 +786,31 @@ static const u8 sBackAnimationIds[] =
|
||||
|
||||
static const u8 sBackAnimNatureModTable[] =
|
||||
{
|
||||
0x00, // NATURE_HARDY
|
||||
0x02, // NATURE_LONELY
|
||||
0x00, // NATURE_BRAVE
|
||||
0x00, // NATURE_ADAMANT
|
||||
0x00, // NATURE_NAUGHTY
|
||||
0x01, // NATURE_BOLD
|
||||
0x01, // NATURE_DOCILE
|
||||
0x01, // NATURE_RELAXED
|
||||
0x00, // NATURE_IMPISH
|
||||
0x01, // NATURE_LAX
|
||||
0x02, // NATURE_TIMID
|
||||
0x00, // NATURE_HASTY
|
||||
0x01, // NATURE_SERIOUS
|
||||
0x00, // NATURE_JOLLY
|
||||
0x00, // NATURE_NAIVE
|
||||
0x02, // NATURE_MODEST
|
||||
0x02, // NATURE_MILD
|
||||
0x02, // NATURE_QUIET
|
||||
0x02, // NATURE_BASHFUL
|
||||
0x01, // NATURE_RASH
|
||||
0x01, // NATURE_CALM
|
||||
0x02, // NATURE_GENTLE
|
||||
0x01, // NATURE_SASSY
|
||||
0x02, // NATURE_CAREFUL
|
||||
0x01, // NATURE_QUIRKY
|
||||
[NATURE_HARDY] = 0x00,
|
||||
[NATURE_LONELY] = 0x02,
|
||||
[NATURE_BRAVE] = 0x00,
|
||||
[NATURE_ADAMANT] = 0x00,
|
||||
[NATURE_NAUGHTY] = 0x00,
|
||||
[NATURE_BOLD] = 0x01,
|
||||
[NATURE_DOCILE] = 0x01,
|
||||
[NATURE_RELAXED] = 0x01,
|
||||
[NATURE_IMPISH] = 0x00,
|
||||
[NATURE_LAX] = 0x01,
|
||||
[NATURE_TIMID] = 0x02,
|
||||
[NATURE_HASTY] = 0x00,
|
||||
[NATURE_SERIOUS] = 0x01,
|
||||
[NATURE_JOLLY] = 0x00,
|
||||
[NATURE_NAIVE] = 0x00,
|
||||
[NATURE_MODEST] = 0x02,
|
||||
[NATURE_MILD] = 0x02,
|
||||
[NATURE_QUIET] = 0x02,
|
||||
[NATURE_BASHFUL] = 0x02,
|
||||
[NATURE_RASH] = 0x01,
|
||||
[NATURE_CALM] = 0x01,
|
||||
[NATURE_GENTLE] = 0x02,
|
||||
[NATURE_SASSY] = 0x01,
|
||||
[NATURE_CAREFUL] = 0x02,
|
||||
[NATURE_QUIRKY] = 0x01,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd sSpriteAffineAnim_860AD48[] =
|
||||
@ -1164,67 +1164,67 @@ NAKED
|
||||
static void sub_817F9F4(struct Sprite *sprite)
|
||||
{
|
||||
asm(".syntax unified\n\
|
||||
push {r4,lr}\n\
|
||||
adds r4, r0, 0\n\
|
||||
movs r0, 0x32\n\
|
||||
ldrsh r1, [r4, r0]\n\
|
||||
movs r0, 0xC0\n\
|
||||
lsls r0, 1\n\
|
||||
cmp r1, r0\n\
|
||||
ble _0817FA14\n\
|
||||
ldr r0, =SpriteCB_SetDummyOnAnimEnd\n\
|
||||
str r0, [r4, 0x1C]\n\
|
||||
movs r0, 0\n\
|
||||
strh r0, [r4, 0x24]\n\
|
||||
b _0817FA5E\n\
|
||||
.pool\n\
|
||||
push {r4,lr}\n\
|
||||
adds r4, r0, 0\n\
|
||||
movs r0, 0x32\n\
|
||||
ldrsh r1, [r4, r0]\n\
|
||||
movs r0, 0xC0\n\
|
||||
lsls r0, 1\n\
|
||||
cmp r1, r0\n\
|
||||
ble _0817FA14\n\
|
||||
ldr r0, =SpriteCB_SetDummyOnAnimEnd\n\
|
||||
str r0, [r4, 0x1C]\n\
|
||||
movs r0, 0\n\
|
||||
strh r0, [r4, 0x24]\n\
|
||||
b _0817FA5E\n\
|
||||
.pool\n\
|
||||
_0817FA14:\n\
|
||||
adds r0, r1, 0\n\
|
||||
cmp r1, 0\n\
|
||||
bge _0817FA1C\n\
|
||||
adds r0, 0x7F\n\
|
||||
adds r0, r1, 0\n\
|
||||
cmp r1, 0\n\
|
||||
bge _0817FA1C\n\
|
||||
adds r0, 0x7F\n\
|
||||
_0817FA1C:\n\
|
||||
asrs r2, r0, 7\n\
|
||||
lsls r0, r2, 16\n\
|
||||
asrs r0, 16\n\
|
||||
cmp r0, 0\n\
|
||||
blt _0817FA60\n\
|
||||
cmp r0, 0x1\n\
|
||||
ble _0817FA48\n\
|
||||
cmp r0, 0x3\n\
|
||||
bgt _0817FA60\n\
|
||||
ldr r2, =0xffffff00\n\
|
||||
adds r1, r2\n\
|
||||
lsls r0, r1, 16\n\
|
||||
asrs r0, 16\n\
|
||||
movs r1, 0x2E\n\
|
||||
ldrsh r2, [r4, r1]\n\
|
||||
lsls r1, r2, 1\n\
|
||||
adds r1, r2\n\
|
||||
lsls r1, 16\n\
|
||||
b _0817FA56\n\
|
||||
.pool\n\
|
||||
asrs r2, r0, 7\n\
|
||||
lsls r0, r2, 16\n\
|
||||
asrs r0, 16\n\
|
||||
cmp r0, 0\n\
|
||||
blt _0817FA60\n\
|
||||
cmp r0, 0x1\n\
|
||||
ble _0817FA48\n\
|
||||
cmp r0, 0x3\n\
|
||||
bgt _0817FA60\n\
|
||||
ldr r2, =0xffffff00\n\
|
||||
adds r1, r2\n\
|
||||
lsls r0, r1, 16\n\
|
||||
asrs r0, 16\n\
|
||||
movs r1, 0x2E\n\
|
||||
ldrsh r2, [r4, r1]\n\
|
||||
lsls r1, r2, 1\n\
|
||||
adds r1, r2\n\
|
||||
lsls r1, 16\n\
|
||||
b _0817FA56\n\
|
||||
.pool\n\
|
||||
_0817FA48:\n\
|
||||
lsls r0, r2, 7\n\
|
||||
subs r0, r1, r0\n\
|
||||
lsls r0, 16\n\
|
||||
asrs r0, 16\n\
|
||||
movs r2, 0x2E\n\
|
||||
ldrsh r1, [r4, r2]\n\
|
||||
lsls r1, 17\n\
|
||||
lsls r0, r2, 7\n\
|
||||
subs r0, r1, r0\n\
|
||||
lsls r0, 16\n\
|
||||
asrs r0, 16\n\
|
||||
movs r2, 0x2E\n\
|
||||
ldrsh r1, [r4, r2]\n\
|
||||
lsls r1, 17\n\
|
||||
_0817FA56:\n\
|
||||
asrs r1, 16\n\
|
||||
bl Sin\n\
|
||||
negs r0, r0\n\
|
||||
asrs r1, 16\n\
|
||||
bl Sin\n\
|
||||
negs r0, r0\n\
|
||||
_0817FA5E:\n\
|
||||
strh r0, [r4, 0x26]\n\
|
||||
strh r0, [r4, 0x26]\n\
|
||||
_0817FA60:\n\
|
||||
ldrh r0, [r4, 0x32]\n\
|
||||
adds r0, 0xC\n\
|
||||
strh r0, [r4, 0x32]\n\
|
||||
pop {r4}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
ldrh r0, [r4, 0x32]\n\
|
||||
adds r0, 0xC\n\
|
||||
strh r0, [r4, 0x32]\n\
|
||||
pop {r4}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.syntax divided");
|
||||
}
|
||||
|
||||
|
@ -469,446 +469,446 @@ const u8 *const gMonIconTable[] =
|
||||
|
||||
const u8 gMonIconPaletteIndices[] =
|
||||
{
|
||||
0, // ??????????
|
||||
1, // Bulbasaur
|
||||
1, // Ivysaur
|
||||
1, // Venusaur
|
||||
0, // Charmander
|
||||
0, // Charmeleon
|
||||
0, // Charizard
|
||||
0, // Squirtle
|
||||
2, // Wartortle
|
||||
2, // Blastoise
|
||||
1, // Caterpie
|
||||
1, // Metapod
|
||||
0, // Butterfree
|
||||
1, // Weedle
|
||||
2, // Kakuna
|
||||
2, // Beedrill
|
||||
0, // Pidgey
|
||||
0, // Pidgeotto
|
||||
0, // Pidgeot
|
||||
2, // Rattata
|
||||
1, // Raticate
|
||||
0, // Spearow
|
||||
0, // Fearow
|
||||
2, // Ekans
|
||||
2, // Arbok
|
||||
2, // Pikachu
|
||||
0, // Raichu
|
||||
2, // Sandshrew
|
||||
2, // Sandslash
|
||||
2, // Nidoran♀
|
||||
2, // Nidorina
|
||||
2, // Nidoqueen
|
||||
2, // Nidoran♂
|
||||
2, // Nidorino
|
||||
2, // Nidoking
|
||||
0, // Clefairy
|
||||
0, // Clefable
|
||||
2, // Vulpix
|
||||
1, // Ninetales
|
||||
0, // Jigglypuff
|
||||
0, // Wigglytuff
|
||||
2, // Zubat
|
||||
2, // Golbat
|
||||
1, // Oddish
|
||||
0, // Gloom
|
||||
0, // Vileplume
|
||||
0, // Paras
|
||||
0, // Parasect
|
||||
0, // Venonat
|
||||
2, // Venomoth
|
||||
2, // Diglett
|
||||
2, // Dugtrio
|
||||
1, // Meowth
|
||||
1, // Persian
|
||||
1, // Psyduck
|
||||
2, // Golduck
|
||||
1, // Mankey
|
||||
2, // Primeape
|
||||
0, // Growlithe
|
||||
0, // Arcanine
|
||||
0, // Poliwag
|
||||
0, // Poliwhirl
|
||||
0, // Poliwrath
|
||||
2, // Abra
|
||||
2, // Kadabra
|
||||
2, // Alakazam
|
||||
0, // Machop
|
||||
2, // Machoke
|
||||
0, // Machamp
|
||||
1, // Bellsprout
|
||||
1, // Weepinbell
|
||||
1, // Victreebel
|
||||
2, // Tentacool
|
||||
2, // Tentacruel
|
||||
1, // Geodude
|
||||
1, // Graveler
|
||||
1, // Golem
|
||||
0, // Ponyta
|
||||
0, // Rapidash
|
||||
0, // Slowpoke
|
||||
0, // Slowbro
|
||||
0, // Magnemite
|
||||
0, // Magneton
|
||||
1, // Farfetch'd
|
||||
2, // Doduo
|
||||
2, // Dodrio
|
||||
2, // Seel
|
||||
2, // Dewgong
|
||||
2, // Grimer
|
||||
2, // Muk
|
||||
2, // Shellder
|
||||
2, // Cloyster
|
||||
2, // Gastly
|
||||
2, // Haunter
|
||||
2, // Gengar
|
||||
2, // Onix
|
||||
2, // Drowzee
|
||||
1, // Hypno
|
||||
2, // Krabby
|
||||
2, // Kingler
|
||||
0, // Voltorb
|
||||
0, // Electrode
|
||||
0, // Exeggcute
|
||||
1, // Exeggutor
|
||||
1, // Cubone
|
||||
1, // Marowak
|
||||
2, // Hitmonlee
|
||||
2, // Hitmonchan
|
||||
1, // Lickitung
|
||||
2, // Koffing
|
||||
2, // Weezing
|
||||
1, // Rhyhorn
|
||||
1, // Rhydon
|
||||
0, // Chansey
|
||||
0, // Tangela
|
||||
1, // Kangaskhan
|
||||
0, // Horsea
|
||||
0, // Seadra
|
||||
0, // Goldeen
|
||||
0, // Seaking
|
||||
2, // Staryu
|
||||
2, // Starmie
|
||||
0, // Mr. mime
|
||||
1, // Scyther
|
||||
2, // Jynx
|
||||
1, // Electabuzz
|
||||
0, // Magmar
|
||||
2, // Pinsir
|
||||
2, // Tauros
|
||||
0, // Magikarp
|
||||
0, // Gyarados
|
||||
2, // Lapras
|
||||
2, // Ditto
|
||||
2, // Eevee
|
||||
0, // Vaporeon
|
||||
0, // Jolteon
|
||||
0, // Flareon
|
||||
0, // Porygon
|
||||
0, // Omanyte
|
||||
0, // Omastar
|
||||
2, // Kabuto
|
||||
2, // Kabutops
|
||||
0, // Aerodactyl
|
||||
1, // Snorlax
|
||||
0, // Articuno
|
||||
0, // Zapdos
|
||||
0, // Moltres
|
||||
0, // Dratini
|
||||
0, // Dragonair
|
||||
2, // Dragonite
|
||||
2, // Mewtwo
|
||||
0, // Mew
|
||||
1, // Chikorita
|
||||
1, // Bayleef
|
||||
1, // Meganium
|
||||
1, // Cyndaquil
|
||||
1, // Quilava
|
||||
1, // Typhlosion
|
||||
2, // Totodile
|
||||
2, // Croconaw
|
||||
2, // Feraligatr
|
||||
2, // Sentret
|
||||
2, // Furret
|
||||
2, // Hoothoot
|
||||
2, // Noctowl
|
||||
0, // Ledyba
|
||||
0, // Ledian
|
||||
1, // Spinarak
|
||||
0, // Ariados
|
||||
2, // Crobat
|
||||
2, // Chinchou
|
||||
0, // Lanturn
|
||||
0, // Pichu
|
||||
0, // Cleffa
|
||||
1, // Igglybuff
|
||||
2, // Togepi
|
||||
2, // Togetic
|
||||
0, // Natu
|
||||
0, // Xatu
|
||||
2, // Mareep
|
||||
0, // Flaaffy
|
||||
0, // Ampharos
|
||||
1, // Bellossom
|
||||
2, // Marill
|
||||
2, // Azumarill
|
||||
1, // Sudowoodo
|
||||
1, // Politoed
|
||||
1, // Hoppip
|
||||
1, // Skiploom
|
||||
2, // Jumpluff
|
||||
2, // Aipom
|
||||
1, // Sunkern
|
||||
1, // Sunflora
|
||||
1, // Yanma
|
||||
0, // Wooper
|
||||
0, // Quagsire
|
||||
2, // Espeon
|
||||
2, // Umbreon
|
||||
2, // Murkrow
|
||||
0, // Slowking
|
||||
0, // Misdreavus
|
||||
0, // Unown A
|
||||
0, // Wobbuffet
|
||||
1, // Girafarig
|
||||
0, // Pineco
|
||||
2, // Forretress
|
||||
2, // Dunsparce
|
||||
2, // Gligar
|
||||
0, // Steelix
|
||||
0, // Snubbull
|
||||
2, // Granbull
|
||||
0, // Qwilfish
|
||||
0, // Scizor
|
||||
1, // Shuckle
|
||||
2, // Heracross
|
||||
0, // Sneasel
|
||||
0, // Teddiursa
|
||||
2, // Ursaring
|
||||
0, // Slugma
|
||||
0, // Magcargo
|
||||
2, // Swinub
|
||||
2, // Piloswine
|
||||
0, // Corsola
|
||||
0, // Remoraid
|
||||
0, // Octillery
|
||||
0, // Delibird
|
||||
2, // Mantine
|
||||
0, // Skarmory
|
||||
0, // Houndour
|
||||
0, // Houndoom
|
||||
0, // Kingdra
|
||||
0, // Phanpy
|
||||
0, // Donphan
|
||||
0, // Porygon2
|
||||
2, // Stantler
|
||||
1, // Smeargle
|
||||
2, // Tyrogue
|
||||
2, // Hitmontop
|
||||
1, // Smoochum
|
||||
1, // Elekid
|
||||
1, // Magby
|
||||
1, // Miltank
|
||||
1, // Blissey
|
||||
0, // Raikou
|
||||
2, // Entei
|
||||
0, // Suicune
|
||||
1, // Larvitar
|
||||
0, // Pupitar
|
||||
1, // Tyranitar
|
||||
0, // Lugia
|
||||
1, // Ho-Oh
|
||||
1, // Celebi
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
0, // ?
|
||||
1, // Treecko
|
||||
0, // Grovyle
|
||||
1, // Sceptile
|
||||
0, // Torchic
|
||||
0, // Combusken
|
||||
0, // Blaziken
|
||||
0, // Mudkip
|
||||
0, // Marshtomp
|
||||
0, // Swampert
|
||||
2, // Poochyena
|
||||
2, // Mightyena
|
||||
2, // Zigzagoon
|
||||
2, // Linoone
|
||||
0, // Wurmple
|
||||
2, // Silcoon
|
||||
0, // Beautifly
|
||||
2, // Cascoon
|
||||
1, // Dustox
|
||||
1, // Lotad
|
||||
1, // Lombre
|
||||
1, // Ludicolo
|
||||
1, // Seedot
|
||||
1, // Nuzleaf
|
||||
0, // Shiftry
|
||||
1, // Nincada
|
||||
1, // Ninjask
|
||||
1, // Shedinja
|
||||
2, // Taillow
|
||||
2, // Swellow
|
||||
1, // Shroomish
|
||||
1, // Breloom
|
||||
1, // Spinda
|
||||
0, // Wingull
|
||||
0, // Pelipper
|
||||
2, // Surskit
|
||||
0, // Masquerain
|
||||
2, // Wailmer
|
||||
0, // Wailord
|
||||
0, // Skitty
|
||||
2, // Delcatty
|
||||
1, // Kecleon
|
||||
1, // Baltoy
|
||||
0, // Claydol
|
||||
0, // Nosepass
|
||||
1, // Torkoal
|
||||
2, // Sableye
|
||||
0, // Barboach
|
||||
0, // Whiscash
|
||||
0, // Luvdisc
|
||||
0, // Corphish
|
||||
0, // Crawdaunt
|
||||
2, // Feebas
|
||||
0, // Milotic
|
||||
0, // Carvanha
|
||||
0, // Sharpedo
|
||||
1, // Trapinch
|
||||
1, // Vibrava
|
||||
1, // Flygon
|
||||
2, // Makuhita
|
||||
1, // Hariyama
|
||||
1, // Electrike
|
||||
0, // Manectric
|
||||
1, // Numel
|
||||
0, // Camerupt
|
||||
2, // Spheal
|
||||
2, // Sealeo
|
||||
0, // Walrein
|
||||
1, // Cacnea
|
||||
1, // Cacturne
|
||||
2, // Snorunt
|
||||
0, // Glalie
|
||||
1, // Lunatone
|
||||
0, // Solrock
|
||||
2, // Azurill
|
||||
0, // Spoink
|
||||
2, // Grumpig
|
||||
0, // Plusle
|
||||
0, // Minun
|
||||
2, // Mawile
|
||||
0, // Meditite
|
||||
0, // Medicham
|
||||
0, // Swablu
|
||||
0, // Altaria
|
||||
0, // Wynaut
|
||||
0, // Duskull
|
||||
0, // Dusclops
|
||||
0, // Roselia
|
||||
2, // Slakoth
|
||||
2, // Vigoroth
|
||||
1, // Slaking
|
||||
1, // Gulpin
|
||||
2, // Swalot
|
||||
1, // Tropius
|
||||
0, // Whismur
|
||||
2, // Loudred
|
||||
2, // Exploud
|
||||
0, // Clamperl
|
||||
0, // Huntail
|
||||
0, // Gorebyss
|
||||
0, // Absol
|
||||
0, // Shuppet
|
||||
0, // Banette
|
||||
2, // Seviper
|
||||
0, // Zangoose
|
||||
1, // Relicanth
|
||||
2, // Aron
|
||||
2, // Lairon
|
||||
2, // Aggron
|
||||
0, // Castform
|
||||
0, // Volbeat
|
||||
2, // Illumise
|
||||
2, // Lileep
|
||||
0, // Cradily
|
||||
0, // Anorith
|
||||
0, // Armaldo
|
||||
1, // Ralts
|
||||
1, // Kirlia
|
||||
1, // Gardevoir
|
||||
2, // Bagon
|
||||
2, // Shelgon
|
||||
0, // Salamence
|
||||
0, // Beldum
|
||||
0, // Metang
|
||||
0, // Metagross
|
||||
2, // Regirock
|
||||
2, // Regice
|
||||
2, // Registeel
|
||||
2, // Kyogre
|
||||
0, // Groudon
|
||||
1, // Rayquaza
|
||||
0, // Latias
|
||||
2, // Latios
|
||||
0, // Jirachi
|
||||
0, // Deoxys
|
||||
0, // Chimecho
|
||||
1, // Egg
|
||||
0, // Unown B
|
||||
0, // Unown C
|
||||
0, // Unown D
|
||||
0, // Unown E
|
||||
0, // Unown F
|
||||
0, // Unown G
|
||||
0, // Unown H
|
||||
0, // Unown I
|
||||
0, // Unown J
|
||||
0, // Unown K
|
||||
0, // Unown L
|
||||
0, // Unown M
|
||||
0, // Unown N
|
||||
0, // Unown O
|
||||
0, // Unown P
|
||||
0, // Unown Q
|
||||
0, // Unown R
|
||||
0, // Unown S
|
||||
0, // Unown T
|
||||
0, // Unown U
|
||||
0, // Unown V
|
||||
0, // Unown W
|
||||
0, // Unown X
|
||||
0, // Unown Y
|
||||
0, // Unown Z
|
||||
0, // Unown Exclamation Mark
|
||||
0, // Unown Question Mark
|
||||
[SPECIES_NONE] = 0,
|
||||
[SPECIES_BULBASAUR] = 1,
|
||||
[SPECIES_IVYSAUR] = 1,
|
||||
[SPECIES_VENUSAUR] = 1,
|
||||
[SPECIES_CHARMANDER] = 0,
|
||||
[SPECIES_CHARMELEON] = 0,
|
||||
[SPECIES_CHARIZARD] = 0,
|
||||
[SPECIES_SQUIRTLE] = 0,
|
||||
[SPECIES_WARTORTLE] = 2,
|
||||
[SPECIES_BLASTOISE] = 2,
|
||||
[SPECIES_CATERPIE] = 1,
|
||||
[SPECIES_METAPOD] = 1,
|
||||
[SPECIES_BUTTERFREE] = 0,
|
||||
[SPECIES_WEEDLE] = 1,
|
||||
[SPECIES_KAKUNA] = 2,
|
||||
[SPECIES_BEEDRILL] = 2,
|
||||
[SPECIES_PIDGEY] = 0,
|
||||
[SPECIES_PIDGEOTTO] = 0,
|
||||
[SPECIES_PIDGEOT] = 0,
|
||||
[SPECIES_RATTATA] = 2,
|
||||
[SPECIES_RATICATE] = 1,
|
||||
[SPECIES_SPEAROW] = 0,
|
||||
[SPECIES_FEAROW] = 0,
|
||||
[SPECIES_EKANS] = 2,
|
||||
[SPECIES_ARBOK] = 2,
|
||||
[SPECIES_PIKACHU] = 2,
|
||||
[SPECIES_RAICHU] = 0,
|
||||
[SPECIES_SANDSHREW] = 2,
|
||||
[SPECIES_SANDSLASH] = 2,
|
||||
[SPECIES_NIDORAN_F] = 2,
|
||||
[SPECIES_NIDORINA] = 2,
|
||||
[SPECIES_NIDOQUEEN] = 2,
|
||||
[SPECIES_NIDORAN_M] = 2,
|
||||
[SPECIES_NIDORINO] = 2,
|
||||
[SPECIES_NIDOKING] = 2,
|
||||
[SPECIES_CLEFAIRY] = 0,
|
||||
[SPECIES_CLEFABLE] = 0,
|
||||
[SPECIES_VULPIX] = 2,
|
||||
[SPECIES_NINETALES] = 1,
|
||||
[SPECIES_JIGGLYPUFF] = 0,
|
||||
[SPECIES_WIGGLYTUFF] = 0,
|
||||
[SPECIES_ZUBAT] = 2,
|
||||
[SPECIES_GOLBAT] = 2,
|
||||
[SPECIES_ODDISH] = 1,
|
||||
[SPECIES_GLOOM] = 0,
|
||||
[SPECIES_VILEPLUME] = 0,
|
||||
[SPECIES_PARAS] = 0,
|
||||
[SPECIES_PARASECT] = 0,
|
||||
[SPECIES_VENONAT] = 0,
|
||||
[SPECIES_VENOMOTH] = 2,
|
||||
[SPECIES_DIGLETT] = 2,
|
||||
[SPECIES_DUGTRIO] = 2,
|
||||
[SPECIES_MEOWTH] = 1,
|
||||
[SPECIES_PERSIAN] = 1,
|
||||
[SPECIES_PSYDUCK] = 1,
|
||||
[SPECIES_GOLDUCK] = 2,
|
||||
[SPECIES_MANKEY] = 1,
|
||||
[SPECIES_PRIMEAPE] = 2,
|
||||
[SPECIES_GROWLITHE] = 0,
|
||||
[SPECIES_ARCANINE] = 0,
|
||||
[SPECIES_POLIWAG] = 0,
|
||||
[SPECIES_POLIWHIRL] = 0,
|
||||
[SPECIES_POLIWRATH] = 0,
|
||||
[SPECIES_ABRA] = 2,
|
||||
[SPECIES_KADABRA] = 2,
|
||||
[SPECIES_ALAKAZAM] = 2,
|
||||
[SPECIES_MACHOP] = 0,
|
||||
[SPECIES_MACHOKE] = 2,
|
||||
[SPECIES_MACHAMP] = 0,
|
||||
[SPECIES_BELLSPROUT] = 1,
|
||||
[SPECIES_WEEPINBELL] = 1,
|
||||
[SPECIES_VICTREEBEL] = 1,
|
||||
[SPECIES_TENTACOOL] = 2,
|
||||
[SPECIES_TENTACRUEL] = 2,
|
||||
[SPECIES_GEODUDE] = 1,
|
||||
[SPECIES_GRAVELER] = 1,
|
||||
[SPECIES_GOLEM] = 1,
|
||||
[SPECIES_PONYTA] = 0,
|
||||
[SPECIES_RAPIDASH] = 0,
|
||||
[SPECIES_SLOWPOKE] = 0,
|
||||
[SPECIES_SLOWBRO] = 0,
|
||||
[SPECIES_MAGNEMITE] = 0,
|
||||
[SPECIES_MAGNETON] = 0,
|
||||
[SPECIES_FARFETCHD] = 1,
|
||||
[SPECIES_DODUO] = 2,
|
||||
[SPECIES_DODRIO] = 2,
|
||||
[SPECIES_SEEL] = 2,
|
||||
[SPECIES_DEWGONG] = 2,
|
||||
[SPECIES_GRIMER] = 2,
|
||||
[SPECIES_MUK] = 2,
|
||||
[SPECIES_SHELLDER] = 2,
|
||||
[SPECIES_CLOYSTER] = 2,
|
||||
[SPECIES_GASTLY] = 2,
|
||||
[SPECIES_HAUNTER] = 2,
|
||||
[SPECIES_GENGAR] = 2,
|
||||
[SPECIES_ONIX] = 2,
|
||||
[SPECIES_DROWZEE] = 2,
|
||||
[SPECIES_HYPNO] = 1,
|
||||
[SPECIES_KRABBY] = 2,
|
||||
[SPECIES_KINGLER] = 2,
|
||||
[SPECIES_VOLTORB] = 0,
|
||||
[SPECIES_ELECTRODE] = 0,
|
||||
[SPECIES_EXEGGCUTE] = 0,
|
||||
[SPECIES_EXEGGUTOR] = 1,
|
||||
[SPECIES_CUBONE] = 1,
|
||||
[SPECIES_MAROWAK] = 1,
|
||||
[SPECIES_HITMONLEE] = 2,
|
||||
[SPECIES_HITMONCHAN] = 2,
|
||||
[SPECIES_LICKITUNG] = 1,
|
||||
[SPECIES_KOFFING] = 2,
|
||||
[SPECIES_WEEZING] = 2,
|
||||
[SPECIES_RHYHORN] = 1,
|
||||
[SPECIES_RHYDON] = 1,
|
||||
[SPECIES_CHANSEY] = 0,
|
||||
[SPECIES_TANGELA] = 0,
|
||||
[SPECIES_KANGASKHAN] = 1,
|
||||
[SPECIES_HORSEA] = 0,
|
||||
[SPECIES_SEADRA] = 0,
|
||||
[SPECIES_GOLDEEN] = 0,
|
||||
[SPECIES_SEAKING] = 0,
|
||||
[SPECIES_STARYU] = 2,
|
||||
[SPECIES_STARMIE] = 2,
|
||||
[SPECIES_MR_MIME] = 0,
|
||||
[SPECIES_SCYTHER] = 1,
|
||||
[SPECIES_JYNX] = 2,
|
||||
[SPECIES_ELECTABUZZ] = 1,
|
||||
[SPECIES_MAGMAR] = 0,
|
||||
[SPECIES_PINSIR] = 2,
|
||||
[SPECIES_TAUROS] = 2,
|
||||
[SPECIES_MAGIKARP] = 0,
|
||||
[SPECIES_GYARADOS] = 0,
|
||||
[SPECIES_LAPRAS] = 2,
|
||||
[SPECIES_DITTO] = 2,
|
||||
[SPECIES_EEVEE] = 2,
|
||||
[SPECIES_VAPOREON] = 0,
|
||||
[SPECIES_JOLTEON] = 0,
|
||||
[SPECIES_FLAREON] = 0,
|
||||
[SPECIES_PORYGON] = 0,
|
||||
[SPECIES_OMANYTE] = 0,
|
||||
[SPECIES_OMASTAR] = 0,
|
||||
[SPECIES_KABUTO] = 2,
|
||||
[SPECIES_KABUTOPS] = 2,
|
||||
[SPECIES_AERODACTYL] = 0,
|
||||
[SPECIES_SNORLAX] = 1,
|
||||
[SPECIES_ARTICUNO] = 0,
|
||||
[SPECIES_ZAPDOS] = 0,
|
||||
[SPECIES_MOLTRES] = 0,
|
||||
[SPECIES_DRATINI] = 0,
|
||||
[SPECIES_DRAGONAIR] = 0,
|
||||
[SPECIES_DRAGONITE] = 2,
|
||||
[SPECIES_MEWTWO] = 2,
|
||||
[SPECIES_MEW] = 0,
|
||||
[SPECIES_CHIKORITA] = 1,
|
||||
[SPECIES_BAYLEEF] = 1,
|
||||
[SPECIES_MEGANIUM] = 1,
|
||||
[SPECIES_CYNDAQUIL] = 1,
|
||||
[SPECIES_QUILAVA] = 1,
|
||||
[SPECIES_TYPHLOSION] = 1,
|
||||
[SPECIES_TOTODILE] = 2,
|
||||
[SPECIES_CROCONAW] = 2,
|
||||
[SPECIES_FERALIGATR] = 2,
|
||||
[SPECIES_SENTRET] = 2,
|
||||
[SPECIES_FURRET] = 2,
|
||||
[SPECIES_HOOTHOOT] = 2,
|
||||
[SPECIES_NOCTOWL] = 2,
|
||||
[SPECIES_LEDYBA] = 0,
|
||||
[SPECIES_LEDIAN] = 0,
|
||||
[SPECIES_SPINARAK] = 1,
|
||||
[SPECIES_ARIADOS] = 0,
|
||||
[SPECIES_CROBAT] = 2,
|
||||
[SPECIES_CHINCHOU] = 2,
|
||||
[SPECIES_LANTURN] = 0,
|
||||
[SPECIES_PICHU] = 0,
|
||||
[SPECIES_CLEFFA] = 0,
|
||||
[SPECIES_IGGLYBUFF] = 1,
|
||||
[SPECIES_TOGEPI] = 2,
|
||||
[SPECIES_TOGETIC] = 2,
|
||||
[SPECIES_NATU] = 0,
|
||||
[SPECIES_XATU] = 0,
|
||||
[SPECIES_MAREEP] = 2,
|
||||
[SPECIES_FLAAFFY] = 0,
|
||||
[SPECIES_AMPHAROS] = 0,
|
||||
[SPECIES_BELLOSSOM] = 1,
|
||||
[SPECIES_MARILL] = 2,
|
||||
[SPECIES_AZUMARILL] = 2,
|
||||
[SPECIES_SUDOWOODO] = 1,
|
||||
[SPECIES_POLITOED] = 1,
|
||||
[SPECIES_HOPPIP] = 1,
|
||||
[SPECIES_SKIPLOOM] = 1,
|
||||
[SPECIES_JUMPLUFF] = 2,
|
||||
[SPECIES_AIPOM] = 2,
|
||||
[SPECIES_SUNKERN] = 1,
|
||||
[SPECIES_SUNFLORA] = 1,
|
||||
[SPECIES_YANMA] = 1,
|
||||
[SPECIES_WOOPER] = 0,
|
||||
[SPECIES_QUAGSIRE] = 0,
|
||||
[SPECIES_ESPEON] = 2,
|
||||
[SPECIES_UMBREON] = 2,
|
||||
[SPECIES_MURKROW] = 2,
|
||||
[SPECIES_SLOWKING] = 0,
|
||||
[SPECIES_MISDREAVUS] = 0,
|
||||
[SPECIES_UNOWN] = 0,
|
||||
[SPECIES_WOBBUFFET] = 0,
|
||||
[SPECIES_GIRAFARIG] = 1,
|
||||
[SPECIES_PINECO] = 0,
|
||||
[SPECIES_FORRETRESS] = 2,
|
||||
[SPECIES_DUNSPARCE] = 2,
|
||||
[SPECIES_GLIGAR] = 2,
|
||||
[SPECIES_STEELIX] = 0,
|
||||
[SPECIES_SNUBBULL] = 0,
|
||||
[SPECIES_GRANBULL] = 2,
|
||||
[SPECIES_QWILFISH] = 0,
|
||||
[SPECIES_SCIZOR] = 0,
|
||||
[SPECIES_SHUCKLE] = 1,
|
||||
[SPECIES_HERACROSS] = 2,
|
||||
[SPECIES_SNEASEL] = 0,
|
||||
[SPECIES_TEDDIURSA] = 0,
|
||||
[SPECIES_URSARING] = 2,
|
||||
[SPECIES_SLUGMA] = 0,
|
||||
[SPECIES_MAGCARGO] = 0,
|
||||
[SPECIES_SWINUB] = 2,
|
||||
[SPECIES_PILOSWINE] = 2,
|
||||
[SPECIES_CORSOLA] = 0,
|
||||
[SPECIES_REMORAID] = 0,
|
||||
[SPECIES_OCTILLERY] = 0,
|
||||
[SPECIES_DELIBIRD] = 0,
|
||||
[SPECIES_MANTINE] = 2,
|
||||
[SPECIES_SKARMORY] = 0,
|
||||
[SPECIES_HOUNDOUR] = 0,
|
||||
[SPECIES_HOUNDOOM] = 0,
|
||||
[SPECIES_KINGDRA] = 0,
|
||||
[SPECIES_PHANPY] = 0,
|
||||
[SPECIES_DONPHAN] = 0,
|
||||
[SPECIES_PORYGON2] = 0,
|
||||
[SPECIES_STANTLER] = 2,
|
||||
[SPECIES_SMEARGLE] = 1,
|
||||
[SPECIES_TYROGUE] = 2,
|
||||
[SPECIES_HITMONTOP] = 2,
|
||||
[SPECIES_SMOOCHUM] = 1,
|
||||
[SPECIES_ELEKID] = 1,
|
||||
[SPECIES_MAGBY] = 1,
|
||||
[SPECIES_MILTANK] = 1,
|
||||
[SPECIES_BLISSEY] = 1,
|
||||
[SPECIES_RAIKOU] = 0,
|
||||
[SPECIES_ENTEI] = 2,
|
||||
[SPECIES_SUICUNE] = 0,
|
||||
[SPECIES_LARVITAR] = 1,
|
||||
[SPECIES_PUPITAR] = 0,
|
||||
[SPECIES_TYRANITAR] = 1,
|
||||
[SPECIES_LUGIA] = 0,
|
||||
[SPECIES_HO_OH] = 1,
|
||||
[SPECIES_CELEBI] = 1,
|
||||
[SPECIES_OLD_UNOWN_B] = 0,
|
||||
[SPECIES_OLD_UNOWN_C] = 0,
|
||||
[SPECIES_OLD_UNOWN_D] = 0,
|
||||
[SPECIES_OLD_UNOWN_E] = 0,
|
||||
[SPECIES_OLD_UNOWN_F] = 0,
|
||||
[SPECIES_OLD_UNOWN_G] = 0,
|
||||
[SPECIES_OLD_UNOWN_H] = 0,
|
||||
[SPECIES_OLD_UNOWN_I] = 0,
|
||||
[SPECIES_OLD_UNOWN_J] = 0,
|
||||
[SPECIES_OLD_UNOWN_K] = 0,
|
||||
[SPECIES_OLD_UNOWN_L] = 0,
|
||||
[SPECIES_OLD_UNOWN_M] = 0,
|
||||
[SPECIES_OLD_UNOWN_N] = 0,
|
||||
[SPECIES_OLD_UNOWN_O] = 0,
|
||||
[SPECIES_OLD_UNOWN_P] = 0,
|
||||
[SPECIES_OLD_UNOWN_Q] = 0,
|
||||
[SPECIES_OLD_UNOWN_R] = 0,
|
||||
[SPECIES_OLD_UNOWN_S] = 0,
|
||||
[SPECIES_OLD_UNOWN_T] = 0,
|
||||
[SPECIES_OLD_UNOWN_U] = 0,
|
||||
[SPECIES_OLD_UNOWN_V] = 0,
|
||||
[SPECIES_OLD_UNOWN_W] = 0,
|
||||
[SPECIES_OLD_UNOWN_X] = 0,
|
||||
[SPECIES_OLD_UNOWN_Y] = 0,
|
||||
[SPECIES_OLD_UNOWN_Z] = 0,
|
||||
[SPECIES_TREECKO] = 1,
|
||||
[SPECIES_GROVYLE] = 0,
|
||||
[SPECIES_SCEPTILE] = 1,
|
||||
[SPECIES_TORCHIC] = 0,
|
||||
[SPECIES_COMBUSKEN] = 0,
|
||||
[SPECIES_BLAZIKEN] = 0,
|
||||
[SPECIES_MUDKIP] = 0,
|
||||
[SPECIES_MARSHTOMP] = 0,
|
||||
[SPECIES_SWAMPERT] = 0,
|
||||
[SPECIES_POOCHYENA] = 2,
|
||||
[SPECIES_MIGHTYENA] = 2,
|
||||
[SPECIES_ZIGZAGOON] = 2,
|
||||
[SPECIES_LINOONE] = 2,
|
||||
[SPECIES_WURMPLE] = 0,
|
||||
[SPECIES_SILCOON] = 2,
|
||||
[SPECIES_BEAUTIFLY] = 0,
|
||||
[SPECIES_CASCOON] = 2,
|
||||
[SPECIES_DUSTOX] = 1,
|
||||
[SPECIES_LOTAD] = 1,
|
||||
[SPECIES_LOMBRE] = 1,
|
||||
[SPECIES_LUDICOLO] = 1,
|
||||
[SPECIES_SEEDOT] = 1,
|
||||
[SPECIES_NUZLEAF] = 1,
|
||||
[SPECIES_SHIFTRY] = 0,
|
||||
[SPECIES_NINCADA] = 1,
|
||||
[SPECIES_NINJASK] = 1,
|
||||
[SPECIES_SHEDINJA] = 1,
|
||||
[SPECIES_TAILLOW] = 2,
|
||||
[SPECIES_SWELLOW] = 2,
|
||||
[SPECIES_SHROOMISH] = 1,
|
||||
[SPECIES_BRELOOM] = 1,
|
||||
[SPECIES_SPINDA] = 1,
|
||||
[SPECIES_WINGULL] = 0,
|
||||
[SPECIES_PELIPPER] = 0,
|
||||
[SPECIES_SURSKIT] = 2,
|
||||
[SPECIES_MASQUERAIN] = 0,
|
||||
[SPECIES_WAILMER] = 2,
|
||||
[SPECIES_WAILORD] = 0,
|
||||
[SPECIES_SKITTY] = 0,
|
||||
[SPECIES_DELCATTY] = 2,
|
||||
[SPECIES_KECLEON] = 1,
|
||||
[SPECIES_BALTOY] = 1,
|
||||
[SPECIES_CLAYDOL] = 0,
|
||||
[SPECIES_NOSEPASS] = 0,
|
||||
[SPECIES_TORKOAL] = 1,
|
||||
[SPECIES_SABLEYE] = 2,
|
||||
[SPECIES_BARBOACH] = 0,
|
||||
[SPECIES_WHISCASH] = 0,
|
||||
[SPECIES_LUVDISC] = 0,
|
||||
[SPECIES_CORPHISH] = 0,
|
||||
[SPECIES_CRAWDAUNT] = 0,
|
||||
[SPECIES_FEEBAS] = 2,
|
||||
[SPECIES_MILOTIC] = 0,
|
||||
[SPECIES_CARVANHA] = 0,
|
||||
[SPECIES_SHARPEDO] = 0,
|
||||
[SPECIES_TRAPINCH] = 1,
|
||||
[SPECIES_VIBRAVA] = 1,
|
||||
[SPECIES_FLYGON] = 1,
|
||||
[SPECIES_MAKUHITA] = 2,
|
||||
[SPECIES_HARIYAMA] = 1,
|
||||
[SPECIES_ELECTRIKE] = 1,
|
||||
[SPECIES_MANECTRIC] = 0,
|
||||
[SPECIES_NUMEL] = 1,
|
||||
[SPECIES_CAMERUPT] = 0,
|
||||
[SPECIES_SPHEAL] = 2,
|
||||
[SPECIES_SEALEO] = 2,
|
||||
[SPECIES_WALREIN] = 0,
|
||||
[SPECIES_CACNEA] = 1,
|
||||
[SPECIES_CACTURNE] = 1,
|
||||
[SPECIES_SNORUNT] = 2,
|
||||
[SPECIES_GLALIE] = 0,
|
||||
[SPECIES_LUNATONE] = 1,
|
||||
[SPECIES_SOLROCK] = 0,
|
||||
[SPECIES_AZURILL] = 2,
|
||||
[SPECIES_SPOINK] = 0,
|
||||
[SPECIES_GRUMPIG] = 2,
|
||||
[SPECIES_PLUSLE] = 0,
|
||||
[SPECIES_MINUN] = 0,
|
||||
[SPECIES_MAWILE] = 2,
|
||||
[SPECIES_MEDITITE] = 0,
|
||||
[SPECIES_MEDICHAM] = 0,
|
||||
[SPECIES_SWABLU] = 0,
|
||||
[SPECIES_ALTARIA] = 0,
|
||||
[SPECIES_WYNAUT] = 0,
|
||||
[SPECIES_DUSKULL] = 0,
|
||||
[SPECIES_DUSCLOPS] = 0,
|
||||
[SPECIES_ROSELIA] = 0,
|
||||
[SPECIES_SLAKOTH] = 2,
|
||||
[SPECIES_VIGOROTH] = 2,
|
||||
[SPECIES_SLAKING] = 1,
|
||||
[SPECIES_GULPIN] = 1,
|
||||
[SPECIES_SWALOT] = 2,
|
||||
[SPECIES_TROPIUS] = 1,
|
||||
[SPECIES_WHISMUR] = 0,
|
||||
[SPECIES_LOUDRED] = 2,
|
||||
[SPECIES_EXPLOUD] = 2,
|
||||
[SPECIES_CLAMPERL] = 0,
|
||||
[SPECIES_HUNTAIL] = 0,
|
||||
[SPECIES_GOREBYSS] = 0,
|
||||
[SPECIES_ABSOL] = 0,
|
||||
[SPECIES_SHUPPET] = 0,
|
||||
[SPECIES_BANETTE] = 0,
|
||||
[SPECIES_SEVIPER] = 2,
|
||||
[SPECIES_ZANGOOSE] = 0,
|
||||
[SPECIES_RELICANTH] = 1,
|
||||
[SPECIES_ARON] = 2,
|
||||
[SPECIES_LAIRON] = 2,
|
||||
[SPECIES_AGGRON] = 2,
|
||||
[SPECIES_CASTFORM] = 0,
|
||||
[SPECIES_VOLBEAT] = 0,
|
||||
[SPECIES_ILLUMISE] = 2,
|
||||
[SPECIES_LILEEP] = 2,
|
||||
[SPECIES_CRADILY] = 0,
|
||||
[SPECIES_ANORITH] = 0,
|
||||
[SPECIES_ARMALDO] = 0,
|
||||
[SPECIES_RALTS] = 1,
|
||||
[SPECIES_KIRLIA] = 1,
|
||||
[SPECIES_GARDEVOIR] = 1,
|
||||
[SPECIES_BAGON] = 2,
|
||||
[SPECIES_SHELGON] = 2,
|
||||
[SPECIES_SALAMENCE] = 0,
|
||||
[SPECIES_BELDUM] = 0,
|
||||
[SPECIES_METANG] = 0,
|
||||
[SPECIES_METAGROSS] = 0,
|
||||
[SPECIES_REGIROCK] = 2,
|
||||
[SPECIES_REGICE] = 2,
|
||||
[SPECIES_REGISTEEL] = 2,
|
||||
[SPECIES_KYOGRE] = 2,
|
||||
[SPECIES_GROUDON] = 0,
|
||||
[SPECIES_RAYQUAZA] = 1,
|
||||
[SPECIES_LATIAS] = 0,
|
||||
[SPECIES_LATIOS] = 2,
|
||||
[SPECIES_JIRACHI] = 0,
|
||||
[SPECIES_DEOXYS] = 0,
|
||||
[SPECIES_CHIMECHO] = 0,
|
||||
[SPECIES_EGG] = 1,
|
||||
[SPECIES_UNOWN_B] = 0,
|
||||
[SPECIES_UNOWN_C] = 0,
|
||||
[SPECIES_UNOWN_D] = 0,
|
||||
[SPECIES_UNOWN_E] = 0,
|
||||
[SPECIES_UNOWN_F] = 0,
|
||||
[SPECIES_UNOWN_G] = 0,
|
||||
[SPECIES_UNOWN_H] = 0,
|
||||
[SPECIES_UNOWN_I] = 0,
|
||||
[SPECIES_UNOWN_J] = 0,
|
||||
[SPECIES_UNOWN_K] = 0,
|
||||
[SPECIES_UNOWN_L] = 0,
|
||||
[SPECIES_UNOWN_M] = 0,
|
||||
[SPECIES_UNOWN_N] = 0,
|
||||
[SPECIES_UNOWN_O] = 0,
|
||||
[SPECIES_UNOWN_P] = 0,
|
||||
[SPECIES_UNOWN_Q] = 0,
|
||||
[SPECIES_UNOWN_R] = 0,
|
||||
[SPECIES_UNOWN_S] = 0,
|
||||
[SPECIES_UNOWN_T] = 0,
|
||||
[SPECIES_UNOWN_U] = 0,
|
||||
[SPECIES_UNOWN_V] = 0,
|
||||
[SPECIES_UNOWN_W] = 0,
|
||||
[SPECIES_UNOWN_X] = 0,
|
||||
[SPECIES_UNOWN_Y] = 0,
|
||||
[SPECIES_UNOWN_Z] = 0,
|
||||
[SPECIES_UNOWN_EMARK] = 0,
|
||||
[SPECIES_UNOWN_QMARK] = 0,
|
||||
};
|
||||
|
||||
const struct SpritePalette gMonIconPaletteTable[] =
|
||||
@ -1211,7 +1211,7 @@ void sub_80D304C(u16 offset)
|
||||
if(offset <= 0xA0)
|
||||
{
|
||||
monIconPalettePtr = gMonIconPaletteTable;
|
||||
for(i = 5; i >= 0 ; i--)
|
||||
for(i = 5; i >= 0; i--)
|
||||
{
|
||||
LoadPalette(monIconPalettePtr->data, offset, 0x20);
|
||||
offset += 0x10;
|
||||
|
@ -19,7 +19,7 @@
|
||||
#include "item.h"
|
||||
#include "link.h"
|
||||
#include "m4a.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "menu.h"
|
||||
#include "menu_helpers.h"
|
||||
#include "mon_markings.h"
|
||||
|
@ -5,7 +5,7 @@
|
||||
#include "graphics.h"
|
||||
#include "bg.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "palette.h"
|
||||
#include "scanline_effect.h"
|
||||
#include "menu.h"
|
||||
@ -89,13 +89,13 @@ static void sub_81D9868(struct Sprite *sprite, u8 animNum, s16 x, s16 y);
|
||||
// const rom data
|
||||
static const TaskFunc sTasksForAnimations[] =
|
||||
{
|
||||
Task_DuoFightAnim, // RAY_ANIM_DUO_FIGHT_PRE
|
||||
Task_DuoFightAnim, // RAY_ANIM_DUO_FIGHT
|
||||
Task_RayTakesFlightAnim, // RAY_ANIM_TAKES_FLIGHT
|
||||
Task_RayDescendsAnim, // RAY_ANIM_DESCENDS
|
||||
Task_RayChargesAnim, // RAY_ANIM_CHARGES
|
||||
Task_RayChasesAwayAnim, // RAY_ANIM_CHACES_AWAY
|
||||
Task_EndAfterFadeScreen // RAY_ANIM_END
|
||||
[RAY_ANIM_DUO_FIGHT_PRE] = Task_DuoFightAnim,
|
||||
[RAY_ANIM_DUO_FIGHT] = Task_DuoFightAnim,
|
||||
[RAY_ANIM_TAKES_FLIGHT] = Task_RayTakesFlightAnim,
|
||||
[RAY_ANIM_DESCENDS] = Task_RayDescendsAnim,
|
||||
[RAY_ANIM_CHARGES] = Task_RayChargesAnim,
|
||||
[RAY_ANIM_CHACES_AWAY] = Task_RayChasesAwayAnim,
|
||||
[RAY_ANIM_END] = Task_EndAfterFadeScreen,
|
||||
};
|
||||
|
||||
static const struct OamData sOamData_862A6BC =
|
||||
|
@ -1,5 +1,5 @@
|
||||
#include "global.h"
|
||||
#include "malloc.h"
|
||||
#include "alloc.h"
|
||||
#include "random.h"
|
||||
#include "constants/items.h"
|
||||
#include "text.h"
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user