parent
b73961ad39
commit
026077f884
@ -1,5 +1,6 @@
|
||||
{
|
||||
"files.associations": {
|
||||
"iostream": "cpp"
|
||||
"iostream": "cpp",
|
||||
"iosfwd": "cpp"
|
||||
}
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,14 +1,77 @@
|
||||
#include "de.hpp"
|
||||
#include "joueur.hpp"
|
||||
#include "partie.hpp"
|
||||
|
||||
#include <iostream>
|
||||
|
||||
using namespace std;
|
||||
|
||||
namespace jeu {
|
||||
|
||||
Partie::Partie(string nomJoueur1, string nomJoueur2)
|
||||
:gameOver{false}, joueur1{nomJoueur1}, joueur2{nomJoueur2}
|
||||
{
|
||||
joueurCourant = &joueur1;
|
||||
}
|
||||
|
||||
Joueur Partie::getJoueurCourant() const {
|
||||
return *joueurCourant;
|
||||
|
||||
}
|
||||
|
||||
} // fin du namespace jeu
|
||||
void Partie::lancerDe(){
|
||||
if(gameOver) {
|
||||
cout << "La partie est términé Jami !!!" << endl;
|
||||
return;
|
||||
}
|
||||
de.lancer();
|
||||
if(getValeurDe() == 1) {
|
||||
cout << "Vous avez perdu tt vos points !!!" << endl;
|
||||
joueurCourant->effacerScoreCourant();
|
||||
passerMainJoueurSuivant();
|
||||
cout << joueurCourant->getNom() << " C'est à vous de jouer !!" << endl;
|
||||
return;
|
||||
}
|
||||
joueurCourant->ajouterAuScoreCourant(getValeurDe());
|
||||
}
|
||||
|
||||
int Partie::getValeurDe() const {
|
||||
return de.getValeur();
|
||||
}
|
||||
|
||||
bool Partie::isGameOver() const {
|
||||
return gameOver;
|
||||
}
|
||||
|
||||
void Partie::passerMainJoueurSuivant() {
|
||||
joueurCourant->ajouterAuScoreTotal(joueurCourant->getScoreCourant());
|
||||
if(joueurCourant->getScoreTotal() >= 100) {
|
||||
gameOver = true;
|
||||
cout << "Félicitation " << joueurCourant->getNom() << " vous avez gagné " << joueurCourant->getScoreTotal() << " points !" << endl;
|
||||
return;
|
||||
}
|
||||
|
||||
if(joueurCourant->getNom() == joueur1.getNom())
|
||||
joueurCourant = &joueur2;
|
||||
else
|
||||
joueurCourant = &joueur1;
|
||||
}
|
||||
|
||||
void Partie::rejouer() {
|
||||
joueur1.effacerScores();
|
||||
joueur2.effacerScores();
|
||||
de.effacer();
|
||||
gameOver = false;
|
||||
if(joueur1.getScoreTotal() < joueur2.getScoreTotal())
|
||||
joueurCourant = &joueur1;
|
||||
else
|
||||
joueurCourant = &joueur2;
|
||||
|
||||
}
|
||||
} // fin du namespace jeu
|
||||
|
||||
|
||||
// ostream &operator<<(ostream &s, const jeu::Joueur &j) {
|
||||
// s << "Le joueur " << j.getNom() << " possede un score courant de " << j.getScoreCourant() << " et un score de " << j.getScoreTotal() << endl;
|
||||
// return s;
|
||||
// }
|
Loading…
Reference in new issue