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"
|
||||
|
||||
class Herbe: public Organisme {
|
||||
const char _m_lettre = ' ';
|
||||
|
||||
public:
|
||||
// ID de l'univers, index dans l'univers
|
||||
Herbe(const int, const int);
|
||||
|
||||
// ID de l'univers
|
||||
Herbe(const int);
|
||||
|
||||
// Renvoie faux
|
||||
bool animal(void) const noexcept;
|
||||
};
|
||||
|
|
|
@ -4,6 +4,8 @@
|
|||
#include "animal.hpp"
|
||||
|
||||
class Loup: public Animal {
|
||||
const char _m_lettre = 'L';
|
||||
|
||||
int generationVitesse(void) const noexcept;
|
||||
|
||||
public:
|
||||
|
|
|
@ -4,6 +4,8 @@
|
|||
#include "animal.hpp"
|
||||
|
||||
class Mouton: public Animal {
|
||||
const char _m_lettre = 'M';
|
||||
|
||||
int generationVitesse(void) const noexcept;
|
||||
|
||||
public:
|
||||
|
|
|
@ -23,6 +23,9 @@ class Organisme {
|
|||
// ID de l'Univers, index dans l'univers
|
||||
Organisme(const int, const int);
|
||||
|
||||
// ID de l'Univers (index aléatoire)
|
||||
Organisme(const int);
|
||||
|
||||
virtual ~Organisme(void);
|
||||
|
||||
// Renvoie la lettre correspondant à l'ID
|
||||
|
|
|
@ -4,10 +4,15 @@
|
|||
#include "organisme.hpp"
|
||||
|
||||
class Sel: public Organisme {
|
||||
const char _m_lettre = '-';
|
||||
|
||||
public:
|
||||
// ID de l'univers, index dans l'univers
|
||||
Sel(const int, const int);
|
||||
|
||||
// ID de l'univers
|
||||
Sel(const int);
|
||||
|
||||
// Renvoie faux
|
||||
bool animal(void) const noexcept;
|
||||
};
|
||||
|
|
|
@ -1,15 +1,15 @@
|
|||
#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),
|
||||
m_vitesse(vitesse),
|
||||
m_age_max(age_max),
|
||||
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) { }
|
||||
|
||||
bool Animal::animal(void) const noexcept {
|
||||
|
|
|
@ -1,7 +1,11 @@
|
|||
#include "../includes/herbe.hpp"
|
||||
|
||||
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 {
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
#include "../includes/loup.hpp"
|
||||
|
||||
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()) {
|
||||
m_correspondance[ID] = 'L';
|
||||
m_correspondance[ID] = _m_lettre;
|
||||
}
|
||||
|
||||
Loup::~Loup(void) { }
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
#include "../includes/mouton.hpp"
|
||||
|
||||
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()) {
|
||||
m_correspondance[ID] = 'M';
|
||||
m_correspondance[ID] = _m_lettre;
|
||||
}
|
||||
|
||||
int Mouton::generationVitesse(void) const noexcept {
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#include "../includes/univers.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
|
||||
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);
|
||||
}
|
||||
|
||||
Organisme::Organisme(const int univers_ID): Organisme(univers_ID, recuperationIndexLibre(univers_ID)) {}
|
||||
|
||||
Organisme::~Organisme(void) {
|
||||
// TODO: rendre son ancienne position de nouveau disponible, re-shuffle après ajout ?
|
||||
}
|
||||
|
|
|
@ -1,7 +1,11 @@
|
|||
#include "../includes/sel.hpp"
|
||||
|
||||
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 {
|
||||
|
|
|
@ -19,8 +19,7 @@ Univers::Univers(const int longueur, const int largeur): m_longueur(longueur),
|
|||
|
||||
// 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++)
|
||||
new Herbe(ID, m_liste_univers[ID].first.back());
|
||||
m_liste_univers[ID].first.pop_back();
|
||||
new Herbe(ID);
|
||||
}
|
||||
|
||||
// On stocke les dimensions pour chaque univers dans une map
|
||||
|
|
Reference in a new issue