/// <summary> /// Starts up the client. /// </summary> public static void Init() { SysConsole.Output(OutputType.INIT, "Loading client..."); Username = Program.GetSetting("username"); SysConsole.Output(OutputType.INFO, "Username: "******"Invalid username!"); Process.GetCurrentProcess().Kill(); } SysConsole.Output(OutputType.INIT, "Loading command engine (Frenetic)..."); ClientOutputter output = new ClientOutputter(); ClientCommands.Init(output); ClientCVar.Init(output); SysConsole.Output(OutputType.INIT, "Loading window..."); Window = new GameWindow(800, 600, new GraphicsMode(32, 24, 0 /* TODO: Are these values good? */, ClientCVar.r_antialiasing.ValueI), Program.GameName, GameWindowFlags.FixedWindow); Window.UpdateFrame += new EventHandler <FrameEventArgs>(Window_UpdateFrame); Window.RenderFrame += new EventHandler <FrameEventArgs>(Window_RenderFrame); Window.Closed += new EventHandler <EventArgs>(Window_Closed); Window.Load += new EventHandler <EventArgs>(Window_Load); Window.KeyPress += new EventHandler <KeyPressEventArgs>(KeyHandler.PrimaryGameWindow_KeyPress); Window.KeyUp += new EventHandler <KeyboardKeyEventArgs>(KeyHandler.PrimaryGameWindow_KeyUp); Window.KeyDown += new EventHandler <KeyboardKeyEventArgs>(KeyHandler.PrimaryGameWindow_KeyDown); Window.MouseDown += new EventHandler <MouseButtonEventArgs>(KeyHandler.Mouse_ButtonDown); Window.MouseUp += new EventHandler <MouseButtonEventArgs>(KeyHandler.Mouse_ButtonUp); Window.MouseWheel += new EventHandler <MouseWheelEventArgs>(KeyHandler.Mouse_Wheel); SysConsole.Output(OutputType.INIT, "Running window startup sequence..."); Window.Run(60, 60); }
/// <summary> /// Start up and run the server. /// </summary> public void StartUp(string args) { Files.Init(); SysConsole.Output(OutputType.CLIENTINIT, "Launching as new client, this is " + (this == Central ? "" : "NOT ") + "the Central client."); SysConsole.Output(OutputType.CLIENTINIT, "Loading command system..."); Commands = new ClientCommands(); Commands.Init(new ClientOutputter(this), this); SysConsole.Output(OutputType.CLIENTINIT, "Loading CVar system..."); CVars = new ClientCVar(); CVars.Init(this, Commands.Output); SysConsole.Output(OutputType.CLIENTINIT, "Loading default settings..."); if (Files.Exists("clientdefaultsettings.cfg")) { string contents = Files.ReadText("clientdefaultsettings.cfg"); Commands.ExecuteCommands(contents); } Commands.ExecuteCommands(args); SysConsole.Output(OutputType.CLIENTINIT, "Generating window..."); DisplayDevice dd = DisplayDevice.Default; Window = new GameWindow(CVars.r_width.ValueI, CVars.r_height.ValueI, new GraphicsMode(24, 24, 0, 0), Program.GameName + " v" + Program.GameVersion + " (" + Program.GameVersionDescription + ")", GameWindowFlags.Default, dd, 4, 3, GraphicsContextFlags.ForwardCompatible); Window.Load += new EventHandler <EventArgs>(Window_Load); Window.RenderFrame += new EventHandler <FrameEventArgs>(Window_RenderFrame); Window.Mouse.Move += new EventHandler <MouseMoveEventArgs>(MouseHandler.Window_MouseMove); Window.KeyDown += new EventHandler <KeyboardKeyEventArgs>(KeyHandler.PrimaryGameWindow_KeyDown); Window.KeyPress += new EventHandler <KeyPressEventArgs>(KeyHandler.PrimaryGameWindow_KeyPress); Window.KeyUp += new EventHandler <KeyboardKeyEventArgs>(KeyHandler.PrimaryGameWindow_KeyUp); Window.Mouse.WheelChanged += new EventHandler <MouseWheelEventArgs>(KeyHandler.Mouse_Wheel); Window.Mouse.ButtonDown += new EventHandler <MouseButtonEventArgs>(KeyHandler.Mouse_ButtonDown); Window.Mouse.ButtonUp += new EventHandler <MouseButtonEventArgs>(KeyHandler.Mouse_ButtonUp); Window.Location = new Point(0, 0); Window.WindowState = CVars.r_fullscreen.ValueB ? WindowState.Fullscreen : WindowState.Normal; Window.Resize += Window_Resize; Window.Closed += Window_Closed; Window.ReduceCPUWaste = true; OnVsyncChanged(CVars.r_vsync, null); if (CVars.r_maxfps.ValueD < 1.0) { CVars.r_maxfps.Set("60"); } if (CVars.r_maxfps.ValueD > 200.0) { Window.Run(1); } else { Window.Run(1, CVars.r_maxfps.ValueD); } }