выдает ошибку в 49 строке
from pygame import *
mixer.init()
mixer.music.load("space.ogg")
mixer.music.play()
window = display.set_mode((1000,700)) #oкнo
display.set_caption('Шутер')
clock = time.Clock()
bg = transform.scale(image.load('galaxy.jpg'),(1000,700)) #фон
class Ship(sprite.Sprite):
def init(self, window):
super(Ship, self).init()
self.window = window
self.w = 70
self.h = 70
self.win_rect = window.get_rect()
self.y = 0
self.x = self.win_rect.centerx
self.ship = transform.scale(image.load('rocket.png'),(self.w,self.h))
self.rect = self.ship.get_rect()
def blit(self):
self.window.blit(self.ship, self.rect)
def upravlenie(self):
k_s = key.get_pressed()
if k_s[K_LEFT] and self.x > 0:
self.x -= 10
print(self.h)
print(self.w)
elif k_s[K_RIGHT] and self.x < 925:
self.x += 10
ship = Ship(window)
class Bullet(sprite.Sprite):
def init(self, window, ship):
super(Bullet,self).init()
self.window = window
self.rect = Rect(0, 0, 2, 12)
self.speed = 1
self.rect.centerx = ship.rect.centerx
self.rect_top = ship.rect.top
self.y = self.rect.y
def update(self):
self.y -= self.speed
self.rect.y = self.y
class Enemy(sprite.Sprite):
def init(self, window, x = 100, y = 0):
super(Enemy, self).init()
self.window = window
self.enemy = image.load('ufo.png')
self.rect = self.enemy.get_rect()
self.rect.x = self.rect.width
self.rect.y = self.rect.height
self.x = float(self.rect.x)
self.y = float(self.rect.y)
def blit(self):
self.window.blit(self.enemy, self.rect)
def update(self):
self.y -= 0.1
self.rect.y = self.y
enemies = sprite.Group()
def enemy_group(window, enemies):
enemy = Enemy(window)
for i in range(5):
enemy = Enemy(window)
enemies.add(enemy)
enemy.rect.x += 100
enemy.rect.x = 400
bullet = Bullet(window, ship)
enemy_group(window, enemies)
run = True
while run != False:
window.blit(bg,(0,0))
ship.blit()
ship.upravlenie()
k_s = key.get_pressed()
if k_s[K_SPACE]:
bullet.avto()
for e in event.get():
if e.type == QUIT:
run = False
display.update()
clock.tick(60)
Источник: Stack Overflow на русском