Functions | |
void | PA_SetScreenSpace (s16 ScreenSpace) |
Set the space between the 2 screens for the Dual Fonctions. 48 pixels by default. | |
void | PA_DualSetSpriteX (u8 obj, s16 x) |
Set the X position of a sprite on screen. | |
void | PA_DualSetSpriteY (u8 obj, s16 y) |
Set the Y position of a sprite on screen. | |
void | PA_DualSetSpriteXY (u8 sprite, s16 x, s16 y) |
Set the X and Y position of a sprite on screen. | |
void | PA_DualCreateSprite (u8 obj_number, void *obj_data, u8 obj_shape, u8 obj_size, u8 color_mode, u8 palette, s16 x, s16 y) |
Create a sprite with it's gfx, on 2 screens. | |
void | PA_DualCreateSpriteEx (u8 obj_number, void *obj_data, u8 obj_shape, u8 obj_size, u8 color_mode, u8 palette, u8 obj_mode, u8 mosaic, u8 hflip, u8 vflip, u8 prio, u8 dblsize, s16 x, s16 y) |
Create a sprite with it's gfx. This is the complex version of the function. | |
void | PA_DualCreate16bitSpriteEx (u8 obj_number, void *obj_data, u8 obj_shape, u8 obj_size, u8 mosaic, u8 hflip, u8 vflip, u8 prio, u8 dblsize, s16 x, s16 y) |
Create a 16 bit sprite with it's gfx. This is the complex version of the function. Warning : a 16bit sprite MUST be 128 pixels large, even if you sprite only takes up a small part on the left... | |
void | PA_DualCreate16bitSprite (u8 obj_number, void *obj_data, u8 obj_shape, u8 obj_size, s16 x, s16 y) |
Create a 16 bit sprite with it's gfx. This is the simple version of the function. Warning : a 16bit sprite MUST be 128 pixels large, even if you sprite only takes up a small part on the left... | |
void | PA_DualCreateSpriteFromGfx (u8 obj_number, u16 *obj_gfx, u8 obj_shape, u8 obj_size, u8 color_mode, u8 palette, s16 x, s16 y) |
Create a sprite with it's gfx. This is the simple version of the function. | |
void | PA_DualCreateSpriteExFromGfx (u8 obj_number, u16 *obj_gfx, u8 obj_shape, u8 obj_size, u8 color_mode, u8 palette, u8 obj_mode, u8 mosaic, u8 hflip, u8 vflip, u8 prio, u8 dblsize, s16 x, s16 y) |
Create a sprite with it's gfx. This is the complex version of the function. | |
void | PA_DualUpdateSpriteGfx (u8 obj_number, void *obj_data) |
Update the Gfx of a given sprite. | |
void | PA_DualUpdateGfx (u16 gfx_number, void *obj_data) |
Update the Gfx of a given sprite. | |
void | PA_DualDeleteSprite (u8 obj_number) |
Delete a given sprite. If it is the only one to use it's gfx, it'll be deleted too. | |
void | PA_DualSetSpriteRotEnable (u8 sprite, u8 rotset) |
Rotate and zoom a sprite. | |
void | PA_DualSetSpriteRotDisable (u8 sprite) |
Stop rotating and zooming a sprite. | |
void | PA_DualSetRotset (u8 rotset, s16 angle, u16 zoomx, u16 zoomy) |
Rotate and zoom a sprite. | |
void | PA_DualSetRotsetNoZoom (u8 rotset, s16 angle) |
Rotate a sprite without zooming. It's a bit faster than the normal PA_SetRotset function. | |
void | PA_DualSetRotsetNoAngle (u8 rotset, u16 zoomx, u16 zoomy) |
Zoom a sprite without rotating. It's a bit faster than the normal PA_SetRotset function. | |
void | PA_DualSetSpritePal (u8 obj, u8 pal) |
Set the color palette used by a sprite. | |
void | PA_DualSetSpriteDblsize (u8 obj, u8 dblsize) |
Enable or disable double size for a given sprite. | |
void | PA_DualSetSpriteColors (u8 sprite, u8 n_colors) |
Change the sprite's color mode. | |
void | PA_DualSetSpriteMode (u8 sprite, u8 obj_mode) |
Set the sprite's mode : 0 for normal, 1 for alpha blending, 2 for window. | |
void | PA_DualSetSpriteMosaic (u8 obj, u8 mosaic) |
Enable or disable mosaic mode for a given sprite. | |
void | PA_DualSetSpriteHflip (u8 obj, u8 hflip) |
Enable or disable horizontal flip for a given sprite. | |
void | PA_DualSetSpriteVflip (u8 obj, u8 vflip) |
Enable or disable vertical flip for a given sprite. | |
void | PA_DualSetSpriteGfx (u8 obj, u16 *gfx) |
Change the gfx used by a sprite. | |
void | PA_DualSetSpritePrio (u8 obj, u8 prio) |
Set a sprite's Background priority. | |
void | PA_DualCloneSprite (u8 obj, u8 target) |
Clone a sprite. Works only for sprites on the same screen. | |
void | PA_DualSetSpriteAnimEx (u8 sprite, u8 lx, u8 ly, u8 ncolors, s16 animframe) |
Set the animation frame for a given sprite. This function is faster than the normal PA_SetSpriteAnim because it doesn't have to lookup the sprite dimensions... | |
void | PA_DualSetSpriteAnim (u8 sprite, s16 animframe) |
Set the animation frame for a given sprite. Same as PA_SetSpriteAnimEx, but a bit slower and easier to use... | |
void | PA_DualStartSpriteAnimEx (u8 sprite, s16 firstframe, s16 lastframe, s16 speed, u8 type, s16 ncycles) |
Start a sprite animation for DualSprites. Once started, it continues on and on by itself until you stop it ! | |
void | PA_DualStartSpriteAnim (u8 sprite, s16 firstframe, s16 lastframe, s16 speed) |
Start a sprite animation for DualSprite. Once started, it continues on and on by itself until you stop it ! | |
void | PA_DualStopSpriteAnim (u8 sprite) |
Stop a sprite animation for DualSprites. | |
void | PA_DualSetSpriteAnimFrame (u8 sprite, u16 frame) |
Set the current animation frame number for DualSprites. | |
u16 | PA_DualGetSpriteAnimFrame (u8 sprite) |
Returns the current animation frame number for DualSprites. | |
void | PA_DualSetSpriteAnimSpeed (u8 sprite, s16 speed) |
Set the current animation speed for DualSprites. | |
u16 | PA_DualGetSpriteAnimSpeed (u8 sprite) |
Returns the current animation speed for DualSprites. | |
void | PA_DualSpriteAnimPause (u8 sprite, u8 pause) |
Pause or UnPause a sprite animation for DualSprites. |
inline void PA_DualCloneSprite | ( | u8 | obj, | |
u8 | target | |||
) | [inline] |
Clone a sprite. Works only for sprites on the same screen.
obj | Object number in the sprite system | |
target | Target sprite to clone |
inline void PA_DualCreate16bitSprite | ( | u8 | obj_number, | |
void * | obj_data, | |||
u8 | obj_shape, | |||
u8 | obj_size, | |||
s16 | x, | |||
s16 | y | |||
) | [inline] |
Create a 16 bit sprite with it's gfx. This is the simple version of the function. Warning : a 16bit sprite MUST be 128 pixels large, even if you sprite only takes up a small part on the left...
obj_number | Object number you want to use (0-127 for each screen seperately). | |
obj_data | Gfx to load | |
obj_shape | Object shape, from 0 to 2. Use the OBJ_SIZE_32X32 (...) macros for object shape and obj_size... | |
obj_size | Object size. Use the OBJ_SIZE_32X32 (...) macros for object shape and obj_size... | |
x | X position of the sprite | |
y | Y position of the sprite |
inline void PA_DualCreate16bitSpriteEx | ( | u8 | obj_number, | |
void * | obj_data, | |||
u8 | obj_shape, | |||
u8 | obj_size, | |||
u8 | mosaic, | |||
u8 | hflip, | |||
u8 | vflip, | |||
u8 | prio, | |||
u8 | dblsize, | |||
s16 | x, | |||
s16 | y | |||
) | [inline] |
Create a 16 bit sprite with it's gfx. This is the complex version of the function. Warning : a 16bit sprite MUST be 128 pixels large, even if you sprite only takes up a small part on the left...
obj_number | Object number you want to use (0-127 for each screen seperately). | |
obj_data | Gfx to load | |
obj_shape | Object shape, from 0 to 2. Use the OBJ_SIZE_32X32 (...) macros for object shape and obj_size... | |
obj_size | Object size. Use the OBJ_SIZE_32X32 (...) macros for object shape and obj_size... | |
mosaic | Activate Mosaic for the sprite or not. Not yet functionnal either :p | |
hflip | Horizontal flip on or off... | |
vflip | Vertical flip... | |
prio | Sprite priority regarding backgrounds : in front of which background to show it (0-3) | |
dblsize | Double the possible sprite size. Activate only if you are going to rotate and zoom in the sprite | |
x | X position of the sprite | |
y | Y position of the sprite |
inline void PA_DualCreateSprite | ( | u8 | obj_number, | |
void * | obj_data, | |||
u8 | obj_shape, | |||
u8 | obj_size, | |||
u8 | color_mode, | |||
u8 | palette, | |||
s16 | x, | |||
s16 | y | |||
) | [inline] |
Create a sprite with it's gfx, on 2 screens.
obj_number | Object number you want to use (0-127 for each screen seperately). | |
obj_data | Gfx to load | |
obj_shape | Object shape, from 0 to 2. Use the OBJ_SIZE_32X32 (...) macros for object shape and obj_size... | |
obj_size | Object size. Use the OBJ_SIZE_32X32 (...) macros for object shape and obj_size... | |
color_mode | 256 or 16 color mode (1 or 0). | |
palette | Palette to use (0-15). | |
x | X position of the sprite | |
y | Y position of the sprite |
inline void PA_DualCreateSpriteEx | ( | u8 | obj_number, | |
void * | obj_data, | |||
u8 | obj_shape, | |||
u8 | obj_size, | |||
u8 | color_mode, | |||
u8 | palette, | |||
u8 | obj_mode, | |||
u8 | mosaic, | |||
u8 | hflip, | |||
u8 | vflip, | |||
u8 | prio, | |||
u8 | dblsize, | |||
s16 | x, | |||
s16 | y | |||
) | [inline] |
Create a sprite with it's gfx. This is the complex version of the function.
obj_number | Object number you want to use (0-127 for each screen seperately). | |
obj_data | Gfx to load | |
obj_shape | Object shape, from 0 to 2. Use the OBJ_SIZE_32X32 (...) macros for object shape and obj_size... | |
obj_size | Object size. Use the OBJ_SIZE_32X32 (...) macros for object shape and obj_size... | |
color_mode | 256 or 16 color mode (1 or 0). | |
palette | Palette to use (0-15). | |
obj_mode | Object mode (normal, transparent, window). Not functionnal yet, please leave to 0 for now | |
mosaic | Activate Mosaic for the sprite or not. Not yet functionnal either :p | |
hflip | Horizontal flip on or off... | |
vflip | Vertical flip... | |
prio | Sprite priority regarding backgrounds : in front of which background to show it (0-3) | |
dblsize | Double the possible sprite size. Activate only if you are going to rotate and zoom in the sprite | |
x | X position of the sprite | |
y | Y position of the sprite |
inline void PA_DualCreateSpriteExFromGfx | ( | u8 | obj_number, | |
u16 * | obj_gfx, | |||
u8 | obj_shape, | |||
u8 | obj_size, | |||
u8 | color_mode, | |||
u8 | palette, | |||
u8 | obj_mode, | |||
u8 | mosaic, | |||
u8 | hflip, | |||
u8 | vflip, | |||
u8 | prio, | |||
u8 | dblsize, | |||
s16 | x, | |||
s16 | y | |||
) | [inline] |
Create a sprite with it's gfx. This is the complex version of the function.
obj_number | Object number you want to use (0-127 for each screen seperately). | |
obj_gfx | Memory gfx to use. Get it by using PA_GetSpriteGfx or PA_CreateGfx | |
obj_shape | Object shape, from 0 to 2. Use the OBJ_SIZE_32X32 (...) macros for object shape and obj_size... | |
obj_size | Object size. Use the OBJ_SIZE_32X32 (...) macros for object shape and obj_size... | |
color_mode | 256 or 16 color mode (1 or 0). | |
palette | Palette to use (0-15). | |
obj_mode | Object mode (normal, transparent, window). Not functionnal yet, please leave to 0 for now | |
mosaic | Activate Mosaic for the sprite or not. Not yet functionnal either :p | |
hflip | Horizontal flip on or off... | |
vflip | Vertical flip... | |
prio | Sprite priority regarding backgrounds : in front of which background to show it (0-3) | |
dblsize | Double the possible sprite size. Activate only if you are going to rotate and zoom in the sprite | |
x | X position of the sprite | |
y | Y position of the sprite |
inline void PA_DualCreateSpriteFromGfx | ( | u8 | obj_number, | |
u16 * | obj_gfx, | |||
u8 | obj_shape, | |||
u8 | obj_size, | |||
u8 | color_mode, | |||
u8 | palette, | |||
s16 | x, | |||
s16 | y | |||
) | [inline] |
Create a sprite with it's gfx. This is the simple version of the function.
obj_number | Object number you want to use (0-127 for each screen seperately). | |
obj_gfx | Memory gfx to use. Get it by using PA_GetSpriteGfx or PA_CreateGfx | |
obj_shape | Object shape, from 0 to 2. Use the OBJ_SIZE_32X32 (...) macros for object shape and obj_size... | |
obj_size | Object size. Use the OBJ_SIZE_32X32 (...) macros for object shape and obj_size... | |
color_mode | 256 or 16 color mode (1 or 0). | |
palette | Palette to use (0-15). | |
x | X position of the sprite | |
y | Y position of the sprite |
inline void PA_DualDeleteSprite | ( | u8 | obj_number | ) | [inline] |
Delete a given sprite. If it is the only one to use it's gfx, it'll be deleted too.
obj_number | Sprite number |
inline u16 PA_DualGetSpriteAnimFrame | ( | u8 | sprite | ) | [inline] |
Returns the current animation frame number for DualSprites.
sprite | sprite number in the sprite system |
inline u16 PA_DualGetSpriteAnimSpeed | ( | u8 | sprite | ) | [inline] |
Returns the current animation speed for DualSprites.
sprite | sprite number in the sprite system |
inline void PA_DualSetRotset | ( | u8 | rotset, | |
s16 | angle, | |||
u16 | zoomx, | |||
u16 | zoomy | |||
) | [inline] |
Rotate and zoom a sprite.
rotset | Rotset you want to change. To give a sprite a rotset, use PA_SetSpriteRotEnable... | |
angle | Angle, between 0 and 512 (not 360, be carefull) | |
zoomx | Horizontal zoom. 256 is unzoomed, 512 is 2 times smaller, and 128 twice as big... So adjust at will ! :p | |
zoomy | Vertical zoom. 256 is unzoomed, 512 is 2 times smaller, and 128 twice as big... So adjust at will ! :p |
inline void PA_DualSetRotsetNoAngle | ( | u8 | rotset, | |
u16 | zoomx, | |||
u16 | zoomy | |||
) | [inline] |
Zoom a sprite without rotating. It's a bit faster than the normal PA_SetRotset function.
rotset | Rotset you want to change. To give a sprite a rotset, use PA_SetSpriteRotEnable... | |
zoomx | Horizontal zoom. 256 is unzoomed, 512 is 2 times smaller, and 128 twice as big... So adjust at will ! :p | |
zoomy | Vertical zoom. 256 is unzoomed, 512 is 2 times smaller, and 128 twice as big... So adjust at will ! :p |
inline void PA_DualSetRotsetNoZoom | ( | u8 | rotset, | |
s16 | angle | |||
) | [inline] |
Rotate a sprite without zooming. It's a bit faster than the normal PA_SetRotset function.
rotset | Rotset you want to change. To give a sprite a rotset, use PA_SetSpriteRotEnable... | |
angle | Angle, between 0 and 512 (not 360, be carefull) |
inline void PA_DualSetSpriteAnim | ( | u8 | sprite, | |
s16 | animframe | |||
) | [inline] |
Set the animation frame for a given sprite. Same as PA_SetSpriteAnimEx, but a bit slower and easier to use...
sprite | sprite number in the sprite system | |
animframe | Sprite animation frame (0, 1, 2, etc...) |
inline void PA_DualSetSpriteAnimEx | ( | u8 | sprite, | |
u8 | lx, | |||
u8 | ly, | |||
u8 | ncolors, | |||
s16 | animframe | |||
) | [inline] |
Set the animation frame for a given sprite. This function is faster than the normal PA_SetSpriteAnim because it doesn't have to lookup the sprite dimensions...
sprite | sprite number in the sprite system | |
lx | Sprite width (8, 16, 32, 64) | |
ly | Sprite height (8, 16, 32, 64) | |
ncolors | Sprite color mode (0 for 16 colors, 1 for 256) | |
animframe | Sprite animation frame (0, 1, 2, etc...) |
inline void PA_DualSetSpriteAnimFrame | ( | u8 | sprite, | |
u16 | frame | |||
) | [inline] |
Set the current animation frame number for DualSprites.
sprite | sprite number in the sprite system | |
frame | Frame number to use... |
inline void PA_DualSetSpriteAnimSpeed | ( | u8 | sprite, | |
s16 | speed | |||
) | [inline] |
Set the current animation speed for DualSprites.
sprite | sprite number in the sprite system | |
speed | Speed, in fps... |
inline void PA_DualSetSpriteColors | ( | u8 | sprite, | |
u8 | n_colors | |||
) | [inline] |
Change the sprite's color mode.
sprite | Object number in the sprite system | |
n_colors | 0 for 16 colors, 1 for 256 |
inline void PA_DualSetSpriteDblsize | ( | u8 | obj, | |
u8 | dblsize | |||
) | [inline] |
Enable or disable double size for a given sprite.
obj | Object number in the sprite system | |
dblsize | 1 to enable doublesize, 0 to disable it... |
inline void PA_DualSetSpriteGfx | ( | u8 | obj, | |
u16 * | gfx | |||
) | [inline] |
Change the gfx used by a sprite.
obj | Object number in the sprite system | |
gfx | Gfx number ; you can get one by using PA_CreateGfx or PA_GetSpriteGfx(obj_number); |
inline void PA_DualSetSpriteHflip | ( | u8 | obj, | |
u8 | hflip | |||
) | [inline] |
Enable or disable horizontal flip for a given sprite.
obj | Object number in the sprite system | |
hflip | Horizontal flip, 1 to enable, 0 to disable... |
inline void PA_DualSetSpriteMode | ( | u8 | sprite, | |
u8 | obj_mode | |||
) | [inline] |
Set the sprite's mode : 0 for normal, 1 for alpha blending, 2 for window.
sprite | Object number in the sprite system | |
obj_mode | Object mode : 0 for normal, 1 for alpha blending, 2 for window ; not working yet |
inline void PA_DualSetSpriteMosaic | ( | u8 | obj, | |
u8 | mosaic | |||
) | [inline] |
Enable or disable mosaic mode for a given sprite.
obj | Object number in the sprite system | |
mosaic | Set mosaic on (1) or off (0) |
inline void PA_DualSetSpritePal | ( | u8 | obj, | |
u8 | pal | |||
) | [inline] |
Set the color palette used by a sprite.
obj | Object number in the sprite system | |
pal | Palette number (0 - 15) |
inline void PA_DualSetSpritePrio | ( | u8 | obj, | |
u8 | prio | |||
) | [inline] |
Set a sprite's Background priority.
obj | Object number in the sprite system | |
prio | Sprite priority : 0 is over background 0, 1 over Bg 1, etc... (0-3) |
inline void PA_DualSetSpriteRotDisable | ( | u8 | sprite | ) | [inline] |
Stop rotating and zooming a sprite.
sprite | Sprite you want to rotate |
inline void PA_DualSetSpriteRotEnable | ( | u8 | sprite, | |
u8 | rotset | |||
) | [inline] |
Rotate and zoom a sprite.
sprite | Sprite you want to rotate | |
rotset | Rotset you want to give to that sprite (0-31). You can apparently use a rotset for multiple sprites if zoomed/rotated identically... |
inline void PA_DualSetSpriteVflip | ( | u8 | obj, | |
u8 | vflip | |||
) | [inline] |
Enable or disable vertical flip for a given sprite.
obj | Object number in the sprite system | |
vflip | Vertical flip, 1 to enable, 0 to disable... |
inline void PA_DualSetSpriteX | ( | u8 | obj, | |
s16 | x | |||
) | [inline] |
Set the X position of a sprite on screen.
obj | Object number in the sprite system | |
x | X position |
inline void PA_DualSetSpriteXY | ( | u8 | sprite, | |
s16 | x, | |||
s16 | y | |||
) | [inline] |
Set the X and Y position of a sprite on screen.
sprite | sprite number in the sprite system | |
x | X position | |
y | X position |
inline void PA_DualSetSpriteY | ( | u8 | obj, | |
s16 | y | |||
) | [inline] |
Set the Y position of a sprite on screen.
obj | Object number in the sprite system | |
y | Y position |
inline void PA_DualSpriteAnimPause | ( | u8 | sprite, | |
u8 | pause | |||
) | [inline] |
Pause or UnPause a sprite animation for DualSprites.
sprite | sprite number in the sprite system | |
pause | 1 for pause, 0 for unpause |
inline void PA_DualStartSpriteAnim | ( | u8 | sprite, | |
s16 | firstframe, | |||
s16 | lastframe, | |||
s16 | speed | |||
) | [inline] |
Start a sprite animation for DualSprite. Once started, it continues on and on by itself until you stop it !
sprite | sprite number in the sprite system | |
firstframe | First frame of the animation sequence, most of the time 0... | |
lastframe | Last frame to be displayed. When it gets there, it loops back to the first frame | |
speed | Speed, in frames per second. So speed 1 would mean 1 image per second, so 1 image every game frame |
inline void PA_DualStartSpriteAnimEx | ( | u8 | sprite, | |
s16 | firstframe, | |||
s16 | lastframe, | |||
s16 | speed, | |||
u8 | type, | |||
s16 | ncycles | |||
) | [inline] |
Start a sprite animation for DualSprites. Once started, it continues on and on by itself until you stop it !
sprite | sprite number in the sprite system | |
firstframe | First frame of the animation sequence, most of the time 0... | |
lastframe | Last frame to be displayed. When it gets there, it loops back to the first frame | |
speed | Speed, in frames per second. So speed 1 would mean 1 image per second, so 1 image every game frame | |
type | Defines how you want it to loop. ANIM_LOOP (0) for a normal loop, ANIM_UPDOWN (1) for back and forth animation. | |
ncycles | Number of animation cycles before stopping. If using ANIM_UPDOWN, it takes 2 cycles to come back to the original image |
inline void PA_DualStopSpriteAnim | ( | u8 | sprite | ) | [inline] |
Stop a sprite animation for DualSprites.
sprite | sprite number in the sprite system |
inline void PA_DualUpdateGfx | ( | u16 | gfx_number, | |
void * | obj_data | |||
) | [inline] |
Update the Gfx of a given sprite.
gfx_number | Gfx number in memory | |
obj_data | Gfx to load |
inline void PA_DualUpdateSpriteGfx | ( | u8 | obj_number, | |
void * | obj_data | |||
) | [inline] |
Update the Gfx of a given sprite.
obj_number | Object number in the sprite system | |
obj_data | Gfx to load |
inline void PA_SetScreenSpace | ( | s16 | ScreenSpace | ) | [inline] |
Set the space between the 2 screens for the Dual Fonctions. 48 pixels by default.
ScreenSpace | Space in pixels |