Я изо всех сил пытаюсь сделать свое столкновение для стен в игре-лабиринте, которую я делаю для школы. У меня появилась идея на самом деле просто поместить координаты X и Y «разрешенного пути», когда карта вытягивается, чтобы получить координаты, по которым игрок может двигаться. Но я не могу заставить его работать должным образом, любые указатели и помощь будут с благодарностью!
Я вставляю ниже фрагмент кода для движения игрока и начала пути. придумать.
function gameLoop() {
ctxPc.clearRect(0, 0, pcCanvas.width, pcCanvas.height);
if (playerUp == true) {
for (let i = 0; i < allowedPathY.length; i++) {
if (positionY == allowedPathY[i]) {
positionY -= moveSpeed;
}
}
//positionY -= moveSpeed;
}
else if (playerDown == true) {
positionY += moveSpeed;
}
if (playerLeft == true) {
positionX -= moveSpeed;
}
else if (playerRight == true) {
positionX += moveSpeed;
}
drawPlayer(positionX, positionY);
window.requestAnimationFrame(gameLoop);
console.log(positionX, positionY);
}
gameLoop();
Движение работает нормально, просто действительно нужно сделать этот путь!
Редактировать: да, я знаю выше, если утверждение не будет работать, но я могуЯ не могу понять, как двигаться дальше, чтобы эта идея сработала. Я твердо считаю, что это лучший способ (по идее) пойти на это, вместо того, чтобы обнаруживать столкновение стен.