Stockage de tous les objets du jeu dans un seul tableau
Tous les pointeurs intelligents vers les objets du jeu sont stockés dans un seul et même tableau "objets" au lieu de tableaux séparés "blocks" et "balls" pour plus de flexibilité
This commit is contained in:
parent
18fbe2b88e
commit
c75cf288c1
20
engine.hpp
20
engine.hpp
|
@ -2,8 +2,10 @@
|
||||||
#define PTF_ENGINE_HPP
|
#define PTF_ENGINE_HPP
|
||||||
|
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
#include <memory>
|
||||||
#include <SFML/Graphics.hpp>
|
#include <SFML/Graphics.hpp>
|
||||||
#include "ball.hpp"
|
#include "state.hpp"
|
||||||
|
#include "object.hpp"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* La classe principale Engine coordonne les éléments
|
* La classe principale Engine coordonne les éléments
|
||||||
|
@ -17,17 +19,25 @@ private:
|
||||||
bool goLeftKey;
|
bool goLeftKey;
|
||||||
bool goRightKey;
|
bool goRightKey;
|
||||||
|
|
||||||
|
std::vector<std::unique_ptr<Object>> objects;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
static constexpr float GRAVITY = 10;
|
static constexpr float GRAVITY = 10;
|
||||||
static constexpr float ATTRACTION = 10;
|
static constexpr float ATTRACTION = 10;
|
||||||
static constexpr float MOVE = 10;
|
static constexpr float MOVE = 10;
|
||||||
|
|
||||||
std::vector<Ball> balls;
|
|
||||||
std::vector<std::vector<Block>> blocks;
|
|
||||||
|
|
||||||
Engine();
|
Engine();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Dessine la scène du jeu couche par couche
|
||||||
|
*/
|
||||||
void draw();
|
void draw();
|
||||||
void update(float delta);
|
|
||||||
|
/**
|
||||||
|
* Met à jour les objets du jeu pour
|
||||||
|
* qu'ils s'adaptent au nouvel état du moteur
|
||||||
|
*/
|
||||||
|
void update(State state);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue