Ajout les déplacements des animaux

This commit is contained in:
Mylloon 2022-04-11 23:18:22 +02:00
parent b1bbc599aa
commit aa2591de4b
Signed by: Anri
GPG key ID: A82D63DFF8D1317F
2 changed files with 30 additions and 2 deletions

View file

@ -22,4 +22,18 @@ bool Loup::carnivore(void) const noexcept {
return true; return true;
} }
void Loup::action(void) { } void Loup::action(void) {
// Se déplace aléatoirement d'une case
std::vector<int> cases_possible = this->casesPossible();
std::random_device nombre_aleatoire;
std::default_random_engine graine(nombre_aleatoire());
std::uniform_int_distribution<int> aleatoire(0, cases_possible.size() - 1);
m_index = cases_possible[static_cast<uint64_t>(aleatoire(graine))];
// Mange un mouton si besoin
/* ... */
// S'accouple si besoin
/* ... */
}

View file

@ -20,4 +20,18 @@ bool Mouton::carnivore(void) const noexcept {
return false; return false;
} }
void Mouton::action(void) { } void Mouton::action(void) {
// Se déplace aléatoirement d'une case
std::vector<int> cases_possible = this->casesPossible();
std::random_device nombre_aleatoire;
std::default_random_engine graine(nombre_aleatoire());
std::uniform_int_distribution<int> aleatoire(0, cases_possible.size() - 1);
m_index = cases_possible[static_cast<uint64_t>(aleatoire(graine))];
// Mange de l'herbe si besoin
/* ... */
// S'accouple si besoin
/* ... */
}