added launch args for ip/port and default config loading

- fixed char create issues by adding default values to fields (todo: fix actual query)
- added post build command to copy scripts folder to bin
This commit is contained in:
Tahir Akhlaq 2016-12-04 21:41:34 +00:00
parent f286922974
commit 4a320d7096
13 changed files with 142 additions and 32 deletions

View file

@ -1,6 +1,8 @@
using FFXIVClassic.Common;
using System;
using System.IO;
using System.Linq;
using System.Net;
namespace FFXIVClassic_Lobby_Server
{
@ -23,7 +25,7 @@ namespace FFXIVClassic_Lobby_Server
if (!File.Exists("./lobby_config.ini"))
{
Program.Log.Error("FILE NOT FOUND!");
return false;
Program.Log.Error("Loading defaults...");
}
INIFile configIni = new INIFile("./lobby_config.ini");
@ -40,5 +42,34 @@ namespace FFXIVClassic_Lobby_Server
return true;
}
public static void ApplyLaunchArgs(string[] launchArgs)
{
var args = (from arg in launchArgs select arg.ToLower().Trim().TrimStart('-')).ToList();
for (var i = 0; i + 1 < args.Count; i += 2)
{
var arg = args[i];
var val = args[i + 1];
var legit = false;
if (arg == "ip")
{
IPAddress ip;
if (IPAddress.TryParse(val, out ip) && (legit = true))
OPTIONS_BINDIP = val;
}
else if (arg == "port")
{
UInt16 port;
if (UInt16.TryParse(val, out port) && (legit = true))
OPTIONS_PORT = val;
}
if (!legit)
{
Program.Log.Error("Invalid parameter <{0}> for argument: <--{1}> or argument doesnt exist!", val, arg);
}
}
}
}
}