Ajout bonus de Taille
augmente la taille du cercle temporairement quand ramassé
This commit is contained in:
23
src/Jeu.java
23
src/Jeu.java
@@ -42,6 +42,8 @@ public class Jeu implements KeyListener, ActionListener, MouseListener {
|
||||
public int typeInvincibilite = 0;
|
||||
public boolean invincibiliteRouge = false;
|
||||
|
||||
protected boolean bonusTailleActif = false;
|
||||
protected int compteurBonusTaille = 0;
|
||||
|
||||
protected String pseudo = "";
|
||||
protected JFrame fenetre;
|
||||
@@ -116,9 +118,10 @@ public class Jeu implements KeyListener, ActionListener, MouseListener {
|
||||
public void lancerPartie(String pseudoSaisi) {
|
||||
pseudo = pseudoSaisi;
|
||||
|
||||
// C'est cette ligne qui donne vie au bonus !
|
||||
// lignes pour ajouter les bonus
|
||||
ecran.ajouterObjet(new Bonus(lili, demiCercleAvant, this));
|
||||
ecran.ajouterObjet(new Malus(lili, demiCercleAvant, this));
|
||||
ecran.ajouterObjet(new BonusTaille(lili, demiCercleAvant, this));
|
||||
|
||||
// A FAIRE : placer dans l'écran tous les objets graphiques nécessaires
|
||||
ecran.ajouterObjet(demiCercleArriere);
|
||||
@@ -142,6 +145,8 @@ public class Jeu implements KeyListener, ActionListener, MouseListener {
|
||||
estGameOver = false;
|
||||
compteurInvincible = 0;
|
||||
invincibiliteRouge = false;
|
||||
bonusTailleActif = false;
|
||||
compteurBonusTaille = 0;
|
||||
gestionnaireNiveau.reinitialiser();
|
||||
gestionnaireFinDePartie.reinitialiser();
|
||||
ecran.demarrer();
|
||||
@@ -154,6 +159,12 @@ public class Jeu implements KeyListener, ActionListener, MouseListener {
|
||||
|
||||
}
|
||||
|
||||
public void activerBonusTaille() {
|
||||
bonusTailleActif = true;
|
||||
// A 40ms par tick d'horloge, 150 frames = environ 6 secondes de bonus
|
||||
compteurBonusTaille = 150;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
if (estGameOver == true) {
|
||||
@@ -168,6 +179,16 @@ public class Jeu implements KeyListener, ActionListener, MouseListener {
|
||||
ecran.setCouleurFond(gestionnaireNiveau.getCouleurFondInterpolee());
|
||||
|
||||
double rayon = gestionnaireNiveau.getRayonCercle();
|
||||
|
||||
|
||||
if (bonusTailleActif == true) {
|
||||
rayon = rayon + 30;
|
||||
compteurBonusTaille = compteurBonusTaille - 1;
|
||||
|
||||
if (compteurBonusTaille <= 0) {
|
||||
bonusTailleActif = false;
|
||||
}
|
||||
}
|
||||
demiCercleAvant.setRayon(rayon);
|
||||
demiCercleArriere.setRayon(rayon);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user