Bonjour,
je débute depuis peu en programmation . Je suis en train de réalisé un petit jeu en JavaScript, un genre de jeu de tir en 2D. Actuellement, j'essaie que mon personnage du jeu puisse tirer des balles, je n'arrive qu'à le faire tirer qu'une à la fois. J'ai fais des recherches un peu partout, et apparemment je dois utiliser un tableau. Sauf qu'à partir de là je n'y arrive pas du tout, je comprends pas le fonctionnement, et lorsque je copie et remplace les variables, ça ne marche pas. Donc je compte sur votre aide pour m'aider.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
function setup() {
  createCanvas(800,600)
  background(200)
}
 
 
var xr=50   //coordonnée x du gros rond (personnage)
var yr=300  //coordonnée y du gros rond
var ballela=false   //pas de balle tirée
 
 
//Controle des deplacements du gros rond au fleches directionnels
var rightPressed = false;
var leftPressed = false;
var upPressed= false;
var downPressed= false;
document.addEventListener("keydown", keyDownHandler, false);
document.addEventListener("keyup", keyUpHandler, false);
function keyDownHandler(e) {
    if(e.keyCode == 39) {
        rightPressed = true;
    }
    else if(e.keyCode == 37) {
        leftPressed = true;
    }
    else if (e.keyCode ==40) {
        upPressed = true;
    }
    else if (e.keyCode==38) {
        downPressed=true
    }
}
function keyUpHandler(e) {
    if(e.keyCode == 39) {
        rightPressed = false;
    }
    else if(e.keyCode == 37) {
        leftPressed = false;
    }
    else if (e.keyCode==40) {
        upPressed=false
    }
    else if (e.keyCode==38) {
        downPressed=false
    }
}
 
 
 
function rond(){          //gros rond
  ellipse(xr,yr,50,50)
}
function curseur(){       //là ou on vise
  ellipse(mouseX,mouseY,20,20)
}
function tir(){
  xballe=xr           //la balle part du gros rond
  yballe=yr
  if (!ballela) {     //permet à la balle tirée de ne pas changer de direction
    xbd=xr            //xbd= coordonnée x de la balle au départ du tir
    ybd=yr            //ybd= coordonnée y de la balle au départ du tir
    xba=mouseX        //xba= coordonnée x de la balle à l'arrivé
    yba=mouseY        //yba= coordonnée y de la balle à l'arrivé
  }
  ballela=true        //déclenchement du tir
}
function balle(){
  if (ballela) {      // si la balle est tirée
    var dXM=sqrt(((xba-xbd)*(xba-xbd))+((yba-ybd)*(yba-ybd)))
    //distance départ-arrivé
    if (xballe<-5||yballe<-5||xballe>805||yballe>605) { //supression de la
      ballela=false                                     //balle si elle est
    }                                                   //sortie du canvas
    var tx=10*(xba-xbd)/dXM   //avancement x de la balle
    var ty=10*(yba-ybd)/dXM   //avancement y de la balle
    xballe=xballe+tx
    yballe=yballe+ty
    ellipse(xballe,yballe,5,5);   //dessin de la balle
  }
}
 
 
function draw() {
  rect(0,0,799,599)     //on efface tout
  if(rightPressed) {    // gros rond avance à droite
      xr = xr+7;
  }
  if(leftPressed) {     //gros rond avance à gauche
      xr=xr-7;
  }
  if (upPressed) {      //gros rond monte
      yr=yr+7
  }
  if (downPressed) {    //gros rond descend
      yr=yr-7
  }
  rond()
  curseur()
  if (mouseIsPressed) {   //quand on clique gauche
      tir()
  }
  balle()
}
merci!!