Programme space invadors

bonsoir,
je débute dans la programation avec processing et je suis dans la conception d’un programme copiant le jeu space invadors. voici mon début de codage. si quelqu’un pouvait me venir en aide pour terminer ce projet ca serait sympa:

class vaisseau { // définition d'une classe

  float x;
  float y;
  float vX;
  float vY;
  PImage imaVaisseau;
}


class Missile {
  int x, y;
  int Taille = 5;
  int GrandeTaille = Taille * 7 + 5;

  void draw() {
    rect (x, y, Taille, Taille);
    y -= Taille;
  }
}

PImage imaVaisseau;
int nbImaVai = 7;
//définition d'un tableau d'image
PImage vaisseau [] = new PImage[nbImaVai];
PImage fondDuJeux;//insertion de l'image de fond
ArrayList<vaisseau> mesVaisseau = new ArrayList<vaisseau>();//création d'un tableau dynamique
vaisseau monVaisseau = new vaisseau();

int niv = 1;

void setup() {
  size(1000, 600);
  // on charge l'image
  fondDuJeux=loadImage("fond.png");
  fondDuJeux.resize(width, height); // on retaille l'image 
  noCursor();// le cureseur n'apparait pas
  for (int i = 0; i<nbImaVai; i++) {
    //S1 i=2
    String str = "vaisseau" +i + ".png";
    // str= vaisseau2.png
    vaisseau [i]=loadImage(str);
    vaisseau [i].resize(50, 50);
  }
  monVaisseau.x=200;
  monVaisseau.y=500;
  monVaisseau.vX=0;
  monVaisseau.vY=0;
  monVaisseau.imaVaisseau=loadImage("vaisseau0.png");
  monVaisseau.imaVaisseau.resize(50, 50);
}

void draw() {
  image (fondDuJeux, 0, 0);//alternative background ciel
  image(monVaisseau.imaVaisseau, monVaisseau.x, monVaisseau.y);
  monVaisseau.x=monVaisseau.x+monVaisseau.vX;
  if (niv==1) {
    niveau1();
  }
  for (int i= 0; i<mesVaisseau.size(); i++) {    
    image(mesVaisseau.get(i).imaVaisseau, mesVaisseau.get(i).x, mesVaisseau.get(i).y);
    if (mesVaisseau.get(i).x>850 ||mesVaisseau.get(i).x<0) {
      mesVaisseau.get(i).vX=-mesVaisseau.get(i).vX;
      mesVaisseau.get(i).y+=mesVaisseau.get(i).vY;
    }

    mesVaisseau.get(i).x+=mesVaisseau.get(i).vX;
  }
}


void niveau1() {
  for (int i= 0; i<10; i++) {
    for (int j= 0; j<3; j++) {
      mesVaisseau.add(new vaisseau());
      mesVaisseau.get(mesVaisseau.size()-1).x=i*100+50;
      mesVaisseau.get(mesVaisseau.size()-1).y=100+100*j;
      mesVaisseau.get(mesVaisseau.size()-1).vX=1;
      mesVaisseau.get(mesVaisseau.size()-1).vY=50;
      mesVaisseau.get(mesVaisseau.size()-1).imaVaisseau=vaisseau [int(random(nbImaVai))];
    }
  }
  niv++;
}
void niveau2() {
  for (int i= 0; i<10; i++) {
    for (int j= 0; j<3; j++) {
      mesVaisseau.add(new vaisseau());
      mesVaisseau.get(mesVaisseau.size()-1).x=i*100+50;
      mesVaisseau.get(mesVaisseau.size()-1).y=100+100*j;
      mesVaisseau.get(mesVaisseau.size()-1).vX=1;
      mesVaisseau.get(mesVaisseau.size()-1).vY=50;
      mesVaisseau.get(mesVaisseau.size()-1).imaVaisseau=vaisseau [int(random(nbImaVai))];
    }
  }
  niv++;
}
void keyPressed() {
  if (keyCode == RIGHT) {
    monVaisseau.vX = 2;
  }
  if (keyCode == LEFT) {
    monVaisseau.vX = -2;
  }
}
  1. what doesn’t work, yet – specifically?
  2. what did you try? what part are you stuck on, or what is confusing about the next step?

It is easier to answer specific questions. This is primarily an English and Spanish forum, but there are some French speakers and people can also help you in translation.