|
@@ -1,9 +1,7 @@
|
|
|
using System;
|
|
|
using System.Linq;
|
|
|
using System.Threading.Tasks;
|
|
|
-using MafiaTelegramBot.Commands;
|
|
|
using MafiaTelegramBot.Game.GameRooms;
|
|
|
-using MafiaTelegramBot.Models;
|
|
|
using MafiaTelegramBot.Resources;
|
|
|
|
|
|
namespace MafiaTelegramBot.Game.GameRoles
|
|
@@ -29,8 +27,7 @@ namespace MafiaTelegramBot.Game.GameRoles
|
|
|
{
|
|
|
NightTargetList = Room.Players.Values.Where(p => p.IsAlive).ToList();
|
|
|
|
|
|
- var message = await Bot.SendWithMarkdown2(Player.ChatId, strings.choose_first,
|
|
|
- Keyboard.NightChooseTargetKeyboard(NightTargetList, Player.Id));
|
|
|
+ var message = await Room.PlayersMessageChannel.SendTo(Player.Info, strings.choose_first, Keyboard.NightChooseTargetKeyboard(NightTargetList));
|
|
|
MessageId = message.MessageId;
|
|
|
}
|
|
|
else NightTargetId = -3;
|
|
@@ -43,18 +40,18 @@ namespace MafiaTelegramBot.Game.GameRoles
|
|
|
if (NightTargetId == -1) await SetRandomNightTarget();
|
|
|
if (NightTargetTwoId == -1)
|
|
|
{
|
|
|
- var inGamePlayers = NightTargetList.Where(p => Room.Players.ContainsKey(p.Id) && p.Id != NightTargetId).ToArray();
|
|
|
+ var inGamePlayers = NightTargetList.Where(p => Room.Players.ContainsKey(p.Info.Id) && p.Info.Id != NightTargetId).ToArray();
|
|
|
if (inGamePlayers.Length == 0)
|
|
|
{
|
|
|
NightTargetTwoId = -1;
|
|
|
- var message = await Room.PlayersMessageChannel.SendTo(Player.Id, strings.nothing_to_choose);
|
|
|
+ var message = await Room.PlayersMessageChannel.SendTo(Player.Info, strings.nothing_to_choose);
|
|
|
MessageId = message.MessageId;
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- NightTargetTwoId = NightTargetList[Utilities.Rnd.Next(NightTargetList.Count)].Id;
|
|
|
- var message = await Room.PlayersMessageChannel.SendTo(Player.Id,
|
|
|
- $"{strings.automatically_choosed_target} {Room.Players[NightTargetId].NickName}");
|
|
|
+ NightTargetTwoId = NightTargetList[Utilities.Rnd.Next(NightTargetList.Count)].Info.Id;
|
|
|
+ var message = await Room.PlayersMessageChannel.SendTo(Player.Info,
|
|
|
+ $"{strings.automatically_choosed_target} {Room.Players[NightTargetId].Info.NickName}");
|
|
|
MessageId = message.MessageId;
|
|
|
}
|
|
|
}
|
|
@@ -62,32 +59,32 @@ namespace MafiaTelegramBot.Game.GameRoles
|
|
|
if (Room.Players.ContainsKey(NightTargetId) && Room.Players.ContainsKey(NightTargetTwoId))
|
|
|
{
|
|
|
if (Math.Abs(Room.Players[NightTargetTwoId].CurrentRole.ColorRole - Room.Players[NightTargetId].CurrentRole.ColorRole) < 1)
|
|
|
- await Room.PlayersMessageChannel.EditTo(Player.Id, MessageId,
|
|
|
- $"{Room.Players[NightTargetId].NickName} & {Room.Players[NightTargetTwoId].NickName} - {strings.color_is_same}");
|
|
|
- else await Room.PlayersMessageChannel.EditTo(Player.Id, MessageId,
|
|
|
- $"{Room.Players[NightTargetId].NickName} & {Room.Players[NightTargetTwoId].NickName} - {strings.color_is_different}");
|
|
|
+ await Room.PlayersMessageChannel.EditTo(Player.Info, MessageId,
|
|
|
+ $"{Room.Players[NightTargetId].Info.NickName} & {Room.Players[NightTargetTwoId].Info.NickName} - {strings.color_is_same}");
|
|
|
+ else await Room.PlayersMessageChannel.EditTo(Player.Info, MessageId,
|
|
|
+ $"{Room.Players[NightTargetId].Info.NickName} & {Room.Players[NightTargetTwoId].Info.NickName} - {strings.color_is_different}");
|
|
|
}
|
|
|
- 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)
|
|
|
{
|
|
|
- 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
|
|
|
{
|
|
|
if (NightTargetId == -1)
|
|
|
{
|
|
|
NightTargetId = userId;
|
|
|
- var targets = NightTargetList.Where(p => p.Id != NightTargetId).ToList();
|
|
|
- await Room.PlayersMessageChannel.EditTo(Player.ChatId, MessageId, strings.choose_second,
|
|
|
- Keyboard.NightChooseTargetKeyboard(targets, Player.Id));
|
|
|
+ var targets = NightTargetList.Where(p => p.Info.Id != NightTargetId).ToList();
|
|
|
+ await Room.PlayersMessageChannel.EditTo(Player.Info, MessageId, strings.choose_second,
|
|
|
+ Keyboard.NightChooseTargetKeyboard(targets));
|
|
|
}
|
|
|
|
|
|
else if (NightTargetTwoId == -1)
|
|
|
{
|
|
|
NightTargetTwoId = userId;
|
|
|
- await Room.PlayersMessageChannel.EditTo(Player.ChatId, MessageId, $"{strings.choosed_targets} {Room.Players[NightTargetId].NickName} - {Room.Players[NightTargetTwoId].NickName}");
|
|
|
+ await Room.PlayersMessageChannel.EditTo(Player.Info, MessageId, $"{strings.choosed_targets} {Room.Players[NightTargetId].Info.NickName} - {Room.Players[NightTargetTwoId].Info.NickName}");
|
|
|
}
|
|
|
}
|
|
|
}
|