#region Arthea License /*********************************************************************** * Arthea MUD by R. Jennings (2007) http://arthea.googlecode.com/ * * By using this code you comply with the Artistic and GPLv2 Licenses. * ***********************************************************************/ #endregion using System; using Arthea; using Arthea.Commands.Admin; using Arthea.Environment; namespace ArtheaConsole { /// <summary> /// The starting point /// </summary> public class Program { #region [rgn] Methods (1) // [rgn] Public Methods (1) /// <summary> /// the main method /// </summary> /// <param name="args">The args.</param> public static void Main(string[] args) { Arguments CmdLine = new Arguments(args); if (CmdLine["help"] != null || CmdLine["h"] != null) { Console.WriteLine("--help, -h : this help"); Console.WriteLine("--version, -v : show version information"); Console.WriteLine("--port <port> : set incomming port number"); Console.WriteLine("--rport <port> : set reboot recovery port"); } if (CmdLine["version"] != null || CmdLine["v"] != null) { Console.Write(Server.Instance.Version); Console.WriteLine(" (Console v{0}.{1}", Environment.Version.Major, Environment.Version.Minor); Console.WriteLine(Server.Instance.About); Console.ReadLine(); return; } if (CmdLine["rport"] != null) { short rport; if (short.TryParse(CmdLine["rport"], out rport)) { RebootRecovery.Port = rport; } else { Console.WriteLine("Invalid reboot recovery port number."); return; } } if (CmdLine["port"] != null) { short port; if (short.TryParse(CmdLine["port"], out port)) { Globals.PortNumber = port; } else { Console.WriteLine("Invalid port number."); return; } } Server.Instance.Start(CmdLine["reboot"] != null); Server.Instance.Shutdown(); } #endregion [rgn] } }