From 04a4cc0987750e023b7a2c2f8f56f016672bf161 Mon Sep 17 00:00:00 2001 From: W1serV1ser <1prefertheaircauseimanairnomad@gmail.com> Date: Sat, 26 Mar 2022 16:10:30 -0700 Subject: [PATCH] Reordered constants and changed IsFlyingPokemonGraphic Species constants are reordered in pokemon_expansion, and IsFlyingGraphic now uses constants, so the proper sprites will/will not bounce, regardless of how the constants are ordered. --- gflib/sprite.c | 83 +++++------ include/constants/event_objects.h | 220 +++++++++++++++--------------- 2 files changed, 152 insertions(+), 151 deletions(-) diff --git a/gflib/sprite.c b/gflib/sprite.c index 56243ee75..411e7d3b8 100644 --- a/gflib/sprite.c +++ b/gflib/sprite.c @@ -3,6 +3,7 @@ #include "main.h" #include "palette.h" #include "global.fieldmap.h" +#include "constants/event_objects.h" #define MAX_SPRITE_COPY_REQUESTS 64 @@ -975,47 +976,47 @@ bool8 IsFlyingPokemonGraphic(u16 graphicsId) { switch(graphicsId) { - case 250: - case 253: - case 255: - case 256: - case 260: - case 279: - case 280: - case 287: - case 380: - case 382: - case 383: - case 384: - case 387: - case 402: - case 403: - case 404: - case 407: - case 414: - case 425: - case 426: - case 427: - case 431: - case 464: - case 465: - case 487: - case 488: - case 489: - case 530: - case 532: - case 543: - case 547: - case 548: - case 550: - case 572: - case 596: - case 597: - case 624: - case 625: - case 642: - case 645: - case 646: + case OBJ_EVENT_GFX_BUTTERFREE: + case OBJ_EVENT_GFX_BEEDRILL: + case OBJ_EVENT_GFX_PIDGEOTTO: + case OBJ_EVENT_GFX_PIDGEOT: + case OBJ_EVENT_GFX_FEAROW: + case OBJ_EVENT_GFX_ZUBAT: + case OBJ_EVENT_GFX_GOLBAT: + case OBJ_EVENT_GFX_VENOMOTH: + case OBJ_EVENT_GFX_AERODACTYL: + case OBJ_EVENT_GFX_ARTICUNO: + case OBJ_EVENT_GFX_ZAPDOS: + case OBJ_EVENT_GFX_MOLTRES: + case OBJ_EVENT_GFX_DRAGONITE: + case OBJ_EVENT_GFX_NOCTOWL: + case OBJ_EVENT_GFX_LEDYBA: + case OBJ_EVENT_GFX_LEDIAN: + case OBJ_EVENT_GFX_CROBAT: + case OBJ_EVENT_GFX_TOGETIC: + case OBJ_EVENT_GFX_HOPPIP: + case OBJ_EVENT_GFX_SKIPLOOM: + case OBJ_EVENT_GFX_JUMPLUFF: + case OBJ_EVENT_GFX_YANMA: + case OBJ_EVENT_GFX_MANTINE: + case OBJ_EVENT_GFX_SKARMORY: + case OBJ_EVENT_GFX_LUGIA_FOLLOWER: + case OBJ_EVENT_GFX_HOOH_FOLLOWER: + case OBJ_EVENT_GFX_CELEBI: + case OBJ_EVENT_GFX_BEAUTIFLY: + case OBJ_EVENT_GFX_DUSTOX: + case OBJ_EVENT_GFX_SWELLOW: + case OBJ_EVENT_GFX_WINGULL_FOLLOWER: + case OBJ_EVENT_GFX_PELIPPER: + case OBJ_EVENT_GFX_MASQUERAIN: + case OBJ_EVENT_GFX_FLYGON: + case OBJ_EVENT_GFX_SWABLU: + case OBJ_EVENT_GFX_ALTARIA: + case OBJ_EVENT_GFX_VOLBEAT: + case OBJ_EVENT_GFX_ILLUMISE: + case OBJ_EVENT_GFX_KYOGRE: + case OBJ_EVENT_GFX_LATIAS_FOLLOWER: + case OBJ_EVENT_GFX_LATIOS_FOLLOWER: return TRUE; default: return FALSE; diff --git a/include/constants/event_objects.h b/include/constants/event_objects.h index 1f4256ae1..b2b6a2c6c 100644 --- a/include/constants/event_objects.h +++ b/include/constants/event_objects.h @@ -692,7 +692,7 @@ #define OBJ_EVENT_GFX_EXPANDING_SPARKLE 680 #else -// There are no OLD_UNOWN constants in the pokemon_expansion +// There are no OLD_UNOWN constants in the pokemon_expansion, and the species constants are reordered #define OBJ_EVENT_GFX_TREECKO 490 #define OBJ_EVENT_GFX_GROVYLE 491 @@ -718,117 +718,117 @@ #define OBJ_EVENT_GFX_SEEDOT 511 #define OBJ_EVENT_GFX_NUZLEAF 512 #define OBJ_EVENT_GFX_SHIFTRY 513 -#define OBJ_EVENT_GFX_NINCADA 514 -#define OBJ_EVENT_GFX_NINJASK 515 -#define OBJ_EVENT_GFX_SHEDINJA 516 -#define OBJ_EVENT_GFX_TAILLOW 517 -#define OBJ_EVENT_GFX_SWELLOW 518 -#define OBJ_EVENT_GFX_SHROOMISH 519 -#define OBJ_EVENT_GFX_BRELOOM 520 -#define OBJ_EVENT_GFX_SPINDA 521 -#define OBJ_EVENT_GFX_WINGULL_FOLLOWER 522 -#define OBJ_EVENT_GFX_PELIPPER 523 -#define OBJ_EVENT_GFX_SURSKIT 524 -#define OBJ_EVENT_GFX_MASQUERAIN 525 -#define OBJ_EVENT_GFX_WAILMER 526 -#define OBJ_EVENT_GFX_WAILORD 527 -#define OBJ_EVENT_GFX_SKITTY_FOLLOWER 528 -#define OBJ_EVENT_GFX_DELCATTY 529 -#define OBJ_EVENT_GFX_KECLEON_FOLLOWER 530 -#define OBJ_EVENT_GFX_BALTOY 531 -#define OBJ_EVENT_GFX_CLAYDOL 532 -#define OBJ_EVENT_GFX_NOSEPASS 533 -#define OBJ_EVENT_GFX_TORKOAL 534 -#define OBJ_EVENT_GFX_SABLEYE 535 -#define OBJ_EVENT_GFX_BARBOACH 536 -#define OBJ_EVENT_GFX_WHISCASH 537 -#define OBJ_EVENT_GFX_LUVDISC 538 -#define OBJ_EVENT_GFX_CORPHISH 539 -#define OBJ_EVENT_GFX_CRAWDAUNT 540 -#define OBJ_EVENT_GFX_FEEBAS 541 -#define OBJ_EVENT_GFX_MILOTIC 542 -#define OBJ_EVENT_GFX_CARVANHA 543 -#define OBJ_EVENT_GFX_SHARPEDO 544 -#define OBJ_EVENT_GFX_TRAPINCH 545 -#define OBJ_EVENT_GFX_VIBRAVA 546 -#define OBJ_EVENT_GFX_FLYGON 547 -#define OBJ_EVENT_GFX_MAKUHITA 548 -#define OBJ_EVENT_GFX_HARIYAMA 549 -#define OBJ_EVENT_GFX_ELECTRIKE 550 -#define OBJ_EVENT_GFX_MANECTRIC 551 -#define OBJ_EVENT_GFX_NUMEL 552 -#define OBJ_EVENT_GFX_CAMERUPT 553 -#define OBJ_EVENT_GFX_SPHEAL 554 -#define OBJ_EVENT_GFX_SEALEO 555 -#define OBJ_EVENT_GFX_WALREIN 556 -#define OBJ_EVENT_GFX_CACNEA 557 -#define OBJ_EVENT_GFX_CACTURNE 558 -#define OBJ_EVENT_GFX_SNORUNT 559 -#define OBJ_EVENT_GFX_GLALIE 560 -#define OBJ_EVENT_GFX_LUNATONE 561 -#define OBJ_EVENT_GFX_SOLROCK 562 -#define OBJ_EVENT_GFX_AZURILL_FOLLOWER 563 -#define OBJ_EVENT_GFX_SPOINK 564 -#define OBJ_EVENT_GFX_GRUMPIG 565 -#define OBJ_EVENT_GFX_PLUSLE 566 -#define OBJ_EVENT_GFX_MINUN 567 -#define OBJ_EVENT_GFX_MAWILE 568 -#define OBJ_EVENT_GFX_MEDITITE 569 -#define OBJ_EVENT_GFX_MEDICHAM 570 +#define OBJ_EVENT_GFX_TAILLOW 514 +#define OBJ_EVENT_GFX_SWELLOW 515 +#define OBJ_EVENT_GFX_WINGULL_FOLLOWER 516 +#define OBJ_EVENT_GFX_PELIPPER 517 +#define OBJ_EVENT_GFX_RALTS 518 +#define OBJ_EVENT_GFX_KIRLIA_FOLLOWER 519 +#define OBJ_EVENT_GFX_GARDEVOIR 520 +#define OBJ_EVENT_GFX_SURSKIT 521 +#define OBJ_EVENT_GFX_MASQUERAIN 522 +#define OBJ_EVENT_GFX_SHROOMISH 523 +#define OBJ_EVENT_GFX_BRELOOM 524 +#define OBJ_EVENT_GFX_SLAKOTH 525 +#define OBJ_EVENT_GFX_VIGOROTH_FOLLOWER 526 +#define OBJ_EVENT_GFX_SLAKING 527 +#define OBJ_EVENT_GFX_NINCADA 528 +#define OBJ_EVENT_GFX_NINJASK 529 +#define OBJ_EVENT_GFX_SHEDINJA 530 +#define OBJ_EVENT_GFX_WHISMUR 531 +#define OBJ_EVENT_GFX_LOUDRED 532 +#define OBJ_EVENT_GFX_EXPLOUD 533 +#define OBJ_EVENT_GFX_MAKUHITA 534 +#define OBJ_EVENT_GFX_HARIYAMA 535 +#define OBJ_EVENT_GFX_AZURILL_FOLLOWER 536 +#define OBJ_EVENT_GFX_NOSEPASS 537 +#define OBJ_EVENT_GFX_SKITTY_FOLLOWER 538 +#define OBJ_EVENT_GFX_DELCATTY 539 +#define OBJ_EVENT_GFX_SABLEYE 540 +#define OBJ_EVENT_GFX_MAWILE 541 +#define OBJ_EVENT_GFX_ARON 542 +#define OBJ_EVENT_GFX_LAIRON 543 +#define OBJ_EVENT_GFX_AGGRON 544 +#define OBJ_EVENT_GFX_MEDITITE 545 +#define OBJ_EVENT_GFX_MEDICHAM 546 +#define OBJ_EVENT_GFX_ELECTRIKE 547 +#define OBJ_EVENT_GFX_MANECTRIC 548 +#define OBJ_EVENT_GFX_PLUSLE 549 +#define OBJ_EVENT_GFX_MINUN 550 +#define OBJ_EVENT_GFX_VOLBEAT 551 +#define OBJ_EVENT_GFX_ILLUMISE 552 +#define OBJ_EVENT_GFX_ROSELIA 553 +#define OBJ_EVENT_GFX_GULPIN 554 +#define OBJ_EVENT_GFX_SWALOT 555 +#define OBJ_EVENT_GFX_CARVANHA 556 +#define OBJ_EVENT_GFX_SHARPEDO 557 +#define OBJ_EVENT_GFX_WAILMER 558 +#define OBJ_EVENT_GFX_WAILORD 559 +#define OBJ_EVENT_GFX_NUMEL 560 +#define OBJ_EVENT_GFX_CAMERUPT 561 +#define OBJ_EVENT_GFX_TORKOAL 562 +#define OBJ_EVENT_GFX_SPOINK 563 +#define OBJ_EVENT_GFX_GRUMPIG 564 +#define OBJ_EVENT_GFX_SPINDA 565 +#define OBJ_EVENT_GFX_TRAPINCH 566 +#define OBJ_EVENT_GFX_VIBRAVA 567 +#define OBJ_EVENT_GFX_FLYGON 568 +#define OBJ_EVENT_GFX_CACNEA 569 +#define OBJ_EVENT_GFX_CACTURNE 570 #define OBJ_EVENT_GFX_SWABLU 571 #define OBJ_EVENT_GFX_ALTARIA 572 -#define OBJ_EVENT_GFX_WYNAUT 573 -#define OBJ_EVENT_GFX_DUSKULL 574 -#define OBJ_EVENT_GFX_DUSCLOPS_FOLLOWER 575 -#define OBJ_EVENT_GFX_ROSELIA 576 -#define OBJ_EVENT_GFX_SLAKOTH 577 -#define OBJ_EVENT_GFX_VIGOROTH_FOLLOWER 578 -#define OBJ_EVENT_GFX_SLAKING 579 -#define OBJ_EVENT_GFX_GULPIN 580 -#define OBJ_EVENT_GFX_SWALOT 581 -#define OBJ_EVENT_GFX_TROPIUS 582 -#define OBJ_EVENT_GFX_WHISMUR 583 -#define OBJ_EVENT_GFX_LOUDRED 584 -#define OBJ_EVENT_GFX_EXPLOUD 585 -#define OBJ_EVENT_GFX_CLAMPERL 586 -#define OBJ_EVENT_GFX_HUNTAIL 587 -#define OBJ_EVENT_GFX_GOREBYSS 588 -#define OBJ_EVENT_GFX_ABSOL 589 -#define OBJ_EVENT_GFX_SHUPPET 590 -#define OBJ_EVENT_GFX_BANETTE 591 -#define OBJ_EVENT_GFX_SEVIPER 592 -#define OBJ_EVENT_GFX_ZANGOOSE 593 -#define OBJ_EVENT_GFX_RELICANTH 594 -#define OBJ_EVENT_GFX_ARON 595 -#define OBJ_EVENT_GFX_LAIRON 596 -#define OBJ_EVENT_GFX_AGGRON 597 -#define OBJ_EVENT_GFX_CASTFORM 598 -#define OBJ_EVENT_GFX_VOLBEAT 599 -#define OBJ_EVENT_GFX_ILLUMISE 600 -#define OBJ_EVENT_GFX_LILEEP 601 -#define OBJ_EVENT_GFX_CRADILY 602 -#define OBJ_EVENT_GFX_ANORITH 603 -#define OBJ_EVENT_GFX_ARMALDO 604 -#define OBJ_EVENT_GFX_RALTS 605 -#define OBJ_EVENT_GFX_KIRLIA_FOLLOWER 606 -#define OBJ_EVENT_GFX_GARDEVOIR 607 -#define OBJ_EVENT_GFX_BAGON 608 -#define OBJ_EVENT_GFX_SHELGON 609 -#define OBJ_EVENT_GFX_SALAMENCE 610 -#define OBJ_EVENT_GFX_BELDUM 611 -#define OBJ_EVENT_GFX_METANG 612 -#define OBJ_EVENT_GFX_METAGROSS 613 -#define OBJ_EVENT_GFX_REGIROCK_FOLLOWER 614 -#define OBJ_EVENT_GFX_REGICE_FOLLOWER 615 -#define OBJ_EVENT_GFX_REGISTEEL_FOLLOWER 616 -#define OBJ_EVENT_GFX_KYOGRE 617 -#define OBJ_EVENT_GFX_GROUDON 618 -#define OBJ_EVENT_GFX_RAYQUAZA_FOLLOWER 619 -#define OBJ_EVENT_GFX_LATIAS_FOLLOWER 620 -#define OBJ_EVENT_GFX_LATIOS_FOLLOWER 621 -#define OBJ_EVENT_GFX_JIRACHI 622 -#define OBJ_EVENT_GFX_DEOXYS_NORMAL 623 -#define OBJ_EVENT_GFX_CHIMECHO 624 +#define OBJ_EVENT_GFX_ZANGOOSE 573 +#define OBJ_EVENT_GFX_SEVIPER 574 +#define OBJ_EVENT_GFX_LUNATONE 575 +#define OBJ_EVENT_GFX_SOLROCK 576 +#define OBJ_EVENT_GFX_BARBOACH 577 +#define OBJ_EVENT_GFX_WHISCASH 578 +#define OBJ_EVENT_GFX_CORPHISH 579 +#define OBJ_EVENT_GFX_CRAWDAUNT 580 +#define OBJ_EVENT_GFX_BALTOY 581 +#define OBJ_EVENT_GFX_CLAYDOL 582 +#define OBJ_EVENT_GFX_LILEEP 583 +#define OBJ_EVENT_GFX_CRADILY 584 +#define OBJ_EVENT_GFX_ANORITH 585 +#define OBJ_EVENT_GFX_ARMALDO 586 +#define OBJ_EVENT_GFX_FEEBAS 587 +#define OBJ_EVENT_GFX_MILOTIC 588 +#define OBJ_EVENT_GFX_CASTFORM 589 +#define OBJ_EVENT_GFX_KECLEON_FOLLOWER 590 +#define OBJ_EVENT_GFX_SHUPPET 591 +#define OBJ_EVENT_GFX_BANETTE 592 +#define OBJ_EVENT_GFX_DUSKULL 593 +#define OBJ_EVENT_GFX_DUSCLOPS_FOLLOWER 594 +#define OBJ_EVENT_GFX_TROPIUS 595 +#define OBJ_EVENT_GFX_CHIMECHO 596 +#define OBJ_EVENT_GFX_ABSOL 597 +#define OBJ_EVENT_GFX_WYNAUT 598 +#define OBJ_EVENT_GFX_SNORUNT 599 +#define OBJ_EVENT_GFX_GLALIE 600 +#define OBJ_EVENT_GFX_SPHEAL 601 +#define OBJ_EVENT_GFX_SEALEO 602 +#define OBJ_EVENT_GFX_WALREIN 603 +#define OBJ_EVENT_GFX_CLAMPERL 604 +#define OBJ_EVENT_GFX_HUNTAIL 605 +#define OBJ_EVENT_GFX_GOREBYSS 606 +#define OBJ_EVENT_GFX_RELICANTH 607 +#define OBJ_EVENT_GFX_LUVDISC 608 +#define OBJ_EVENT_GFX_BAGON 609 +#define OBJ_EVENT_GFX_SHELGON 610 +#define OBJ_EVENT_GFX_SALAMENCE 611 +#define OBJ_EVENT_GFX_BELDUM 612 +#define OBJ_EVENT_GFX_METANG 613 +#define OBJ_EVENT_GFX_METAGROSS 614 +#define OBJ_EVENT_GFX_REGIROCK_FOLLOWER 615 +#define OBJ_EVENT_GFX_REGICE_FOLLOWER 616 +#define OBJ_EVENT_GFX_REGISTEEL_FOLLOWER 617 +#define OBJ_EVENT_GFX_LATIAS_FOLLOWER 618 +#define OBJ_EVENT_GFX_LATIOS_FOLLOWER 619 +#define OBJ_EVENT_GFX_KYOGRE 620 +#define OBJ_EVENT_GFX_GROUDON 621 +#define OBJ_EVENT_GFX_RAYQUAZA_FOLLOWER 622 +#define OBJ_EVENT_GFX_JIRACHI 623 +#define OBJ_EVENT_GFX_DEOXYS_NORMAL 624 // Other forms #define OBJ_EVENT_GFX_DEOXYS_ATTACK 625