J'essaie de faire un jeu de snake en javascript, mais je suis aux prises avec la détection de collision. J'ai essayé différentes méthodes jusqu'à présent, mais en désespoir de cause, je me suis arrangé pour stocker toutes les positions des segments à chaque image puis vérifier s'il y a des doublons avant d'animer le suivant. Cette méthode n'a pas réussi non plus, malheureusement.Javascript Collision Detection
Peut-être est-ce dû à une mauvaise compréhension de la façon dont JS traite les tableaux. Pendant un certain temps, j'utilisais if(x in y)
mais d'après ce que je peux dire, ça revient si le même objet est exactement dans un tableau.
Voici la démonstration en direct: http://jsfiddle.net/AScYw/2/
Voici le code plus facile à lire: http://pastebin.com/ygj73me6
Le code en question est l'objet de serpent, comme la fonction collide
.
this.collide = function(){
for(var z=0; z<this.positions.length-1; z++){
for(var q=z+1; q<this.positions.length-1; q++){
return this.positions[z][0] == this.positions[q][0] && this.positions[z][1] == this.positions[q][1];
}
}
Ce jeu est facile avec la détection de collision désactivée! – bgw
@PiPeep Ouais, c'est pas génial ?! – danem