Fix warnings
This commit is contained in:
parent
adfb11d087
commit
b0ef768853
@ -1,7 +1,6 @@
|
|||||||
<Application x:Class="MafiaGame.App"
|
<Application x:Class="MafiaGame.App"
|
||||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
xmlns:local="clr-namespace:MafiaGame"
|
|
||||||
Startup="App_OnStartup"
|
Startup="App_OnStartup"
|
||||||
Exit="App_OnExit"
|
Exit="App_OnExit"
|
||||||
StartupUri="MainWindow.xaml">
|
StartupUri="MainWindow.xaml">
|
||||||
|
@ -73,19 +73,19 @@
|
|||||||
</Viewbox>
|
</Viewbox>
|
||||||
</TextBlock>
|
</TextBlock>
|
||||||
<TextBox Grid.Column="1" Grid.Row="3" x:Name="IpBox" FontSize="30"></TextBox>
|
<TextBox Grid.Column="1" Grid.Row="3" x:Name="IpBox" FontSize="30"></TextBox>
|
||||||
<Button Grid.Column="1" Grid.Row="5" Click="ConnectToServer_OnClick" x:Name="IpInputGUIConnect">
|
<Button Grid.Column="1" Grid.Row="5" Click="ConnectToServer_OnClick" x:Name="IpInputGuiConnect">
|
||||||
<Viewbox>
|
<Viewbox>
|
||||||
<TextBlock Text="Подключится" FontSize="25"></TextBlock>
|
<TextBlock Text="Подключится" FontSize="25"></TextBlock>
|
||||||
</Viewbox>
|
</Viewbox>
|
||||||
</Button>
|
</Button>
|
||||||
<Button Grid.Column="1" Grid.Row="7" Click="Back_OnClick" x:Name="IpInputGUIBack">
|
<Button Grid.Column="1" Grid.Row="7" Click="Back_OnClick" x:Name="IpInputGuiBack">
|
||||||
<Viewbox>
|
<Viewbox>
|
||||||
<TextBlock Text="Назад" FontSize="25"></TextBlock>
|
<TextBlock Text="Назад" FontSize="25"></TextBlock>
|
||||||
</Viewbox>
|
</Viewbox>
|
||||||
</Button>
|
</Button>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
|
||||||
<Grid x:Name="SettingsGUI" Visibility="Hidden">
|
<Grid x:Name="SettingsGui" Visibility="Hidden">
|
||||||
<Grid.ColumnDefinitions>
|
<Grid.ColumnDefinitions>
|
||||||
<ColumnDefinition Width="5*"></ColumnDefinition>
|
<ColumnDefinition Width="5*"></ColumnDefinition>
|
||||||
<ColumnDefinition Width="10*"></ColumnDefinition>
|
<ColumnDefinition Width="10*"></ColumnDefinition>
|
||||||
|
@ -1,18 +1,9 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
using System.Threading.Tasks;
|
|
||||||
using System.Windows;
|
using System.Windows;
|
||||||
using System.Windows.Controls;
|
using System.Windows.Controls;
|
||||||
using System.Windows.Data;
|
|
||||||
using System.Windows.Documents;
|
|
||||||
using System.Windows.Input;
|
using System.Windows.Input;
|
||||||
using System.Windows.Media;
|
|
||||||
using System.Windows.Media.Imaging;
|
|
||||||
using System.Windows.Navigation;
|
|
||||||
using System.Windows.Shapes;
|
|
||||||
using DiscordRPC;
|
using DiscordRPC;
|
||||||
using MafiaCommon;
|
using MafiaCommon;
|
||||||
|
|
||||||
@ -21,7 +12,7 @@ namespace MafiaGame
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Interaction logic for MainWindow.xaml
|
/// Interaction logic for MainWindow.xaml
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public partial class MainWindow : Window
|
public partial class MainWindow
|
||||||
{
|
{
|
||||||
private static MainWindow _mainWindow;
|
private static MainWindow _mainWindow;
|
||||||
|
|
||||||
@ -42,7 +33,7 @@ namespace MafiaGame
|
|||||||
public void HideAll()
|
public void HideAll()
|
||||||
{
|
{
|
||||||
MainMenu.Visibility = Visibility.Hidden;
|
MainMenu.Visibility = Visibility.Hidden;
|
||||||
SettingsGUI.Visibility = Visibility.Hidden;
|
SettingsGui.Visibility = Visibility.Hidden;
|
||||||
IpInput.Visibility = Visibility.Hidden;
|
IpInput.Visibility = Visibility.Hidden;
|
||||||
GameQueue.Visibility = Visibility.Hidden;
|
GameQueue.Visibility = Visibility.Hidden;
|
||||||
DisconnectScreen.Visibility = Visibility.Hidden;
|
DisconnectScreen.Visibility = Visibility.Hidden;
|
||||||
@ -54,13 +45,13 @@ namespace MafiaGame
|
|||||||
|
|
||||||
private void Exit_OnClick(object sender, RoutedEventArgs e)
|
private void Exit_OnClick(object sender, RoutedEventArgs e)
|
||||||
{
|
{
|
||||||
App.Current.Shutdown(0);
|
Application.Current.Shutdown(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Play_OnClick(object sender, RoutedEventArgs e)
|
private void Play_OnClick(object sender, RoutedEventArgs e)
|
||||||
{
|
{
|
||||||
IpInputGUIBack.IsEnabled = true;
|
IpInputGuiBack.IsEnabled = true;
|
||||||
IpInputGUIConnect.IsEnabled = true;
|
IpInputGuiConnect.IsEnabled = true;
|
||||||
IpBox.IsEnabled = true;
|
IpBox.IsEnabled = true;
|
||||||
MainMenu.Visibility = Visibility.Hidden;
|
MainMenu.Visibility = Visibility.Hidden;
|
||||||
IpInput.Visibility = Visibility.Visible;
|
IpInput.Visibility = Visibility.Visible;
|
||||||
@ -77,8 +68,8 @@ namespace MafiaGame
|
|||||||
{
|
{
|
||||||
State = "Присоединяется к серверу"
|
State = "Присоединяется к серверу"
|
||||||
});
|
});
|
||||||
IpInputGUIBack.IsEnabled = false;
|
IpInputGuiBack.IsEnabled = false;
|
||||||
IpInputGUIConnect.IsEnabled = false;
|
IpInputGuiConnect.IsEnabled = false;
|
||||||
IpBox.IsEnabled = false;
|
IpBox.IsEnabled = false;
|
||||||
Thread thread = new Thread(() =>
|
Thread thread = new Thread(() =>
|
||||||
{
|
{
|
||||||
@ -101,7 +92,7 @@ namespace MafiaGame
|
|||||||
private void SettingsBack_OnClick(object sender, RoutedEventArgs e)
|
private void SettingsBack_OnClick(object sender, RoutedEventArgs e)
|
||||||
{
|
{
|
||||||
Settings.Save();
|
Settings.Save();
|
||||||
SettingsGUI.Visibility = Visibility.Hidden;
|
SettingsGui.Visibility = Visibility.Hidden;
|
||||||
MainMenu.Visibility = Visibility.Visible;
|
MainMenu.Visibility = Visibility.Visible;
|
||||||
App.Instance.GetRpcClient().SetPresence(new RichPresence()
|
App.Instance.GetRpcClient().SetPresence(new RichPresence()
|
||||||
{
|
{
|
||||||
@ -112,7 +103,7 @@ namespace MafiaGame
|
|||||||
private void Settings_OnClick(object sender, RoutedEventArgs e)
|
private void Settings_OnClick(object sender, RoutedEventArgs e)
|
||||||
{
|
{
|
||||||
MainMenu.Visibility = Visibility.Hidden;
|
MainMenu.Visibility = Visibility.Hidden;
|
||||||
SettingsGUI.Visibility = Visibility.Visible;
|
SettingsGui.Visibility = Visibility.Visible;
|
||||||
NickBox.Text = Settings.Config().Nick;
|
NickBox.Text = Settings.Config().Nick;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -125,7 +116,7 @@ namespace MafiaGame
|
|||||||
{
|
{
|
||||||
MainMenu.Visibility = Visibility.Hidden;
|
MainMenu.Visibility = Visibility.Hidden;
|
||||||
IpInput.Visibility = Visibility.Hidden;
|
IpInput.Visibility = Visibility.Hidden;
|
||||||
SettingsGUI.Visibility = Visibility.Hidden;
|
SettingsGui.Visibility = Visibility.Hidden;
|
||||||
DisconnectScreen.Visibility = Visibility.Hidden;
|
DisconnectScreen.Visibility = Visibility.Hidden;
|
||||||
GameQueue.Visibility = Visibility.Visible;
|
GameQueue.Visibility = Visibility.Visible;
|
||||||
}
|
}
|
||||||
@ -135,7 +126,7 @@ namespace MafiaGame
|
|||||||
ReasonText.Text = reason;
|
ReasonText.Text = reason;
|
||||||
MainMenu.Visibility = Visibility.Hidden;
|
MainMenu.Visibility = Visibility.Hidden;
|
||||||
IpInput.Visibility = Visibility.Hidden;
|
IpInput.Visibility = Visibility.Hidden;
|
||||||
SettingsGUI.Visibility = Visibility.Hidden;
|
SettingsGui.Visibility = Visibility.Hidden;
|
||||||
GameQueue.Visibility = Visibility.Hidden;
|
GameQueue.Visibility = Visibility.Hidden;
|
||||||
DisconnectScreen.Visibility = Visibility.Visible;
|
DisconnectScreen.Visibility = Visibility.Visible;
|
||||||
}
|
}
|
||||||
|
@ -3,6 +3,7 @@ using System.Collections.Generic;
|
|||||||
using System.Net.Sockets;
|
using System.Net.Sockets;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
|
using System.Windows;
|
||||||
using System.Windows.Controls;
|
using System.Windows.Controls;
|
||||||
using DiscordRPC;
|
using DiscordRPC;
|
||||||
using MafiaCommon.Packets;
|
using MafiaCommon.Packets;
|
||||||
@ -16,8 +17,8 @@ namespace MafiaGame
|
|||||||
private int _port = 25743;
|
private int _port = 25743;
|
||||||
private Socket _socket;
|
private Socket _socket;
|
||||||
private Thread _thread;
|
private Thread _thread;
|
||||||
private bool _breakFlag = false;
|
private bool _breakFlag;
|
||||||
private bool connected;
|
private bool _connected;
|
||||||
|
|
||||||
public ServerConnection(String ip)
|
public ServerConnection(String ip)
|
||||||
{
|
{
|
||||||
@ -31,7 +32,7 @@ namespace MafiaGame
|
|||||||
_host = ip;
|
_host = ip;
|
||||||
}
|
}
|
||||||
|
|
||||||
_thread = new Thread(serverListener);
|
_thread = new Thread(ServerListener);
|
||||||
|
|
||||||
_socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
|
_socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
|
||||||
try
|
try
|
||||||
@ -40,17 +41,17 @@ namespace MafiaGame
|
|||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
Application.Current.Dispatcher.Invoke(() =>
|
||||||
{
|
{
|
||||||
MainWindow.Instance.ShowDisconnectScreen(e.Message);
|
MainWindow.Instance.ShowDisconnectScreen(e.Message);
|
||||||
}));
|
});
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
_socket.Send(PacketConverter.ToBytes(new ConnectPacket(Settings.Config().Nick)));
|
_socket.Send(PacketConverter.ToBytes(new ConnectPacket(Settings.Config().Nick)));
|
||||||
_thread.IsBackground = true;
|
_thread.IsBackground = true;
|
||||||
_thread.Start();
|
_thread.Start();
|
||||||
connected = true;
|
_connected = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SendMessage(ChatType chatType, string text)
|
public void SendMessage(ChatType chatType, string text)
|
||||||
@ -60,7 +61,7 @@ namespace MafiaGame
|
|||||||
|
|
||||||
public void Disconnect()
|
public void Disconnect()
|
||||||
{
|
{
|
||||||
connected = false;
|
_connected = false;
|
||||||
_socket.Send(PacketConverter.ToBytes(new DisconnectPlayerPacket()));
|
_socket.Send(PacketConverter.ToBytes(new DisconnectPlayerPacket()));
|
||||||
_thread.Interrupt();
|
_thread.Interrupt();
|
||||||
_socket.Close();
|
_socket.Close();
|
||||||
@ -71,7 +72,7 @@ namespace MafiaGame
|
|||||||
_socket.Send(PacketConverter.ToBytes(new VotePacket(id)));
|
_socket.Send(PacketConverter.ToBytes(new VotePacket(id)));
|
||||||
}
|
}
|
||||||
|
|
||||||
private void serverListener()
|
private void ServerListener()
|
||||||
{
|
{
|
||||||
while (!_breakFlag)
|
while (!_breakFlag)
|
||||||
{
|
{
|
||||||
@ -89,14 +90,14 @@ namespace MafiaGame
|
|||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
_socket.Close();
|
_socket.Close();
|
||||||
if (connected)
|
if (_connected)
|
||||||
{
|
{
|
||||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
Application.Current.Dispatcher.Invoke(() =>
|
||||||
{
|
{
|
||||||
MainWindow.Instance.HideAll();
|
MainWindow.Instance.HideAll();
|
||||||
MainWindow.Instance.ShowDisconnectScreen(e.Message);
|
MainWindow.Instance.ShowDisconnectScreen(e.Message);
|
||||||
}));
|
});
|
||||||
connected = false;
|
_connected = false;
|
||||||
}
|
}
|
||||||
_breakFlag = true;
|
_breakFlag = true;
|
||||||
}
|
}
|
||||||
@ -119,7 +120,7 @@ namespace MafiaGame
|
|||||||
switch (packet.PacketType)
|
switch (packet.PacketType)
|
||||||
{
|
{
|
||||||
case PacketType.Welcome:
|
case PacketType.Welcome:
|
||||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
Application.Current.Dispatcher.Invoke(() =>
|
||||||
{
|
{
|
||||||
MainWindow.Instance.QueueOnline.Text = ((WelcomePacket) packet).Players + "/" +
|
MainWindow.Instance.QueueOnline.Text = ((WelcomePacket) packet).Players + "/" +
|
||||||
((WelcomePacket) packet).MaxPlayers;
|
((WelcomePacket) packet).MaxPlayers;
|
||||||
@ -139,21 +140,21 @@ namespace MafiaGame
|
|||||||
Timestamps = Timestamps.Now,
|
Timestamps = Timestamps.Now,
|
||||||
Details = "Ожидание старта"
|
Details = "Ожидание старта"
|
||||||
});
|
});
|
||||||
}));
|
});
|
||||||
break;
|
break;
|
||||||
case PacketType.Disconnect:
|
case PacketType.Disconnect:
|
||||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
Application.Current.Dispatcher.Invoke(() =>
|
||||||
{
|
{
|
||||||
MainWindow.Instance.ShowDisconnectScreen(((DisconnectPacket) packet).Reason);
|
MainWindow.Instance.ShowDisconnectScreen(((DisconnectPacket) packet).Reason);
|
||||||
}));
|
});
|
||||||
_breakFlag = true;
|
_breakFlag = true;
|
||||||
break;
|
break;
|
||||||
case PacketType.PlayerConnected:
|
case PacketType.PlayerConnected:
|
||||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
Application.Current.Dispatcher.Invoke(() =>
|
||||||
{
|
{
|
||||||
MainWindow.Instance.QueueOnline.Text = ((PlayerConnectedPacket) packet).Players + "/" +
|
MainWindow.Instance.QueueOnline.Text = ((PlayerConnectedPacket) packet).Players + "/" +
|
||||||
((PlayerConnectedPacket) packet).MaxPlayers;
|
((PlayerConnectedPacket) packet).MaxPlayers;
|
||||||
}));
|
});
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
App.Instance.GetRpcClient().UpdatePartySize(((PlayerConnectedPacket) packet).Players);
|
App.Instance.GetRpcClient().UpdatePartySize(((PlayerConnectedPacket) packet).Players);
|
||||||
@ -165,11 +166,11 @@ namespace MafiaGame
|
|||||||
|
|
||||||
break;
|
break;
|
||||||
case PacketType.PlayerDisconnected:
|
case PacketType.PlayerDisconnected:
|
||||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
Application.Current.Dispatcher.Invoke(() =>
|
||||||
{
|
{
|
||||||
MainWindow.Instance.QueueOnline.Text = ((PlayerDisconnectedPacket) packet).Players + "/" +
|
MainWindow.Instance.QueueOnline.Text = ((PlayerDisconnectedPacket) packet).Players + "/" +
|
||||||
((PlayerDisconnectedPacket) packet).MaxPlayers;
|
((PlayerDisconnectedPacket) packet).MaxPlayers;
|
||||||
}));
|
});
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
App.Instance.GetRpcClient().UpdatePartySize(((PlayerDisconnectedPacket) packet).Players);
|
App.Instance.GetRpcClient().UpdatePartySize(((PlayerDisconnectedPacket) packet).Players);
|
||||||
@ -181,15 +182,15 @@ namespace MafiaGame
|
|||||||
|
|
||||||
break;
|
break;
|
||||||
case PacketType.ServerShutdown:
|
case PacketType.ServerShutdown:
|
||||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
Application.Current.Dispatcher.Invoke(() =>
|
||||||
{
|
{
|
||||||
MainWindow.Instance.ShowDisconnectScreen("Сервер выключен: " +
|
MainWindow.Instance.ShowDisconnectScreen("Сервер выключен: " +
|
||||||
((ServerShutdownPacket) packet).Reason);
|
((ServerShutdownPacket) packet).Reason);
|
||||||
}));
|
});
|
||||||
_breakFlag = true;
|
_breakFlag = true;
|
||||||
break;
|
break;
|
||||||
case PacketType.MessageReceivePacket:
|
case PacketType.MessageReceivePacket:
|
||||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
Application.Current.Dispatcher.Invoke(() =>
|
||||||
{
|
{
|
||||||
ListBoxItem message = new ListBoxItem();
|
ListBoxItem message = new ListBoxItem();
|
||||||
if (((MessageReceivePacket) packet).IsSystem)
|
if (((MessageReceivePacket) packet).IsSystem)
|
||||||
@ -217,21 +218,21 @@ namespace MafiaGame
|
|||||||
MainWindow.Instance.GameDayChat.ScrollIntoView(message);
|
MainWindow.Instance.GameDayChat.ScrollIntoView(message);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}));
|
});
|
||||||
break;
|
break;
|
||||||
case PacketType.GameStartPacket:
|
case PacketType.GameStartPacket:
|
||||||
List<Player> players = ((GameStartPacket) packet).Players;
|
List<Player> players = ((GameStartPacket) packet).Players;
|
||||||
switch (((GameStartPacket) packet).Role)
|
switch (((GameStartPacket) packet).Role)
|
||||||
{
|
{
|
||||||
case Role.Citizen:
|
case Role.Citizen:
|
||||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
Application.Current.Dispatcher.Invoke(() =>
|
||||||
{
|
{
|
||||||
MainWindow.Instance.HideAll();
|
MainWindow.Instance.HideAll();
|
||||||
MainWindow.Instance.ShowVotingPassive("Ты Мирный Житель");
|
MainWindow.Instance.ShowVotingPassive("Ты Мирный Житель");
|
||||||
}));
|
});
|
||||||
break;
|
break;
|
||||||
case Role.Don:
|
case Role.Don:
|
||||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
Application.Current.Dispatcher.Invoke(() =>
|
||||||
{
|
{
|
||||||
MainWindow.Instance.HideAll();
|
MainWindow.Instance.HideAll();
|
||||||
MainWindow.Instance.GameVotingActiveSelect.Items.Clear();
|
MainWindow.Instance.GameVotingActiveSelect.Items.Clear();
|
||||||
@ -242,10 +243,10 @@ namespace MafiaGame
|
|||||||
item.Content = player.Id.ToString() + ") " + player.Name;
|
item.Content = player.Id.ToString() + ") " + player.Name;
|
||||||
MainWindow.Instance.GameVotingActiveSelect.Items.Add(item);
|
MainWindow.Instance.GameVotingActiveSelect.Items.Add(item);
|
||||||
}
|
}
|
||||||
}));
|
});
|
||||||
break;
|
break;
|
||||||
case Role.Mafia:
|
case Role.Mafia:
|
||||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
Application.Current.Dispatcher.Invoke(() =>
|
||||||
{
|
{
|
||||||
MainWindow.Instance.HideAll();
|
MainWindow.Instance.HideAll();
|
||||||
MainWindow.Instance.GameVotingActiveSelect.Items.Clear();
|
MainWindow.Instance.GameVotingActiveSelect.Items.Clear();
|
||||||
@ -256,36 +257,36 @@ namespace MafiaGame
|
|||||||
item.Content = player.Id.ToString() + ") " + player.Name;
|
item.Content = player.Id.ToString() + ") " + player.Name;
|
||||||
MainWindow.Instance.GameVotingActiveSelect.Items.Add(item);
|
MainWindow.Instance.GameVotingActiveSelect.Items.Add(item);
|
||||||
}
|
}
|
||||||
}));
|
});
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
App.Instance.GetRpcClient().UpdateDetails("Ночь");
|
App.Instance.GetRpcClient().UpdateDetails("Ночь");
|
||||||
break;
|
break;
|
||||||
case PacketType.EndGame:
|
case PacketType.EndGame:
|
||||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
Application.Current.Dispatcher.Invoke(() =>
|
||||||
{
|
{
|
||||||
MainWindow.Instance.ShowGameEnd(((EndGamePacket)packet).IsWon,((EndGamePacket)packet).PlayerRoles);
|
MainWindow.Instance.ShowGameEnd(((EndGamePacket)packet).IsWon,((EndGamePacket)packet).PlayerRoles);
|
||||||
}));
|
});
|
||||||
App.Instance.GetRpcClient().UpdateDetails("Ожидание старта");
|
App.Instance.GetRpcClient().UpdateDetails("Ожидание старта");
|
||||||
break;
|
break;
|
||||||
case PacketType.GameStateChanged:
|
case PacketType.GameStateChanged:
|
||||||
App.Current.Dispatcher.Invoke((Action) (() => { MainWindow.Instance.HideAll(); }));
|
Application.Current.Dispatcher.Invoke(() => { MainWindow.Instance.HideAll(); });
|
||||||
players = ((GameStageChangedPacket) packet).Players;
|
players = ((GameStageChangedPacket) packet).Players;
|
||||||
switch (((GameStageChangedPacket) packet).GameState)
|
switch (((GameStageChangedPacket) packet).GameState)
|
||||||
{
|
{
|
||||||
case GameState.Day:
|
case GameState.Day:
|
||||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
Application.Current.Dispatcher.Invoke(() =>
|
||||||
{
|
{
|
||||||
MainWindow.Instance.ShowDay(false, ((GameStageChangedPacket) packet).Role,players);
|
MainWindow.Instance.ShowDay(false, ((GameStageChangedPacket) packet).Role,players);
|
||||||
}));
|
});
|
||||||
App.Instance.GetRpcClient().UpdateDetails("День");
|
App.Instance.GetRpcClient().UpdateDetails("День");
|
||||||
break;
|
break;
|
||||||
case GameState.VotingDay:
|
case GameState.VotingDay:
|
||||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
Application.Current.Dispatcher.Invoke(() =>
|
||||||
{
|
{
|
||||||
MainWindow.Instance.ShowDay(true, ((GameStageChangedPacket) packet).Role,players);
|
MainWindow.Instance.ShowDay(true, ((GameStageChangedPacket) packet).Role,players);
|
||||||
}));
|
});
|
||||||
App.Instance.GetRpcClient().UpdateDetails("Голосование!");
|
App.Instance.GetRpcClient().UpdateDetails("Голосование!");
|
||||||
break;
|
break;
|
||||||
case GameState.VotingNight:
|
case GameState.VotingNight:
|
||||||
@ -293,17 +294,17 @@ namespace MafiaGame
|
|||||||
{
|
{
|
||||||
case Role.Citizen:
|
case Role.Citizen:
|
||||||
case Role.Died:
|
case Role.Died:
|
||||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
Application.Current.Dispatcher.Invoke(() =>
|
||||||
{
|
{
|
||||||
String rol;
|
String rol;
|
||||||
if (((GameStageChangedPacket)packet).Role == Role.Citizen) rol = "Мирный житель";
|
if (((GameStageChangedPacket)packet).Role == Role.Citizen) rol = "Мирный житель";
|
||||||
else rol = "Мёртв";
|
else rol = "Мёртв";
|
||||||
MainWindow.Instance.ShowVotingPassive("Ты " +rol+ "!");
|
MainWindow.Instance.ShowVotingPassive("Ты " +rol+ "!");
|
||||||
}));
|
});
|
||||||
break;
|
break;
|
||||||
case Role.Mafia:
|
case Role.Mafia:
|
||||||
case Role.Don:
|
case Role.Don:
|
||||||
App.Current.Dispatcher.Invoke((Action) (() =>
|
Application.Current.Dispatcher.Invoke(() =>
|
||||||
{
|
{
|
||||||
String rol;
|
String rol;
|
||||||
if (((GameStageChangedPacket)packet).Role == Role.Mafia) rol = "Мафия";
|
if (((GameStageChangedPacket)packet).Role == Role.Mafia) rol = "Мафия";
|
||||||
@ -316,7 +317,7 @@ namespace MafiaGame
|
|||||||
item.Content = player.Id.ToString() + ") " + player.Name;
|
item.Content = player.Id.ToString() + ") " + player.Name;
|
||||||
MainWindow.Instance.GameVotingActiveSelect.Items.Add(item);
|
MainWindow.Instance.GameVotingActiveSelect.Items.Add(item);
|
||||||
}
|
}
|
||||||
}));
|
});
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -1,7 +1,5 @@
|
|||||||
using System;
|
using System.IO;
|
||||||
using System.IO;
|
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
using Newtonsoft.Json.Linq;
|
|
||||||
|
|
||||||
namespace MafiaGame
|
namespace MafiaGame
|
||||||
{
|
{
|
||||||
@ -20,7 +18,7 @@ namespace MafiaGame
|
|||||||
{
|
{
|
||||||
_config = JsonConvert.DeserializeObject<MainConfig>(File.ReadAllText("config.json"));
|
_config = JsonConvert.DeserializeObject<MainConfig>(File.ReadAllText("config.json"));
|
||||||
}
|
}
|
||||||
catch (FileNotFoundException e)
|
catch (FileNotFoundException)
|
||||||
{
|
{
|
||||||
_config = new MainConfig();
|
_config = new MainConfig();
|
||||||
File.Create("config.json").Close();
|
File.Create("config.json").Close();
|
||||||
|
@ -23,21 +23,21 @@ namespace MafiaServer
|
|||||||
{
|
{
|
||||||
if (_players.Count >= Settings.Config().MaxPlayers)
|
if (_players.Count >= Settings.Config().MaxPlayers)
|
||||||
{
|
{
|
||||||
player.sendPacket(new DisconnectPacket("Game Full!"));
|
player.SendPacket(new DisconnectPacket("Game Full!"));
|
||||||
player.disconnect();
|
player.Disconnect();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (_isStarted)
|
if (_isStarted)
|
||||||
{
|
{
|
||||||
player.sendPacket(new DisconnectPacket("Game already started!"));
|
player.SendPacket(new DisconnectPacket("Game already started!"));
|
||||||
player.disconnect();
|
player.Disconnect();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
foreach (var othPlayer in _players)
|
foreach (var othPlayer in _players)
|
||||||
{
|
{
|
||||||
othPlayer.sendPacket(new PlayerConnectedPacket(player.PlayerName, _players.Count + 1,
|
othPlayer.SendPacket(new PlayerConnectedPacket(player.PlayerName, _players.Count + 1,
|
||||||
Settings.Config().MaxPlayers));
|
Settings.Config().MaxPlayers));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -47,7 +47,7 @@ namespace MafiaServer
|
|||||||
player.OnPlayerSendMessageEvent += PlayerOnOnPlayerSendMessageEvent;
|
player.OnPlayerSendMessageEvent += PlayerOnOnPlayerSendMessageEvent;
|
||||||
player.OnDisconnectEvent += PlayerOnOnDisconnectEvent;
|
player.OnDisconnectEvent += PlayerOnOnDisconnectEvent;
|
||||||
player.OnPlayerVoteEvent += PlayerOnOnPlayerVoteEvent;
|
player.OnPlayerVoteEvent += PlayerOnOnPlayerVoteEvent;
|
||||||
player.sendPacket(new WelcomePacket(Settings.Config().ServerName, _players.Count,
|
player.SendPacket(new WelcomePacket(Settings.Config().ServerName, _players.Count,
|
||||||
Settings.Config().MaxPlayers));
|
Settings.Config().MaxPlayers));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -70,7 +70,7 @@ namespace MafiaServer
|
|||||||
{
|
{
|
||||||
foreach (var p in _players)
|
foreach (var p in _players)
|
||||||
{
|
{
|
||||||
p.sendPacket(new EndGamePacket(true, _playerRolesAtStart));
|
p.SendPacket(new EndGamePacket(true, _playerRolesAtStart));
|
||||||
}
|
}
|
||||||
|
|
||||||
_isStarted = false;
|
_isStarted = false;
|
||||||
@ -82,7 +82,7 @@ namespace MafiaServer
|
|||||||
_mafia[0].Role = Role.Don;
|
_mafia[0].Role = Role.Don;
|
||||||
if (_gameState == GameState.VotingNight)
|
if (_gameState == GameState.VotingNight)
|
||||||
{
|
{
|
||||||
_mafia[0].sendPacket(new MessageReceivePacket(ChatType.Active, true, "System",
|
_mafia[0].SendPacket(new MessageReceivePacket(ChatType.Active, true, "System",
|
||||||
"Дон покинул игру, ты новый дон!"));
|
"Дон покинул игру, ты новый дон!"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -100,7 +100,7 @@ namespace MafiaServer
|
|||||||
if (mafias < aliveLefts) return true;
|
if (mafias < aliveLefts) return true;
|
||||||
foreach (var p in _players)
|
foreach (var p in _players)
|
||||||
{
|
{
|
||||||
p.sendPacket(new EndGamePacket(p.Role == Role.Mafia || p.Role == Role.Don, _playerRolesAtStart));
|
p.SendPacket(new EndGamePacket(p.Role == Role.Mafia || p.Role == Role.Don, _playerRolesAtStart));
|
||||||
}
|
}
|
||||||
|
|
||||||
_isStarted = false;
|
_isStarted = false;
|
||||||
@ -125,7 +125,7 @@ namespace MafiaServer
|
|||||||
foreach (var player in _players.Where(player =>
|
foreach (var player in _players.Where(player =>
|
||||||
player.Role == Role.Mafia || player.Role == Role.Don))
|
player.Role == Role.Mafia || player.Role == Role.Don))
|
||||||
{
|
{
|
||||||
player.sendPacket(new MessageReceivePacket(ChatType.Active, true, "System",
|
player.SendPacket(new MessageReceivePacket(ChatType.Active, true, "System",
|
||||||
sender.PlayerName + " проголосовал за " + voteFor.PlayerName));
|
sender.PlayerName + " проголосовал за " + voteFor.PlayerName));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -136,7 +136,7 @@ namespace MafiaServer
|
|||||||
foreach (var player in _players.Where(player =>
|
foreach (var player in _players.Where(player =>
|
||||||
player.Role == Role.Mafia || player.Role == Role.Don))
|
player.Role == Role.Mafia || player.Role == Role.Don))
|
||||||
{
|
{
|
||||||
player.sendPacket(new MessageReceivePacket(ChatType.Active, true, "System",
|
player.SendPacket(new MessageReceivePacket(ChatType.Active, true, "System",
|
||||||
sender.PlayerName + " проголосовал за " + voteFor.PlayerName));
|
sender.PlayerName + " проголосовал за " + voteFor.PlayerName));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -149,7 +149,7 @@ namespace MafiaServer
|
|||||||
_votesRemain.Remove(sender);
|
_votesRemain.Remove(sender);
|
||||||
foreach (var player in _players)
|
foreach (var player in _players)
|
||||||
{
|
{
|
||||||
player.sendPacket(new MessageReceivePacket(ChatType.Day, true, "System",
|
player.SendPacket(new MessageReceivePacket(ChatType.Day, true, "System",
|
||||||
sender.PlayerName + " проголосовал за " + voteFor.PlayerName));
|
sender.PlayerName + " проголосовал за " + voteFor.PlayerName));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -176,9 +176,9 @@ namespace MafiaServer
|
|||||||
_gameState = GameState.Day;
|
_gameState = GameState.Day;
|
||||||
foreach (var player in _players)
|
foreach (var player in _players)
|
||||||
{
|
{
|
||||||
player.sendPacket(new GameStageChangedPacket(GameState.Day, player.Role,
|
player.SendPacket(new GameStageChangedPacket(GameState.Day, player.Role,
|
||||||
GetPlayersRoles()));
|
GetPlayersRoles()));
|
||||||
player.sendPacket(new MessageReceivePacket(ChatType.Day, true, "System",
|
player.SendPacket(new MessageReceivePacket(ChatType.Day, true, "System",
|
||||||
killed.PlayerName + " был убит!"));
|
killed.PlayerName + " был убит!"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -202,9 +202,9 @@ namespace MafiaServer
|
|||||||
FillNightVotes();
|
FillNightVotes();
|
||||||
foreach (var player in _players)
|
foreach (var player in _players)
|
||||||
{
|
{
|
||||||
player.sendPacket(new GameStageChangedPacket(GameState.VotingNight, player.Role,
|
player.SendPacket(new GameStageChangedPacket(GameState.VotingNight, player.Role,
|
||||||
GetPlayersRoles()));
|
GetPlayersRoles()));
|
||||||
player.sendPacket(new MessageReceivePacket(ChatType.Day, true, "System",
|
player.SendPacket(new MessageReceivePacket(ChatType.Day, true, "System",
|
||||||
killed.PlayerName + " был повешен!"));
|
killed.PlayerName + " был повешен!"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -225,8 +225,8 @@ namespace MafiaServer
|
|||||||
|
|
||||||
foreach (var player in _players)
|
foreach (var player in _players)
|
||||||
{
|
{
|
||||||
player.sendPacket(new GameStageChangedPacket(GameState.VotingDay, player.Role, GetPlayersRoles()));
|
player.SendPacket(new GameStageChangedPacket(GameState.VotingDay, player.Role, GetPlayersRoles()));
|
||||||
player.sendPacket(new MessageReceivePacket(ChatType.Day, true, "System", "Начинаем голосование!"));
|
player.SendPacket(new MessageReceivePacket(ChatType.Day, true, "System", "Начинаем голосование!"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -249,7 +249,7 @@ namespace MafiaServer
|
|||||||
_players.Remove(sender);
|
_players.Remove(sender);
|
||||||
foreach (var player in _players)
|
foreach (var player in _players)
|
||||||
{
|
{
|
||||||
player.sendPacket(new PlayerDisconnectedPacket(true, sender.Id, _players.Count,
|
player.SendPacket(new PlayerDisconnectedPacket(true, sender.Id, _players.Count,
|
||||||
Settings.Config().MaxPlayers));
|
Settings.Config().MaxPlayers));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -321,17 +321,17 @@ namespace MafiaServer
|
|||||||
|
|
||||||
var players = GetPlayersRoles();
|
var players = GetPlayersRoles();
|
||||||
|
|
||||||
don.sendPacket(new GameStartPacket(Role.Don, players));
|
don.SendPacket(new GameStartPacket(Role.Don, players));
|
||||||
_votesRemain.Add(don);
|
_votesRemain.Add(don);
|
||||||
|
|
||||||
foreach (var player in empty)
|
foreach (var player in empty)
|
||||||
{
|
{
|
||||||
player.sendPacket(new GameStartPacket(Role.Citizen, players));
|
player.SendPacket(new GameStartPacket(Role.Citizen, players));
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach (var player in _mafia)
|
foreach (var player in _mafia)
|
||||||
{
|
{
|
||||||
player.sendPacket(new GameStartPacket(Role.Mafia, players));
|
player.SendPacket(new GameStartPacket(Role.Mafia, players));
|
||||||
_votesRemain.Add(player);
|
_votesRemain.Add(player);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -351,7 +351,7 @@ namespace MafiaServer
|
|||||||
_players.Remove(sender);
|
_players.Remove(sender);
|
||||||
foreach (var player in _players)
|
foreach (var player in _players)
|
||||||
{
|
{
|
||||||
player.sendPacket(new PlayerDisconnectedPacket(true, sender.Id, _players.Count,
|
player.SendPacket(new PlayerDisconnectedPacket(true, sender.Id, _players.Count,
|
||||||
Settings.Config().MaxPlayers));
|
Settings.Config().MaxPlayers));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -371,7 +371,7 @@ namespace MafiaServer
|
|||||||
{
|
{
|
||||||
foreach (var player in _players)
|
foreach (var player in _players)
|
||||||
{
|
{
|
||||||
player.sendPacket(new MessageReceivePacket(ChatType.Queue, false, sender.PlayerName, text));
|
player.SendPacket(new MessageReceivePacket(ChatType.Queue, false, sender.PlayerName, text));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -386,7 +386,7 @@ namespace MafiaServer
|
|||||||
foreach (var player in _players.Where(player =>
|
foreach (var player in _players.Where(player =>
|
||||||
player.Role == Role.Mafia || player.Role == Role.Don))
|
player.Role == Role.Mafia || player.Role == Role.Don))
|
||||||
{
|
{
|
||||||
player.sendPacket(new MessageReceivePacket(ChatType.Active, false,
|
player.SendPacket(new MessageReceivePacket(ChatType.Active, false,
|
||||||
sender.PlayerName,
|
sender.PlayerName,
|
||||||
text));
|
text));
|
||||||
}
|
}
|
||||||
@ -401,14 +401,14 @@ namespace MafiaServer
|
|||||||
{
|
{
|
||||||
if (sender.Role == Role.Died)
|
if (sender.Role == Role.Died)
|
||||||
{
|
{
|
||||||
sender.sendPacket(new MessageReceivePacket(ChatType.Day, true, "system",
|
sender.SendPacket(new MessageReceivePacket(ChatType.Day, true, "system",
|
||||||
"Мёртвое говорить не может"));
|
"Мёртвое говорить не может"));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
foreach (var player in _players)
|
foreach (var player in _players)
|
||||||
{
|
{
|
||||||
player.sendPacket(
|
player.SendPacket(
|
||||||
new MessageReceivePacket(ChatType.Day, false, sender.PlayerName, text));
|
new MessageReceivePacket(ChatType.Day, false, sender.PlayerName, text));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -10,7 +10,7 @@ namespace MafiaServer
|
|||||||
{
|
{
|
||||||
public class PlayerSocketWorker
|
public class PlayerSocketWorker
|
||||||
{
|
{
|
||||||
private Socket _socket;
|
private readonly Socket _socket;
|
||||||
public readonly string PlayerName;
|
public readonly string PlayerName;
|
||||||
public event OnDisconnectByErrorEvent OnDisconnectByErrorEvent;
|
public event OnDisconnectByErrorEvent OnDisconnectByErrorEvent;
|
||||||
public event OnPlayerSendMessageEvent OnPlayerSendMessageEvent;
|
public event OnPlayerSendMessageEvent OnPlayerSendMessageEvent;
|
||||||
@ -43,24 +43,24 @@ namespace MafiaServer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void sendPacket(Packet packet)
|
public void SendPacket(Packet packet)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
_socket.Send(PacketConverter.ToBytes(packet));
|
_socket.Send(PacketConverter.ToBytes(packet));
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception)
|
||||||
{
|
{
|
||||||
|
// ignored
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void disconnect()
|
public void Disconnect()
|
||||||
{
|
{
|
||||||
_socket.Close();
|
_socket.Close();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void run()
|
public void Run()
|
||||||
{
|
{
|
||||||
while (_socket.Connected)
|
while (_socket.Connected)
|
||||||
{
|
{
|
||||||
@ -83,7 +83,7 @@ namespace MafiaServer
|
|||||||
WorkPacket(packet);
|
WorkPacket(packet);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (SocketException e)
|
catch (SocketException)
|
||||||
{
|
{
|
||||||
OnDisconnectByErrorEvent.Invoke(this);
|
OnDisconnectByErrorEvent.Invoke(this);
|
||||||
}
|
}
|
||||||
|
@ -2,10 +2,10 @@
|
|||||||
|
|
||||||
namespace MafiaServer
|
namespace MafiaServer
|
||||||
{
|
{
|
||||||
class MafiaServer
|
static class MafiaServer
|
||||||
{
|
{
|
||||||
private static Server server;
|
private static Server _server;
|
||||||
private static Boolean breakFlag = false;
|
private static Boolean _breakFlag;
|
||||||
public static Game Game;
|
public static Game Game;
|
||||||
|
|
||||||
static void Main(string[] args)
|
static void Main(string[] args)
|
||||||
@ -13,15 +13,15 @@ namespace MafiaServer
|
|||||||
Settings.Initialize();
|
Settings.Initialize();
|
||||||
Settings.Save();
|
Settings.Save();
|
||||||
Game = new Game();
|
Game = new Game();
|
||||||
server = new Server();
|
_server = new Server();
|
||||||
while (!breakFlag)
|
while (!_breakFlag)
|
||||||
{
|
{
|
||||||
String input = Console.ReadLine();
|
String input = Console.ReadLine();
|
||||||
switch (input.Split(" ")[0].ToLower())
|
switch (input.Split(" ")[0].ToLower())
|
||||||
{
|
{
|
||||||
case "stop":
|
case "stop":
|
||||||
server.stop("Manual stop");
|
_server.Stop("Manual stop");
|
||||||
breakFlag = true;
|
_breakFlag = true;
|
||||||
break;
|
break;
|
||||||
case "start":
|
case "start":
|
||||||
Game.Start();
|
Game.Start();
|
||||||
|
@ -4,16 +4,15 @@ using System.Net;
|
|||||||
using System.Net.Sockets;
|
using System.Net.Sockets;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
using MafiaCommon.Packets;
|
using MafiaCommon.Packets;
|
||||||
using Newtonsoft.Json;
|
|
||||||
|
|
||||||
namespace MafiaServer
|
namespace MafiaServer
|
||||||
{
|
{
|
||||||
public class Server
|
public class Server
|
||||||
{
|
{
|
||||||
private Socket _socket;
|
private readonly Socket _socket;
|
||||||
private Thread _acceptor;
|
private readonly Thread _acceptor;
|
||||||
private List<Socket> _clientSockets = new List<Socket>();
|
private readonly List<Socket> _clientSockets = new List<Socket>();
|
||||||
private List<Thread> _clientThreads = new List<Thread>();
|
private readonly List<Thread> _clientThreads = new List<Thread>();
|
||||||
|
|
||||||
public Server()
|
public Server()
|
||||||
{
|
{
|
||||||
@ -21,14 +20,13 @@ namespace MafiaServer
|
|||||||
_socket.Bind(new IPEndPoint(IPAddress.Any, Settings.Config().Port));
|
_socket.Bind(new IPEndPoint(IPAddress.Any, Settings.Config().Port));
|
||||||
_socket.Listen(10);
|
_socket.Listen(10);
|
||||||
|
|
||||||
_acceptor = new Thread(new ThreadStart(acceptor));
|
_acceptor = new Thread(Acceptor) {IsBackground = true};
|
||||||
_acceptor.IsBackground = true;
|
|
||||||
_acceptor.Start();
|
_acceptor.Start();
|
||||||
|
|
||||||
Console.WriteLine("Server started!");
|
Console.WriteLine("Server started!");
|
||||||
}
|
}
|
||||||
|
|
||||||
public void stop(String reason)
|
public void Stop(String reason)
|
||||||
{
|
{
|
||||||
_acceptor.Interrupt();
|
_acceptor.Interrupt();
|
||||||
foreach (Thread thread in _clientThreads)
|
foreach (Thread thread in _clientThreads)
|
||||||
@ -44,13 +42,13 @@ namespace MafiaServer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void acceptor()
|
private void Acceptor()
|
||||||
{
|
{
|
||||||
while (true)
|
while (true)
|
||||||
{
|
{
|
||||||
Socket playerSocket = _socket.Accept();
|
Socket playerSocket = _socket.Accept();
|
||||||
PlayerSocketWorker playerSocketWorker = new PlayerSocketWorker(playerSocket);
|
PlayerSocketWorker playerSocketWorker = new PlayerSocketWorker(playerSocket);
|
||||||
Thread thread = new Thread(playerSocketWorker.run);
|
Thread thread = new Thread(playerSocketWorker.Run);
|
||||||
_clientSockets.Add(playerSocket);
|
_clientSockets.Add(playerSocket);
|
||||||
_clientThreads.Add(thread);
|
_clientThreads.Add(thread);
|
||||||
thread.Start();
|
thread.Start();
|
||||||
|
@ -1,11 +1,9 @@
|
|||||||
using System;
|
using System.IO;
|
||||||
using System.IO;
|
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
using Newtonsoft.Json.Linq;
|
|
||||||
|
|
||||||
namespace MafiaServer
|
namespace MafiaServer
|
||||||
{
|
{
|
||||||
public class Settings
|
public static class Settings
|
||||||
{
|
{
|
||||||
private static MainConfig _config;
|
private static MainConfig _config;
|
||||||
|
|
||||||
@ -20,7 +18,7 @@ namespace MafiaServer
|
|||||||
{
|
{
|
||||||
_config = JsonConvert.DeserializeObject<MainConfig>(File.ReadAllText("config.json"));
|
_config = JsonConvert.DeserializeObject<MainConfig>(File.ReadAllText("config.json"));
|
||||||
}
|
}
|
||||||
catch (FileNotFoundException e)
|
catch (FileNotFoundException)
|
||||||
{
|
{
|
||||||
_config = new MainConfig();
|
_config = new MainConfig();
|
||||||
File.Create("config.json").Close();
|
File.Create("config.json").Close();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user