Зачем начинать имя переменной с заглавной буквы, а имя класса в нижнем регистре? Это должно быть наоборот. См. Руководство по стилю для Python Код - Имена классов
В любом случае, вам необходимо определить направление движения при появлении пули.
Добавить дополнительное аргумент скорости для конструктора класса bullet
:
class bullet(pg.sprite.Sprite):
def __init__(self, Game, x, y, speed):
pg.sprite.Sprite.__init__(self)
self.image = pg.image.load('magicBullet.png')
self.rect = self.image.get_rect()
self.rect.x = x
self.rect.y = y
self.Game = Game
self.Player = Player
self.speed = speed
def update(self):
self.rect.x += self.speed
Добавьте аргумент, который определяет направление к методу shoot
. Допустимые значения для аргумента direction
: -1 для движения влево или 1 для движения вправо:
def shoot(self, direction):
if self.ammo > 0:
speed = 10 * direction
Bullet = bullet(self.Game, self.rect.x, self.rect.top, speed)
self.Game.all_sprites.add(Bullet)
self.Game.bullets.add(Bullet)
self.ammo -= 1