1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
#include "global.h"
#include "event_object_movement.h"
#include "fldeff_recordmixing.h"
#include "sprite.h"
extern const struct OamData gFieldOamData_32x8;
static const u8 sSpriteImage_83D26C0[] = INCBIN_U8("graphics/unknown_sprites/83D2860/0.4bpp");
static const u8 sSpriteImage_83D2740[] = INCBIN_U8("graphics/unknown_sprites/83D2860/1.4bpp");
static const u8 sSpriteImage_83D27C0[] = INCBIN_U8("graphics/unknown_sprites/83D2860/2.4bpp");
static const u16 sPalette_3D2840[] = INCBIN_U16("graphics/unknown/unknown_3D2840.gbapal");
static const struct SpriteFrameImage sSpriteImageTable_83FD950[] =
{
{ sSpriteImage_83D26C0, sizeof(sSpriteImage_83D26C0) },
{ sSpriteImage_83D2740, sizeof(sSpriteImage_83D2740) },
{ sSpriteImage_83D27C0, sizeof(sSpriteImage_83D27C0) },
};
static const struct SpritePalette sUnknown_083D2878 = { sPalette_3D2840, 0x1000 };
static const union AnimCmd sSpriteAnim_83D2880[] =
{
ANIMCMD_FRAME(0, 30),
ANIMCMD_FRAME(1, 30),
ANIMCMD_FRAME(2, 30),
ANIMCMD_JUMP(0),
};
static const union AnimCmd *const sSpriteAnimTable_83D2890[] =
{
sSpriteAnim_83D2880,
};
static const struct SpriteTemplate sSpriteTemplate_83D2894 =
{
.tileTag = 0xFFFF,
.paletteTag = 0x1000,
.oam = &gFieldOamData_32x8,
.anims = sSpriteAnimTable_83D2890,
.images = sSpriteImageTable_83FD950,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = SpriteCallbackDummy,
};
u8 CreateRecordMixingSprite(void)
{
u8 spriteId;
LoadSpritePalette(&sUnknown_083D2878);
spriteId = CreateSprite(&sSpriteTemplate_83D2894, 0, 0, 82);
if (spriteId == MAX_SPRITES)
{
return MAX_SPRITES;
}
else
{
struct Sprite *sprite = &gSprites[spriteId];
sub_8060388(16, 13, &sprite->x, &sprite->y);
sprite->coordOffsetEnabled = TRUE;
sprite->x += 16;
sprite->y += 2;
}
return spriteId;
}
void DestroyRecordMixingSprite(void)
{
int i;
for (i = 0; i < MAX_SPRITES; i++)
{
if (gSprites[i].template == &sSpriteTemplate_83D2894)
{
FreeSpritePalette(&gSprites[i]);
DestroySprite(&gSprites[i]);
}
}
}
|