Move death worker to WorkDeath()
This commit is contained in:
parent
8d62442107
commit
4e721afba1
@ -1,6 +1,5 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using MafiaCommon.Packets;
|
||||
using MafiaCommon;
|
||||
|
||||
@ -56,6 +55,36 @@ namespace MafiaServer
|
||||
}
|
||||
}
|
||||
|
||||
private void WorkDeath(PlayerSocketWorker player)
|
||||
{
|
||||
switch (player.Role)
|
||||
{
|
||||
case Role.Don:
|
||||
_mafia.Remove(player);
|
||||
if (_mafia.Count == 0)
|
||||
{
|
||||
foreach (PlayerSocketWorker p in _players)
|
||||
{
|
||||
player.sendPacket(new EndGamePacket(true,_playerRolesAtStart));
|
||||
}
|
||||
|
||||
isStarted = false;
|
||||
_gameState = GameState.NotStarted;
|
||||
}
|
||||
else
|
||||
{
|
||||
_mafia[0].Role = Role.Don;
|
||||
if (_gameState == GameState.VotingNight)
|
||||
{
|
||||
_mafia[0].sendPacket(new MessageReceivePacket(ChatType.Active,true,"System","Дон покинул игру, ты новый дон!"));
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
player.Role = Role.Died;
|
||||
}
|
||||
|
||||
private void PlayerOnOnPlayerVoteEvent(PlayerSocketWorker sender, int id)
|
||||
{
|
||||
if (_votesRemain.Contains(sender))
|
||||
@ -114,7 +143,7 @@ namespace MafiaServer
|
||||
_gameState = GameState.Day;
|
||||
|
||||
PlayerSocketWorker killed = _players.FindPlayerById(selId);
|
||||
killed.Role = Role.Died;
|
||||
WorkDeath(killed);
|
||||
foreach (PlayerSocketWorker player in _players)
|
||||
{
|
||||
player.sendPacket(new GameStageChangedPacket(GameState.Day));
|
||||
@ -130,28 +159,7 @@ namespace MafiaServer
|
||||
{
|
||||
player.sendPacket(new PlayerDisconnectedPacket(true,sender.Id,_players.Count,Settings.Config().MaxPlayers));
|
||||
}
|
||||
if (sender.Role == Role.Don)
|
||||
{
|
||||
_mafia.Remove(sender);
|
||||
if (_mafia.Count == 0)
|
||||
{
|
||||
foreach (PlayerSocketWorker player in _players)
|
||||
{
|
||||
player.sendPacket(new EndGamePacket(true,_playerRolesAtStart));
|
||||
}
|
||||
|
||||
isStarted = false;
|
||||
_gameState = GameState.NotStarted;
|
||||
}
|
||||
else
|
||||
{
|
||||
_mafia[0].Role = Role.Don;
|
||||
if (_gameState == GameState.VotingNight)
|
||||
{
|
||||
_mafia[0].sendPacket(new MessageReceivePacket(ChatType.Active,true,"System","Дон покинул игру, ты новый дон!"));
|
||||
}
|
||||
}
|
||||
}
|
||||
WorkDeath(sender);
|
||||
}
|
||||
|
||||
public void Start()
|
||||
@ -250,28 +258,7 @@ namespace MafiaServer
|
||||
{
|
||||
player.sendPacket(new PlayerDisconnectedPacket(true,sender.Id,_players.Count,Settings.Config().MaxPlayers));
|
||||
}
|
||||
if (sender.Role == Role.Don)
|
||||
{
|
||||
_mafia.Remove(sender);
|
||||
if (_mafia.Count == 0)
|
||||
{
|
||||
foreach (PlayerSocketWorker player in _players)
|
||||
{
|
||||
player.sendPacket(new EndGamePacket(true,_playerRolesAtStart));
|
||||
}
|
||||
|
||||
isStarted = false;
|
||||
_gameState = GameState.NotStarted;
|
||||
}
|
||||
else
|
||||
{
|
||||
_mafia[0].Role = Role.Don;
|
||||
if (_gameState == GameState.VotingNight)
|
||||
{
|
||||
_mafia[0].sendPacket(new MessageReceivePacket(ChatType.Active,true,"System","Дон покинул игру, ты новый дон!"));
|
||||
}
|
||||
}
|
||||
}
|
||||
WorkDeath(sender);
|
||||
}
|
||||
|
||||
private void PlayerOnOnPlayerSendMessageEvent(PlayerSocketWorker sender, ChatType chatType, string text)
|
||||
|
Loading…
x
Reference in New Issue
Block a user