Вместо делать тестирование столкновения ...
Карта из приемлемых путей для ваших игровых персонажей
Например, здесь является частью вашей игровой доски ,
Вот соответствующая карта приемлемых путей. «1» представляет разрешенный ход, а «0» представляет собой запрещенный ход (игровая стена). Редактировать: Ой! Я испортил карту в правом нижнем углу - помилования!
Теперь вы можете обратиться к вашей приемлемой карте двигаться, когда игрок нажимает клавиши со стрелками для перемещения.
Например, если игрок начинает в левом верхнем углу (они начинаются с «синего 1»). Они могут перемещаться вправо и вниз, потому что эти перемещения перемещаются в «1». Но они не могут двигаться вверх или влево, потому что эти перемещения соответствуют «0».
Хотя интересный, ваш способ сделать не позволит плавные ходы. Но, возможно, O.P. хочет сделать пошаговый Pacman !! ;-) – GameAlchemist
@GameAlchemist. Достаточно справедливо ... но я понимаю, что вопросник только начинает изучать холст html5, поэтому я представляю базовый способ их запуска. ;-) Но да ... если вы хотите гладкого движения, вы можете, конечно, использовать линейную интерполяцию, чтобы оживить их от их начала до точки назначения. И вы можете использовать trasformations, чтобы вращать рот вашего пакмана в соответствующем направлении. Один шаг за раз...! – markE
Спасибо за подсказки, которые меня ориентируют :) Я сделал двумерный массив: tab [x] [y] и условие относительно значения. – Monitxx