Ajout de getters/setters sur [Physics]Object et constructeurs

This commit is contained in:
Mattéo Delabre 2016-03-09 19:53:08 +01:00
parent 5db5bcd796
commit d2ef0accc4
4 changed files with 52 additions and 0 deletions

View File

@ -7,3 +7,7 @@ sf::Vector2f Object::getPosition() {
int Object::getCharge() {
return charge;
}
void Object::setCharge(int set_charge) {
charge = set_charge;
}

View File

@ -11,6 +11,9 @@ protected:
int charge;
public:
Object(sf::Vector2f init_position) :
position(init_position), charge(0) {}
/**
* Dessine l'objet dans la fenêtre donnée
*/
@ -36,6 +39,11 @@ public:
* Récupère la charge de l'objet
*/
int getCharge();
/**
* Modifie la charge de l'objet
*/
void setCharge(int set_charge);
};
/**

View File

@ -6,6 +6,22 @@ void PhysicsObject::update(State state) {
// TODO: intégrer le vecteur force dans la vitesse puis la position
}
sf::Vector2f getVelocity() {
return velocity;
}
void setVelocity(sf::Vector2f set_velocity) {
velocity = set_velocity;
}
int getMass() {
return mass;
}
void setMass(int set_mass) {
mass = set_mass;
}
sf::Vector2f PhysicsObject::getForces(State state) {
sf::Vector2f forces(0, 0);

View File

@ -19,11 +19,35 @@ protected:
static constexpr float GRAVITY = 10;
public:
PhysicsObject(sf::Vector2f position) :
Object(position), mass(1) {}
/**
* Met à jour la physique de l'objet juste avant le dessin d'une frame
* Reçoit l'état actuel du moteur
*/
void update(State state);
/**
* Récupère la vitesse de l'objet
*/
sf::Vector2f getVelocity();
/**
* Modifie la vitesse de l'objet
* (à utiliser avec précaution, préférer modifier les forces)
*/
void setVelocity(sf::Vector2f set_velocity);
/**
* Récupère la masse de l'objet
*/
int getMass();
/**
* Modifie la masse de l'objet
*/
void setMass(int set_mass);
};
#endif