aboutsummaryrefslogtreecommitdiff
path: root/src/splitscreen_duo/games/snake.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/splitscreen_duo/games/snake.py')
-rw-r--r--src/splitscreen_duo/games/snake.py18
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)