Refactor some field effect graphics

This commit is contained in:
PikalaxALT
2021-05-03 13:27:37 -04:00
parent 9ed87063f1
commit cb90fda18d
13 changed files with 118 additions and 94 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 1006 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 420 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 353 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 188 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 556 B

+4 -1
View File
@@ -13,7 +13,7 @@ RAYQUAZAGFXDIR := graphics/rayquaza_scene
ROULETTEGFXDIR := graphics/roulette
SLOTMACHINEGFXDIR := graphics/slot_machine
PSSGFXDIR := graphics/pokemon_storage
EVENTOBJGFXDIR := graphics/event_objects
EVENTOBJGFXDIR := graphics/object_events
MISCGFXDIR := graphics/misc
TEXTWINDOWGFXDIR := graphics/text_window
SLOTMACHINEGFXDIR := graphics/slot_machine
@@ -432,6 +432,9 @@ $(PSSGFXDIR)/whiscash.4bpp: $(PSSGFXDIR)/friends_frame2.4bpp $(PSSGFXDIR)/whisca
$(EVENTOBJGFXDIR)/pics/effects/unknown_4F6D38/0.4bpp: %.4bpp: %.png
$(GFX) $< $@ -num_tiles 11
$(EVENTOBJGFXDIR)/pics/effects/underwater_bubbles.4bpp: %.4bpp: %.png
$(GFX) $< $@ -mwidth 2 -mheight 4
$(INTERFACEGFXDIR)/selector_outline.4bpp: %.4bpp: %.png
$(GFX) $< $@ -num_tiles 8
+37
View File
@@ -72,4 +72,41 @@
#define FLDEFF_DESTROY_DEOXYS_ROCK 68
#define FLDEFF_UNK_45 69 // TODO: related to fame checker photos
#define FLDEFFGFX_SHADOW_SMALL 0
#define FLDEFFGFX_SHADOW_MEDIUM 1
#define FLDEFFGFX_SHADOW_LARGE 2
#define FLDEFFGFX_SHADOW_EXTRA_LARGE 3
#define FLDEFFGFX_04 4
#define FLDEFFGFX_05 5
#define FLDEFFGFX_06 6
#define FLDEFFGFX_07 7
#define FLDEFFGFX_08 8
#define FLDEFFGFX_09 9
#define FLDEFFGFX_10 10
#define FLDEFFGFX_11 11
#define FLDEFFGFX_12 12
#define FLDEFFGFX_13 13
#define FLDEFFGFX_14 14
#define FLDEFFGFX_15 15
#define FLDEFFGFX_16 16
#define FLDEFFGFX_17 17
#define FLDEFFGFX_18 18
#define FLDEFFGFX_19 19
#define FLDEFFGFX_20 20
#define FLDEFFGFX_REFLECTION 21
#define FLDEFFGFX_22 22
#define FLDEFFGFX_23 23
#define FLDEFFGFX_24 24
#define FLDEFFGFX_25 25
#define FLDEFFGFX_FLY_BLOB 26
#define FLDEFFGFX_27 27
#define FLDEFFGFX_28 28
#define FLDEFFGFX_29 29
#define FLDEFFGFX_30 30
#define FLDEFFGFX_31 31
#define FLDEFFGFX_32 32
#define FLDEFFGFX_33 33
#define FLDEFFGFX_34 34
#define FLDEFFGFX_35 35
#endif // GUARD_CONSTANTS_FIELD_EFFECTS_H
@@ -1,7 +1,7 @@
const struct SpriteTemplate gUnknown_83A537C;
const struct SpriteTemplate gUnknown_83A5394;
const struct SpriteTemplate gUnknown_83A53AC;
const struct SpriteTemplate gUnknown_83A53C4;
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowS;
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowM;
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowL;
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowXL;
const struct SpriteTemplate gUnknown_83A5420;
const struct SpriteTemplate gUnknown_83A5488;
const struct SpriteTemplate gUnknown_83A54E4;
@@ -35,40 +35,40 @@ const struct SpriteTemplate gUnknown_83A5FA4;
const struct SpriteTemplate gUnknown_83A5FE0;
const struct SpriteTemplate *const gFieldEffectObjectTemplatePointers[] = {
&gUnknown_83A537C,
&gUnknown_83A5394,
&gUnknown_83A53AC,
&gUnknown_83A53C4,
&gUnknown_83A5420,
&gUnknown_83A5488,
&gUnknown_83A54E4,
&gUnknown_83A556C,
&gUnknown_83A5604,
&gUnknown_83A5648,
&gUnknown_83A5698,
&gUnknown_83A56F4,
&gUnknown_83A583C,
&gUnknown_83A589C,
&gUnknown_83A58E0,
&gUnknown_83A593C,
&gUnknown_83A59A4,
&gUnknown_83A5A30,
&gUnknown_83A5A88,
&gUnknown_83A5AD8,
&gUnknown_83A5B74,
&gUnknown_83A5C34,
NULL,
&gUnknown_83A5750,
&gUnknown_83A5CB4,
&gUnknown_83A5D34,
&gUnknown_83A5E00,
&gUnknown_83A57EC,
&gUnknown_83A5D84,
&gUnknown_83A5B1C,
&gUnknown_83A5E38,
&gUnknown_83A5E64,
&gUnknown_83A5EC0,
&gUnknown_83A5F24,
&gUnknown_83A5FA4,
&gUnknown_83A5FE0,
[FLDEFFGFX_SHADOW_SMALL] = &gFieldEffectObjectTemplate_ShadowS,
[FLDEFFGFX_SHADOW_MEDIUM] = &gFieldEffectObjectTemplate_ShadowM,
[FLDEFFGFX_SHADOW_LARGE] = &gFieldEffectObjectTemplate_ShadowL,
[FLDEFFGFX_SHADOW_EXTRA_LARGE] = &gFieldEffectObjectTemplate_ShadowXL,
[FLDEFFGFX_04] = &gUnknown_83A5420,
[FLDEFFGFX_05] = &gUnknown_83A5488,
[FLDEFFGFX_06] = &gUnknown_83A54E4,
[FLDEFFGFX_07] = &gUnknown_83A556C,
[FLDEFFGFX_08] = &gUnknown_83A5604,
[FLDEFFGFX_09] = &gUnknown_83A5648,
[FLDEFFGFX_10] = &gUnknown_83A5698,
[FLDEFFGFX_11] = &gUnknown_83A56F4,
[FLDEFFGFX_12] = &gUnknown_83A583C,
[FLDEFFGFX_13] = &gUnknown_83A589C,
[FLDEFFGFX_14] = &gUnknown_83A58E0,
[FLDEFFGFX_15] = &gUnknown_83A593C,
[FLDEFFGFX_16] = &gUnknown_83A59A4,
[FLDEFFGFX_17] = &gUnknown_83A5A30,
[FLDEFFGFX_18] = &gUnknown_83A5A88,
[FLDEFFGFX_19] = &gUnknown_83A5AD8,
[FLDEFFGFX_20] = &gUnknown_83A5B74,
[FLDEFFGFX_REFLECTION] = &gUnknown_83A5C34,
[FLDEFFGFX_22] = NULL,
[FLDEFFGFX_23] = &gUnknown_83A5750,
[FLDEFFGFX_24] = &gUnknown_83A5CB4,
[FLDEFFGFX_25] = &gUnknown_83A5D34,
[FLDEFFGFX_FLY_BLOB] = &gUnknown_83A5E00,
[FLDEFFGFX_27] = &gUnknown_83A57EC,
[FLDEFFGFX_28] = &gUnknown_83A5D84,
[FLDEFFGFX_29] = &gUnknown_83A5B1C,
[FLDEFFGFX_30] = &gUnknown_83A5E38,
[FLDEFFGFX_31] = &gUnknown_83A5E64,
[FLDEFFGFX_32] = &gUnknown_83A5EC0,
[FLDEFFGFX_33] = &gUnknown_83A5F24,
[FLDEFFGFX_34] = &gUnknown_83A5FA4,
[FLDEFFGFX_35] = &gUnknown_83A5FE0,
};
+19 -19
View File
@@ -1,62 +1,62 @@
const struct SpritePalette gUnknown_83A5340 = { .data = gUnknown_8398FA8, .tag = 0x1004 };
const struct SpritePalette gUnknown_83A5348 = { .data = gUnknown_8398FC8, .tag = 0x1005 };
const union AnimCmd gUnknown_83A5350[] =
const union AnimCmd gSpriteAnimCmd_FieldShadow0[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_83A5358[] =
const union AnimCmd *const gSpriteAnimTable_FieldShadow[] =
{
gUnknown_83A5350,
gSpriteAnimCmd_FieldShadow0,
};
const struct SpriteFrameImage gUnknown_83A535C[] = { obj_frame_tiles(gUnknown_8398048) };
const struct SpriteFrameImage gUnknown_83A5364[] = { obj_frame_tiles(gUnknown_8398068) };
const struct SpriteFrameImage gUnknown_83A536C[] = { obj_frame_tiles(gUnknown_83980A8) };
const struct SpriteFrameImage gUnknown_83A5374[] = { obj_frame_tiles(gUnknown_8398128) };
const struct SpriteFrameImage gSpriteFrameImage_FieldShadowS[] = {obj_frame_tiles(gSpriteImageGfx_FieldShadowS) };
const struct SpriteFrameImage gSpriteFrameImage_FieldShadowM[] = {obj_frame_tiles(gSpriteImageGfx_FieldShadowM) };
const struct SpriteFrameImage gSpriteFrameImage_FieldShadowL[] = {obj_frame_tiles(gSpriteImageGfx_FieldShadowL) };
const struct SpriteFrameImage gSpriteFrameImage_FieldShadowXL[] = { obj_frame_tiles(gSpriteImageGfx_FieldShadowXL) };
const struct SpriteTemplate gUnknown_83A537C =
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowS =
{
.tileTag = SPRITE_INVALID_TAG,
.paletteTag = SPRITE_INVALID_TAG,
.oam = &gObjectEventBaseOam_8x8,
.anims = gUnknown_83A5358,
.images = gUnknown_83A535C,
.anims = gSpriteAnimTable_FieldShadow,
.images = gSpriteFrameImage_FieldShadowS,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = UpdateShadowFieldEffect,
};
const struct SpriteTemplate gUnknown_83A5394 =
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowM =
{
.tileTag = SPRITE_INVALID_TAG,
.paletteTag = SPRITE_INVALID_TAG,
.oam = &gObjectEventBaseOam_16x8,
.anims = gUnknown_83A5358,
.images = gUnknown_83A5364,
.anims = gSpriteAnimTable_FieldShadow,
.images = gSpriteFrameImage_FieldShadowM,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = UpdateShadowFieldEffect,
};
const struct SpriteTemplate gUnknown_83A53AC =
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowL =
{
.tileTag = SPRITE_INVALID_TAG,
.paletteTag = SPRITE_INVALID_TAG,
.oam = &gObjectEventBaseOam_32x8,
.anims = gUnknown_83A5358,
.images = gUnknown_83A536C,
.anims = gSpriteAnimTable_FieldShadow,
.images = gSpriteFrameImage_FieldShadowL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = UpdateShadowFieldEffect,
};
const struct SpriteTemplate gUnknown_83A53C4 =
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowXL =
{
.tileTag = SPRITE_INVALID_TAG,
.paletteTag = SPRITE_INVALID_TAG,
.oam = &gObjectEventBaseOam_64x32,
.anims = gUnknown_83A5358,
.images = gUnknown_83A5374,
.anims = gSpriteAnimTable_FieldShadow,
.images = gSpriteFrameImage_FieldShadowXL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = UpdateShadowFieldEffect,
};
+11 -27
View File
@@ -186,10 +186,10 @@ const u32 gObjectEventPic_SurfBlob[] = INCBIN_U32("graphics/object_events/pics/m
const u32 gObjectEventPic_Policeman[] = INCBIN_U32("graphics/object_events/pics/people/policeman.4bpp");
const u16 gUnknown_8398008[] = INCBIN_U16("graphics/object_events/palettes/11.gbapal");
const u16 gUnknown_8398028[] = INCBIN_U16("graphics/object_events/palettes/12.gbapal");
const u32 gUnknown_8398048[] = INCBIN_U32("graphics/object_events/pics/effects/shadow_small.4bpp");
const u32 gUnknown_8398068[] = INCBIN_U32("graphics/object_events/pics/effects/shadow_medium.4bpp");
const u32 gUnknown_83980A8[] = INCBIN_U32("graphics/object_events/pics/effects/shadow_large.4bpp");
const u32 gUnknown_8398128[] = INCBIN_U32("graphics/object_events/pics/effects/shadow_extra_large.4bpp");
const u32 gSpriteImageGfx_FieldShadowS[] = INCBIN_U32("graphics/object_events/pics/effects/shadow_small.4bpp");
const u32 gSpriteImageGfx_FieldShadowM[] = INCBIN_U32("graphics/object_events/pics/effects/shadow_medium.4bpp");
const u32 gSpriteImageGfx_FieldShadowL[] = INCBIN_U32("graphics/object_events/pics/effects/shadow_large.4bpp");
const u32 gSpriteImageGfx_FieldShadowXL[] = INCBIN_U32("graphics/object_events/pics/effects/shadow_extra_large.4bpp");
const u32 filler_8398188[0x48] = {};
const u16 gUnknown_8398648[] = INCBIN_U16("graphics/field_effects/fldeff_cut.4bpp");
const u32 gUnknown_8398668[] = INCBIN_U32("graphics/field_effects/fldeff_cut.4bpp");
@@ -236,26 +236,10 @@ const u32 gUnknown_839B008[] = INCBIN_U32("graphics/object_events/pics/unknown/8
const u32 gUnknown_839B708[] = INCBIN_U32("graphics/object_events/pics/unknown/839B708.4bpp");
const u32 gUnknown_839BE08[] = INCBIN_U32("graphics/object_events/pics/unknown/839BE08.4bpp");
const u32 gUnknown_839C508[] = INCBIN_U32("graphics/object_events/pics/unknown/839C508.4bpp");
const u16 gUnknown_839C588[] = INCBIN_U16("graphics/object_events/palettes/839C588.gbapal");
const u32 gUnknown_839C5A8[] = INCBIN_U32("graphics/object_events/pics/unknown/839C5A8.4bpp");
const u32 gUnknown_839C628[] = INCBIN_U32("graphics/object_events/pics/unknown/839C628.4bpp");
const u32 gUnknown_839C6A8[] = INCBIN_U32("graphics/object_events/pics/unknown/839C6A8.4bpp");
const u32 gUnknown_839C728[] = INCBIN_U32("graphics/object_events/pics/unknown/839C728.4bpp");
const u32 gUnknown_839C7A8[] = INCBIN_U32("graphics/object_events/pics/unknown/839C7A8.4bpp");
const u32 gUnknown_839C828[] = INCBIN_U32("graphics/object_events/pics/unknown/839C828.4bpp");
const u32 gUnknown_839C8A8[] = INCBIN_U32("graphics/object_events/pics/unknown/839C8A8.4bpp");
const u32 gUnknown_839C928[] = INCBIN_U32("graphics/object_events/pics/unknown/839C928.4bpp");
const u32 gUnknown_839C9A8[] = INCBIN_U32("graphics/object_events/pics/unknown/839C9A8.4bpp");
const u32 gUnknown_839CA28[] = INCBIN_U32("graphics/object_events/pics/unknown/839CA28.4bpp");
const u32 gUnknown_839CAA8[] = INCBIN_U32("graphics/object_events/pics/unknown/839CAA8.4bpp");
const u32 gUnknown_839CBA8[] = INCBIN_U32("graphics/object_events/pics/unknown/839CBA8.4bpp");
const u32 gUnknown_839CCA8[] = INCBIN_U32("graphics/object_events/pics/unknown/839CCA8.4bpp");
const u32 gUnknown_839CDA8[] = INCBIN_U32("graphics/object_events/pics/unknown/839CDA8.4bpp");
const u32 gUnknown_839CEA8[] = INCBIN_U32("graphics/object_events/pics/unknown/839CEA8.4bpp");
const u32 gUnknown_839CFA8[] = INCBIN_U32("graphics/object_events/pics/unknown/839CFA8.4bpp");
const u32 gUnknown_839D0A8[] = INCBIN_U32("graphics/object_events/pics/unknown/839D0A8.4bpp");
const u32 gUnknown_839D1A8[] = INCBIN_U32("graphics/object_events/pics/unknown/839D1A8.4bpp");
const u32 gUnknown_839D2A8[] = INCBIN_U32("graphics/object_events/pics/unknown/839D2A8.4bpp");
const u32 gUnknown_839D328[] = INCBIN_U32("graphics/object_events/pics/unknown/839D328.4bpp");
const u16 gUnknown_839D3A8[] = INCBIN_U16("graphics/object_events/palettes/839D3A8.gbapal");
const u32 gUnknown_839D3C8[] = INCBIN_U32("graphics/object_events/pics/unknown/839D3C8.4bpp");
const u16 gUnknown_839C588[] = INCBIN_U16("graphics/object_events/pics/effects/pop_out_of_ash.gbapal");
const u16 gUnknown_839C5A8[] = INCBIN_U16("graphics/object_events/pics/effects/pop_out_of_ash.4bpp");
const u16 gUnknown_839C828[] = INCBIN_U16("graphics/object_events/pics/effects/lavaridge_warp.4bpp");
const u16 gUnknown_839CAA8[] = INCBIN_U16("graphics/object_events/pics/effects/underwater_bubbles.4bpp");
const u16 gUnknown_839D2A8[] = INCBIN_U16("graphics/object_events/pics/effects/small_sparkle.4bpp");
const u16 gUnknown_839D3A8[] = INCBIN_U16("graphics/object_events/pics/effects/small_sparkle.gbapal");
const u16 gUnknown_839D3C8[] = INCBIN_U16("graphics/object_events/pics/effects/fly_blob.4bpp");
+2 -2
View File
@@ -1243,13 +1243,13 @@ void ResetObjectEvents(void)
static void CreateReflectionEffectSprites(void)
{
u8 spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[21], 0, 0, 31);
u8 spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFGFX_REFLECTION], 0, 0, 31);
gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL;
InitSpriteAffineAnim(&gSprites[spriteId]);
StartSpriteAffineAnim(&gSprites[spriteId], 0);
gSprites[spriteId].invisible = TRUE;
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[21], 0, 0, 31);
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFGFX_REFLECTION], 0, 0, 31);
gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL;
InitSpriteAffineAnim(&gSprites[spriteId]);
StartSpriteAffineAnim(&gSprites[spriteId], 1);
+4 -4
View File
@@ -1903,7 +1903,7 @@ u8 FldEff_LavaridgeGymWarp(void)
{
u8 spriteId;
sub_8063BC4((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 8);
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[33], gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFGFX_33], gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
gSprites[spriteId].oam.priority = gFieldEffectArguments[3];
gSprites[spriteId].coordOffsetEnabled = TRUE;
return spriteId;
@@ -1996,7 +1996,7 @@ u8 FldEff_PopOutOfAsh(void)
{
u8 spriteId;
sub_8063BC4((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 8);
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[32], gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFGFX_32], gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
gSprites[spriteId].oam.priority = gFieldEffectArguments[3];
gSprites[spriteId].coordOffsetEnabled = TRUE;
return spriteId;
@@ -3048,7 +3048,7 @@ static void sub_8086D94(struct Sprite * sprite);
u8 FldEff_NpcFlyOut(void)
{
u8 spriteId = CreateSprite(gFieldEffectObjectTemplatePointers[26], 0x78, 0, 1);
u8 spriteId = CreateSprite(gFieldEffectObjectTemplatePointers[FLDEFFGFX_FLY_BLOB], 0x78, 0, 1);
struct Sprite * sprite = &gSprites[spriteId];
sprite->oam.paletteNum = 0;
@@ -3239,7 +3239,7 @@ static u8 sub_8087168(void)
{
u8 spriteId;
struct Sprite * sprite;
spriteId = CreateSprite(gFieldEffectObjectTemplatePointers[26], 0xff, 0xb4, 0x1);
spriteId = CreateSprite(gFieldEffectObjectTemplatePointers[FLDEFFGFX_FLY_BLOB], 0xff, 0xb4, 0x1);
sprite = &gSprites[spriteId];
sprite->oam.paletteNum = 0;
sprite->oam.priority = 1;
+1 -1
View File
@@ -3770,7 +3770,7 @@ static void CreateSecretBaseEnemyParty(struct SecretBaseRecord *secretBaseRecord
}
}
gBattleTypeFlags = 8;
gTrainerBattleOpponent_A = 0x400;
gTrainerBattleOpponent_A = SECRET_BASE_OPPONENT;
}
u8 GetSecretBaseTrainerPicIndex(void)