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; } }