|
@@ -30,16 +30,17 @@ namespace MafiaTelegramBot.Game.GameRooms
|
|
bool exceptDied = true)
|
|
bool exceptDied = true)
|
|
{
|
|
{
|
|
var receivers = exceptDied
|
|
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)
|
|
foreach (var player in receivers)
|
|
await Bot.SendWithMarkdown2(player.ChatId, message, replyMarkup);
|
|
await Bot.SendWithMarkdown2(player.ChatId, message, replyMarkup);
|
|
}
|
|
}
|
|
|
|
|
|
public override async Task SendExcept(long playerId, string message, IReplyMarkup replyMarkup = null, bool exceptDied = true)
|
|
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)
|
|
foreach (var player in receivers)
|
|
await Bot.SendWithMarkdown2(player.ChatId, message, replyMarkup);
|
|
await Bot.SendWithMarkdown2(player.ChatId, message, replyMarkup);
|
|
}
|
|
}
|
|
@@ -47,8 +48,8 @@ namespace MafiaTelegramBot.Game.GameRooms
|
|
public async Task SendSticker(string fileId, bool exceptDied = true)
|
|
public async Task SendSticker(string fileId, bool exceptDied = true)
|
|
{
|
|
{
|
|
var receivers = exceptDied
|
|
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)
|
|
foreach (var player in receivers)
|
|
await Bot.SendStickerAsync(player.ChatId, fileId);
|
|
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)
|
|
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);
|
|
var receivers = exceptDied ? mafia : mafia.Where(p => p.IsAlive);
|
|
foreach (var player in receivers)
|
|
foreach (var player in receivers)
|
|
await Bot.SendWithMarkdown2(player.ChatId, message, replyMarkup);
|
|
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,
|
|
public override async Task SendExcept(long playerId, string message, IReplyMarkup replyMarkup = null,
|
|
bool exceptDied = true)
|
|
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 mafia = except.Where(p => p.GetRole() is Roles.Don or Roles.Mafia);
|
|
var receivers = exceptDied ? mafia : mafia.Where(p => p.IsAlive);
|
|
var receivers = exceptDied ? mafia : mafia.Where(p => p.IsAlive);
|
|
foreach (var player in receivers)
|
|
foreach (var player in receivers)
|