|
@@ -1,8 +1,6 @@
|
|
using System.Linq;
|
|
using System.Linq;
|
|
using System.Threading.Tasks;
|
|
using System.Threading.Tasks;
|
|
-using MafiaTelegramBot.Commands;
|
|
|
|
using MafiaTelegramBot.Game.GameRooms;
|
|
using MafiaTelegramBot.Game.GameRooms;
|
|
-using MafiaTelegramBot.Models;
|
|
|
|
using MafiaTelegramBot.Resources;
|
|
using MafiaTelegramBot.Resources;
|
|
|
|
|
|
namespace MafiaTelegramBot.Game.GameRoles
|
|
namespace MafiaTelegramBot.Game.GameRoles
|
|
@@ -27,14 +25,12 @@ namespace MafiaTelegramBot.Game.GameRoles
|
|
Player.IsSpeaker = true;
|
|
Player.IsSpeaker = true;
|
|
var alivePlayers = Room.Players.Values.Where(p => p.IsAlive).ToList();
|
|
var alivePlayers = Room.Players.Values.Where(p => p.IsAlive).ToList();
|
|
NightTargetList = alivePlayers
|
|
NightTargetList = alivePlayers
|
|
- .Where(p => p.IsAlive && (!KnownRoles.ContainsKey(p.Id) || Room.IsExtended) && p.Id != Player.Id).ToList();
|
|
|
|
|
|
+ .Where(p => p.IsAlive && (!KnownRoles.ContainsKey(p.Info.Id) || Room.IsExtended) && p.Info.Id != Player.Info.Id).ToList();
|
|
|
|
|
|
- var message = await Bot.SendWithMarkdown2(Player.ChatId, strings.choose_player_to_check_role,
|
|
|
|
- Keyboard.NightChooseTargetKeyboard(NightTargetList, Player.Id));
|
|
|
|
|
|
+ var message = await Room.PlayersMessageChannel.SendTo(Player.Info, strings.choose_player_to_check_role, Keyboard.NightChooseTargetKeyboard(NightTargetList));
|
|
MessageId = message.MessageId;
|
|
MessageId = message.MessageId;
|
|
|
|
|
|
- message = await Bot.SendWithMarkdown2(Player.ChatId, strings.choose_player_to_kill,
|
|
|
|
- Keyboard.NightMafiaTargetKeyboard(alivePlayers, Player.Id));
|
|
|
|
|
|
+ message = await Room.PlayersMessageChannel.SendTo(Player.Info, strings.choose_player_to_kill, Keyboard.NightMafiaTargetKeyboard(alivePlayers));
|
|
MafiaMessageId = message.MessageId;
|
|
MafiaMessageId = message.MessageId;
|
|
}
|
|
}
|
|
else NightTargetId = -3;
|
|
else NightTargetId = -3;
|
|
@@ -45,7 +41,7 @@ namespace MafiaTelegramBot.Game.GameRoles
|
|
Player.IsSpeaker = false;
|
|
Player.IsSpeaker = false;
|
|
if (NightTargetId != -2 && MafiaTargetId != -2 && NightTargetId != -3)
|
|
if (NightTargetId != -2 && MafiaTargetId != -2 && NightTargetId != -3)
|
|
{
|
|
{
|
|
- if (MafiaTargetId == -1) await Room.PlayersMessageChannel.EditTo(Player.Id, MafiaMessageId, strings.you_have_not_choosen_target);
|
|
|
|
|
|
+ if (MafiaTargetId == -1) await Room.PlayersMessageChannel.EditTo(Player.Info, MafiaMessageId, strings.you_have_not_choosen_target);
|
|
else MafiaTargetId = -1;
|
|
else MafiaTargetId = -1;
|
|
if (NightTargetId == -1) await SetRandomNightTarget();
|
|
if (NightTargetId == -1) await SetRandomNightTarget();
|
|
if(Room.Players.ContainsKey(NightTargetId))
|
|
if(Room.Players.ContainsKey(NightTargetId))
|
|
@@ -54,30 +50,30 @@ namespace MafiaTelegramBot.Game.GameRoles
|
|
? Room.Players[NightTargetId].GetRoleName()
|
|
? Room.Players[NightTargetId].GetRoleName()
|
|
: strings.not_cop;
|
|
: strings.not_cop;
|
|
if (KnownRoles.ContainsKey(NightTargetId)) KnownRoles[NightTargetId] = role;
|
|
if (KnownRoles.ContainsKey(NightTargetId)) KnownRoles[NightTargetId] = role;
|
|
- else KnownRoles.Add(Room.Players[NightTargetId].Id, role);
|
|
|
|
- await Room.PlayersMessageChannel.EditTo(Player.Id, MessageId,
|
|
|
|
- $"{strings.role_of_your_target} {Room.Players[NightTargetId].NickName} - {role}");
|
|
|
|
|
|
+ else KnownRoles.Add(Room.Players[NightTargetId].Info.Id, role);
|
|
|
|
+ await Room.PlayersMessageChannel.EditTo(Player.Info, MessageId,
|
|
|
|
+ $"{strings.role_of_your_target} {Room.Players[NightTargetId].Info.NickName} - {role}");
|
|
}
|
|
}
|
|
- else await Room.PlayersMessageChannel.EditTo(Player.Id, MessageId, strings.this_player_left_from_game);
|
|
|
|
|
|
+ else await Room.PlayersMessageChannel.EditTo(Player.Info, MessageId, strings.this_player_left_from_game);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
public override async Task SetNightTarget(long userId)
|
|
public override async Task SetNightTarget(long userId)
|
|
{
|
|
{
|
|
- if (!Room.Players.ContainsKey(userId)) await Room.PlayersMessageChannel.SendTo(Player.Id, strings.this_player_left_from_game);
|
|
|
|
|
|
+ if (!Room.Players.ContainsKey(userId)) await Room.PlayersMessageChannel.SendTo(Player.Info, strings.this_player_left_from_game);
|
|
else
|
|
else
|
|
{
|
|
{
|
|
NightTargetId = userId;
|
|
NightTargetId = userId;
|
|
- await Room.PlayersMessageChannel.EditTo(Player.Id, MessageId, $"{strings.you_choose_target} {Room.Players[NightTargetId].NickName}");
|
|
|
|
|
|
+ await Room.PlayersMessageChannel.EditTo(Player.Info, MessageId, $"{strings.you_choose_target} {Room.Players[NightTargetId].Info.NickName}");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
public override async Task SetMafiaTarget(long userId)
|
|
public override async Task SetMafiaTarget(long userId)
|
|
{
|
|
{
|
|
MafiaTargetId = userId;
|
|
MafiaTargetId = userId;
|
|
- if (userId == -4) await Room.PlayersMessageChannel.EditTo(Player.Id, MafiaMessageId, strings.you_skip_vote);
|
|
|
|
- else if(!Room.Players.ContainsKey(userId)) await Room.PlayersMessageChannel.SendTo(Player.Id, strings.this_player_left_from_game);
|
|
|
|
- else await Room.PlayersMessageChannel.EditTo(Player.Id, MafiaMessageId, $"{strings.you_choose_target} {Room.Players[userId].NickName}");
|
|
|
|
|
|
+ if (userId == -4) await Room.PlayersMessageChannel.EditTo(Player.Info, MafiaMessageId, strings.you_skip_vote);
|
|
|
|
+ else if(!Room.Players.ContainsKey(userId)) await Room.PlayersMessageChannel.SendTo(Player.Info, strings.this_player_left_from_game);
|
|
|
|
+ else await Room.PlayersMessageChannel.EditTo(Player.Info, MafiaMessageId, $"{strings.you_choose_target} {Room.Players[userId].Info.NickName}");
|
|
}
|
|
}
|
|
|
|
|
|
public DonRole(GameRoom room, Player player) : base(room, player) { }
|
|
public DonRole(GameRoom room, Player player) : base(room, player) { }
|