Я создаю простую прорывную игру. Мяч должен отскочить при столкновении с платформой. Столкновения сверху и снизу работают, но столкновения слева и справа не работают.
Я создаю 2D-игру с мячом и платформой на JavaScript. Цель состоит в том, чтобы мяч отскочил от платформы при столкновении. Коллизии сверху и снизу работают нормально, но коллизии слева и справа не работают. Я использую простую функцию для проверки пересекающихся прямоугольников.
Вот ключевые детали:
Мяч движется со скоростью VelocityX и SpeedY.
Столкновения обнаруживаются с помощью функции обнаружения столкновений.
Для боковых столкновений я добавил дополнительные условия (leftCollision и rightCollision), но они никогда не срабатывают.
Я создаю простую прорывную игру. Мяч должен отскочить при столкновении с платформой. Столкновения сверху и снизу работают, но столкновения слева и справа не работают. Я создаю 2D-игру с мячом и платформой на JavaScript. Цель состоит в том, чтобы мяч отскочил от платформы при столкновении. Коллизии сверху и снизу работают нормально, но коллизии слева и справа не работают. Я использую простую функцию для проверки пересекающихся прямоугольников. Вот ключевые детали: [list] [*]Мяч движется со скоростью VelocityX и SpeedY. [*]Столкновения обнаруживаются с помощью функции обнаружения столкновений. [*]Для боковых столкновений я добавил дополнительные условия (leftCollision и rightCollision), но они никогда не срабатывают. [/list]
[code]let board; let boardWidth = 200; let boardHeight = 200; let context;
let playerWidth = 80; let playerHeight = 15; let playerVelocity = 10; let player = { x : boardWidth / 2 - playerWidth / 2, y : boardHeight - playerHeight - 5, width : playerWidth, height : playerHeight, velocity : playerVelocity };
let ballWidth = 10; let ballHeight = 10; let ballVelocityX = -2; let ballVelocityY = 1; let ball = { x : boardWidth / 2, y : boardHeight / 2, width : ballWidth, height : ballHeight, velocityX : ballVelocityX, velocityY : ballVelocityY, }