diff options
Diffstat (limited to 'src/sliceitoff/game')
| -rw-r--r-- | src/sliceitoff/game/gameplay.py | 11 | ||||
| -rw-r--r-- | src/sliceitoff/game/level.py | 13 | 
2 files changed, 16 insertions, 8 deletions
diff --git a/src/sliceitoff/game/gameplay.py b/src/sliceitoff/game/gameplay.py index a7224ca..33847fc 100644 --- a/src/sliceitoff/game/gameplay.py +++ b/src/sliceitoff/game/gameplay.py @@ -1,6 +1,8 @@  """ Reads user input and does actions when game play is on. """  import pygame +from stats import Stats +  class Gameplay:      """ Logic of the playfield """      def __init__(self, player = None, field = None, status = None): @@ -15,20 +17,23 @@ class Gameplay:                  case pygame.KEYDOWN:                      match event.key:                          case pygame.K_ESCAPE | pygame.K_q: +                            Stats.lives = 0                              return True                          case pygame.K_SPACE:                              if self.player.fire_lazer():                                  return True                  case pygame.QUIT: +                    Stats.lives = 0                      return True                  case pygame.MOUSEMOTION:                      self.player.set_position(pygame.mouse.get_pos())                  case pygame.MOUSEBUTTONDOWN:                      self.player.set_position(pygame.mouse.get_pos())                      if event.button == 1: -                        if ( -                                self.player.fire_lazer() -                                and self.status.lose_life() ): +                        if self.player.fire_lazer() and Stats.lose_life(): +                            return True +                        if Stats.percent < 10: +                            Stats.level_up()                              return True                      if event.button == 3:                          self.player.set_direction() diff --git a/src/sliceitoff/game/level.py b/src/sliceitoff/game/level.py index 28d9b44..fadbee3 100644 --- a/src/sliceitoff/game/level.py +++ b/src/sliceitoff/game/level.py @@ -3,18 +3,19 @@ from status import Status  from player import Player  from field import Field  from enemies import Enemies -from game import Gameplay +from stats import Stats +from .gameplay import Gameplay  class Level:      """ One level that can be played """ -    def __init__(self, level = None, score = None, display = None): +    def __init__(self, display = None):          self.display = display -        self.status = Status(level = level) +        self.status = Status()          self.field = Field() -        self.enemies = Enemies(field = self.field, level = level) +        self.enemies = Enemies(field = self.field)          self.player = Player(field = self.field, enemies = self.enemies) -        self.gameplay = Gameplay(player = self.player, status = self.status ) +        self.gameplay = Gameplay(player = self.player, status = self.status)          self.obj_classes = (                  self.status,                  self.field, @@ -25,6 +26,8 @@ class Level:          for obj in self.obj_classes:              obj.update(dt) +        Stats.update_bonus(dt) +                      self.display.update( (obj.sprites for obj in self.obj_classes) )          if self.gameplay.step():  |