modif pour Dames

This commit is contained in:
Emma 2023-12-12 12:15:53 +01:00
parent a1f9e5d2c5
commit 3a23bff56d
4 changed files with 29 additions and 1 deletions

View file

@ -1,6 +1,7 @@
#pragma once #pragma once
#include <iostream> #include <iostream>
#include <ctime>
#include "../includes/Joueur.hpp" #include "../includes/Joueur.hpp"
#include "../includes/Plateau.hpp" #include "../includes/Plateau.hpp"
@ -23,5 +24,9 @@ public:
Dames(const Dames &); // copy constructor Dames(const Dames &); // copy constructor
const Dames &operator=(const Dames &); // copy assignement const Dames &operator=(const Dames &); // copy assignement
// Vérifie si une prise est possible pour une pièce donnée
//J'ai des erreurs depuis que j'ai voulu faire cette fonction et je comprends pas pourquoi
bool prisePossible(Piece *piece);
// Fonction d'initialisation du jeu // Fonction d'initialisation du jeu
}; };

View file

@ -28,5 +28,8 @@ public:
// Getter pour les pièces du joueur // Getter pour les pièces du joueur
const std::vector<Piece *> getPieces() const { return pieces; } const std::vector<Piece *> getPieces() const { return pieces; }
// Getter pour le nom du joueur
const std::string& getNom() const { return nom; }
// Fonction qui supprime une pièce de la liste de pièces du joueur // Fonction qui supprime une pièce de la liste de pièces du joueur
}; };

View file

@ -3,6 +3,8 @@
#include "Piece.hpp" #include "Piece.hpp"
class PieceDames : public Piece { class PieceDames : public Piece {
// True si la piece est une dame
bool dame;
public: public:
PieceDames(std::string categorie); PieceDames(std::string categorie);
virtual ~PieceDames(); virtual ~PieceDames();

View file

@ -1,7 +1,17 @@
#include "../includes/Dames.hpp" #include "../includes/Dames.hpp"
#include "Dames.hpp"
Dames::Dames(Joueur &j1, Joueur &j2) Dames::Dames(Joueur &j1, Joueur &j2)
: plateau(Plateau(10)), joueur1{j1}, joueur2{j2}, joueurCourant{j1} { : plateau(Plateau(10)), joueur1(j1), joueur2(j2), joueurCourant(j1) {
std::srand(static_cast<unsigned int>(std::time(0)));
int r = std::rand() % 2;
if(r==0){
joueurCourant = j1;
std::cout << j1.getNom() << " jouera avec les pièces blanches et commencera la partie." << std::endl;
}else{
joueurCourant = j2;
std::cout << j2.getNom() << " jouera avec les pièces blanches et commencera la partie." << std::endl;
}
plateau.initialiserPlateau(j1, j2); plateau.initialiserPlateau(j1, j2);
} }
@ -20,3 +30,11 @@ const Dames &Dames::operator=(const Dames &src) {
return *this; return *this;
} }
//A continuer
bool Dames::prisePossible(Piece *piece){
if(!piece->dame)
if()
return false;
}