diff options
Diffstat (limited to 'server/src/game.rs')
-rw-r--r-- | server/src/game.rs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/server/src/game.rs b/server/src/game.rs index 21bb5f33..89ea7dfc 100644 --- a/server/src/game.rs +++ b/server/src/game.rs @@ -301,6 +301,7 @@ impl Game { name: name.clone(), }, ); + self.score.players = self.score.players.max(self.players.len()); packet_out.push_back(PacketC::AddPlayer { id: player, name, @@ -586,6 +587,13 @@ impl Game { if let Some(end) = self.end { self.score.time_remaining = (end - Instant::now()).as_secs_f64(); if end < Instant::now() { + let relative_score = (self.score.points * 100) / self.data.score_baseline.max(1); + self.score.stars = match relative_score { + 100.. => 3, + 70.. => 2, + 40.. => 1, + _ => 0, + }; packet_out.push_back(PacketC::Menu(Menu::Score(self.score.clone()))); true } else { |