summaryrefslogtreecommitdiff
path: root/include/sprite.h
diff options
context:
space:
mode:
authorProjectRevoTPP <projectrevotpp@hotmail.com>2018-01-04 22:21:39 -0500
committerProjectRevoTPP <projectrevotpp@hotmail.com>2018-01-04 22:21:39 -0500
commit5b5fedfc78a9f2751d001a92c65be86e3ffefcc1 (patch)
treee1357a59a3d98cf1e976f948f98d799f87a00bf3 /include/sprite.h
parentab06b56532026db85a9cba1c21c8b2235fcdf222 (diff)
parentf0e98a9204bf19981c0c9652bc9ed82ae95438e4 (diff)
Merge branch 'master' of https://github.com/pret/pokeruby into assert
Diffstat (limited to 'include/sprite.h')
-rw-r--r--include/sprite.h12
1 files changed, 6 insertions, 6 deletions
diff --git a/include/sprite.h b/include/sprite.h
index 9937a0797..b72c09989 100644
--- a/include/sprite.h
+++ b/include/sprite.h
@@ -120,10 +120,6 @@ union AffineAnimCmd
{.jump = {.type = AFFINEANIMCMDTYPE_JUMP, .target = _target}}
#define AFFINEANIMCMD_END \
{.type = AFFINEANIMCMDTYPE_END}
-#define AFFINEANIMCMD_LOOP(_count) \
- {.loop = {.type = AFFINEANIMCMDTYPE_LOOP, .count = _count}}
-#define AFFINEANIMCMD_JUMP(_target) \
- {.jump = {.type = AFFINEANIMCMDTYPE_JUMP, .target = _target}}
struct AffineAnimState
{
@@ -172,6 +168,8 @@ struct SpriteTemplate
void (*callback)(struct Sprite *);
};
+typedef void (*SpriteCallback)(struct Sprite *);
+
struct Sprite
{
/*0x00*/ struct OamData oam;
@@ -180,7 +178,7 @@ struct Sprite
/*0x10*/ const union AffineAnimCmd *const *affineAnims;
/*0x14*/ const struct SpriteTemplate *template;
/*0x18*/ const struct SubspriteTable *subspriteTables;
- /*0x1C*/ void (*callback)(struct Sprite *);
+ /*0x1C*/ SpriteCallback callback;
/*0x20*/ struct Coords16 pos1;
/*0x24*/ struct Coords16 pos2;
@@ -238,6 +236,8 @@ extern s16 gSpriteCoordOffsetX;
extern s16 gSpriteCoordOffsetY;
extern u8 gReservedSpritePaletteCount;
+extern u8 gOamLimit;
+
extern struct Sprite gSprites[];
void ResetSpriteData(void);
@@ -246,7 +246,7 @@ void BuildOamBuffer(void);
u8 CreateSprite(const struct SpriteTemplate *template, s16 x, s16 y, u8 subpriority);
u8 CreateSpriteAtEnd(const struct SpriteTemplate *template, s16 x, s16 y, u8 subpriority);
u8 CreateInvisibleSprite(void (*callback)(struct Sprite *));
-u8 CreateSpriteAndAnimate(struct SpriteTemplate *template, s16 x, s16 y, u8 subpriority);
+u8 CreateSpriteAndAnimate(const struct SpriteTemplate *template, s16 x, s16 y, u8 subpriority);
void DestroySprite(struct Sprite *sprite);
void ResetOamRange(u8 a, u8 b);
void LoadOam(void);