Fix MG-3 and MG-4
This commit is contained in:
parent
0fb7800d8b
commit
a0ab6d6709
@ -226,12 +226,14 @@ namespace MafiaGame
|
||||
case Role.Citizen:
|
||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
||||
{
|
||||
MainWindow.Instance.HideAll();
|
||||
MainWindow.Instance.ShowVotingPassive("Ты Мирный Житель");
|
||||
}));
|
||||
break;
|
||||
case Role.Don:
|
||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
||||
{
|
||||
MainWindow.Instance.HideAll();
|
||||
MainWindow.Instance.GameVotingActiveSelect.Items.Clear();
|
||||
MainWindow.Instance.ShowVotingActive("Ты Дон, выбери кого убить!");
|
||||
foreach (Player player in players)
|
||||
@ -245,6 +247,7 @@ namespace MafiaGame
|
||||
case Role.Mafia:
|
||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
||||
{
|
||||
MainWindow.Instance.HideAll();
|
||||
MainWindow.Instance.GameVotingActiveSelect.Items.Clear();
|
||||
MainWindow.Instance.ShowVotingActive("Ты Мафия, выбери кого убить!");
|
||||
foreach (Player player in players)
|
||||
|
@ -55,7 +55,9 @@ namespace MafiaServer
|
||||
|
||||
private List<Player> GetPlayersRoles()
|
||||
{
|
||||
return (from player in _players where player.Role != Role.Died select new Player(player.Id, player.PlayerName)).ToList();
|
||||
return (from player in _players
|
||||
where player.Role != Role.Died
|
||||
select new Player(player.Id, player.PlayerName)).ToList();
|
||||
}
|
||||
|
||||
private bool WorkDeath(PlayerSocketWorker player)
|
||||
@ -80,10 +82,13 @@ namespace MafiaServer
|
||||
_mafia[0].Role = Role.Don;
|
||||
if (_gameState == GameState.VotingNight)
|
||||
{
|
||||
_mafia[0].sendPacket(new MessageReceivePacket(ChatType.Active,true,"System","Дон покинул игру, ты новый дон!"));
|
||||
_mafia[0].sendPacket(new MessageReceivePacket(ChatType.Active, true, "System",
|
||||
"Дон покинул игру, ты новый дон!"));
|
||||
}
|
||||
|
||||
_mafia.RemoveAt(0);
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
@ -97,6 +102,7 @@ namespace MafiaServer
|
||||
{
|
||||
p.sendPacket(new EndGamePacket(p.Role == Role.Mafia || p.Role == Role.Don, _playerRolesAtStart));
|
||||
}
|
||||
|
||||
_isStarted = false;
|
||||
_gameState = GameState.NotStarted;
|
||||
return false;
|
||||
@ -146,6 +152,7 @@ namespace MafiaServer
|
||||
player.sendPacket(new MessageReceivePacket(ChatType.Day, true, "System",
|
||||
sender.PlayerName + " проголосовал за " + voteFor.PlayerName));
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -215,6 +222,7 @@ namespace MafiaServer
|
||||
{
|
||||
_votesRemain.Add(player);
|
||||
}
|
||||
|
||||
foreach (var player in _players)
|
||||
{
|
||||
player.sendPacket(new GameStageChangedPacket(GameState.VotingDay, player.Role, GetPlayersRoles()));
|
||||
@ -244,6 +252,7 @@ namespace MafiaServer
|
||||
player.sendPacket(new PlayerDisconnectedPacket(true, sender.Id, _players.Count,
|
||||
Settings.Config().MaxPlayers));
|
||||
}
|
||||
|
||||
if (_gameState != GameState.NotStarted)
|
||||
{
|
||||
WorkDeath(sender);
|
||||
@ -256,6 +265,7 @@ namespace MafiaServer
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (_players.Count < 3)
|
||||
{
|
||||
Console.WriteLine("Not Enough Players");
|
||||
@ -266,6 +276,7 @@ namespace MafiaServer
|
||||
{
|
||||
player.Role = Role.Citizen;
|
||||
}
|
||||
|
||||
_playerRolesAtStart.Clear();
|
||||
_votesRemain.Clear();
|
||||
_mafiaVotes.Clear();
|
||||
@ -296,6 +307,7 @@ namespace MafiaServer
|
||||
_mafia.Add(empty[i]);
|
||||
empty = empty.RemoveFromArray(i);
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -339,10 +351,16 @@ namespace MafiaServer
|
||||
_players.Remove(sender);
|
||||
foreach (var player in _players)
|
||||
{
|
||||
player.sendPacket(new PlayerDisconnectedPacket(true,sender.Id,_players.Count,Settings.Config().MaxPlayers));
|
||||
player.sendPacket(new PlayerDisconnectedPacket(true, sender.Id, _players.Count,
|
||||
Settings.Config().MaxPlayers));
|
||||
}
|
||||
|
||||
if (_gameState != GameState.NotStarted)
|
||||
{
|
||||
WorkDeath(sender);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void PlayerOnOnPlayerSendMessageEvent(PlayerSocketWorker sender, ChatType chatType, string text)
|
||||
{
|
||||
@ -356,6 +374,7 @@ namespace MafiaServer
|
||||
player.sendPacket(new MessageReceivePacket(ChatType.Queue, false, sender.PlayerName, text));
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
case ChatType.Active:
|
||||
if (_isStarted)
|
||||
@ -364,21 +383,26 @@ namespace MafiaServer
|
||||
{
|
||||
case Role.Mafia:
|
||||
case Role.Don:
|
||||
foreach (var player in _players.Where(player => player.Role == Role.Mafia || player.Role == Role.Don))
|
||||
foreach (var player in _players.Where(player =>
|
||||
player.Role == Role.Mafia || player.Role == Role.Don))
|
||||
{
|
||||
player.sendPacket(new MessageReceivePacket(ChatType.Active, false, sender.PlayerName,
|
||||
player.sendPacket(new MessageReceivePacket(ChatType.Active, false,
|
||||
sender.PlayerName,
|
||||
text));
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
case ChatType.Day:
|
||||
if (_isStarted)
|
||||
{
|
||||
if (sender.Role == Role.Died)
|
||||
{
|
||||
sender.sendPacket(new MessageReceivePacket(ChatType.Day,true,"system","Мёртвое говорить не может"));
|
||||
sender.sendPacket(new MessageReceivePacket(ChatType.Day, true, "system",
|
||||
"Мёртвое говорить не может"));
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -389,6 +413,7 @@ namespace MafiaServer
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
default:
|
||||
Console.WriteLine("User sending in bad chat");
|
||||
|
Loading…
x
Reference in New Issue
Block a user