public void StartGame(S.StartGame p) { StartGameButton.Enabled = true; switch (p.Result) { case 0: MirMessageBox.Show("Starting the game is currently disabled."); break; case 1: MirMessageBox.Show("You are not logged in."); break; case 2: MirMessageBox.Show("Your character could not be found."); break; case 3: MirMessageBox.Show("No active map and/or start point found."); break; case 4: if (p.Resolution < Settings.Resolution || Settings.Resolution == 0) { Settings.Resolution = p.Resolution; } switch (Settings.Resolution) { default: case 1024: Settings.Resolution = 1024; CMain.SetResolution(1024, 768); break; case 1280: CMain.SetResolution(1280, 800); break; case 1366: CMain.SetResolution(1366, 768); break; case 1920: CMain.SetResolution(1920, 1080); break; } ActiveScene = new GameScene(); DXManager.ResetDevice(); Dispose(); break; } }
public static void SetResolution(int width, int height) { if (Settings.ScreenWidth == width && Settings.ScreenHeight == height) { return; } Settings.ScreenWidth = width; Settings.ScreenHeight = height; Program.Form.ClientSize = new Size(width, height); DXManager.Device.Clear(ClearFlags.Target, Color.Black, 0, 0); DXManager.Device.Present(); DXManager.ResetDevice(); Program.Form.CenterToScreen(); }
private static void ToggleFullScreen() { Settings.FullScreen = !Settings.FullScreen; Program.Form.FormBorderStyle = Settings.FullScreen ? FormBorderStyle.None : FormBorderStyle.FixedDialog; DXManager.Parameters.Windowed = !Settings.FullScreen; Program.Form.ClientSize = new Size(Settings.ScreenWidth, Settings.ScreenHeight); DXManager.ResetDevice(); if (MirScene.ActiveScene == GameScene.Scene) { GameScene.Scene.MapControl.FloorValid = false; } GameScene.Scene.TextureValid = false; }
private void SaveSettings(object o, MouseEventArgs e) { if (Config.FullScreen != FullScreenCheckBox.Checked) { DXManager.ToggleFullScreen(); } if (GameSizeComboBox.SelectedItem is Size && Config.GameSize != (Size)GameSizeComboBox.SelectedItem) { Config.GameSize = (Size)GameSizeComboBox.SelectedItem; if (ActiveScene is GameScene) { ActiveScene.Size = Config.GameSize; DXManager.SetResolution(ActiveScene.Size); } } if (LanguageComboBox.SelectedItem is string && Config.Language != (string)LanguageComboBox.SelectedItem) { Config.Language = (string)LanguageComboBox.SelectedItem; if (CEnvir.Connection != null && CEnvir.Connection.ServerConnected) { CEnvir.Enqueue(new C.SelectLanguage { Language = Config.Language }); } } if (Config.VSync != VSyncCheckBox.Checked) { Config.VSync = VSyncCheckBox.Checked; DXManager.ResetDevice(); } Config.LimitFPS = LimitFPSCheckBox.Checked; Config.ClipMouse = ClipMouseCheckBox.Checked; Config.DebugLabel = DebugLabelCheckBox.Checked; DebugLabel.IsVisible = Config.DebugLabel; PingLabel.IsVisible = Config.DebugLabel; if (Config.SoundInBackground != BackgroundSoundBox.Checked) { Config.SoundInBackground = BackgroundSoundBox.Checked; DXSoundManager.UpdateFlags(); } bool volumeChanged = false; if (Config.SystemVolume != SystemVolumeBox.Value) { Config.SystemVolume = (int)SystemVolumeBox.Value; volumeChanged = true; } if (Config.MusicVolume != MusicVolumeBox.Value) { Config.MusicVolume = (int)MusicVolumeBox.Value; volumeChanged = true; } if (Config.PlayerVolume != PlayerVolumeBox.Value) { Config.PlayerVolume = (int)PlayerVolumeBox.Value; volumeChanged = true; } if (Config.MonsterVolume != MonsterVolumeBox.Value) { Config.MonsterVolume = (int)MonsterVolumeBox.Value; volumeChanged = true; } if (Config.MagicVolume != SpellVolumeBox.Value) { Config.MagicVolume = (int)SpellVolumeBox.Value; volumeChanged = true; } Config.ShowItemNames = ItemNameCheckBox.Checked; Config.ShowMonsterNames = MonsterNameCheckBox.Checked; Config.ShowPlayerNames = PlayerNameCheckBox.Checked; Config.ShowUserHealth = UserHealthCheckBox.Checked; Config.ShowMonsterHealth = MonsterHealthCheckBox.Checked; Config.ShowDamageNumbers = DamageNumbersCheckBox.Checked; Config.EscapeCloseAll = EscapeCloseAllCheckBox.Checked; Config.ShiftOpenChat = ShiftOpenChatCheckBox.Checked; Config.RightClickDeTarget = RightClickDeTargetCheckBox.Checked; Config.MonsterBoxVisible = MonsterBoxVisibleCheckBox.Checked; Config.LogChat = LogChatCheckBox.Checked; Config.DrawEffects = DrawEffectsCheckBox.Checked; if (volumeChanged) { DXSoundManager.AdjustVolume(); } Config.UseNetworkConfig = UseNetworkConfigCheckBox.Checked; Config.IPAddress = IPAddressTextBox.TextBox.Text; Config.Port = (int)PortBox.Value; bool coloursChanged = false; if (Config.LocalTextColour != LocalColourBox.BackColour) { Config.LocalTextColour = LocalColourBox.BackColour; coloursChanged = true; } if (Config.GMWhisperInTextColour != GMWhisperInColourBox.BackColour) { Config.GMWhisperInTextColour = GMWhisperInColourBox.BackColour; coloursChanged = true; } if (Config.WhisperInTextColour != WhisperInColourBox.BackColour) { Config.WhisperInTextColour = WhisperInColourBox.BackColour; coloursChanged = true; } if (Config.WhisperOutTextColour != WhisperOutColourBox.BackColour) { Config.WhisperOutTextColour = WhisperOutColourBox.BackColour; coloursChanged = true; } if (Config.GroupTextColour != GroupColourBox.BackColour) { Config.GroupTextColour = GroupColourBox.BackColour; coloursChanged = true; } if (Config.GuildTextColour != GuildColourBox.BackColour) { Config.GuildTextColour = GuildColourBox.BackColour; coloursChanged = true; } if (Config.ShoutTextColour != ShoutColourBox.BackColour) { Config.ShoutTextColour = ShoutColourBox.BackColour; coloursChanged = true; } if (Config.GlobalTextColour != GlobalColourBox.BackColour) { Config.GlobalTextColour = GlobalColourBox.BackColour; coloursChanged = true; } if (Config.ObserverTextColour != ObserverColourBox.BackColour) { Config.ObserverTextColour = ObserverColourBox.BackColour; coloursChanged = true; } if (Config.HintTextColour != HintColourBox.BackColour) { Config.HintTextColour = HintColourBox.BackColour; coloursChanged = true; } if (Config.SystemTextColour != SystemColourBox.BackColour) { Config.SystemTextColour = SystemColourBox.BackColour; coloursChanged = true; } if (Config.GainsTextColour != GainsColourBox.BackColour) { Config.GainsTextColour = GainsColourBox.BackColour; coloursChanged = true; } if (Config.AnnouncementTextColour != AnnouncementColourBox.BackColour) { Config.AnnouncementTextColour = AnnouncementColourBox.BackColour; coloursChanged = true; } if (coloursChanged && GameScene.Game != null) { foreach (ChatTab tab in ChatTab.Tabs) { tab.UpdateColours(); } } }
public void StartGame(S.StartGame p) { StartGameButton.Enabled = true; if (p.Resolution < Settings.Resolution || Settings.Resolution == 0) { Settings.Resolution = p.Resolution; } if (p.Resolution < 1024 || Settings.Resolution < 1024) { Settings.Resolution = 800; } else if (p.Resolution < 1366 || Settings.Resolution < 1280) { Settings.Resolution = 1024; } else if (p.Resolution < 1366 || Settings.Resolution < 1366) { Settings.Resolution = 1280; //not adding an extra setting for 1280 on server cause well it just depends on the aspect ratio of your screen } else if (p.Resolution >= 1366 && Settings.Resolution >= 1366) { Settings.Resolution = 1366; } switch (p.Result) { case 0: MirMessageBox.Show("Starting the game is currently disabled."); break; case 1: MirMessageBox.Show("You are not logged in."); break; case 2: MirMessageBox.Show("Your character could not be found."); break; case 3: MirMessageBox.Show("No active map and/or start point found."); break; case 4: if (Settings.Resolution == 1024) { CMain.SetResolution(1024, 768); } else if (Settings.Resolution == 1280) { CMain.SetResolution(1280, 800); } else if (Settings.Resolution == 1366) { CMain.SetResolution(1366, 768); } ActiveScene = new GameScene(); DXManager.ResetDevice(); Dispose(); break; } }