/// <summary> /// Constructor /// </summary> public MainWindow(CampDialog camp) : base(camp, "Camp :") { ScreenButton button; // Adds buttons button = new ScreenButton("Rest Party", new Rectangle(16, 40, 320, 28)); button.Selected += new EventHandler(RestParty_Selected); Buttons.Add(button); button = new ScreenButton("Memorize Spells", new Rectangle(16, 74, 320, 28)); button.Selected += new EventHandler(MemorizeSpells_Selected); Buttons.Add(button); button = new ScreenButton("Pray for Spells", new Rectangle(16, 108, 320, 28)); button.Selected += new EventHandler(PrayForSpells_Selected); Buttons.Add(button); button = new ScreenButton("Scribe Scrolls", new Rectangle(16, 142, 320, 28)); button.Selected += new EventHandler(ScribeScrolls_Selected); Buttons.Add(button); button = new ScreenButton("Preferences", new Rectangle(16, 176, 320, 28)); button.Selected += new EventHandler(Preferences_Selected); Buttons.Add(button); button = new ScreenButton("Game Options", new Rectangle(16, 210, 320, 28)); button.Selected += new EventHandler(GameOptions_Selected); Buttons.Add(button); button = new ScreenButton("Exit", new Rectangle(256, 244, 80, 28)); button.Selected += new EventHandler(Exit_Selected); Buttons.Add(button); }
/// <summary> /// Default constructor /// </summary> /// <param name="camp">Camp window handle</param> /// <param name="title">Window title</param> public Window(CampDialog camp, string title) { Camp = camp; Title = title; Buttons = new List <ScreenButton>(); Closing = false; }
/// <summary> /// Draws the window /// </summary> /// <param name="batch">SpriteBatch to use</param> public void Draw(CampDialog camp, SpriteBatch batch) { if (batch == null) { return; } // Draw bevel background GUI.DrawDoubleBevel(batch, Rectangle, GameColors.Main, GameColors.Light, GameColors.Dark, false); // Draw message Point point = Rectangle.Location; point.Offset(6, 6); batch.DrawString(GUI.MenuFont, point, Color.White, Text); // Draw buttons foreach (ScreenButton button in Buttons) { Rectangle rect = ClientToScreen(Rectangle.Location, button.Rectangle); GUI.DrawDoubleBevel(batch, rect, GameColors.Main, GameColors.Light, GameColors.Dark, false); // Text point = rect.Location; point.Offset(6, 6); batch.DrawString(GUI.MenuFont, point, button.TextColor, button.Text); } }
/// <summary> /// Constructor /// </summary> public PreferencesWindow(CampDialog camp) : base(camp, "Preferences :") { ScreenButton button; button = new ScreenButton("", new Rectangle(16, 40, 320, 28)); button.Selected += new EventHandler(Tunes_Selected); if (AudioManager.PlayTunes) button.Text = "Tunes are ON"; else button.Text = "Tunes are OFF"; Buttons.Add(button); button = new ScreenButton("", new Rectangle(16, 74, 320, 28)); button.Selected += new EventHandler(Sounds_Selected); if (AudioManager.PlayTunes) button.Text = "Sounds are ON"; else button.Text = "Sounds are OFF"; Buttons.Add(button); button = new ScreenButton("", new Rectangle(16, 108, 320, 28)); button.Selected += new EventHandler(Bar_Selected); if (GameSettings.DrawHPAsBar) button.Text = "Bar Graphs are ON"; else button.Text = "Bar Graphs are OFF"; Buttons.Add(button); button = new ScreenButton("Exit", new Rectangle(256, 244, 80, 28)); button.Selected += new EventHandler(Exit_Selected); Buttons.Add(button); }
/// <summary> /// Default constructor /// </summary> /// <param name="camp">Camp window handle</param> /// <param name="title">Window title</param> public Window(CampDialog camp, string title) { Camp = camp; Title = title; Buttons = new List<ScreenButton>(); Closing = false; }
/// <summary> /// Constructor /// </summary> /// <param name="camp">Camp window handle</param> public SaveGameWindow(CampDialog camp) : base(camp, "Save Game:") { GameSettings.SavedGames.Load(); ScreenButton button; for (int id = 0; id < GameSettings.MaxGameSaveSlot; id++) { SaveGameSlot slot = GameSettings.SavedGames.Slots[id]; button = new ScreenButton(slot != null ? slot.Name : "", new Rectangle(16, 40 + id * 34, 320, 28)); button.Selected += new EventHandler(slot_Selected); button.Tag = slot == null ? -1 : id; Buttons.Add(button); } button = new ScreenButton("Cancel", new Rectangle(230, 244, 106, 28)); button.Selected += new EventHandler(Cancel_Selected); Buttons.Add(button); SelectedSlot = -1; }
/// <summary> /// Constructor /// </summary> public ScribeScrollsWindow(CampDialog camp) : base(camp, "Scribe Scrolls :") { ScreenButton button; button = new ScreenButton("Exit", new Rectangle(256, 244, 80, 28)); button.Selected += new EventHandler(Exit_Selected); Buttons.Add(button); }
/// <summary> /// Constructor /// </summary> public PreferencesWindow(CampDialog camp) : base(camp, "Preferences :") { ScreenButton button; button = new ScreenButton("", new Rectangle(16, 40, 320, 28)); button.Selected += new EventHandler(Tunes_Selected); if (AudioManager.PlayTunes) { button.Text = "Tunes are ON"; } else { button.Text = "Tunes are OFF"; } Buttons.Add(button); button = new ScreenButton("", new Rectangle(16, 74, 320, 28)); button.Selected += new EventHandler(Sounds_Selected); if (AudioManager.PlayTunes) { button.Text = "Sounds are ON"; } else { button.Text = "Sounds are OFF"; } Buttons.Add(button); button = new ScreenButton("", new Rectangle(16, 108, 320, 28)); button.Selected += new EventHandler(Bar_Selected); if (GameSettings.DrawHPAsBar) { button.Text = "Bar Graphs are ON"; } else { button.Text = "Bar Graphs are OFF"; } Buttons.Add(button); button = new ScreenButton("Exit", new Rectangle(256, 244, 80, 28)); button.Selected += new EventHandler(Exit_Selected); Buttons.Add(button); }
/// <summary> /// Constructor /// </summary> public DropNPCWindow(CampDialog camp) : base(camp, "Drop Character") { if (GameScreen.Team.HeroCount <= 4) { Closing = true; return; } Interface = ResourceManager.LockSharedAsset<TileSet>("Interface"); // Adds buttons ScreenButton button; button = new ScreenButton("Exit", new Rectangle(256, 244, 80, 28)); button.Selected += new EventHandler(Exit_Selected); Buttons.Add(button); RectangleColor = Color.White; Message = "Select a character<br />from your party<br />who would like to<br />drop."; }
/// <summary> /// Constructor /// </summary> public RestPartyWindow(CampDialog camp) : base(camp, "Rest Party :") { ScreenButton button; button = new ScreenButton("Exit", new Rectangle(256, 244, 80, 28)); button.Selected += new EventHandler(Exit_Selected); Buttons.Add(button); MessageBox = new MessageBox("Will your healers<br />heals the party ?", MessageBoxButtons.YesNo); MessageBox.Selected += new EventHandler(HealAnswer); // TODO: // Someone is still // injured. Rest // until healed ? }
/// <summary> /// Constructor /// </summary> public DropNPCWindow(CampDialog camp) : base(camp, "Drop Character") { if (GameScreen.Team.HeroCount <= 4) { Closing = true; return; } Interface = ResourceManager.LockSharedAsset <TileSet>("Interface"); // Adds buttons ScreenButton button; button = new ScreenButton("Exit", new Rectangle(256, 244, 80, 28)); button.Selected += new EventHandler(Exit_Selected); Buttons.Add(button); RectangleColor = Color.White; Message = "Select a character<br />from your party<br />who would like to<br />drop."; }
/// <summary> /// Constructor /// </summary> /// <param name="camp">Camp window handle</param> public LoadGameWindow(CampDialog camp) : base(camp, "Load Game:") { GameSettings.SavedGames.Load(); ScreenButton button; for (int id = 0; id < GameSettings.MaxGameSaveSlot; id++) { SaveGameSlot slot = GameSettings.SavedGames.Slots[id]; button = new ScreenButton(slot != null ? slot.Name : "", new Rectangle(16, 40 + id * 34, 320, 28)); button.Selected += new EventHandler(Slot_Selected); button.Tag = slot == null ? -1 : id; Buttons.Add(button); } button = new ScreenButton("Cancel", new Rectangle(230, 244, 106, 28)); button.Selected += new EventHandler(Cancel_Selected); Buttons.Add(button); SelectedSlot = -1; }
/// <summary> /// Constructor /// </summary> public SpellWindow(CampDialog camp) : base(camp, "") { Interface = ResourceManager.LockSharedAsset <TileSet>("Interface"); // Adds buttons ScreenButton button; button = new ScreenButton("Exit", new Rectangle(256, 244, 80, 28)); button.Selected += new EventHandler(Exit_Selected); Buttons.Add(button); Levels = new ScreenButton[6]; for (int i = 0; i < 6; i++) { Levels[i] = new ScreenButton((i + 1).ToString(), new Rectangle(22 + i * 54, 32, 40, 36)); Levels[i].Selected += new EventHandler(Level_Selected); Levels[i].ReactOnMouseOver = false; Levels[i].IsVisible = false; Buttons.Add(Levels[i]); } RectangleColor = Color.White; }
/// <summary> /// Constructor /// </summary> public GameOptionsWindow(CampDialog camp) : base(camp, "Game Options:") { ScreenButton button; button = new ScreenButton("Load Game", new Rectangle(16, 40, 320, 28)); button.Selected += new EventHandler(Load_Selected); Buttons.Add(button); button = new ScreenButton("Save Game", new Rectangle(16, 74, 320, 28)); button.Selected += new EventHandler(Save_Selected); Buttons.Add(button); button = new ScreenButton("Drop Character", new Rectangle(16, 108, 320, 28)); button.Selected += new EventHandler(DropHero_Selected); Buttons.Add(button); button = new ScreenButton("Quit Game", new Rectangle(16, 142, 320, 28)); button.Selected += new EventHandler(Quit_Selected); Buttons.Add(button); button = new ScreenButton("Exit", new Rectangle(256, 244, 80, 28)); button.Selected += new EventHandler(Exit_Selected); Buttons.Add(button); }
/// <summary> /// Constructor /// </summary> public SpellWindow(CampDialog camp) : base(camp, "") { Interface = ResourceManager.LockSharedAsset<TileSet>("Interface"); // Adds buttons ScreenButton button; button = new ScreenButton("Exit", new Rectangle(256, 244, 80, 28)); button.Selected += new EventHandler(Exit_Selected); Buttons.Add(button); Levels = new ScreenButton[6]; for (int i = 0 ; i < 6 ; i++) { Levels[i] = new ScreenButton((i + 1).ToString(), new Rectangle(22 + i * 54, 32, 40, 36)); Levels[i].Selected += new EventHandler(Level_Selected); Levels[i].ReactOnMouseOver = false; Levels[i].IsVisible = false; Buttons.Add(Levels[i]); } RectangleColor = Color.White; }
/// <summary> /// Draws the window /// </summary> /// <param name="batch">SpriteBatch to use</param> public void Draw(CampDialog camp, SpriteBatch batch) { if (batch == null) return; // Draw bevel background GUI.DrawDoubleBevel(batch, Rectangle, GameColors.Main, GameColors.Light, GameColors.Dark, false); // Draw message Point point = Rectangle.Location; point.Offset(6, 6); batch.DrawString(GUI.MenuFont, point, Color.White, Text); // Draw buttons foreach (ScreenButton button in Buttons) { Rectangle rect = ClientToScreen(Rectangle.Location, button.Rectangle); GUI.DrawDoubleBevel(batch, rect, GameColors.Main, GameColors.Light, GameColors.Dark, false); // Text point = rect.Location; point.Offset(6, 6); batch.DrawString(GUI.MenuFont, point, button.TextColor, button.Text); } }