Ich habe im Grunde zwei Wände in der Leinwand gemacht. Eins oben und eins unten. Mein Player wird von der Maus gesteuert und ich wollte wissen, wie man den Player nicht durch die Wände gehen lassen.Stoppt Spielerbewegung nach Kollisionserkennung In Canvas
Hier ist die Funktion für die allgemeine Kollision zwischen zwei Objekten:
function collides(a, b) {
var val = false;
val = (a.x < b.x + b.width) &&
(a.x + a.width > b.x) &&
(a.y < b.y + b.height) &&
(a.y + a.height > b.y);
return val;
}
Hier ist der Code, der Kollisionserkennung erkennt:
if (collides(player, block)){
//I don't know what goes here.
}
Jede Hilfe würde geschätzt.
Danke:
In Ihrem mousemove- Handler (oder wo auch immer der Spieler mit der Maus neu positioniert)! Ich konnte es zur Arbeit bringen. –