PAlib
|
Functions | |
static void | PA_SetScreenSpace (s16 ScreenSpace) |
Set the space between the 2 screens for the Dual Fonctions. 48 pixels by default. | |
static void | PA_DualSetSpriteX (u8 obj, s16 x) |
Set the X position of a sprite on screen. | |
static void | PA_DualSetSpriteY (u8 obj, s16 y) |
Set the Y position of a sprite on screen. | |
static void | PA_DualSetSpriteXY (u8 sprite, s16 x, s16 y) |
Set the X and Y position of a sprite on screen. | |
static 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. | |
static 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. | |
static 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... | |
static 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... | |
static 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. | |
static 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. | |
static void | PA_DualUpdateSpriteGfx (u8 obj_number, void *obj_data) |
Update the Gfx of a given sprite. | |
static void | PA_DualUpdateGfx (u16 gfx_number, void *obj_data) |
Update the Gfx of a given sprite. | |
static 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. | |
static void | PA_DualSetSpriteRotEnable (u8 sprite, u8 rotset) |
Rotate and zoom a sprite. | |
static void | PA_DualSetSpriteRotDisable (u8 sprite) |
Stop rotating and zooming a sprite. | |
static void | PA_DualSetRotset (u8 rotset, s16 angle, u16 zoomx, u16 zoomy) |
Rotate and zoom a sprite. | |
static void | PA_DualSetRotsetNoZoom (u8 rotset, s16 angle) |
Rotate a sprite without zooming. It's a bit faster than the normal PA_SetRotset function. | |
static 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. | |
static void | PA_DualSetSpritePal (u8 obj, u8 pal) |
Set the color palette used by a sprite. | |
static void | PA_DualSetSpriteDblsize (u8 obj, u8 dblsize) |
Enable or disable double size for a given sprite. | |
static void | PA_DualSetSpriteColors (u8 sprite, u8 n_colors) |
Change the sprite's color mode. | |
static void | PA_DualSetSpriteMode (u8 sprite, u8 obj_mode) |
Set the sprite's mode : 0 for normal, 1 for alpha blending, 2 for window. | |
static void | PA_DualSetSpriteMosaic (u8 obj, u8 mosaic) |
Enable or disable mosaic mode for a given sprite. | |
static void | PA_DualSetSpriteHflip (u8 obj, u8 hflip) |
Enable or disable horizontal flip for a given sprite. | |
static void | PA_DualSetSpriteVflip (u8 obj, u8 vflip) |
Enable or disable vertical flip for a given sprite. | |
static void | PA_DualSetSpriteGfx (u8 obj, u16 *gfx) |
Change the gfx used by a sprite. | |
static void | PA_DualSetSpritePrio (u8 obj, u8 prio) |
Set a sprite's Background priority. | |
static void | PA_DualCloneSprite (u8 obj, u8 target) |
Clone a sprite. Works only for sprites on the same screen. | |
static 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... | |
static 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... | |
static 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 ! | |
static 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 ! | |
static void | PA_DualStopSpriteAnim (u8 sprite) |
Stop a sprite animation for DualSprites. | |
static void | PA_DualSetSpriteAnimFrame (u8 sprite, u16 frame) |
Set the current animation frame number for DualSprites. | |
static u16 | PA_DualGetSpriteAnimFrame (u8 sprite) |
Returns the current animation frame number for DualSprites. | |
static void | PA_DualSetSpriteAnimSpeed (u8 sprite, s16 speed) |
Set the current animation speed for DualSprites. | |
static u16 | PA_DualGetSpriteAnimSpeed (u8 sprite) |
Returns the current animation speed for DualSprites. | |
static void | PA_DualSpriteAnimPause (u8 sprite, u8 pause) |
Pause or UnPause a sprite animation for DualSprites. | |
Load Sprite, move them around, rotate them...
|
inlinestatic |
Set the space between the 2 screens for the Dual Fonctions. 48 pixels by default.
ScreenSpace | Space in pixels |
|
inlinestatic |
Set the X position of a sprite on screen.
obj | Object number in the sprite system |
x | X position |
|
inlinestatic |
Set the Y position of a sprite on screen.
obj | Object number in the sprite system |
y | Y position |
|
inlinestatic |
Set the X and Y position of a sprite on screen.
sprite | sprite number in the sprite system |
x | X position |
y | X position |
|
inlinestatic |
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 |
|
inlinestatic |
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 |
|
inlinestatic |
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 |
|
inlinestatic |
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 |
|
inlinestatic |
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 |
|
inlinestatic |
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 |
|
inlinestatic |
Update the Gfx of a given sprite.
obj_number | Object number in the sprite system |
obj_data | Gfx to load |
|
inlinestatic |
Update the Gfx of a given sprite.
gfx_number | Gfx number in memory |
obj_data | Gfx to load |
|
inlinestatic |
Delete a given sprite. If it is the only one to use it's gfx, it'll be deleted too.
obj_number | Sprite number |
|
inlinestatic |
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... |
|
inlinestatic |
Stop rotating and zooming a sprite.
sprite | Sprite you want to rotate |
|
inlinestatic |
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 |
|
inlinestatic |
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) |
|
inlinestatic |
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 |
|
inlinestatic |
Set the color palette used by a sprite.
obj | Object number in the sprite system |
pal | Palette number (0 - 15) |
|
inlinestatic |
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... |
|
inlinestatic |
Change the sprite's color mode.
sprite | Object number in the sprite system |
n_colors | 0 for 16 colors, 1 for 256 |
|
inlinestatic |
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 |
|
inlinestatic |
Enable or disable mosaic mode for a given sprite.
obj | Object number in the sprite system |
mosaic | Set mosaic on (1) or off (0) |
|
inlinestatic |
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... |
|
inlinestatic |
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... |
|
inlinestatic |
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); |
|
inlinestatic |
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) |
|
inlinestatic |
Clone a sprite. Works only for sprites on the same screen.
obj | Object number in the sprite system |
target | Target sprite to clone |
|
inlinestatic |
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...) |
|
inlinestatic |
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...) |
|
inlinestatic |
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 |
|
inlinestatic |
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 |
|
inlinestatic |
Stop a sprite animation for DualSprites.
sprite | sprite number in the sprite system |
|
inlinestatic |
Set the current animation frame number for DualSprites.
sprite | sprite number in the sprite system |
frame | Frame number to use... |
|
inlinestatic |
Returns the current animation frame number for DualSprites.
sprite | sprite number in the sprite system |
|
inlinestatic |
Set the current animation speed for DualSprites.
sprite | sprite number in the sprite system |
speed | Speed, in fps... |
|
inlinestatic |
Returns the current animation speed for DualSprites.
sprite | sprite number in the sprite system |
|
inlinestatic |
Pause or UnPause a sprite animation for DualSprites.
sprite | sprite number in the sprite system |
pause | 1 for pause, 0 for unpause |