|
@@ -213,11 +213,11 @@ namespace MafiaTelegramBot.Game.GameRooms
|
|
|
var resetEvent = new ManualResetEvent(false);
|
|
|
votingTimer.Elapsed += (_, _) => resetEvent.Set();
|
|
|
List<Message> messagesToDelete = new();
|
|
|
+ VoteUpList.Clear();
|
|
|
+ VoteKillList.Clear();
|
|
|
foreach (var player in votersPlayers)
|
|
|
messagesToDelete.Add(await PlayersCh.SendTo(player.ChatId, strings.you_have_ten_seconds_to_vote,
|
|
|
Keyboard.VoteKeyboard(contenders, player.Id, vote: Callback.VoteToKill)));
|
|
|
- VoteUpList.Clear();
|
|
|
- VoteKillList.Clear();
|
|
|
votingTimer.Start();
|
|
|
resetEvent.WaitOne();
|
|
|
votingTimer.Stop();
|
|
@@ -268,9 +268,6 @@ namespace MafiaTelegramBot.Game.GameRooms
|
|
|
break;
|
|
|
}
|
|
|
break;
|
|
|
- default:
|
|
|
- await PlayersCh.Send(strings.villagers_could_not_decide);
|
|
|
- break;
|
|
|
}
|
|
|
break;
|
|
|
}
|
|
@@ -293,7 +290,7 @@ namespace MafiaTelegramBot.Game.GameRooms
|
|
|
if (message == strings.results_of_voting) message = strings.no_one_voted;
|
|
|
await PlayersCh.Send(message);
|
|
|
|
|
|
- var votes = VoteUpList.Where(p=> p.IsAlive && p.IsPlaying)
|
|
|
+ var votes = VoteUpList.Where(p=>Players.ContainsKey(p.Id))
|
|
|
.GroupBy(p => p.Id)
|
|
|
.Select(item => new {id = item.Key, count = item.Count()})
|
|
|
.ToList();
|
|
@@ -301,9 +298,7 @@ namespace MafiaTelegramBot.Game.GameRooms
|
|
|
if (votes.Count == 0) return result;
|
|
|
var max = votes.Max(item => item.count);
|
|
|
var maxObjects = votes.Where(item => item.count == max);
|
|
|
- result.AddRange(from obj in maxObjects where Players.ContainsKey(obj.id) select Players[obj.id]);
|
|
|
- VoteUpList.Clear();
|
|
|
- VoteKillList.Clear();
|
|
|
+ result.AddRange(from obj in maxObjects select Players[obj.id]);
|
|
|
return result.ToList();
|
|
|
}
|
|
|
|