#pragma once
#include <iostream>
#include "../includes/Joueur.hpp"
#include "../includes/PieceSafari.hpp"
#include "../includes/PlateauSafari.hpp"
class Safari {
friend std::ostream &operator<<(std::ostream &, const Safari &);
// Plateau de jeu
PlateauSafari plateau;
// Barrières
std::vector<PieceSafari *> barrieres;
// Joueurs
Joueur &joueur1;
Joueur &joueur2;
Joueur &joueur3;
Joueur &joueurCourant;
public:
Safari(Joueur &joueur1, Joueur &joueur2, Joueur &joueur3); // constructor
virtual ~Safari(); // destructor
Safari(const Safari &); // copy constructor
const Safari &operator=(const Safari &); // copy assignement
// Fonction d'initialisation du jeu
void choixAnimal(std::string animal);
};