diff options
Diffstat (limited to 'src/splitscreen_duo/games/snake.py')
| -rw-r--r-- | src/splitscreen_duo/games/snake.py | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/src/splitscreen_duo/games/snake.py b/src/splitscreen_duo/games/snake.py index 51c0bcc..b593ea1 100644 --- a/src/splitscreen_duo/games/snake.py +++ b/src/splitscreen_duo/games/snake.py @@ -15,8 +15,8 @@ logger = logging.getLogger(__name__) class Snake(GameBase): - def __init__(self, screen, serial, instance): - super().__init__(screen, serial, instance) + def __init__(self, screen, serial, instance, is_joint_mode=False): + super().__init__(screen, serial, instance, is_joint_mode) self.screen_width = screen.get_width() self.screen_height = screen.get_height() @@ -73,6 +73,9 @@ class Snake(GameBase): ) self.score += 1 + + self.send_stats(self.score) + self.food = self.spawn_food() else: self.body.pop() @@ -122,6 +125,11 @@ class Snake(GameBase): continue + if self.check_collision(): + self.end_game(self.score) + + continue + self.screen.fill(BLACK) for segment in self.body: @@ -137,9 +145,11 @@ class Snake(GameBase): [self.food[0], self.food[1], BLOCK_SIZE, BLOCK_SIZE], ) - score_text = self.font.render(f"Score: {self.score}", True, WHITE) + if not self.is_joint_mode or self.instance != "primary": + score_text = self.font.render(f"Score: {self.score}", True, WHITE) + + self.screen.blit(score_text, (10, 10)) - self.screen.blit(score_text, (10, 10)) pygame.display.flip() clock.tick(SPEED) |