Advertisement
UberBosser

spaceship

Mar 1st, 2017
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.38 KB | None | 0 0
  1. import pygame as pg
  2.  
  3.  
  4. class Ennemy(pg.sprite.Sprite):
  5.     def __init__(self, x, y, e):
  6.         self.e = e
  7.         pg.sprite.Sprite.__init__(self, g.bullets)
  8.         self.rect = pg.Rect((x, y, 4, 30))
  9.  
  10.  
  11.  
  12. class Bullet(pg.sprite.Sprite):
  13.     def __init__(self, x, y, d, e, g):
  14.         self.e = e
  15.         pg.sprite.Sprite.__init__(self, g.bullets)
  16.         self.rect = pg.Rect((x, y, 4, 30))
  17.  
  18.     def update(self):
  19.         self.rect.y -= 3
  20.         for ennemie in self.e:
  21.             if self.rect.colliderect(ennemie.rect):
  22.                 pass
  23.  
  24.  
  25.  
  26.  
  27. class Spaceship(pg.sprite.Sprite):
  28.     def __init__(self, x, y, g):
  29.         self.ticks = 0
  30.         self.g = g
  31.         pg.sprite.Sprite.__init__(self, g.spaceships)
  32.         self.rect = pg.Rect((x, y, 30, 30))
  33.  
  34.     def events(self):
  35.         key = pg.key.get_pressed()
  36.         if key[pg.K_LEFT]:
  37.             self.rect.x -= 4
  38.         if key[pg.K_RIGHT]:
  39.             self.rect.x += 4
  40.  
  41.     def shoot(self):
  42.         Bullet(self.rect.x + 13, self.rect.y, 3, self.g.ennemies, self.g)
  43.  
  44.     def update(self):
  45.         self.ticks += 1
  46.         if self.ticks % 15 == 0:
  47.             self.shoot()
  48.             self.ticks = 0
  49.  
  50.  
  51.  
  52. class Game:
  53.     def __init__(self):
  54.         pg.init()
  55.         self.screen = pg.display.set_mode((400, 600))
  56.         self.spaceships = pg.sprite.Group()
  57.         self.bullets = pg.sprite.Group()
  58.         self.ennemies = pg.sprite.Group()
  59.         Spaceship(200, 500, self)
  60.         print(self.spaceships)
  61.  
  62.     def draw(self):
  63.         self.screen.fill((255, 255, 255))
  64.         for spaceship in self.spaceships:
  65.             pg.draw.rect(self.screen, (0, 0, 0), (spaceship.rect.x, spaceship.rect.y, 30, 30))
  66.         for bullet in self.bullets:
  67.             pg.draw.rect(self.screen, (0, 0, 0), (bullet.rect.x, bullet.rect.y, 4, 20))
  68.         pg.display.update()
  69.  
  70.     def events(self):
  71.         for event in pg.event.get():
  72.             if event.type == pg.QUIT:
  73.                 quit()
  74.         for spaceship in self.spaceships:
  75.             spaceship.events()
  76.  
  77.     def update(self):
  78.         for spaceship in self.spaceships:
  79.             spaceship.update()
  80.         for bullet in self.bullets:
  81.             bullet.update()
  82.  
  83.     def loop(self):
  84.         clock = pg.time.Clock()
  85.         while True:
  86.             clock.tick(60)
  87.             self.events()
  88.             self.update()
  89.             self.draw()
  90.  
  91. Game().loop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement