Macros | |
#define | PA_UpdateOAM0() DMA_Copy((void*)PA_obj, (void*)OAM0, 256, DMA_32NOW) |
Mettre à jour les infos des sprites pour l'écran 0 uniquement. A faire dans le VBL. | |
#define | PA_UpdateOAM1() DMA_Copy((void*)PA_obj + 256, (void*)OAM1, 256, DMA_32NOW) |
Mettre à jour les infos des sprites pour l'écran 1 uniquement. A faire dans le VBL. | |
#define | PA_UpdateSpriteGfx(screen, obj_number, obj_data) PA_UpdateGfx(screen, PA_GetSpriteGfx(screen, obj_number), obj_data) |
Mettre à jour les Gfx d'un sprite donné. | |
#define | PA_SetSpriteRotEnable(screen, sprite, rotset) {PA_obj[screen][sprite].atr0 |= OBJ_ROT; PA_obj[screen][sprite].atr1 = (PA_obj[screen][sprite].atr1 & ALL_BUT_ROTSET) + ((rotset) << 9);} |
Faire tourner et zoomer un sprite. | |
#define | PA_SetSpriteRotDisable(screen, sprite) {PA_obj[screen][sprite].atr0 &= ALL_BUT(OBJ_ROT); PA_obj[screen][sprite].atr1 &= ALL_BUT_ROTSET;} |
Arreter de faire tourner et zoomer un sprite. | |
#define | PA_SetSpriteX(screen, obj, x) PA_obj[screen][obj].atr1 = (PA_obj[screen][obj].atr1 & ALL_BUT(PA_OBJ_X)) + ((x) & PA_OBJ_X) |
Position X du sprite à l'écran. | |
#define | PA_GetSpriteX(screen, obj) (PA_obj[screen][obj].atr1 & (PA_OBJ_X)) |
Position X du sprite à l'écran. | |
#define | PA_SetSpriteY(screen, obj, y) PA_obj[screen][obj].atr0 = (PA_obj[screen][obj].atr0 & ALL_BUT(PA_OBJ_Y)) + ((y) & PA_OBJ_Y) |
Position Y du sprite à l'écran. | |
#define | PA_GetSpriteY(screen, obj) (PA_obj[screen][obj].atr0 & PA_OBJ_Y) |
Position Y du sprite à l'écran. | |
#define | PA_SetSpritePal(screen, obj, pal) PA_obj[screen][obj].atr2 = (PA_obj[screen][obj].atr2 & ALL_BUT_PAL) + ((pal) << 12) |
Changer la palette d'un sprite. | |
#define | PA_GetSpritePal(screen, obj) (PA_obj[screen][obj].atr2 >> 12) |
Palette d'un sprite. | |
#define | PA_SetSpriteDblsize(screen, obj, dblsize) PA_obj[screen][obj].atr0 = (PA_obj[screen][obj].atr0 & ALL_BUT(DBLSIZE)) + ((dblsize) << 9) |
Activer ou désactiver le mode Doublesize pour un sprite. | |
#define | PA_GetSpriteDblsize(screen, obj) ((PA_obj[screen][obj].atr0 & DBLSIZE) >> 9) |
Etat du mode Doublesize pour un sprite. | |
#define | PA_SetSpriteColors(screen, sprite, n_colors) PA_obj[screen][sprite].atr0 = (PA_obj[screen][sprite].atr0 & ALL_BUT(N_COLORS)) + ((n_colors) << 13) |
Changer le mode de couleur du sprite. | |
#define | PA_GetSpriteColors(screen, sprite) ((PA_obj[screen][sprite].atr0 & N_COLORS) >> 13) |
Mode de couleur d'un sprite. | |
#define | PA_SetSpriteMode(screen, sprite, obj_mode) PA_obj[screen][sprite].atr0 = (PA_obj[screen][sprite].atr0 & ALL_BUT(OBJ_MODE)) + ((obj_mode) << 10) |
Régler le mode d'un sprite : 0 pour normal, 1 pour transparent, 2 pour fenetre. | |
#define | PA_GetSpriteMode(screen, obj) ((PA_obj[screen][obj].atr0 & OBJ_MODE) >> 10) |
Mode d'un sprite : 0 pour normal, 1 pour transparent, 2 pour fenetre. | |
#define | PA_SetSpriteMosaic(screen, obj, mosaic) PA_obj[screen][obj].atr0 = (PA_obj[screen][obj].atr0 & ALL_BUT(OBJ_MOSAIC)) + ((mosaic) << 12) |
Mettre ou non un sprite en mode mosaic. | |
#define | PA_GetSpriteMosaic(screen, obj) ((PA_obj[screen][obj].atr0 & OBJ_MOSAIC) >> 12) |
Si un sprite est en mode mosaic. | |
#define | PA_SetSpriteHflip(screen, obj, hflip) PA_obj[screen][obj].atr1 = (PA_obj[screen][obj].atr1 & ALL_BUT(OBJ_HFLIP)) + ((hflip) << 12) |
Utiliser ou non le flip horizontal pour un sprite. | |
#define | PA_GetSpriteHflip(screen, obj) ((PA_obj[screen][obj].atr1 & OBJ_HFLIP) >> 12) |
S'il y a un flip horizontal pour un sprite. | |
#define | PA_SetSpriteVflip(screen, obj, vflip) PA_obj[screen][obj].atr1 = (PA_obj[screen][obj].atr1 & ALL_BUT(OBJ_VFLIP)) + ((vflip) << 13) |
Utiliser ou non le flip vertical pour un sprite. | |
#define | PA_GetSpriteVflip(screen, obj) ((PA_obj[screen][obj].atr1 & OBJ_VFLIP) >> 13) |
Si le flip vertical est utilisé ou non pour un sprite. | |
#define | PA_SetSpriteGfx(screen, obj, gfx) PA_obj[screen][obj].atr2 = (PA_obj[screen][obj].atr2 & ALL_BUT(OBJ_GFX)) + ((gfx) & OBJ_GFX) |
Modifier les graphismes utilisés par un sprite. | |
#define | PA_GetSpriteGfx(screen, obj) (PA_obj[screen][obj].atr2 & OBJ_GFX) |
Récupérer le gfx utilisés par un sprite. | |
#define | PA_SetSpritePrio(screen, obj, prio) PA_obj[screen][obj].atr2 = (PA_obj[screen][obj].atr2 & ALL_BUT(OBJ_PRIO)) + ((prio) << 10) |
Régler la priorité d'un sprite par rapport au Bg. | |
#define | PA_GetSpritePrio(screen, obj) ((PA_obj[screen][obj].atr2 & OBJ_PRIO) >> 10) |
Récupérer la priorité d'un sprite par rapport au Bg. | |
#define | PA_GetSpriteLx(screen, sprite) PA_size[PA_obj[screen][sprite].atr0 >> 14][PA_obj[screen][sprite].atr1 >> 14].lx |
Récupérer la largeur d'un sprite. | |
#define | PA_GetSpriteLy(screen, sprite) PA_size[PA_obj[screen][sprite].atr0 >> 14][PA_obj[screen][sprite].atr1 >> 14].ly |
Récupérer la hauteur d'un sprite. | |
#define | PA_CloneSprite(screen, obj, target) {PA_obj[screen][obj].atr0 = PA_obj[screen][target].atr0; PA_obj[screen][obj].atr1 = PA_obj[screen][target].atr1; PA_obj[screen][obj].atr2 = PA_obj[screen][target].atr2; ++obj_per_gfx[screen][PA_GetSpriteGfx(screen, target)];} |
Cloner un sprite. Marche uniquement pour les sprites sur un meme écran. | |
Fonctions | |
void | PA_UpdateOAM (void) |
Mettre à jour les infos des sprites pour les 2 écrans. A faire dans le VBL. | |
u16 | PA_CreateGfx (u8 screen, void *obj_data, u8 obj_shape, u8 obj_size, u8 color_mode) |
Charger en mémoire un gfx à utiliser plus tard pour un sprite. Renvoie le numéro en mémoire. | |
void | PA_ResetSpriteSysScreen (u8 screen) |
void | PA_ResetSpriteSys (void) |
Remise à 0 du système de sprite, de la mémoire... | |
void | PA_CreateSprite (u8 screen, u8 obj_number, void *obj_data, u8 obj_shape, u8 obj_size, u8 color_mode, u8 palette, s16 x, s16 y) |
Creer un sprite avec ses gfx... Ceci est la version simple de la fonction. | |
void | PA_CreateSpriteEx (u8 screen, 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) |
Creer un sprite avec ses gfx... Ceci est la version complexe de la fonction. | |
void | PA_Create16bitSpriteEx (u8 screen, 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) |
Creer un sprite de 16 bits avec ses gfx... Ceci est la version complexe de la fonction. Attention : un sprite de 16 bits DOIT etre large de 128 pixels, meme si ce sprite ne prend qu'une petite partie sur la gauche. | |
void | PA_Create16bitSpriteFromGfx (u8 screen, u8 obj_number, u16 gfx, u8 obj_shape, u8 obj_size, s16 x, s16 y) |
Creer un sprite de 16 bits à partir de gfx... | |
void | PA_Create16bitSprite (u8 screen, u8 obj_number, void *obj_data, u8 obj_shape, u8 obj_size, s16 x, s16 y) |
Creer un sprite de 16 bits avec ses gfx... Ceci est la version simple de la fonction. Attention : un sprite de 16 bits DOIT etre large de 128 pixels, meme si ce sprite ne prend qu'une petite partie sur la gauche. | |
void | PA_CreateSpriteFromGfx (u8 screen, u8 obj_number, u16 obj_gfx, u8 obj_shape, u8 obj_size, u8 color_mode, u8 palette, s16 x, s16 y) |
Creer un sprite avec ses gfx... Ceci est la version simple de la fonction. | |
void | PA_CreateSpriteExFromGfx (u8 screen, 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) |
Creer un sprite avec ses gfx... Ceci est la version complexe de la fonction. | |
void | PA_UpdateGfx (u8 screen, u16 gfx_number, void *obj_data) |
Mettre à jour les Gfx donnés. | |
void | PA_UpdateGfxAndMem (u8 screen, u8 gfx_number, void *obj_data) |
Mettre à jour les Gfx donnés et le pointer d'animation dans PAlib... Uniquement pour utilisateurs avertis. | |
void | PA_DeleteGfx (u8 screen, u16 obj_gfx) |
Effacer un Gfx. Si un sprite l'utilisait, il deviendra invisible... | |
void | PA_DeleteSprite (u8 screen, u8 obj_number) |
Effacer un sprite. S'il était le seul à utiliser un gfx, il sera effacé lui aussi. | |
void | PA_SetRotset (u8 screen, u8 rotset, s16 angle, u16 zoomx, u16 zoomy) |
Faire tourner et zoomer un sprite. | |
void | PA_SetRotsetNoZoom (u8 screen, u8 rotset, s16 angle) |
Faire tourner un sprite sans zoomer. C'est un peu plus rapide que la fonction PA_SetRotset. | |
void | PA_SetRotsetNoAngle (u8 screen, u8 rotset, u16 zoomx, u16 zoomy) |
Zoomer un sprite sans le faire tourner. C'est un peu plus rapide que la fonction PA_SetRotset. | |
void | PA_SetSpriteXY (u8 screen, u8 sprite, s16 x, s16 y) |
Position X et Y du sprite à l'écran. | |
void | PA_Set16bitSpriteAlpha (u8 screen, u8 sprite, u8 alpha) |
Position X du sprite à l'écran. | |
void | PA_SetSpriteAnimEx (u8 screen, u8 sprite, u8 lx, u8 ly, u8 ncolors, s16 animframe) |
Régler l'image du sprite dans l'animation. Cette fonction est plus rapide que PA_SetSpriteAnim parce qu'elle n'a pas à rechercher les dimensions du sprite. | |
void | PA_SetSpriteAnim (u8 screen, u8 sprite, s16 animframe) |
Régler l'image du sprite dans l'animation. Identique à PA_SetSpriteAnimEx, mais plus simple à utiliser, par contre plus lent. | |
void | PA_StartSpriteAnimEx (u8 screen, u8 sprite, s16 firstframe, s16 lastframe, s16 speed, u8 type, s16 ncycles) |
Démarre une animation de sprite. Une fois démarrée, elle continue tant qu'on ne l'arrête pas ! | |
void | PA_StartSpriteAnim (u8 screen, u8 sprite, s16 firstframe, s16 lastframe, s16 speed) |
Démarre une animation de sprite. Une fois démarrée, elle continue tant qu'on ne l'arrête pas ! | |
void | PA_StopSpriteAnim (u8 screen, u8 sprite) |
Arrêter une animation de sprite. | |
void | PA_SetSpriteAnimFrame (u8 screen, u8 sprite, u16 frame) |
Changer le numéro actuel de la frame d'animation. | |
u16 | PA_GetSpriteAnimFrame (u8 screen, u8 sprite) |
Renvoie le numéro actuel de la frame d'animation. | |
void | PA_SetSpriteAnimSpeed (u8 screen, u8 sprite, s16 speed) |
Changer la vitesse de l'animation. | |
u16 | PA_GetSpriteAnimSpeed (u8 screen, u8 sprite) |
Renvoie la vitesse de l'animation. | |
void | PA_SetSpriteNCycles (u8 screen, u8 sprite, s32 NCycles) |
Changer le nombre de cycles d'animation restant (-1 pour inifini). | |
s32 | PA_GetSpriteNCycles (u8 screen, u8 sprite) |
Renvoie le nombre de cycles d'animation restants. | |
void | PA_SpriteAnimPause (u8 screen, u8 sprite, u8 pause) |
Mettre en Pause en remettre en lecture une animation de sprite. | |
void | PA_SetSpritePixel (u8 screen, u8 sprite, u8 x, u8 y, u8 color) |
Mettre un pixel d'un sprite à une couleur donnée. Comme PA_SetSpritePixelEx, avec moins d'options, mais un peu plus lent. | |
u8 | PA_GetSpritePixel (u8 screen, u8 sprite, u8 x, u8 y) |
Récupérer la couleur d'un pixel d'un sprite. Comme PA_GetSpritePixelEx, avec moins d'options, mais un peu plus lent. | |
u8 | PA_GetSprite16cPixel (u8 screen, u8 sprite, u8 x, u8 y) |
Récupérer la couleur d'un pixel d'un sprite de 16 couleurs. | |
void | PA_InitSpriteDraw (u8 screen, u8 sprite) |
Initialise un sprite pour pouvoir dessiner dessus ! | |
void | PA_InitAllSpriteDraw (void) |
Initialise tous les sprites à l'écran pour dessiner dessus. | |
void | PA_InitSpriteExtPrio (u8 SpritePrio) |
Activer le systeme de priorité de sprites PAlib. Plus lent que le systeme normal, il permet d'avoir 256 niveaux de priorité (supplante la priorité par numéro de sprites). | |
void | PA_SetSpriteExtPrio (u8 screen, u8 sprite, u8 prio) |
#define PA_CloneSprite | ( | screen, | |||
obj, | |||||
target | ) | {PA_obj[screen][obj].atr0 = PA_obj[screen][target].atr0; PA_obj[screen][obj].atr1 = PA_obj[screen][target].atr1; PA_obj[screen][obj].atr2 = PA_obj[screen][target].atr2; ++obj_per_gfx[screen][PA_GetSpriteGfx(screen, target)];} |
Cloner un sprite. Marche uniquement pour les sprites sur un meme écran.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite | |
target | Numéro de la cible à cloner |
#define PA_GetSpriteColors | ( | screen, | |||
sprite | ) | ((PA_obj[screen][sprite].atr0 & N_COLORS) >> 13) |
Mode de couleur d'un sprite.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro de l'objet dans le systeme de sprite |
#define PA_GetSpriteDblsize | ( | screen, | |||
obj | ) | ((PA_obj[screen][obj].atr0 & DBLSIZE) >> 9) |
Etat du mode Doublesize pour un sprite.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite |
#define PA_GetSpriteGfx | ( | screen, | |||
obj | ) | (PA_obj[screen][obj].atr2 & OBJ_GFX) |
Récupérer le gfx utilisés par un sprite.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite |
#define PA_GetSpriteHflip | ( | screen, | |||
obj | ) | ((PA_obj[screen][obj].atr1 & OBJ_HFLIP) >> 12) |
S'il y a un flip horizontal pour un sprite.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite |
#define PA_GetSpriteLx | ( | screen, | |||
sprite | ) | PA_size[PA_obj[screen][sprite].atr0 >> 14][PA_obj[screen][sprite].atr1 >> 14].lx |
Récupérer la largeur d'un sprite.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro de l'objet dans le systeme de sprite |
#define PA_GetSpriteLy | ( | screen, | |||
sprite | ) | PA_size[PA_obj[screen][sprite].atr0 >> 14][PA_obj[screen][sprite].atr1 >> 14].ly |
Récupérer la hauteur d'un sprite.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro de l'objet dans le systeme de sprite |
#define PA_GetSpriteMode | ( | screen, | |||
obj | ) | ((PA_obj[screen][obj].atr0 & OBJ_MODE) >> 10) |
Mode d'un sprite : 0 pour normal, 1 pour transparent, 2 pour fenetre.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite |
#define PA_GetSpriteMosaic | ( | screen, | |||
obj | ) | ((PA_obj[screen][obj].atr0 & OBJ_MOSAIC) >> 12) |
Si un sprite est en mode mosaic.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite |
#define PA_GetSpritePal | ( | screen, | |||
obj | ) | (PA_obj[screen][obj].atr2 >> 12) |
Palette d'un sprite.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite |
#define PA_GetSpritePrio | ( | screen, | |||
obj | ) | ((PA_obj[screen][obj].atr2 & OBJ_PRIO) >> 10) |
Récupérer la priorité d'un sprite par rapport au Bg.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite |
#define PA_GetSpriteVflip | ( | screen, | |||
obj | ) | ((PA_obj[screen][obj].atr1 & OBJ_VFLIP) >> 13) |
Si le flip vertical est utilisé ou non pour un sprite.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite |
#define PA_GetSpriteX | ( | screen, | |||
obj | ) | (PA_obj[screen][obj].atr1 & (PA_OBJ_X)) |
Position X du sprite à l'écran.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite |
#define PA_GetSpriteY | ( | screen, | |||
obj | ) | (PA_obj[screen][obj].atr0 & PA_OBJ_Y) |
Position Y du sprite à l'écran.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite |
#define PA_SetSpriteColors | ( | screen, | |||
sprite, | |||||
n_colors | ) | PA_obj[screen][sprite].atr0 = (PA_obj[screen][sprite].atr0 & ALL_BUT(N_COLORS)) + ((n_colors) << 13) |
Changer le mode de couleur du sprite.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro de l'objet dans le systeme de sprite | |
n_colors | 0 pour 16 couleurs, 1 pour 256 |
#define PA_SetSpriteDblsize | ( | screen, | |||
obj, | |||||
dblsize | ) | PA_obj[screen][obj].atr0 = (PA_obj[screen][obj].atr0 & ALL_BUT(DBLSIZE)) + ((dblsize) << 9) |
Activer ou désactiver le mode Doublesize pour un sprite.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite | |
dblsize | 1 pour l'activer, 0 pour l'inactiver |
#define PA_SetSpriteGfx | ( | screen, | |||
obj, | |||||
gfx | ) | PA_obj[screen][obj].atr2 = (PA_obj[screen][obj].atr2 & ALL_BUT(OBJ_GFX)) + ((gfx) & OBJ_GFX) |
Modifier les graphismes utilisés par un sprite.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite | |
gfx | Numéro du gfx en mémoire ; on peut obtenir un numéro avec PA_CreateGfx ou PA_GetSpriteGfx(obj_number); |
#define PA_SetSpriteHflip | ( | screen, | |||
obj, | |||||
hflip | ) | PA_obj[screen][obj].atr1 = (PA_obj[screen][obj].atr1 & ALL_BUT(OBJ_HFLIP)) + ((hflip) << 12) |
Utiliser ou non le flip horizontal pour un sprite.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite | |
hflip | Flip horizontal, 1 pour oui, 0 pour non... |
#define PA_SetSpriteMode | ( | screen, | |||
sprite, | |||||
obj_mode | ) | PA_obj[screen][sprite].atr0 = (PA_obj[screen][sprite].atr0 & ALL_BUT(OBJ_MODE)) + ((obj_mode) << 10) |
Régler le mode d'un sprite : 0 pour normal, 1 pour transparent, 2 pour fenetre.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro de l'objet dans le systeme de sprite | |
obj_mode | Mode : 0 pour normal, 1 pour transparent, 2 pour fenetre ; ne marche pas encore |
#define PA_SetSpriteMosaic | ( | screen, | |||
obj, | |||||
mosaic | ) | PA_obj[screen][obj].atr0 = (PA_obj[screen][obj].atr0 & ALL_BUT(OBJ_MOSAIC)) + ((mosaic) << 12) |
Mettre ou non un sprite en mode mosaic.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite | |
mosaic | Mode mosaic activé (1) ou désactivé (0) |
#define PA_SetSpritePal | ( | screen, | |||
obj, | |||||
pal | ) | PA_obj[screen][obj].atr2 = (PA_obj[screen][obj].atr2 & ALL_BUT_PAL) + ((pal) << 12) |
Changer la palette d'un sprite.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite | |
pal | Numéro de la palette (de 0 à 15) |
#define PA_SetSpritePrio | ( | screen, | |||
obj, | |||||
prio | ) | PA_obj[screen][obj].atr2 = (PA_obj[screen][obj].atr2 & ALL_BUT(OBJ_PRIO)) + ((prio) << 10) |
Régler la priorité d'un sprite par rapport au Bg.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite | |
prio | Priorité du sprite : 0 est au-dessus du fond 0, 1 au-dessus du 1, etc... (0-3) |
#define PA_SetSpriteRotDisable | ( | screen, | |||
sprite | ) | {PA_obj[screen][sprite].atr0 &= ALL_BUT(OBJ_ROT); PA_obj[screen][sprite].atr1 &= ALL_BUT_ROTSET;} |
Arreter de faire tourner et zoomer un sprite.
screen | Choix de l'écran (0 ou 1) | |
sprite | Sprite que l'on veut faire tourner |
#define PA_SetSpriteRotEnable | ( | screen, | |||
sprite, | |||||
rotset | ) | {PA_obj[screen][sprite].atr0 |= OBJ_ROT; PA_obj[screen][sprite].atr1 = (PA_obj[screen][sprite].atr1 & ALL_BUT_ROTSET) + ((rotset) << 9);} |
Faire tourner et zoomer un sprite.
screen | Choix de l'écran (0 ou 1) | |
sprite | Sprite que l'on veut faire tourner | |
rotset | Rotset que l'on veut pour un sprite donné (0-31). On peut a priori utiliser un rotset pour plusieurs sprites, s'ils sont zoomés/tournés pareil... |
#define PA_SetSpriteVflip | ( | screen, | |||
obj, | |||||
vflip | ) | PA_obj[screen][obj].atr1 = (PA_obj[screen][obj].atr1 & ALL_BUT(OBJ_VFLIP)) + ((vflip) << 13) |
Utiliser ou non le flip vertical pour un sprite.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite | |
vflip | Flip vertical, 1 pour oui, 0 pour non... |
#define PA_SetSpriteX | ( | screen, | |||
obj, | |||||
x | ) | PA_obj[screen][obj].atr1 = (PA_obj[screen][obj].atr1 & ALL_BUT(PA_OBJ_X)) + ((x) & PA_OBJ_X) |
Position X du sprite à l'écran.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite | |
x | Position X |
#define PA_SetSpriteY | ( | screen, | |||
obj, | |||||
y | ) | PA_obj[screen][obj].atr0 = (PA_obj[screen][obj].atr0 & ALL_BUT(PA_OBJ_Y)) + ((y) & PA_OBJ_Y) |
Position Y du sprite à l'écran.
screen | Choix de l'écran (0 ou 1) | |
obj | Numéro de l'objet dans le systeme de sprite | |
y | Position Y |
#define PA_UpdateOAM0 | ( | ) | DMA_Copy((void*)PA_obj, (void*)OAM0, 256, DMA_32NOW) |
Mettre à jour les infos des sprites pour l'écran 0 uniquement. A faire dans le VBL.
#define PA_UpdateOAM1 | ( | ) | DMA_Copy((void*)PA_obj + 256, (void*)OAM1, 256, DMA_32NOW) |
Mettre à jour les infos des sprites pour l'écran 1 uniquement. A faire dans le VBL.
#define PA_UpdateSpriteGfx | ( | screen, | |||
obj_number, | |||||
obj_data | ) | PA_UpdateGfx(screen, PA_GetSpriteGfx(screen, obj_number), obj_data) |
Mettre à jour les Gfx d'un sprite donné.
screen | Choix de l'écran (0 ou 1) | |
obj_number | Numéro de l'objet dans le systeme de sprite | |
obj_data | Graphisme à charger |
inline void PA_Create16bitSprite | ( | u8 | screen, | |
u8 | obj_number, | |||
void * | obj_data, | |||
u8 | obj_shape, | |||
u8 | obj_size, | |||
s16 | x, | |||
s16 | y | |||
) | [inline] |
Creer un sprite de 16 bits avec ses gfx... Ceci est la version simple de la fonction. Attention : un sprite de 16 bits DOIT etre large de 128 pixels, meme si ce sprite ne prend qu'une petite partie sur la gauche.
screen | Choix de l'écran (0 ou 1) | |
obj_number | Numéro du sprite que vous voulez utiliser (de 0 à 127 pour chaque écran séparemment). | |
obj_data | Gfx à charger | |
obj_shape | Forme du sprite à charger, de 0 à 2. Utiliser la macro OBJ_SIZE_32X32 (...) pour charger la forme et la taille... | |
obj_size | Taille du sprite. Utiliser la macro OBJ_SIZE_32X32 (...) pour charger la forme et la taille... | |
x | Position X du sprite | |
y | Position Y du sprite |
inline void PA_Create16bitSpriteEx | ( | u8 | screen, | |
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] |
Creer un sprite de 16 bits avec ses gfx... Ceci est la version complexe de la fonction. Attention : un sprite de 16 bits DOIT etre large de 128 pixels, meme si ce sprite ne prend qu'une petite partie sur la gauche.
screen | Choix de l'écran (0 ou 1) | |
obj_number | Numéro du sprite que vous voulez utiliser (de 0 à 127 pour chaque écran séparemment). | |
obj_data | Gfx à charger | |
obj_shape | Forme du sprite à charger, de 0 à 2. Utiliser la macro OBJ_SIZE_32X32 (...) pour charger la forme et la taille... | |
obj_size | Taille du sprite. Utiliser la macro OBJ_SIZE_32X32 (...) pour charger la forme et la taille... | |
mosaic | Activer le mode mosaique pour ce sprite. Pas encore au point... | |
hflip | Flip horizontal activé ou non. | |
vflip | Flip vertical... | |
prio | Priorité du sprite vis-à-vis des fonds : devant quel fond l'afficher... (0-3) | |
dblsize | Doubler la taille possible du sprite. A activer uniquement si on compte grossir et faire tourner le sprite | |
x | Position X du sprite | |
y | Position Y du sprite |
inline void PA_Create16bitSpriteFromGfx | ( | u8 | screen, | |
u8 | obj_number, | |||
u16 | gfx, | |||
u8 | obj_shape, | |||
u8 | obj_size, | |||
s16 | x, | |||
s16 | y | |||
) | [inline] |
Creer un sprite de 16 bits à partir de gfx...
screen | Choix de l'écran (0 ou 1) | |
obj_number | Numéro du sprite que vous voulez utiliser (de 0 à 127 pour chaque écran séparemment). | |
gfx | Gfx à utiliser | |
obj_shape | Forme du sprite à charger, de 0 à 2. Utiliser la macro OBJ_SIZE_32X32 (...) pour charger la forme et la taille... | |
obj_size | Taille du sprite. Utiliser la macro OBJ_SIZE_32X32 (...) pour charger la forme et la taille... | |
x | Position X du sprite | |
y | Position Y du sprite |
u16 PA_CreateGfx | ( | u8 | screen, | |
void * | obj_data, | |||
u8 | obj_shape, | |||
u8 | obj_size, | |||
u8 | color_mode | |||
) |
Charger en mémoire un gfx à utiliser plus tard pour un sprite. Renvoie le numéro en mémoire.
screen | Choix de l'écran (0 ou 1) | |
obj_data | Gfx à charger | |
obj_shape | Forme du sprite à charger, de 0 à 2. Utiliser la macro OBJ_SIZE_32X32 (...) pour charger la forme et la taille... | |
obj_size | Taille du sprite. Utiliser la macro OBJ_SIZE_32X32 (...) pour charger la forme et la taille... | |
color_mode | Mode 256 ou 16 couleurs (1 ou 0), ou 2 pour 16 bits |
inline void PA_CreateSprite | ( | u8 | screen, | |
u8 | obj_number, | |||
void * | obj_data, | |||
u8 | obj_shape, | |||
u8 | obj_size, | |||
u8 | color_mode, | |||
u8 | palette, | |||
s16 | x, | |||
s16 | y | |||
) | [inline] |
Creer un sprite avec ses gfx... Ceci est la version simple de la fonction.
screen | Choix de l'écran (0 ou 1) | |
obj_number | Numéro du sprite que vous voulez utiliser (de 0 à 127 pour chaque écran séparemment). | |
obj_data | Gfx à charger | |
obj_shape | Forme du sprite à charger, de 0 à 2. Utiliser la macro OBJ_SIZE_32X32 (...) pour charger la forme et la taille... | |
obj_size | Taille du sprite. Utiliser la macro OBJ_SIZE_32X32 (...) pour charger la forme et la taille... | |
color_mode | Mode 256 ou 16 couleurs (1 ou 0). | |
palette | Palette à utiliser (0-15). | |
x | Position X du sprite | |
y | Position Y du sprite |
inline void PA_CreateSpriteEx | ( | u8 | screen, | |
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] |
Creer un sprite avec ses gfx... Ceci est la version complexe de la fonction.
screen | Choix de l'écran (0 ou 1) | |
obj_number | Numéro du sprite que vous voulez utiliser (de 0 à 127 pour chaque écran séparemment). | |
obj_data | Gfx à charger | |
obj_shape | Forme du sprite à charger, de 0 à 2. Utiliser la macro OBJ_SIZE_32X32 (...) pour charger la forme et la taille... | |
obj_size | Taille du sprite. Utiliser la macro OBJ_SIZE_32X32 (...) pour charger la forme et la taille... | |
color_mode | Mode 256 ou 16 couleurs (1 ou 0). | |
palette | Palette à utiliser (0-15). | |
obj_mode | Mode du sprite (normal, transparent, fenetre). Pas encore opérationnel, laisser à 0... | |
mosaic | Activer le mode mosaique pour ce sprite. Pas encore au point... | |
hflip | Flip horizontal activé ou non. | |
vflip | Flip vertical... | |
prio | Priorité du sprite vis-à-vis des fonds : devant quel fond l'afficher... (0-3) | |
dblsize | Doubler la taille possible du sprite. A activer uniquement si on compte grossir et faire tourner le sprite | |
x | Position X du sprite | |
y | Position Y du sprite |
inline void PA_CreateSpriteExFromGfx | ( | u8 | screen, | |
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] |
Creer un sprite avec ses gfx... Ceci est la version complexe de la fonction.
screen | Choix de l'écran (0 ou 1) | |
obj_number | Numéro du sprite que vous voulez utiliser (de 0 à 127 pour chaque écran séparemment). | |
obj_gfx | Gfx en mémoire à utiliser. On peut en avoir avec PA_GetSpriteGfx ou PA_CreateGfx | |
obj_shape | Forme du sprite à charger, de 0 à 2. Utiliser la macro OBJ_SIZE_32X32 (...) pour charger la forme et la taille... | |
obj_size | Taille du sprite. Utiliser la macro OBJ_SIZE_32X32 (...) pour charger la forme et la taille... | |
color_mode | Mode 256 ou 16 couleurs (1 ou 0). | |
palette | Palette à utiliser (0-15). | |
obj_mode | Mode du sprite (normal, transparent, fenetre). Pas encore opérationnel, laisser à 0... | |
mosaic | Activer le mode mosaique pour ce sprite. Pas encore au point... | |
hflip | Flip horizontal activé ou non. | |
vflip | Flip vertical... | |
prio | Priorité du sprite vis-à-vis des fonds : devant quel fond l'afficher... (0-3) | |
dblsize | Doubler la taille possible du sprite. A activer uniquement si on compte grossir et faire tourner le sprite | |
x | Position X du sprite | |
y | Position Y du sprite |
inline void PA_CreateSpriteFromGfx | ( | u8 | screen, | |
u8 | obj_number, | |||
u16 | obj_gfx, | |||
u8 | obj_shape, | |||
u8 | obj_size, | |||
u8 | color_mode, | |||
u8 | palette, | |||
s16 | x, | |||
s16 | y | |||
) | [inline] |
Creer un sprite avec ses gfx... Ceci est la version simple de la fonction.
screen | Choix de l'écran (0 ou 1) | |
obj_number | Numéro du sprite que vous voulez utiliser (de 0 à 127 pour chaque écran séparemment). | |
obj_gfx | Gfx en mémoire à utiliser. On peut en avoir avec PA_GetSpriteGfx ou PA_CreateGfx | |
obj_shape | Forme du sprite à charger, de 0 à 2. Utiliser la macro OBJ_SIZE_32X32 (...) pour charger la forme et la taille... | |
obj_size | Taille du sprite. Utiliser la macro OBJ_SIZE_32X32 (...) pour charger la forme et la taille... | |
color_mode | Mode 256 ou 16 couleurs (1 ou 0). | |
palette | Palette à utiliser (0-15). | |
x | Position X du sprite | |
y | Position Y du sprite |
void PA_DeleteGfx | ( | u8 | screen, | |
u16 | obj_gfx | |||
) |
Effacer un Gfx. Si un sprite l'utilisait, il deviendra invisible...
screen | Choix de l'écran (0 ou 1) | |
obj_gfx | Numéro du Gfx en mémoire |
void PA_DeleteSprite | ( | u8 | screen, | |
u8 | obj_number | |||
) |
Effacer un sprite. S'il était le seul à utiliser un gfx, il sera effacé lui aussi.
screen | Choix de l'écran (0 ou 1) | |
obj_number | Numéro du sprite |
inline u8 PA_GetSprite16cPixel | ( | u8 | screen, | |
u8 | sprite, | |||
u8 | x, | |||
u8 | y | |||
) | [inline] |
Récupérer la couleur d'un pixel d'un sprite de 16 couleurs.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro du sprite dans le systeme de sprite | |
x | Coordonnée X du pixel | |
y | Coordonnée Y du pixel |
inline u16 PA_GetSpriteAnimFrame | ( | u8 | screen, | |
u8 | sprite | |||
) | [inline] |
Renvoie le numéro actuel de la frame d'animation.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro du sprite dans le systeme de sprite |
inline u16 PA_GetSpriteAnimSpeed | ( | u8 | screen, | |
u8 | sprite | |||
) | [inline] |
Renvoie la vitesse de l'animation.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro du sprite dans le systeme de sprite |
inline s32 PA_GetSpriteNCycles | ( | u8 | screen, | |
u8 | sprite | |||
) | [inline] |
Renvoie le nombre de cycles d'animation restants.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro du sprite dans le systeme de sprite |
inline u8 PA_GetSpritePixel | ( | u8 | screen, | |
u8 | sprite, | |||
u8 | x, | |||
u8 | y | |||
) | [inline] |
Récupérer la couleur d'un pixel d'un sprite. Comme PA_GetSpritePixelEx, avec moins d'options, mais un peu plus lent.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro du sprite dans le systeme de sprite | |
x | Coordonnée X du pixel | |
y | Coordonnée Y du pixel |
inline void PA_InitAllSpriteDraw | ( | void | ) | [inline] |
Initialise tous les sprites à l'écran pour dessiner dessus.
void PA_InitSpriteDraw | ( | u8 | screen, | |
u8 | sprite | |||
) |
Initialise un sprite pour pouvoir dessiner dessus !
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro du sprite dans le systeme de sprite |
void PA_InitSpriteExtPrio | ( | u8 | SpritePrio | ) |
Activer le systeme de priorité de sprites PAlib. Plus lent que le systeme normal, il permet d'avoir 256 niveaux de priorité (supplante la priorité par numéro de sprites).
SpritePrio | 1 pour on, 0 pour off... |
void PA_ResetSpriteSys | ( | void | ) |
Remise à 0 du système de sprite, de la mémoire...
screen | Choix de l'écran (0 ou 1) |
void PA_ResetSpriteSysScreen | ( | u8 | screen | ) |
inline void PA_Set16bitSpriteAlpha | ( | u8 | screen, | |
u8 | sprite, | |||
u8 | alpha | |||
) | [inline] |
Position X du sprite à l'écran.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro de l'objet dans le systeme de sprite, uniquement pour les sprites 16bit | |
alpha | Paramèter alpha, 0-15 |
inline void PA_SetRotset | ( | u8 | screen, | |
u8 | rotset, | |||
s16 | angle, | |||
u16 | zoomx, | |||
u16 | zoomy | |||
) | [inline] |
Faire tourner et zoomer un sprite.
screen | Choix de l'écran (0 ou 1) | |
rotset | Rotset que l'on veut changer. Pour attribuer un rotset à un sprite, utiliser PA_SetSpriteRotEnable | |
angle | Angle, entre 0 et 512 (et non 360, attention !) | |
zoomx | Zoom horizontal. 256 est pas de zoom, 512 2 fois plus petit, et 128 2 fois plus grand... Ajuster au mieux ! :p | |
zoomy | Zoom vertical. 256 est pas de zoom, 512 2 fois plus petit, et 128 2 fois plus grand... Ajuster au mieux ! :p |
inline void PA_SetRotsetNoAngle | ( | u8 | screen, | |
u8 | rotset, | |||
u16 | zoomx, | |||
u16 | zoomy | |||
) | [inline] |
Zoomer un sprite sans le faire tourner. C'est un peu plus rapide que la fonction PA_SetRotset.
screen | Choix de l'écran (0 ou 1) | |
rotset | Rotset que l'on veut changer. Pour attribuer un rotset à un sprite, utiliser PA_SetSpriteRotEnable | |
zoomx | Zoom horizontal. 256 est pas de zoom, 512 2 fois plus petit, et 128 2 fois plus grand... Ajuster au mieux ! :p | |
zoomy | Zoom vertical. 256 est pas de zoom, 512 2 fois plus petit, et 128 2 fois plus grand... Ajuster au mieux ! :p |
inline void PA_SetRotsetNoZoom | ( | u8 | screen, | |
u8 | rotset, | |||
s16 | angle | |||
) | [inline] |
Faire tourner un sprite sans zoomer. C'est un peu plus rapide que la fonction PA_SetRotset.
screen | Choix de l'écran (0 ou 1) | |
rotset | Rotset que l'on veut changer. Pour attribuer un rotset à un sprite, utiliser PA_SetSpriteRotEnable | |
angle | Angle, entre 0 et 512 (et non 360, attention !) |
inline void PA_SetSpriteAnim | ( | u8 | screen, | |
u8 | sprite, | |||
s16 | animframe | |||
) | [inline] |
Régler l'image du sprite dans l'animation. Identique à PA_SetSpriteAnimEx, mais plus simple à utiliser, par contre plus lent.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro du sprite dans le systeme de sprite | |
animframe | Frame de l'animation du sprite (0, 1, 2, etc...) |
inline void PA_SetSpriteAnimEx | ( | u8 | screen, | |
u8 | sprite, | |||
u8 | lx, | |||
u8 | ly, | |||
u8 | ncolors, | |||
s16 | animframe | |||
) | [inline] |
Régler l'image du sprite dans l'animation. Cette fonction est plus rapide que PA_SetSpriteAnim parce qu'elle n'a pas à rechercher les dimensions du sprite.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro du sprite dans le systeme de sprite | |
lx | Largeur du sprite (8, 16, 32, 64) | |
ly | Hauteur du sprite (8, 16, 32, 64) | |
ncolors | Mode couleur du sprite (0 pour 16 couleurs, 1 pour 256) | |
animframe | Frame de l'animation du sprite (0, 1, 2, etc...) |
inline void PA_SetSpriteAnimFrame | ( | u8 | screen, | |
u8 | sprite, | |||
u16 | frame | |||
) | [inline] |
Changer le numéro actuel de la frame d'animation.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro du sprite dans le systeme de sprite | |
frame | Numéro de frame... |
inline void PA_SetSpriteAnimSpeed | ( | u8 | screen, | |
u8 | sprite, | |||
s16 | speed | |||
) | [inline] |
Changer la vitesse de l'animation.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro du sprite dans le systeme de sprite | |
speed | Vitesse, en fps... |
void PA_SetSpriteExtPrio | ( | u8 | screen, | |
u8 | sprite, | |||
u8 | prio | |||
) | [inline] |
inline void PA_SetSpriteNCycles | ( | u8 | screen, | |
u8 | sprite, | |||
s32 | NCycles | |||
) | [inline] |
Changer le nombre de cycles d'animation restant (-1 pour inifini).
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro du sprite dans le systeme de sprite | |
NCycles | Nombre de cycles |
inline void PA_SetSpritePixel | ( | u8 | screen, | |
u8 | sprite, | |||
u8 | x, | |||
u8 | y, | |||
u8 | color | |||
) | [inline] |
Mettre un pixel d'un sprite à une couleur donnée. Comme PA_SetSpritePixelEx, avec moins d'options, mais un peu plus lent.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro du sprite dans le systeme de sprite | |
x | Coordonnée X du pixel à changer | |
y | Coordonnée Y du pixel à changer | |
color | Nouvelle couleur de la palette à metrre |
inline void PA_SetSpriteXY | ( | u8 | screen, | |
u8 | sprite, | |||
s16 | x, | |||
s16 | y | |||
) | [inline] |
Position X et Y du sprite à l'écran.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro du sprite dans le systeme de sprite | |
x | Position Y | |
y | Position Y |
inline u16 PA_SpriteAnimPause | ( | u8 | screen, | |
u8 | sprite, | |||
u8 | pause | |||
) | [inline] |
Mettre en Pause en remettre en lecture une animation de sprite.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro du sprite dans le systeme de sprite | |
pause | 1 pour pause, 0 pour reprendre la lecture... |
inline void PA_StartSpriteAnim | ( | u8 | screen, | |
u8 | sprite, | |||
s16 | firstframe, | |||
s16 | lastframe, | |||
s16 | speed | |||
) | [inline] |
Démarre une animation de sprite. Une fois démarrée, elle continue tant qu'on ne l'arrête pas !
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro du sprite dans le systeme de sprite | |
firstframe | Premières image de l'animation, généralement 0.... | |
lastframe | Dernière image à afficher. Une fois atteinte, ca retourne à la première | |
speed | Vitesse, en frames par seconde (fps). 1 signifie donc 1 image par seconde... |
void PA_StartSpriteAnimEx | ( | u8 | screen, | |
u8 | sprite, | |||
s16 | firstframe, | |||
s16 | lastframe, | |||
s16 | speed, | |||
u8 | type, | |||
s16 | ncycles | |||
) |
Démarre une animation de sprite. Une fois démarrée, elle continue tant qu'on ne l'arrête pas !
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro du sprite dans le systeme de sprite | |
firstframe | Premières image de l'animation, généralement 0.... | |
lastframe | Dernière image à afficher. Une fois atteinte, ca retourne à la première | |
speed | Vitesse, en frames par seconde (fps). 1 signifie donc 1 image par seconde... | |
type | Défini de quelle manière on veut boucler. ANIM_LOOP (0) pour normal, et ANIM_UPDOWN (1) pour d'avant en arrière | |
ncycles | Nombres de cycles d'animations avant l'arrêt. Si on utilise ANIM_UPDOWN, il faut 2 cycles pour que l'animation revienne à l'image de base |
inline void PA_StopSpriteAnim | ( | u8 | screen, | |
u8 | sprite | |||
) | [inline] |
Arrêter une animation de sprite.
screen | Choix de l'écran (0 ou 1) | |
sprite | Numéro du sprite dans le systeme de sprite |
inline void PA_UpdateGfx | ( | u8 | screen, | |
u16 | gfx_number, | |||
void * | obj_data | |||
) | [inline] |
Mettre à jour les Gfx donnés.
screen | Choix de l'écran (0 ou 1) | |
gfx_number | Numéro du Gfx en mémoire | |
obj_data | Graphisme à charger |
inline void PA_UpdateGfxAndMem | ( | u8 | screen, | |
u8 | gfx_number, | |||
void * | obj_data | |||
) | [inline] |
Mettre à jour les Gfx donnés et le pointer d'animation dans PAlib... Uniquement pour utilisateurs avertis.
screen | Choix de l'écran (0 ou 1) | |
gfx_number | Numéro du Gfx en mémoire | |
obj_data | Graphisme à charger |
void PA_UpdateOAM | ( | void | ) |
Mettre à jour les infos des sprites pour les 2 écrans. A faire dans le VBL.