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,23 +182,35 @@ void Safari::event(const int x, const int y) {
case EnJeu: {
const Piece *p = getPiece(posCurseur.first, posCurseur.second);
// Si la case cliquée est vide
if (p == nullptr) {
bool justChanged = false;
// Déplacer un animal
if (!deplacerAnimal) {
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
// 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 (p != nullptr) {
// Vérifie que la pièce est à nous
if (getPiece(posCurseur.first, posCurseur.second)->getCategory() ==
getPiece(joueurCourant->getPieces().at(0))->getCategory()) {
// On sélectionne la pièce
plateau.modifierSelection(posCurseur.first, posCurseur.second);
}
}
if (deplacerAnimal && placerBarriere) {
@ -211,14 +223,6 @@ void Safari::event(const int x, const int y) {
changerJoueurCourant();
Ecran::printMessage(msgTonTour());
}
} else {
// Vérifie que la pièce est à nous
if (getPiece(posCurseur.first, posCurseur.second)->getCategory() ==
getPiece(joueurCourant->getPieces().at(0))->getCategory()) {
// On sélectionne la pièce
plateau.modifierSelection(posCurseur.first, posCurseur.second);
}
}
break;
}
case Fini: {