-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathAnimated.hpp
82 lines (58 loc) · 1.82 KB
/
Animated.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#ifndef ZIGO_ANIMATED
#define ZIGO_ANIMATED
#include "Anim.hpp"
// Un sprite animé
// Il est composé de :
// Le temps écoulé entre chaque frame
// Un pointeur sur l'animation qu'il doit lire
// Des fonctions de lecture :
// Play, Pause, Stop, Loop
class Animated : public sf::Sprite
{
public:
// Par Copie
Animated(const Animated& Cpy);
// Par défault
Animated(bool Play = false, bool Loop = true, float Time = 0.f);
// Directement avec une Anim
Animated(Anim* NewAnim, bool Play = false, bool Loop = true, float Time = 0.f);
// Destructeur
virtual ~Animated();
// Comme 'SetImage', sauf qu'on lui fournit l'Anim
void SetAnim(Anim* NewAnim);
// Retourne un pointeur sur l'anim
Anim* GetAnim();
// Passer à l'image numéro X
void SetFrame(int Frame);
// Retourne la Frame courante
int GetCurrentFrame();
// Fixer le temps entre chaques Frame
void SetFrameTime(float Time);
// Retourne le temps entre chaques Frame
float GetFrameTime();
// Jouer en boucle ?
void SetLoop(bool Loop);
// Jouer en boucle ?
bool IsLoop();
// Met en pause la lecture
void Pause();
// Relance la lecture
void Play();
// Met en pause la lecture, et 'rembobine'
void Stop();
// Est en pause ?
bool IsPaused();
// Est stoppé ?
bool IsStoped();
// Fonction à appeler à chaque tour de boucle, prend le temps
// écoulé depuis le dernier appel à la fonction en paramètre
void anim(float ElapsedTime);
private:
float myTime;
float myElapsedTime;
bool Paused;
bool myLoop;
Anim* myAnim;
unsigned int myCurrentFrame;
};
#endif