top of page

Comment gérer le déplacement d'un personnage dans un environnement à plateforme, obstacle et trous?

​

  • Comment faire défiler des plate-formes et des ennemis aléatoirement?

​

Comment faire apparaître des rectangles aléatoirement ?

  • Tracer des rectangles à une distance accessible par le personnage.

void plateforme() {
  for (int i=0; i<nombre; i++) {
    fill(#000000);
    rect(Xplateforme[i], Yplateforme[i], 100, 10);
    Xplateforme[i]=Xplateforme[i]-4;
  }

  • Faire savoir au code le moment où le rectangle suivant doit apparaître.

  for (int i=0; i<nombre; i++) {
    Xplateforme[i]=400+300*i;
    Yplateforme[i]=(int)random(300, 600);
  }

Comment faire disparaître les rectangles précédents ?

  • Faire savoir au code le moment où le rectangle précédent doit disparaître.

                        

  • Comment faire sauter le personnage en le faisant avancer?

​

Comment déplacer le personnage avec les flèches du clavier?

  • Faire varier la trajectoire du saut en appuyant sur les flèches de droite et de gauche.

void move() {
  if (keyPressed) {
    if (keyCode == RIGHT) {
      x=x+5;
    }
  }

  if (keyPressed) {
    if (keyCode == LEFT) {

      x=x-5;
    }
  }
}

Comment faire sauter le personnage en permanence ?

  • Faire déplacer le personnage vers le haut lorsqu'il touche la plate-forme.

  y=vitesseY+y;
  for (int i=0; i<nombre; i++) {
    if (y+50>Yplateforme[i]) {
      if (y+50<Yplateforme[i]+20) {
        if (x>Xplateforme[i]-50) {
          if (x<Xplateforme[i]+90) {
            vitesseY=-vitesseY;
            score=score+1;
          }
        }
      }
    }
  }

  • Déplacer vers le bas lorsqu'il atteint une certaine hauteur jusqu'à ce qu'il touche la plate-forme.

if (y<40) {
    vitesseY=-vitesseY;
  }
}

Comment permettre au personnage de rebondir sur les plateformes et non dans le vide ?

  • Faire perdre le joueur lorsque le personnage touche le bas de l'écran.

//variable :

boolean perdu=false;

  if (y+60>700) {
    perdu=true;
  }

  • Faire perdre le joueur lorsque le personnage touche un ennemi.

  for (int i=0; i<nombre; i++) {
    if (y+50>Yennemi[i]) {
      if (y+50<Yennemi[i]+60) {
        if (x>Xennemi[i]-60) {
          if (x<Xennemi[i]+60) {
            mort.play();
            perdu=true;
          }
        }
      }
    }
  }
}

  • Afficher écran "game over" lorsque le joueur perd.

//variable :

boolean perdu=false;

 

if perdu=true {  

      xscore=340;
      yscore=200;
      y=10000;
      fill(0);
      textSize(50);
      text("score : "+score, xscore, yscore);
      text("Game Over", 320, 350);

}

  • Comment gérer le score et les records ?

​

Comment afficher le score pendant le jeu ?

  • Ajouter +1 au score à chaque nouvelle plate-forme touchée.

  textSize(30);
  text("score : "+score, xscore, yscore);

(voir saut du personnage)

  • Ne pas ajouter +1 au score si la même plateforme est touchée 2 fois.

​

Comment enregistrer un record établit ?

  • Choisir le score le plus élevé comme record.

  • Afficher le record.

​

​

​

Questions

  • Facebook Social Icon
  • Twitter Social Icon
  • Google+ Social Icon
bottom of page