// MAIN FUNCTION public static void main(String[] args) throws InterruptedException { // notre fonction principale while (true) { initGame(); // on initialise la fenêtre du jeu generateGround(); // on génère le terrain dans des tableaux Menu.navigation(); // on affiche le menu de navigation while (!endOfGame) { // TANT QUE LA PARTIE N'EST PAS FINIE // StdDraw.clear(Constants.BACKGROUND_COLOR); StdDraw.picture(Constants.X_MAX / 2, Constants.Y_MAX / 2, "./src/ciel.png"); for (int i = 0; i < Menu.numberOfPlayers; i++) { runPlayer(i); // actions de chaque joueur (déplacement, Obus, mine) } endOfGame = Tank.endGame(); // on vérifie si il reste des joueurs showGround(); // (on fait varier le x de chaque rectangle) controlTanks(); // gérer les joueurs (collisions, vie, scores) controlObus(); // gérer les Obus (déplacement, collisions) controlMines(); // gérer les Mines (déplacement, collisions) controlMissiles(); // gérer les Missiles (déplacement, collisions) StdDraw.show(10); // durée d'affichage de la vue (cadence) Thread.sleep(10); // pause pendant l'affichage } endGame(); // quand un joueur est mort (affichage gagnant) clearGame(); // effacer toutes les données du jeu pour recommencer une partie } }
protected static void resetGround() { myRect.clear(); Ground.myRect.clear(); generateGround(); }