public static GameServerArgument CreateFromConsoleInput() { GameServerArgument args = new GameServerArgument(); string s; // Get sizeX do { s = ConsoleManager.WaitGetPriorityInput("Input grid size along the X-axis: ", false); }while (int.TryParse(s, out args.sizeX)); // Get sizeY do { s = ConsoleManager.WaitGetPriorityInput("Input grid size along the Y-axis: ", false); }while (int.TryParse(s, out args.sizeY)); // Get maxPlayers do { s = ConsoleManager.WaitGetPriorityInput("Input maximum players: ", false); }while (int.TryParse(s, out args.maxPlayers)); // Get minPlayers do { s = ConsoleManager.WaitGetPriorityInput("Input minimum players: ", false); }while (int.TryParse(s, out args.minPlayers)); // Get port do { s = ConsoleManager.WaitGetPriorityInput("Input server port: ", false); }while (int.TryParse(s, out args.port)); return(args); }
/// <summary> /// Create a new GameServer from argument /// </summary> public GameServer(GameServerArgument args) { grid = new Grid(args.sizeX, args.sizeY, args.maxPlayers, args.minPlayers); argument = args; NetPeerConfiguration config = new NetPeerConfiguration(Program.AppId); config.Port = args.port; config.AutoFlushSendQueue = true; StartServer(config); }
public bool TryParse(string s, out GameServerArgument args) { try { args = Parse(s); return(true); } catch (Exception) { args = default; return(false); } }
public GameServerArgument Parse(string s) { // Separate string string[] ss = s.Split('|'); int[] ints = new int[5]; for (int i = 0; i < 5; i++) { ints[i] = int.Parse(ss[i]); } GameServerArgument output = new GameServerArgument(); output.sizeX = ints[0]; output.sizeY = ints[1]; output.maxPlayers = ints[2]; output.minPlayers = ints[3]; output.port = ints[4]; return(output); }