Modifications
- Renommage de certaines variables - Meilleur implantation de l'index aléatoire - Variable pour la lettre (table de correspondance)
This commit is contained in:
parent
fea025fa24
commit
184706bef8
12 changed files with 40 additions and 14 deletions
|
@ -4,10 +4,15 @@
|
||||||
#include "organisme.hpp"
|
#include "organisme.hpp"
|
||||||
|
|
||||||
class Herbe: public Organisme {
|
class Herbe: public Organisme {
|
||||||
|
const char _m_lettre = ' ';
|
||||||
|
|
||||||
public:
|
public:
|
||||||
// ID de l'univers, index dans l'univers
|
// ID de l'univers, index dans l'univers
|
||||||
Herbe(const int, const int);
|
Herbe(const int, const int);
|
||||||
|
|
||||||
|
// ID de l'univers
|
||||||
|
Herbe(const int);
|
||||||
|
|
||||||
// Renvoie faux
|
// Renvoie faux
|
||||||
bool animal(void) const noexcept;
|
bool animal(void) const noexcept;
|
||||||
};
|
};
|
||||||
|
|
|
@ -4,6 +4,8 @@
|
||||||
#include "animal.hpp"
|
#include "animal.hpp"
|
||||||
|
|
||||||
class Loup: public Animal {
|
class Loup: public Animal {
|
||||||
|
const char _m_lettre = 'L';
|
||||||
|
|
||||||
int generationVitesse(void) const noexcept;
|
int generationVitesse(void) const noexcept;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -4,6 +4,8 @@
|
||||||
#include "animal.hpp"
|
#include "animal.hpp"
|
||||||
|
|
||||||
class Mouton: public Animal {
|
class Mouton: public Animal {
|
||||||
|
const char _m_lettre = 'M';
|
||||||
|
|
||||||
int generationVitesse(void) const noexcept;
|
int generationVitesse(void) const noexcept;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -23,6 +23,9 @@ class Organisme {
|
||||||
// ID de l'Univers, index dans l'univers
|
// ID de l'Univers, index dans l'univers
|
||||||
Organisme(const int, const int);
|
Organisme(const int, const int);
|
||||||
|
|
||||||
|
// ID de l'Univers (index aléatoire)
|
||||||
|
Organisme(const int);
|
||||||
|
|
||||||
virtual ~Organisme(void);
|
virtual ~Organisme(void);
|
||||||
|
|
||||||
// Renvoie la lettre correspondant à l'ID
|
// Renvoie la lettre correspondant à l'ID
|
||||||
|
|
|
@ -4,10 +4,15 @@
|
||||||
#include "organisme.hpp"
|
#include "organisme.hpp"
|
||||||
|
|
||||||
class Sel: public Organisme {
|
class Sel: public Organisme {
|
||||||
|
const char _m_lettre = '-';
|
||||||
|
|
||||||
public:
|
public:
|
||||||
// ID de l'univers, index dans l'univers
|
// ID de l'univers, index dans l'univers
|
||||||
Sel(const int, const int);
|
Sel(const int, const int);
|
||||||
|
|
||||||
|
// ID de l'univers
|
||||||
|
Sel(const int);
|
||||||
|
|
||||||
// Renvoie faux
|
// Renvoie faux
|
||||||
bool animal(void) const noexcept;
|
bool animal(void) const noexcept;
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,15 +1,15 @@
|
||||||
#include "../includes/animal.hpp"
|
#include "../includes/animal.hpp"
|
||||||
|
|
||||||
Animal::Animal(const int univers_ID, const int age_max, const int age, const int vitesse): Organisme(univers_ID, recuperationIndexLibre(univers_ID)), // position aléatoire
|
|
||||||
m_vitesse(vitesse), // par des coordonées
|
|
||||||
m_age_max(age_max), // d'un index de
|
|
||||||
m_age(age) { } // indexLibres (listeUnivers[ID].first)
|
|
||||||
|
|
||||||
Animal::Animal(const int univers_ID, const int index, const int age_max, const int age, const int vitesse): Organisme(univers_ID, index),
|
Animal::Animal(const int univers_ID, const int index, const int age_max, const int age, const int vitesse): Organisme(univers_ID, index),
|
||||||
m_vitesse(vitesse),
|
m_vitesse(vitesse),
|
||||||
m_age_max(age_max),
|
m_age_max(age_max),
|
||||||
m_age(age) { }
|
m_age(age) { }
|
||||||
|
|
||||||
|
Animal::Animal(const int univers_ID, const int age_max, const int age, const int vitesse): Organisme(univers_ID),
|
||||||
|
m_vitesse(vitesse),
|
||||||
|
m_age_max(age_max),
|
||||||
|
m_age(age) { }
|
||||||
|
|
||||||
Animal::~Animal(void) { }
|
Animal::~Animal(void) { }
|
||||||
|
|
||||||
bool Animal::animal(void) const noexcept {
|
bool Animal::animal(void) const noexcept {
|
||||||
|
|
|
@ -1,7 +1,11 @@
|
||||||
#include "../includes/herbe.hpp"
|
#include "../includes/herbe.hpp"
|
||||||
|
|
||||||
Herbe::Herbe(const int univers_ID, const int index): Organisme(univers_ID, index) {
|
Herbe::Herbe(const int univers_ID, const int index): Organisme(univers_ID, index) {
|
||||||
m_correspondance[ID] = ' ';
|
m_correspondance[ID] = _m_lettre;
|
||||||
|
}
|
||||||
|
|
||||||
|
Herbe::Herbe(const int univers_ID): Organisme(univers_ID) {
|
||||||
|
m_correspondance[ID] = _m_lettre;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Herbe::animal(void) const noexcept {
|
bool Herbe::animal(void) const noexcept {
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
#include "../includes/loup.hpp"
|
#include "../includes/loup.hpp"
|
||||||
|
|
||||||
Loup::Loup(const int univers_ID): Animal(univers_ID, 60, 0, Loup::generationVitesse()) {
|
Loup::Loup(const int univers_ID): Animal(univers_ID, 60, 0, Loup::generationVitesse()) {
|
||||||
m_correspondance[ID] = 'L';
|
m_correspondance[ID] = _m_lettre;
|
||||||
}
|
}
|
||||||
|
|
||||||
Loup::Loup(const int univers_ID, const int index): Animal(univers_ID, index, 60, 0, Loup::generationVitesse()) {
|
Loup::Loup(const int univers_ID, const int index): Animal(univers_ID, index, 60, 0, Loup::generationVitesse()) {
|
||||||
m_correspondance[ID] = 'L';
|
m_correspondance[ID] = _m_lettre;
|
||||||
}
|
}
|
||||||
|
|
||||||
Loup::~Loup(void) { }
|
Loup::~Loup(void) { }
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
#include "../includes/mouton.hpp"
|
#include "../includes/mouton.hpp"
|
||||||
|
|
||||||
Mouton::Mouton(const int univers_ID): Animal(univers_ID, 50, 0, Mouton::generationVitesse()) {
|
Mouton::Mouton(const int univers_ID): Animal(univers_ID, 50, 0, Mouton::generationVitesse()) {
|
||||||
m_correspondance[ID] = 'M';
|
m_correspondance[ID] = _m_lettre;
|
||||||
}
|
}
|
||||||
|
|
||||||
Mouton::Mouton(const int univers_ID, const int index): Animal(univers_ID, index, 50, 0, Mouton::generationVitesse()) {
|
Mouton::Mouton(const int univers_ID, const int index): Animal(univers_ID, index, 50, 0, Mouton::generationVitesse()) {
|
||||||
m_correspondance[ID] = 'M';
|
m_correspondance[ID] = _m_lettre;
|
||||||
}
|
}
|
||||||
|
|
||||||
int Mouton::generationVitesse(void) const noexcept {
|
int Mouton::generationVitesse(void) const noexcept {
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
#include "../includes/univers.hpp"
|
#include "../includes/univers.hpp"
|
||||||
#include "../includes/organisme.hpp"
|
#include "../includes/organisme.hpp"
|
||||||
|
|
||||||
Organisme::Organisme(const int universID_p, const int index_p): m_univers_ID(universID_p), m_index(index_p), ID(m_total_ID + 1) {
|
Organisme::Organisme(const int univers_ID, const int index): m_univers_ID(univers_ID), m_index(index), ID(m_total_ID + 1) {
|
||||||
if(Univers::m_liste_univers[m_univers_ID].first.size() == 0) { // si il n'y a plus d'index de libres
|
if(Univers::m_liste_univers[m_univers_ID].first.size() == 0) { // si il n'y a plus d'index de libres
|
||||||
throw std::domain_error("Trop d'organismes pour l'univers.");
|
throw std::domain_error("Trop d'organismes pour l'univers.");
|
||||||
}
|
}
|
||||||
|
@ -9,6 +9,8 @@ Organisme::Organisme(const int universID_p, const int index_p): m_univers_ID(uni
|
||||||
Univers::m_liste_univers[m_univers_ID].second.push_back(this);
|
Univers::m_liste_univers[m_univers_ID].second.push_back(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Organisme::Organisme(const int univers_ID): Organisme(univers_ID, recuperationIndexLibre(univers_ID)) {}
|
||||||
|
|
||||||
Organisme::~Organisme(void) {
|
Organisme::~Organisme(void) {
|
||||||
// TODO: rendre son ancienne position de nouveau disponible, re-shuffle après ajout ?
|
// TODO: rendre son ancienne position de nouveau disponible, re-shuffle après ajout ?
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,11 @@
|
||||||
#include "../includes/sel.hpp"
|
#include "../includes/sel.hpp"
|
||||||
|
|
||||||
Sel::Sel(const int univers_ID, const int index): Organisme(univers_ID, index) {
|
Sel::Sel(const int univers_ID, const int index): Organisme(univers_ID, index) {
|
||||||
m_correspondance[ID] = '-';
|
m_correspondance[ID] = _m_lettre;
|
||||||
|
}
|
||||||
|
|
||||||
|
Sel::Sel(const int univers_ID): Organisme(univers_ID) {
|
||||||
|
m_correspondance[ID] = _m_lettre;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Sel::animal(void) const noexcept {
|
bool Sel::animal(void) const noexcept {
|
||||||
|
|
|
@ -19,8 +19,7 @@ Univers::Univers(const int longueur, const int largeur): m_longueur(longueur),
|
||||||
|
|
||||||
// Remplie quelques valeurs du tableau avec de l'herbe
|
// Remplie quelques valeurs du tableau avec de l'herbe
|
||||||
while(m_liste_univers[ID].first.size() > static_cast<uint64_t>(m_taille_univers - m_taille_univers / 2)) { // cast static grâce à "-Wold-style-cast" et "-Wsign-conversion" (syntaxe C++)
|
while(m_liste_univers[ID].first.size() > static_cast<uint64_t>(m_taille_univers - m_taille_univers / 2)) { // cast static grâce à "-Wold-style-cast" et "-Wsign-conversion" (syntaxe C++)
|
||||||
new Herbe(ID, m_liste_univers[ID].first.back());
|
new Herbe(ID);
|
||||||
m_liste_univers[ID].first.pop_back();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// On stocke les dimensions pour chaque univers dans une map
|
// On stocke les dimensions pour chaque univers dans une map
|
||||||
|
|
Reference in a new issue