diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/intro.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/intro.c b/src/intro.c index 33a03a389..8757db81d 100644 --- a/src/intro.c +++ b/src/intro.c @@ -131,6 +131,11 @@ static void sub_80EE9D4(struct Sprite * sprite); static void sub_80EEA94(struct IntroSequenceData * ptr); static void sub_80EEB08(struct Sprite * sprite); static void sub_80EEBE4(void); +#if REVISION >= 1 +static void sub_rev1_80EDFAC(void); +#else +#define sub_rev1_80EDFAC() +#endif extern const u32 gMultiBootProgram_PokemonColosseum_Start[]; @@ -828,6 +833,7 @@ static void sub_80ECD60(struct IntroSequenceData * this) if (!IsDma3ManagerBusyWithBgCopy()) { DestroySprite(this->field_0014); + sub_rev1_80EDFAC(); this->field_0012 = 0; this->field_0004++; } @@ -1592,6 +1598,36 @@ static struct Sprite * sub_80EDF68(void) return &gSprites[spriteId]; } +#if REVISION >= 1 +static const struct OamData sOamData_840BD64 = { + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_BLEND, + .mosaic = FALSE, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(8x32), + .size = SPRITE_SIZE(8x32), + .priority = 3 +}; + +static const struct SpriteTemplate sSprTemplate_rev1_840BD6C = { + .tileTag = 4, + .paletteTag = 3, + .oam = &sOamData_840BD64, + .anims = gDummySpriteAnimTable, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallbackDummy +}; + +static void sub_rev1_80EDFAC(void) +{ + int i; + for (i = 0; i < 2; i++) + { + gSprites[CreateSprite(&sSprTemplate_rev1_840BD6C, 0x68 + 32 * i, 0x6c, 5)].oam.tileNum += i * 4; + } +} +#endif + static void sub_80EDF94(struct IntroSequenceData * this) { u8 taskId; |