Sprite System


Defines

#define XF_SetSpriteX(sprite, x)   xf_sprites[sprite]->X = x
 Set the X position of a sprite on screen Sprite number in the sprite system X position.
#define XF_SetSpriteY(sprite, y)   xf_sprites[sprite]->Y = y
 Set the Y position of a sprite on screen Sprite number in the sprite system Y position.
#define XF_GetSpriteX(sprite)   xf_sprites[sprite]->X
 Get the X position of a sprite on screen Sprite number in the sprite system.
#define XF_GetSpriteY(sprite)   xf_sprites[sprite]->Y
 Get the Y position of a sprite on screen Sprite number in the sprite system.
#define XF_GetSpriteWidth(sprite)   xf_sprites[sprite]->Width
#define XF_GetSpriteHeight(sprite)   xf_sprites[sprite]->Height
#define XF_SetSpriteAlive(sprite, alive)   xf_sprites[sprite]->Alive = alive
#define XF_GetSpriteAlive(sprite)   (xf_sprites[sprite] && (xf_sprites[sprite]->Alive))
#define XF_SetSpriteVisible(sprite, visible)   xf_sprites[sprite]->Alive = visible
#define XF_GetSpriteVisible(sprite)   (xf_sprites[sprite] && (xf_sprites[sprite]->Alive))
#define XF_StartSpriteAnim(sprite, firstframe, lastframe, speed)   XF_StartSpriteAnimEx(sprite, firstframe, lastframe, speed, ANIM_INFINITE)
 Start a sprite animation. Once started, it continues on and on by itself until you stop it ! sprite number in the sprite system First frame of the animation sequence, most of the time 0... Last frame to be displayed. When it gets there, it loops back to the first frame Speed, in frames per second. So speed 1 would mean 1 image per second, so 1 image every game frame.
#define XF_StopSpriteAnim(sprite)   xf_sprites[sprite]->AnimPlay = 0
 Stop a sprite animation sprite number in the sprite system.
#define XF_SetSpriteFrame(sprite, frame)   xf_sprites[sprite]->Frame = frame
#define XF_GetSpriteFrame(sprite)   xf_sprites[sprite]->Frame
#define XF_SetSpritePrio(sprite, prio)   xf_sprites[sprite]->Priority = prio
#define XF_GetSpritePrio(sprite)   xf_sprites[sprite]->Priority
#define XF_SetSpriteAlpha(sprite, alpha)   xf_sprites[sprite]->Alpha = alpha
#define XF_GetSpriteAlpha(sprite)   xf_sprites[sprite]->Alpha
#define XF_SetSpriteHFlip(sprite, hflip)   xf_sprites[sprite]->HFlip = hflip
#define XF_GetSpriteHFlip(sprite)   xf_sprites[sprite]->HFlip
#define XF_SetSpriteVFlip(sprite, vflip)   xf_sprites[sprite]->VFlip = vflip
#define XF_GetSpriteVFlip(sprite)   xf_sprites[sprite]->VFlip
#define XF_SetSpriteAngle(sprite, angle)   xf_sprites[sprite]->Angle = angle
#define XF_GetSpriteAngle(sprite)   xf_sprites[sprite]->Angle
#define XF_SetSpriteZoom(sprite, zoom)   xf_sprites[sprite]->Zoom = zoom
#define XF_GetSpriteZoom(sprite)   xf_sprites[sprite]->Zoom
#define XF_SetSpritePal(sprite, pal)   xf_sprites[sprite]->Palette = pal
#define XF_GetSpritePal(sprite)   xf_sprites[sprite]->Palette
#define XF_SetSpriteWindow(sprite, window)   xf_sprites[sprite]->Window = window
#define XF_GetSpriteWindow(sprite)   xf_sprites[sprite]->Window

Functions

void XF_CreateSprite (u32 sprite, XF_Sprite *image, s16 width, s16 height, s32 x, s32 y)
void XF_SetSpriteXY (u16 sprite, s16 x, s16 y)
void XF_StartSpriteAnimEx (s16 sprite, s16 FirstFrame, s16 LastFrame, s16 AnimSpeed, u8 AnimType, s16 AnimCycles)
 Start a sprite animation. Once started, it continues on and on by itself until you stop it ! sprite number in the sprite system First frame of the animation sequence, most of the time 0... Last frame to be displayed. When it gets there, it loops back to the first frame Speed, in frames per second. So speed 1 would mean 1 image per second, so 1 image every game frame Defines how you want it to loop. ANIM_LOOP (0) for a normal loop, ANIM_UPDOWN (1) for back and forth animation. Number of animation cycles before stopping. If using ANIM_UPDOWN, it takes 2 cycles to come back to the original image.
void XF_SetSpriteHVFlip (s16 sprite, u8 hflip, u8 vflip)
void XF_SetSpriteLimits (u16 sprite, u8 x0, u8 y0, u8 x1, u8 y1)
void XF_ShowSprite (s16 sprite)
XF_SpriteXF_GifToSprite (void *gif)
void XF_CloneSprite (u32 sprite, u32 targetsprite)
void XF_SetSpriteImage (u32 sprite, XF_Sprite *image)

Detailed Description

Sprite System

Define Documentation

#define XF_GetSpriteAlive ( sprite   )     (xf_sprites[sprite] && (xf_sprites[sprite]->Alive))

Definition at line 138 of file xf_sprites.h.

#define XF_GetSpriteAlpha ( sprite   )     xf_sprites[sprite]->Alpha

Definition at line 208 of file xf_sprites.h.

#define XF_GetSpriteAngle ( sprite   )     xf_sprites[sprite]->Angle

Definition at line 217 of file xf_sprites.h.

#define XF_GetSpriteFrame ( sprite   )     xf_sprites[sprite]->Frame

Definition at line 202 of file xf_sprites.h.

#define XF_GetSpriteHeight ( sprite   )     xf_sprites[sprite]->Height

Definition at line 135 of file xf_sprites.h.

#define XF_GetSpriteHFlip ( sprite   )     xf_sprites[sprite]->HFlip

Definition at line 211 of file xf_sprites.h.

#define XF_GetSpritePal ( sprite   )     xf_sprites[sprite]->Palette

Definition at line 223 of file xf_sprites.h.

#define XF_GetSpritePrio ( sprite   )     xf_sprites[sprite]->Priority

Definition at line 205 of file xf_sprites.h.

#define XF_GetSpriteVFlip ( sprite   )     xf_sprites[sprite]->VFlip

Definition at line 214 of file xf_sprites.h.

#define XF_GetSpriteVisible ( sprite   )     (xf_sprites[sprite] && (xf_sprites[sprite]->Alive))

Definition at line 141 of file xf_sprites.h.

#define XF_GetSpriteWidth ( sprite   )     xf_sprites[sprite]->Width

Definition at line 134 of file xf_sprites.h.

#define XF_GetSpriteWindow ( sprite   )     xf_sprites[sprite]->Window

Definition at line 226 of file xf_sprites.h.

#define XF_GetSpriteX ( sprite   )     xf_sprites[sprite]->X

Get the X position of a sprite on screen Sprite number in the sprite system.

Definition at line 119 of file xf_sprites.h.

#define XF_GetSpriteY ( sprite   )     xf_sprites[sprite]->Y

Get the Y position of a sprite on screen Sprite number in the sprite system.

Definition at line 129 of file xf_sprites.h.

#define XF_GetSpriteZoom ( sprite   )     xf_sprites[sprite]->Zoom

Definition at line 220 of file xf_sprites.h.

#define XF_SetSpriteAlive ( sprite,
alive   )     xf_sprites[sprite]->Alive = alive

Definition at line 137 of file xf_sprites.h.

#define XF_SetSpriteAlpha ( sprite,
alpha   )     xf_sprites[sprite]->Alpha = alpha

Definition at line 207 of file xf_sprites.h.

#define XF_SetSpriteAngle ( sprite,
angle   )     xf_sprites[sprite]->Angle = angle

Definition at line 216 of file xf_sprites.h.

#define XF_SetSpriteFrame ( sprite,
frame   )     xf_sprites[sprite]->Frame = frame

Definition at line 201 of file xf_sprites.h.

#define XF_SetSpriteHFlip ( sprite,
hflip   )     xf_sprites[sprite]->HFlip = hflip

Definition at line 210 of file xf_sprites.h.

#define XF_SetSpritePal ( sprite,
pal   )     xf_sprites[sprite]->Palette = pal

Definition at line 222 of file xf_sprites.h.

#define XF_SetSpritePrio ( sprite,
prio   )     xf_sprites[sprite]->Priority = prio

Definition at line 204 of file xf_sprites.h.

#define XF_SetSpriteVFlip ( sprite,
vflip   )     xf_sprites[sprite]->VFlip = vflip

Definition at line 213 of file xf_sprites.h.

#define XF_SetSpriteVisible ( sprite,
visible   )     xf_sprites[sprite]->Alive = visible

Definition at line 140 of file xf_sprites.h.

#define XF_SetSpriteWindow ( sprite,
window   )     xf_sprites[sprite]->Window = window

Definition at line 225 of file xf_sprites.h.

#define XF_SetSpriteX ( sprite,
 )     xf_sprites[sprite]->X = x

Set the X position of a sprite on screen Sprite number in the sprite system X position.

Definition at line 89 of file xf_sprites.h.

#define XF_SetSpriteY ( sprite,
 )     xf_sprites[sprite]->Y = y

Set the Y position of a sprite on screen Sprite number in the sprite system Y position.

Definition at line 102 of file xf_sprites.h.

#define XF_SetSpriteZoom ( sprite,
zoom   )     xf_sprites[sprite]->Zoom = zoom

Definition at line 219 of file xf_sprites.h.

#define XF_StartSpriteAnim ( sprite,
firstframe,
lastframe,
speed   )     XF_StartSpriteAnimEx(sprite, firstframe, lastframe, speed, ANIM_INFINITE)

Start a sprite animation. Once started, it continues on and on by itself until you stop it ! sprite number in the sprite system First frame of the animation sequence, most of the time 0... Last frame to be displayed. When it gets there, it loops back to the first frame Speed, in frames per second. So speed 1 would mean 1 image per second, so 1 image every game frame.

Definition at line 164 of file xf_sprites.h.

#define XF_StopSpriteAnim ( sprite   )     xf_sprites[sprite]->AnimPlay = 0

Stop a sprite animation sprite number in the sprite system.

Definition at line 199 of file xf_sprites.h.


Function Documentation

void XF_CloneSprite ( u32  sprite,
u32  targetsprite 
) [inline]

Definition at line 241 of file xf_sprites.h.

void XF_CreateSprite ( u32  sprite,
XF_Sprite image,
s16  width,
s16  height,
s32  x,
s32  y 
)

Definition at line 45 of file xf_sprites.c.

XF_Sprite* XF_GifToSprite ( void *  gif  ) 

Definition at line 52 of file xf_gif.c.

void XF_SetSpriteHVFlip ( s16  sprite,
u8  hflip,
u8  vflip 
) [inline]

Definition at line 228 of file xf_sprites.h.

void XF_SetSpriteImage ( u32  sprite,
XF_Sprite image 
)

Definition at line 35 of file xf_sprites.c.

void XF_SetSpriteLimits ( u16  sprite,
u8  x0,
u8  y0,
u8  x1,
u8  y1 
)

Definition at line 26 of file xf_sprites.c.

void XF_SetSpriteXY ( u16  sprite,
s16  x,
s16  y 
) [inline]

Definition at line 104 of file xf_sprites.h.

void XF_ShowSprite ( s16  sprite  ) 

Definition at line 94 of file xf_sprites.c.

void XF_StartSpriteAnimEx ( s16  sprite,
s16  FirstFrame,
s16  LastFrame,
s16  AnimSpeed,
u8  AnimType,
s16  AnimCycles 
)

Start a sprite animation. Once started, it continues on and on by itself until you stop it ! sprite number in the sprite system First frame of the animation sequence, most of the time 0... Last frame to be displayed. When it gets there, it loops back to the first frame Speed, in frames per second. So speed 1 would mean 1 image per second, so 1 image every game frame Defines how you want it to loop. ANIM_LOOP (0) for a normal loop, ANIM_UPDOWN (1) for back and forth animation. Number of animation cycles before stopping. If using ANIM_UPDOWN, it takes 2 cycles to come back to the original image.

Definition at line 16 of file xf_spriteanim.c.


Generated on Wed Dec 12 23:46:48 2007 for XFlib by  doxygen 1.5.4