public QuestDetailDialog() { Index = 960; Library = Libraries.Prguse; Movable = true; Sort = true; Location = new Point(Settings.ScreenWidth / 2 + 20, 60); MirImageControl TitleLabel = new MirImageControl { Index = 16, Library = Libraries.Title, Location = new Point(18, 5), Parent = this }; #region Message Area MirButton upButton = new MirButton { Index = 197, HoverIndex = 198, PressedIndex = 199, Library = Libraries.Prguse2, Parent = this, Size = new Size(16, 14), Location = new Point(293, 33), Sound = SoundList.ButtonA, Visible = true }; MirButton downButton = new MirButton { Index = 207, HoverIndex = 208, Library = Libraries.Prguse2, PressedIndex = 209, Parent = this, Size = new Size(16, 14), Location = new Point(293, 280), Sound = SoundList.ButtonA, Visible = true }; MirButton positionBar = new MirButton { Index = 205, HoverIndex = 206, PressedIndex = 206, Library = Libraries.Prguse2, Location = new Point(293, 48), Parent = this, Movable = true, Sound = SoundList.None, Visible = false }; Message = new QuestMessage(upButton, downButton, positionBar, 16, true) { Font = new Font(Settings.FontName, 9F), Parent = this, Size = new Size(280, 320), Location = new Point(10, 35), PosMinY = 46, PosMaxY = 261 }; #endregion #region Rewards Reward = new QuestRewards { Parent = this, Size = new Size(315, 130), Location = new Point(5, 307) }; #endregion #region Buttons _shareButton = new MirButton { Index = 616, HoverIndex = 617, PressedIndex = 618, Library = Libraries.Title, Parent = this, Location = new Point(40, 437), Sound = SoundList.ButtonA }; _shareButton.Click += (o, e) => { Network.Enqueue(new C.ShareQuest { QuestIndex = Quest.Id }); }; _pauseButton = new MirButton { Index = 270, HoverIndex = 271, PressedIndex = 272, Library = Libraries.Title, Parent = this, Location = new Point(120, 437), Sound = SoundList.ButtonA, Visible = false }; _cancelButton = new MirButton { Index = 203, HoverIndex = 204, PressedIndex = 205, Library = Libraries.Title, Parent = this, Location = new Point(200, 437), Sound = SoundList.ButtonA, }; _cancelButton.Click += (o, e) => { MirMessageBox messageBox = new MirMessageBox("Are you sure you want to cancel this quest?", MirMessageBoxButtons.YesNo); messageBox.YesButton.Click += (o1, a) => { Network.Enqueue(new C.AbandonQuest { QuestIndex = Quest.Id }); Hide(); }; messageBox.Show(); }; #endregion MirButton closeButton = new MirButton { Index = 360, HoverIndex = 361, PressedIndex = 362, Library = Libraries.Prguse2, Parent = this, Location = new Point(289, 3), Sound = SoundList.ButtonA, }; closeButton.Click += (o, e) => Hide(); //MirButton helpButton = new MirButton //{ // Index = 257, // HoverIndex = 258, // PressedIndex = 259, // Library = Libraries.Prguse2, // Parent = this, // Location = new Point(266, 3), // Sound = SoundList.ButtonA, //}; //helpButton.Click += (o, e) => GameScene.Scene.HelpDialog.DisplayPage("Quests"); }
public QuestListDialog() { Index = 950; Library = Libraries.Prguse; Movable = true; Sort = true; Location = new Point(GameScene.Scene.NPCDialog.Size.Width + 47, 0); MirImageControl TitleLabel = new MirImageControl { Index = 14, Library = Libraries.Title, Location = new Point(18, 5), Parent = this }; #region QuestSelection MirButton upQuestButton = new MirButton { Index = 951, HoverIndex = 952, PressedIndex = 953, Library = Libraries.Prguse, Parent = this, Location = new Point(291, 35), Sound = SoundList.ButtonA, }; upQuestButton.Click += (o, e) => { if (SelectedQuest != null) { SelectedIndex = FindSelectedIndex(); if (SelectedIndex > 0) SelectedIndex--; else StartIndex--; } RefreshInterface(); }; MirButton downQuestButton = new MirButton { Index = 957, HoverIndex = 958, PressedIndex = 959, Library = Libraries.Prguse, Parent = this, Location = new Point(291, 83), Sound = SoundList.ButtonA, }; downQuestButton.Click += (o, e) => { if (SelectedQuest != null) { SelectedIndex = FindSelectedIndex(); if (SelectedIndex < Rows.Length - 1) SelectedIndex++; else StartIndex++; } RefreshInterface(); }; #endregion #region Buttons _acceptButton = new MirButton { Index = 270, HoverIndex = 271, PressedIndex = 272, Library = Libraries.Title, Parent = this, Location = new Point(40, 437), Sound = SoundList.ButtonA, }; _acceptButton.Click += (o, e) => { if (Reward == null || SelectedQuest.Taken) return; Network.Enqueue(new C.AcceptQuest { NPCIndex = SelectedQuest.QuestInfo.NPCIndex, QuestIndex = SelectedQuest.QuestInfo.Index }); //Hide(); }; _finishButton = new MirButton { Index = 273, HoverIndex = 274, PressedIndex = 275, Library = Libraries.Title, Parent = this, Location = new Point(40, 437), Sound = SoundList.ButtonA, Visible = false }; _finishButton.Click += (o, e) => { if (Reward == null || !SelectedQuest.Completed) return; if (Reward.SelectedItemIndex < 0 && SelectedQuest.QuestInfo.RewardsSelectItem.Count > 0) { MirMessageBox messageBox = new MirMessageBox("You must select a reward item."); messageBox.Show(); return; } Network.Enqueue(new C.FinishQuest { QuestIndex = SelectedQuest.QuestInfo.Index, SelectedItemIndex = Reward.SelectedItemIndex }); //Hide(); }; MirButton leaveButton = new MirButton { Index = 276, HoverIndex = 277, PressedIndex = 278, Library = Libraries.Title, Parent = this, Location = new Point(205, 437), Sound = SoundList.ButtonA, }; leaveButton.Click += (o, e) => Hide(); #endregion #region Message Area MirButton upButton = new MirButton { Index = 197, HoverIndex = 198, PressedIndex = 199, Library = Libraries.Prguse2, Parent = this, Size = new Size(16, 14), Location = new Point(292, 136), Sound = SoundList.ButtonA, Visible = true }; MirButton downButton = new MirButton { Index = 207, HoverIndex = 208, Library = Libraries.Prguse2, PressedIndex = 209, Parent = this, Size = new Size(16, 14), Location = new Point(292, 282), Sound = SoundList.ButtonA, Visible = true }; MirButton positionBar = new MirButton { Index = 205, HoverIndex = 206, PressedIndex = 206, Library = Libraries.Prguse2, Location = new Point(292, 149), Parent = this, Movable = true, Sound = SoundList.None, Visible = false }; Message = new QuestMessage(upButton, downButton, positionBar, 10) { Font = new Font(Settings.FontName, 9F), Parent = this, Size = new Size(280, 160), Location = new Point(10, 135), PosMinY = 149, PosMaxY = 263 }; #endregion #region Rewards Reward = new QuestRewards { Parent = this, Visible = false, Size = new Size(313, 130), Location = new Point(5, 307) }; #endregion _availableQuestLabel = new MirLabel { Font = new Font(Settings.FontName, 8F), Parent = this, AutoSize = true, Location = new Point(210, 8) }; MirButton closeButton = new MirButton { Index = 360, HoverIndex = 361, PressedIndex = 362, Library = Libraries.Prguse2, Parent = this, Location = new Point(289, 3), Sound = SoundList.ButtonA, }; closeButton.Click += (o, e) => Hide(); MirButton helpButton = new MirButton { Index = 257, HoverIndex = 258, PressedIndex = 259, Library = Libraries.Prguse2, Parent = this, Location = new Point(266, 3), Sound = SoundList.ButtonA, }; helpButton.Click += (o, e) => GameScene.Scene.HelpDialog.DisplayPage("Quests"); }
protected override void Dispose(bool disposing) { base.Dispose(disposing); Quests.Clear(); SelectedQuest = null; Message = null; Reward = null; foreach (QuestRow row in Rows.Where(row => row != null && !row.IsDisposed)) { row.Dispose(); } }