This commit is contained in:
Mylloon 2024-01-07 03:14:07 +01:00
parent c175e9aa56
commit 604e66c30c
Signed by: Anri
GPG key ID: A82D63DFF8D1317F

View file

@ -182,36 +182,29 @@ void Safari::event(const int x, const int y) {
case EnJeu: {
const Piece *p = getPiece(posCurseur.first, posCurseur.second);
bool justChanged = false;
// Si la case cliquée est vide
if (p == nullptr) {
bool justChanged = false;
// Déplacer un animal
if (!deplacerAnimal) {
// TODO: Vérifier que le déplacement est correct
// Déplacer un animal
if (!deplacerAnimal && p == nullptr) {
// TODO: Vérifier que le déplacement est correct
if (true) {
plateau.moveSelection(posCurseur.first, posCurseur.second);
justChanged = true;
deplacerAnimal = true;
Ecran::printMessage(msgTonTour());
}
}
// Poser une barrière
if (!placerBarriere && !justChanged) {
// TODO
}
// Poser une barrière
if (!placerBarriere && !justChanged) {
// TODO
// J'ai comme idée de cliquer sur 2 cases et de placer la barrière entre
// les 2 cases choisies
// Prendre en compte qu'il faut rajouter un marqueur quand on clique sur
// une case vide
}
if (deplacerAnimal && placerBarriere) {
// Le joueur a fini son tour
// Réinitialise les variables
deplacerAnimal = false;
placerBarriere = false;
// Donne la main au joueur suivant
changerJoueurCourant();
Ecran::printMessage(msgTonTour());
}
} else {
if (p != nullptr) {
// Vérifie que la pièce est à nous
if (getPiece(posCurseur.first, posCurseur.second)->getCategory() ==
getPiece(joueurCourant->getPieces().at(0))->getCategory()) {
@ -219,6 +212,17 @@ void Safari::event(const int x, const int y) {
plateau.modifierSelection(posCurseur.first, posCurseur.second);
}
}
if (deplacerAnimal && placerBarriere) {
// Le joueur a fini son tour
// Réinitialise les variables
deplacerAnimal = false;
placerBarriere = false;
// Donne la main au joueur suivant
changerJoueurCourant();
Ecran::printMessage(msgTonTour());
}
break;
}
case Fini: {