Tigran %!s(int64=4) %!d(string=hai) anos
pai
achega
95fb4f2525
Modificáronse 1 ficheiros con 13 adicións e 8 borrados
  1. 13 8
      MafiaTelegramBot/Game/GameRooms/GameRoom.MessageChannels.cs

+ 13 - 8
MafiaTelegramBot/Game/GameRooms/GameRoom.MessageChannels.cs

@@ -30,16 +30,17 @@ namespace MafiaTelegramBot.Game.GameRooms
                 bool exceptDied = true)
             {
                 var receivers = exceptDied
-                    ? Room.Players.Values
-                    : Room.Players.Values.Where(p => p.IsAlive);
+                    ? Room.Players.Values.Where(p => p.IsAlive)
+                    : Room.Players.Values;
                 foreach (var player in receivers)
                     await Bot.SendWithMarkdown2(player.ChatId, message, replyMarkup);
             }
 
             public override async Task SendExcept(long playerId, string message, IReplyMarkup replyMarkup = null, bool exceptDied = true)
             {
-                var receivers = exceptDied ? Room.Players.Values.Where(p => p.Id != playerId)
-                    : Room.Players.Values.Where(p => p.IsAlive && p.Id != playerId);
+                var receivers = exceptDied
+                    ? Room.Players.Values.Where(p => p.Id != playerId && p.IsAlive)
+                    : Room.Players.Values.Where(p => p.Id != playerId);
                 foreach (var player in receivers)
                     await Bot.SendWithMarkdown2(player.ChatId, message, replyMarkup);
             }
@@ -47,8 +48,8 @@ namespace MafiaTelegramBot.Game.GameRooms
             public async Task SendSticker(string fileId, bool exceptDied = true)
             {
                 var receivers = exceptDied
-                    ? Room.Players.Values
-                    : Room.Players.Values.Where(p => p.IsAlive);
+                    ? Room.Players.Values.Where(p => p.IsAlive)
+                    : Room.Players.Values;
                 foreach (var player in receivers)
                     await Bot.SendStickerAsync(player.ChatId, fileId);
             }
@@ -62,7 +63,9 @@ namespace MafiaTelegramBot.Game.GameRooms
         {
             public override async Task Send(string message, IReplyMarkup replyMarkup = null, bool exceptDied = true)
             {
-                var mafia = Room.Players.Values.Where(p => p.GetRole() is Roles.Don or Roles.Mafia);
+                var mafia = exceptDied
+                    ? Room.Players.Values.Where(p => p.GetRole() is Roles.Don or Roles.Mafia && p.IsAlive)
+                    : Room.Players.Values.Where(p => p.GetRole() is Roles.Don or Roles.Mafia);
                 var receivers = exceptDied ? mafia : mafia.Where(p => p.IsAlive);
                 foreach (var player in receivers)
                     await Bot.SendWithMarkdown2(player.ChatId, message, replyMarkup);
@@ -71,7 +74,9 @@ namespace MafiaTelegramBot.Game.GameRooms
             public override async Task SendExcept(long playerId, string message, IReplyMarkup replyMarkup = null,
                 bool exceptDied = true)
             {
-                var except = Room.Players.Values.Where(p => p.Id != playerId);
+                var except = exceptDied
+                    ? Room.Players.Values.Where(p => p.Id != playerId && p.IsAlive)
+                    : Room.Players.Values.Where(p => p.Id != playerId);
                 var mafia = except.Where(p => p.GetRole() is Roles.Don or Roles.Mafia);
                 var receivers = exceptDied ? mafia : mafia.Where(p => p.IsAlive);
                 foreach (var player in receivers)