From 616a4b23cb2faefe5b27d5d31ad772039c9bf669 Mon Sep 17 00:00:00 2001 From: ntr Date: Wed, 20 Mar 2019 19:14:12 +1100 Subject: [PATCH] modulo rotatation of players for more than 16 rounds --- server/WORKLOG.md | 1 + server/src/instance.rs | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/server/WORKLOG.md b/server/WORKLOG.md index 9ca6616f..129bdbb4 100644 --- a/server/WORKLOG.md +++ b/server/WORKLOG.md @@ -17,6 +17,7 @@ ## NOW cryp vbox ensure all skills impl +make parry semi-aggressive constants change to ownership pattern diff --git a/server/src/instance.rs b/server/src/instance.rs index 7be36f24..81e7d6d9 100644 --- a/server/src/instance.rs +++ b/server/src/instance.rs @@ -282,14 +282,15 @@ impl Instance { .map(|p| p.id) .collect::>(); + let np = matched_players.len(); + if round_num > 0 { - matched_players.rotate_right(round_num); + matched_players.rotate_right(round_num % np); matched_players.swap(0,1); } // only set up for even player numbers atm // no byes - let np = matched_players.len(); let current_round = matched_players[0..(np / 2)] .iter() .enumerate() @@ -584,7 +585,6 @@ mod tests { let player_account = Uuid::new_v4(); let cryps = instance_mobs(player_account); let mut player = Player::new(player_account, instance.id, &"test".to_string(), cryps).set_bot(true); - let player_id = player.id; instance.add_player(player.clone()); assert!(instance.can_start());