11 #define MAX_SPRITE 500
12 #define MAX_ANIMATION 30
13 #define MAX_ANIMATION_FRAME 20
17 #define ANIMATION_CLASSIQUE 0
18 #define ANIMATION_COMPLEXE 1
22 #define MS_MAXMSPRITE 100
274 void spr_setSpriteAnimation(
int s,
int a,
int speed,
int f0,
int f1,
int f2,
int f3,
int f4,
int f5,
int f6,
int f7,
int f8,
int f9,
int f10,
int f11,
int f12,
int f13,
int f14,
int f15,
int f16,
int f17,
int f18,
int f19,
int loop);
452 void ms_setHitBox(
int msprono,
int hno,
int vx,
int vy,
int vh,
int vl);
float spr_getSpriteZoomX(int n)
Definition: bfg_spriteEngine.c:748
void ms_setNbHitBox(int msno, int nb)
Definition: bfg_spriteEngine.c:1111
void spr_moveSprite(int n, float x, float y)
Positionne le sprite.
Definition: bfg_spriteEngine.c:511
float spr_getSpriteZoomY(int n)
Definition: bfg_spriteEngine.c:758
float stepTY
Definition: bfg_spriteEngine.h:49
int spr_getFinTY(int sprno)
Definition: bfg_spriteEngine.c:798
int ibno
Definition: bfg_spriteEngine.h:35
void ms_startAnimatePart(int msno, int pno)
Definition: bfg_spriteEngine.c:1178
void spr_showAllSprites()
Affiche tout les sprites actifs.
Definition: bfg_spriteEngine.c:684
void ms_updateMegaSprite(int msno)
Definition: bfg_spriteEngine.c:893
int rotcenter
Definition: bfg_spriteEngine.h:60
int fin_animation
Definition: bfg_spriteEngine.h:119
#define MAX_ANIMATION_FRAME
Definition: bfg_spriteEngine.h:13
int finTX
Definition: bfg_spriteEngine.h:46
void spr_changeSmoothSpriteRotAbsolute(int s, float nouvelAngle, int nbFrame)
Change de maniere fluide la rotation d'un sprite en absolue.
Definition: bfg_spriteEngine.c:404
float x
Definition: bfg_spriteEngine.h:78
int spr_getHitBoxL(int sprno)
Definition: bfg_spriteEngine.c:825
int spr_getFinTX(int sprno)
Definition: bfg_spriteEngine.c:793
float spr_getSpriteX(int n)
Definition: bfg_spriteEngine.c:773
int hitbox_h
Definition: bfg_spriteEngine.h:63
int spr_reserveFreeSprite(void)
Reserve et initialise un sprite.
Definition: bfg_spriteEngine.c:264
int cpt
Definition: bfg_spriteEngine.h:112
void spr_changeSmoothSpriteTYAbsolute(int s, float nouvelPosY, int nbFrame)
Change de maniere fluide la position y d'un sprite en absolue.
Definition: bfg_spriteEngine.c:447
void ms_setImagePart(int msno, int ipart, int ibno)
Definition: bfg_spriteEngine.c:878
void ms_setPosPart(int msno, int pno, float x, float y)
Definition: bfg_spriteEngine.c:1070
void ms_stopAnimate(int msno)
Definition: bfg_spriteEngine.c:1055
int * anim
Definition: bfg_spriteEngine.h:88
Structure contenant les donnees des mega-sprite.
Definition: bfg_spriteEngine.h:99
int utilise
Definition: bfg_spriteEngine.h:32
int ibno
Definition: bfg_spriteEngine.h:86
#define MS_MAXPART
Definition: bfg_spriteEngine.h:23
float step_y
Definition: bfg_spriteEngine.h:81
void spr_setSpriteAnimation2(int s, int a, int speed, int *v, int loop)
Fonction un peu moins pourri pour definir une animation de sprite.
Definition: bfg_spriteEngine.c:468
void ms_initMegaSpriteEngine(void)
Definition: bfg_spriteEngine.c:834
float step_rot
Definition: bfg_spriteEngine.h:83
void ms_stopAnimatePart(int msno, int pno)
Definition: bfg_spriteEngine.c:1184
int hitbox_y
Definition: bfg_spriteEngine.h:62
void ms_setPosX(int msno, float x)
Definition: bfg_spriteEngine.c:1081
int spr_isSpriteCollidePerfectCompress(int sprite1, int sprite2)
Teste la collision parfaite entre deux sprites (Necessite un mask compresse charge en memoire) ...
Definition: bfg_spriteEngine.c:114
float zy
Definition: bfg_spriteEngine.h:85
int spr_reserveFreeSpriteFrom(int borne)
Reserve un sprite libre a partir d'un numero de sprite.
Definition: bfg_spriteEngine.c:293
int finRotation
Definition: bfg_spriteEngine.h:41
int anim_cpt
Definition: bfg_spriteEngine.h:92
int spr_initFreeSprite(float x, float y, float r, int i)
Reserve un sprite specifique a une position x,y avec une rotation et indique son centre de rotation...
Definition: bfg_spriteEngine.c:321
void spr_changeSmoothSpriteTXAbsolute(int s, float nouvelPosX, int nbFrame)
Change de maniere fluide la position x d'un sprite en absolue.
Definition: bfg_spriteEngine.c:426
int utilise
Definition: bfg_spriteEngine.h:102
int fin_animation
Definition: bfg_spriteEngine.h:59
int timer_precedent
Definition: bfg_spriteEngine.h:110
void spr_moveSpriteRelative(int n, float x, float y)
Positionne le sprite de manière relatif.
Definition: bfg_spriteEngine.c:518
float posx
Definition: bfg_spriteEngine.h:105
void ms_setDataMoveAnimation(int msno, float *data, int loop)
Definit les mouvements des differentes parties du megasprite.
Definition: bfg_spriteEngine.c:872
int spr_getHitBoxX(int sprno)
Definition: bfg_spriteEngine.c:813
void spr_setSpriteAnimation(int s, int a, int speed, int f0, int f1, int f2, int f3, int f4, int f5, int f6, int f7, int f8, int f9, int f10, int f11, int f12, int f13, int f14, int f15, int f16, int f17, int f18, int f19, int loop)
Fonction toute pourrie pour definir une animation de sprite.
Definition: bfg_spriteEngine.c:483
void ms_setPosY(int msno, float y)
Definition: bfg_spriteEngine.c:1086
void spr_updateSprites(int n)
Met a jour les animations du sprite.
Definition: bfg_spriteEngine.c:604
void ms_showMegaSprite(int msno)
Definition: bfg_spriteEngine.c:1019
void ms_setRotPart(int msno, int pno, float r)
Definition: bfg_spriteEngine.c:1076
float rot
Definition: bfg_spriteEngine.h:66
int finTY
Definition: bfg_spriteEngine.h:51
void spr_releaseAllSprite()
Libere tout les sprites.
Definition: bfg_spriteEngine.c:372
int current_animation_frame
Definition: bfg_spriteEngine.h:57
int spr_getFinAnimation(int sprno)
Definition: bfg_spriteEngine.c:783
int spr_getHitBoxY(int sprno)
Definition: bfg_spriteEngine.c:817
float posx
Definition: bfg_spriteEngine.h:33
float posy
Definition: bfg_spriteEngine.h:34
Structure contenant les donnees des morceaux de mega-sprite.
Definition: bfg_spriteEngine.h:76
void spr_setSpriteHitbox(int sprno, int hbx, int hby, int hbh, int hbl)
Definit la hitbox d'un sprite.
Definition: bfg_spriteEngine.c:739
void ms_setPosYPart(int msno, int pno, float y)
Definition: bfg_spriteEngine.c:1065
float spr_getSpriteRot(int n)
Definition: bfg_spriteEngine.c:768
int layer
Definition: bfg_spriteEngine.h:69
int nbHitBox
Definition: bfg_spriteEngine.h:123
void ms_setHitBox(int msprono, int hno, int vx, int vy, int vh, int vl)
Definition: bfg_spriteEngine.c:1116
void spr_animateSprite(int s, int a)
Declenche l'animation d'un sprite.
Definition: bfg_spriteEngine.c:390
void spr_initSprite(int n, float x, float y, float rot, int i)
Reserve un sprite specifique a une position x,y avec une rotation et indique son centre de rotation...
Definition: bfg_spriteEngine.c:242
void ms_updateAllMegaSprite(void)
Definition: bfg_spriteEngine.c:1009
#define MAXHITBOX
Definition: bfg_spriteEngine.h:20
float ms_getPosY(int msno)
Definition: bfg_spriteEngine.c:1096
void spr_releaseSprite(int n)
Libere le sprite.
Definition: bfg_spriteEngine.c:357
int nbFrameTX
Definition: bfg_spriteEngine.h:45
float ms_getPosX(int msno)
Definition: bfg_spriteEngine.c:1091
void spr_changeSpriteZoom(int n, float zx, float zy)
Change le zoom du sprite.
Definition: bfg_spriteEngine.c:532
int ms_reserveFreeMegaSprite(int nbPart)
Definition: bfg_spriteEngine.c:844
int ms_getCurrentPhase(int msno)
Definition: bfg_spriteEngine.c:1101
void spr_stopAnimateSprite(int s)
Arrete l'animation d'un sprite.
Definition: bfg_spriteEngine.c:677
float stepR
Definition: bfg_spriteEngine.h:39
int animate
Definition: bfg_spriteEngine.h:90
int spr_count_used_sprites(void)
Compte le nombre de sprite actif.
Definition: bfg_spriteEngine.c:209
#define MAX_ANIMATION
Definition: bfg_spriteEngine.h:12
float zx
Definition: bfg_spriteEngine.h:67
void ms_showAllMegaSprite(void)
Definition: bfg_spriteEngine.c:1038
void spr_showSprite(int n)
Affiche le sprite.
Definition: bfg_spriteEngine.c:644
int nbFrameTY
Definition: bfg_spriteEngine.h:50
int offset
Definition: bfg_spriteEngine.h:109
int anim_loop
Definition: bfg_spriteEngine.h:89
void spr_changeSpriteImage(int n, int i)
Change l'image du sprite.
Definition: bfg_spriteEngine.c:539
void spr_initSpriteEngine()
Initialise le moteur de sprite classique.
Definition: bfg_spriteEngine.c:221
float y
Definition: bfg_spriteEngine.h:80
int ms_getFinAnimation(int msno)
Definition: bfg_spriteEngine.c:1106
int ms_isSpriteMegaSpriteCollide(int sprno, int msprno)
Definition: bfg_spriteEngine.c:1147
float spr_getSpriteY(int n)
Definition: bfg_spriteEngine.c:778
int current_phase
Definition: bfg_spriteEngine.h:118
void ms_destroyMegaSprite(int msno)
Definition: bfg_spriteEngine.c:867
int intern1
Definition: bfg_spriteEngine.h:58
float posy
Definition: bfg_spriteEngine.h:106
float * dataMove_animation
Definition: bfg_spriteEngine.h:114
void spr_changeSpriteRotation(int n, float r, int center)
Change l'angle du sprite.
Definition: bfg_spriteEngine.c:525
int nbpart
Definition: bfg_spriteEngine.h:107
float step_x
Definition: bfg_spriteEngine.h:79
void ms_setAnimationPart(int msno, int pno, int *data, int loop)
Definition: bfg_spriteEngine.c:1171
float zx
Definition: bfg_spriteEngine.h:84
int spr_getCurrentAnimation(int sprno)
Definition: bfg_spriteEngine.c:803
void spr_changeSmoothSpriteTYRelative(int s, float StepY, int nbFrame)
Change de maniere fluide la position y d'un sprite en relatif.
Definition: bfg_spriteEngine.c:458
int hitbox_l
Definition: bfg_spriteEngine.h:64
int current_animation
Definition: bfg_spriteEngine.h:56
void spr_updateAllSprites()
Met a jour les animations de tout les sprites.
Definition: bfg_spriteEngine.c:668
int spr_getCurrentAnimationFrame(int sprno)
Definition: bfg_spriteEngine.c:808
void spr_changeSpriteLayer(int n, int lno)
Change le layer du sprite (Non utilise)
Definition: bfg_spriteEngine.c:545
void spr_showAllSpritesLayer(int layerno)
Affiche tout les sprites d'un certain layer (Non utilise)
Definition: bfg_spriteEngine.c:696
int spr_isSpriteCollide(int sprite1, int sprite2)
Teste la collision hitbox entre deux sprites.
Definition: bfg_spriteEngine.c:731
int anim_offset
Definition: bfg_spriteEngine.h:91
int spr_isSpriteCollidePerfect(int sprite1, int sprite2)
Teste la collision parfaite entre deux sprites (Necessite un mask charge en memoire) ...
Definition: bfg_spriteEngine.c:20
Structure contenant les donnees des sprites.
Definition: bfg_spriteEngine.h:30
float zy
Definition: bfg_spriteEngine.h:68
int spr_getFinRotation(int sprno)
Definition: bfg_spriteEngine.c:788
int loop
Definition: bfg_spriteEngine.h:116
int hitbox_x
Definition: bfg_spriteEngine.h:61
int timer_courant
Definition: bfg_spriteEngine.h:111
void ms_setPosXPart(int msno, int pno, float x)
Definition: bfg_spriteEngine.c:1060
void spr_changeSmoothSpriteRotRelative(int s, float AngleStep, int nbFrame)
Change de maniere fluide la rotation d'un sprite en relatif.
Definition: bfg_spriteEngine.c:415
void ms_startAnimate(int msno)
Definition: bfg_spriteEngine.c:1048
int anim_onoff
Definition: bfg_spriteEngine.h:115
void spr_changeSmoothSpriteTXRelative(int s, float StepX, int nbFrame)
Change de maniere fluide la position x d'un sprite en relatif.
Definition: bfg_spriteEngine.c:437
float stepTX
Definition: bfg_spriteEngine.h:44
float rot
Definition: bfg_spriteEngine.h:82
int spr_getHitBoxH(int sprno)
Definition: bfg_spriteEngine.c:821
int nbFrameR
Definition: bfg_spriteEngine.h:40