public override void OnTalk(PlayerMobile player, bool contextMenu) { if (player.Quest is TimeForLegendsQuest && ((TimeForLegendsQuest)player.Quest).Objectives.Count == 0) { player.SendGump(new ChooseMasteryGump(player, (TimeForLegendsQuest)player.Quest)); } else if (player.Quest == null && CanRecieveQuest(player)) { Direction = GetDirectionTo(player); TimeForLegendsQuest quest = new TimeForLegendsQuest(player); quest.SendOffer(); } }
public override void RenderProgress(BaseQuestGump gump) { if (System is TimeForLegendsQuest) { TimeForLegendsQuest q = System as TimeForLegendsQuest; if (q.ToSlay == null) { gump.AddHtmlObject(70, 260, 270, 100, this.Completed ? 1049077 : 1049078, BaseQuestGump.Blue, false, false); } else { int index = Array.IndexOf(TimeForLegendsQuest.Targets, q.ToSlay); gump.AddHtmlObject(70, 260, 150, 100, index <= 13 ? 1156324 + index : 1156354 + (index - 14), BaseQuestGump.Blue, false, false); gump.AddHtmlObject(230, 260, 10, 100, ":", BaseQuestGump.Blue, false, false); gump.AddHtmlObject(235, 260, 150, 100, this.Completed ? 1046033 : 1046034, BaseQuestGump.Blue, false, false); } } }
public ChooseMasteryGump(PlayerMobile user, TimeForLegendsQuest quest) : base(50, 50) { Quest = quest; User = user; AddImage(0, 0, 8000); AddImage(20, 37, 8001); AddImage(20, 107, 8002); AddImage(20, 177, 8001); AddImage(20, 247, 8002); AddImage(20, 317, 8001); AddImage(20, 387, 8002); AddImage(20, 457, 8003); AddHtmlLocalized(125, 40, 345, 16, 1156340, false, false); // Choose Your Path int y = 60; foreach (SkillName skName in MasteryInfo.Skills) { Skill sk = User.Skills[skName]; if (sk == null || skName == SkillName.Discordance || skName == SkillName.Provocation || skName == SkillName.Peacemaking) { continue; } if (sk.IsMastery && sk.VolumeLearned == 0) { AddButton(30, y, 4005, 4007, (int)skName + 1, GumpButtonType.Reply, 0); AddHtmlLocalized(75, y, 200, 16, MasteryInfo.GetLocalization(skName), 0x000F, false, false); y += 20; } } }