Files
racing-game/src/model/car/HybridCar.java
2025-12-18 21:00:13 +01:00

51 lines
975 B
Java

package model.car;
/**
* HybridCar = décorateur "voiture hybride".
*
* Idée :
* - La voiture avance à chaque tour
* - Mais elle consomme du carburant seulement 1 fois sur 2
* => donc elle économise du carburant.
*/
public class HybridCar extends CarDecorator {
private int energy = 100; // énergie batterie (0..100)
public HybridCar(Car car) {
super(car);
}
/** pour afficher l'énergie dans le Dashboard */
public int getEnergy() {
return energy;
}
// TODO
@Override
public boolean apply() {
car.move();
consumeFuel();
return true;
}
// TODO
@Override
public void consumeFuel() {
if (energy > 0) {
energy -= 10;
} else {
car.consumeFuel();
}
}
@Override
public String decelerate() {
String msg = car.decelerate();
if (energy <= 100)
energy += 5;
return msg;
}
}