@eydeveloper

Как сделать смещение фона в 2D игре?

Мне нужно сделать смещение фона в игре, когда персонаж находится в центре. На чистом JavaScript. Фон прокручивается, но только в одно действие. Данная конструкция if расположена в функции с заданным setinterval (т.е. идёт постоянная проверка), и я опять же вижу, что условие постоянно срабатывает (по выводу в консоли). Но .backgroundPositionX срабатывает как бы только 1 раз и все.
var screenGame = document.getElementById("screen-game").style;
...
if (rightPressed && player.x >= center_position) { 
 console.log("center!"); 
 screenGame.backgroundPositionX += 5 + "px";
 }

.screen-game { 
 width: 100vw; 
 height: 100vh; 
 background: url(../img/bg-game.png); 
 background-position-x: 0%; 
 background-repeat: no-repeat; 
 background-size: cover; 
}
  • Вопрос задан
  • 135 просмотров
Решения вопроса 1
k12th
@k12th
console.log(`You're pulling my leg, right?`);
screenGame.backgroundPositionX += 5 + "px";

У вас на каждом шаге будет конкатенация строк, а не сложение. Значения будут такими: 0%, 0%5px, 0%5px5px и так далее. Поэтому, наверное, и не работает?
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
summer Ярославль
от 100 000 до 140 000 ₽
КРАФТТЕК Санкт-Петербург
от 60 000 до 80 000 ₽
19 апр. 2024, в 17:06
15000 руб./за проект
19 апр. 2024, в 16:53
1000 руб./за проект
19 апр. 2024, в 16:45
5000 руб./за проект