ajout invicibilité entre les niveaux

This commit is contained in:
tit-exe
2026-03-17 15:01:49 +01:00
parent 0b82113441
commit 732d29dad6
3 changed files with 14 additions and 2 deletions

View File

@@ -54,12 +54,13 @@ public class GestionnaireNiveau {
e.printStackTrace();
}
// Si aucun niveau chargé, on en met un par défaut pour éviter un crash
if (niveaux.isEmpty()) {
niveaux.add(new Niveau(1, new Color(112, 158, 251), 8, 1.0/80.0, 70, 100, 500));
}
}
private boolean niveauVientDeChanger = false;
public void mettreAJour() {
framesDepuisDebut++;
framesDansNiveau++;
@@ -67,9 +68,18 @@ public class GestionnaireNiveau {
if (framesDansNiveau >= FRAMES_PAR_NIVEAU && indexNiveau < niveaux.size() - 1) {
indexNiveau++;
framesDansNiveau = 0;
niveauVientDeChanger = true;
}
}
public boolean aChangéDeNiveau() {
if (niveauVientDeChanger) {
niveauVientDeChanger = false;
return true;
}
return false;
}
public Niveau getNiveauActuel() {
return niveaux.get(indexNiveau);
}

View File

@@ -159,6 +159,9 @@ public class Jeu implements KeyListener, ActionListener, MouseListener {
}
gestionnaireNiveau.mettreAJour();
if (gestionnaireNiveau.aChangéDeNiveau()) {
compteurInvincible = 0;
}
ecran.setCouleurFond(gestionnaireNiveau.getCouleurFondInterpolee());
double rayon = gestionnaireNiveau.getRayonCercle();

View File

@@ -56,7 +56,6 @@ public class Ligne extends ObjetGraphique {
return (double)ZoneDessin.largeur / nbSegments;
}
// Calcul du pas dans le noise : unique endroit où cette logique est définie
private double getNoiseStep() {
return GetLargeurSegment() / gestionnaireNiveau.getNoiseFrequence();
}