Ajout : cheat mode + fix: invincibilité malus

ajout du cheat mode, plus fix d'un problème: avant possibilité de perdre une vie si malus récupéré pendant la période que le cercle est invincible ( clignote ) alors que ca ne devrait pas l"etre
This commit is contained in:
2026-03-27 10:40:40 +01:00
parent ba78c22e91
commit 2c93a102f2
4 changed files with 16 additions and 4 deletions

View File

@@ -65,7 +65,7 @@ public class Bonus extends ObjetGraphique {
if (!dejaCapture) {
for (Joueur joueur : joueurs) {
if (joueur.verifierCollisionCollectible(x, y, taille, vitesseLigne)) {
joueur.ajouterVie();
if (!monJeu.cheatMode) joueur.ajouterVie();
dejaCapture = true;
break;
}

View File

@@ -43,6 +43,8 @@ public class Jeu implements KeyListener, ActionListener, MouseListener {
protected JFrame fenetre;
protected MenuPrincipal menu;
public boolean cheatMode = false;
public Jeu() {
labScore = new JLabel();
labScore.setForeground(Color.WHITE);
@@ -176,7 +178,7 @@ public class Jeu implements KeyListener, ActionListener, MouseListener {
for (Joueur joueur : joueurs) {
joueur.mettreAJourRayon(rayonBase);
joueur.mettreAJourInvincibilite();
joueur.verifierCollisionLigne(lili);
if (!cheatMode) joueur.verifierCollisionLigne(lili);
joueur.resterDansLigne(lili);
}

View File

@@ -65,7 +65,7 @@ public class Malus extends ObjetGraphique {
if (!dejaCapture) {
for (Joueur joueur : joueurs) {
if (joueur.verifierCollisionCollectible(x, y, taille, vitesseLigne)) {
joueur.retirerVie();
if (!monJeu.cheatMode && !joueur.estInvincible()) joueur.retirerVie();
dejaCapture = true;
break;
}

View File

@@ -26,7 +26,7 @@ public class MenuPrincipal {
public void afficher(String pseudoActuel) {
JPanel panneau = new JPanel(new GridLayout(7, 1, 10, 10));
JPanel panneau = new JPanel(new GridLayout(8, 1, 10, 10));
JLabel titre = new JLabel("LINEA", SwingConstants.CENTER);
champPseudo = new JTextField(pseudoActuel, 15);
@@ -35,6 +35,7 @@ public class MenuPrincipal {
JButton bouton2Joueurs = new JButton("2 Joueurs");
JButton boutonClassement = new JButton("Classement");
JButton boutonQuitter = new JButton("Quitter");
JButton boutonCheat = new JButton("Cheat Mode : OFF");
bouton1Joueur.addActionListener(new ActionListener() {
@Override
@@ -65,11 +66,20 @@ public class MenuPrincipal {
}
});
boutonCheat.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
jeu.cheatMode = !jeu.cheatMode;
boutonCheat.setText(jeu.cheatMode ? "Cheat Mode : ON" : "Cheat Mode : OFF");
}
});
panneau.add(titre);
panneau.add(champPseudo);
panneau.add(bouton1Joueur);
panneau.add(bouton2Joueurs);
panneau.add(boutonClassement);
panneau.add(boutonCheat);
panneau.add(boutonQuitter);
JPanel conteneur = new JPanel(new FlowLayout(FlowLayout.CENTER, 0, 130));