Files
Ragon/Ragon.Core/Configuration.cs
T

43 lines
1.3 KiB
C#
Raw Normal View History

2022-12-16 00:05:46 +04:00
using Newtonsoft.Json;
using NLog;
namespace Ragon.Core;
[Serializable]
public struct Configuration
{
2022-12-20 12:20:52 -08:00
public string ServerKey;
public string ServerType;
public ushort ServerTickRate;
public string GameProtocol;
2022-12-16 00:05:46 +04:00
public ushort Port;
public int LimitConnections;
public int LimitPlayersPerRoom;
public int LimitRooms;
private static readonly Logger Logger = LogManager.GetCurrentClassLogger();
2022-12-25 03:16:59 -08:00
private static readonly string ServerVersion = "1.0.31-rc";
2022-12-16 00:05:46 +04:00
private static void CopyrightInfo()
{
Logger.Info($"Server Version: {ServerVersion}");
Logger.Info($"Machine Name: {Environment.MachineName}");
Logger.Info($"OS: {Environment.OSVersion}");
Logger.Info($"Processors: {Environment.ProcessorCount}");
Logger.Info($"Runtime Version: {Environment.Version}");
Logger.Info("==================================");
Logger.Info("| |");
Logger.Info("| Ragon |");
Logger.Info("| |");
Logger.Info("==================================");
}
public static Configuration Load(string filePath)
{
CopyrightInfo();
var data = File.ReadAllText(filePath);
var configuration = JsonConvert.DeserializeObject<Configuration>(data);
return configuration;
}
}