57 lines
1.2 KiB
C++
57 lines
1.2 KiB
C++
//
|
|
// Created by Louis Gallet on 15/01/2025.
|
|
//
|
|
|
|
#include "G990.h"
|
|
|
|
#include <algorithm>
|
|
|
|
void G990::initialiser(bool nord, bool est, long energiePhysique, long energieMaximale, long vision) {
|
|
this->nord = nord;
|
|
this->est = est;
|
|
setEnergiePhysique(energiePhysique);
|
|
setEnergieMaximale(energieMaximale);
|
|
setVision(vision);
|
|
}
|
|
|
|
void G990::deplacementNordSud(int valeur, int &x, int &y) const {
|
|
long deplacement = (static_cast<long>(valeur) > energieMaximale) ? energieMaximale : valeur;
|
|
if (nord) {
|
|
y += static_cast<int>(deplacement);
|
|
} else {
|
|
y -= static_cast<int>(deplacement);
|
|
}
|
|
y = std::max(std::min(y, 9), 0);
|
|
}
|
|
|
|
void G990::deplacementEstOuest(int valeur, int &x, int &y) const {
|
|
long deplacement = (static_cast<long>(valeur) > energieMaximale) ? energieMaximale : valeur;
|
|
if (est) {
|
|
x += static_cast<int>(deplacement);
|
|
} else {
|
|
x -= static_cast<int>(deplacement);
|
|
}
|
|
x = std::max(std::min(x, 9), 0);
|
|
}
|
|
|
|
void G990::regarderNord() {
|
|
nord = true;
|
|
}
|
|
|
|
void G990::regarderSud() {
|
|
nord = false;
|
|
}
|
|
|
|
void G990::regarderEst() {
|
|
est = true;
|
|
}
|
|
|
|
void G990::regarderOuest() {
|
|
est = false;
|
|
}
|
|
|
|
void G990::bloquer(int xAmi, int yAmi, int &x, int &y, int xEnnemi, int yEnnemi) {
|
|
|
|
}
|
|
|