summaryrefslogtreecommitdiff
path: root/server/src/game.rs
diff options
context:
space:
mode:
Diffstat (limited to 'server/src/game.rs')
-rw-r--r--server/src/game.rs8
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 {