Спрайт замедляется со временем после перехода в определенное игровое состояние - PullRequest
0 голосов
/ 10 марта 2012

У меня действительно странная проблема с тем, как движется мой спрайт.В моей RPG-игре всякий раз, когда я переключаюсь в состояние боевой игры из состояния игры-разведки, мой главный персонаж будет постепенно замедляться как по скорости, так и по анимации.Однако враги, которые наследуют от того же абстрактного класса, который называется Sprite, который обрабатывает рисование спрайтов, все равно будут двигаться с нормальной скоростью.При переключении в состояние исследования в состояние паузы, которое обрабатывается так же, как при изменении формы исследования в бою, игра не замедляется.Игра не тормозит в боевом состоянии.

Позиция рассчитывается с использованием этой Позиции + = theDirection * theSpeed ​​* (float) theGameTime.ElapsedGameTime.TotalSeconds;

Скорость героя постоянна const int HERO_SPEED = 80;

Я могу выложить больше кода или объяснить больше, если это необходимо.

1 Ответ

0 голосов
/ 11 марта 2012

Обнаружил проблему.

Оказалось, что мой одногруппник вызывал обновление игрока-героя для каждого врага.Таким образом, для каждого врага на экране он вызывал бы функцию обновления положения героя и увеличивал ее.Так как враги были удалены, игрок двигался медленнее.Так глупо.-_-

...