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

View File

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

View File

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