Скорость врагов неожиданно замедляется при выборе башни в моей игре pygame TD.Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Скорость врагов неожиданно замедляется при выборе башни в моей игре pygame TD.

Сообщение Anonymous »

Здравствуйте, я в настоящее время делаю игру в защиту башни в Pygame, а недавно в своем классе Tower я закодировал прозрачный круг, который отображает диапазон башни, в котором это отображается только тогда, когда игрок лежит на полной башне. При тестировании я осознал, когда я действительно щелкнул на левой кнопке на башню, враг, который следует за установленным путем замедления? И количество, которое она замедляет, увеличивается с диапазоном башен? Я предполагаю, что это происходит из -за прозрачного круга, каким -то образом блокируя путевые точки, через которые следует враг, но я не уверен. < /P>
Это код, используемый для создания круга, который находится внутри Класс башни: < /p>
self.range - это всего лишь число, которое я установил, например, 200 < /p>

Код: Выделить всё

# creates circle range around tower
self.range_img = pg.Surface((self.range * 2,self.range *2 ))
self.range_img.fill((0,0,0))
self.range_img.set_colorkey((0,0,0))
pg.draw.circle(self.range_img, "grey100",(self.range,self.range),self.range )
self.range_img.set_alpha(100)
self.range_rect = self.range_img.get_rect()
self.range_rect.center = self.rect.center
< /code>
i выводит это, затем в функции рисования, где, если переменная (которая превращается в истинность только тогда, когда игрок на левом щелчке на башне) верно, она делает Surface.blit (self.range_img, self .range_rect) 

Враги перемещаются вдоль набора путевых точек через функцию перемещения внутри собственного класса врагов
Это использует пару переменных: < /p>

Код: Выделить всё

 self.waypoints = waypoints #list containing waypoints
self.pos = Vector2(self.waypoints[0])
self.target_waypoint = 1
self.speed = 0.1
Затем эти значения используются в функции перемещения:
def move(self):
#define a target waypoint
if self.target_waypoint < len(self.waypoints):
self.target = Vector2(self.waypoints[self.target_waypoint])
self.movement = self.target - self.pos
else:
#enemy destoyed when reaching end
self.kill()

# distance to target
distance = self.movement.length()
# check for if the speed is more than distance need to cover
if distance >= self.speed:
self.pos += self.movement.normalize() * self.speed
print(distance)
else:
if distance != 0:
self.pos += self.movement.normalize() * distance
self.target_waypoint += 1
< /code>
Я затем вызову эту функцию через Update (), которую я называю во время своего основного игрового цикла < /p>
Есть ли что -нибудь при создании прозрачного круга и его отображения Это заставляет что -то изменить в моей функции MOVE (), заставляя врагов замедляться? .moved>

Подробнее здесь: https://stackoverflow.com/questions/793 ... ame-td-gam
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Скорость врагов неожиданно замедляется при выборе башни в моей игре pygame TD.
    Anonymous » » в форуме Python
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Враги неожиданно замедляются при выборе башни в моей игре Pygame TD [дублировать]
    Anonymous » » в форуме Python
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Создание врагов в pygame
    Anonymous » » в форуме Python
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous
  • Создание врагов в pygame
    Anonymous » » в форуме Python
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • Порождение врагов в pygame
    Anonymous » » в форуме Python
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»