public static QuestSystemAdvancedGump DisplayTo(CommandEventArgs args) { Mobile user = args.Mobile; if (user == null || user.Deleted || !user.Player || user.NetState == null) { return(null); } if (args.Arguments[0] != null) { Quest = QuestIO.GetQuestById(int.Parse(args.Arguments[0])); if (Quest != null) { user.CloseGump <QuestSystemAdvancedGump>(); var gump = new QuestSystemAdvancedGump(user); user.SendGump(gump); return(gump); } } return(null); }
private static void ParseQuestList(Mobile from, List <DynamicJson> quests, JsonSerializerOptions options) { var watch = Stopwatch.StartNew(); var failures = new List <string>(); for (int i = 0; i < quests.Count; i++) { var json = quests[i]; json.GetProperty("ID", options, out int id); json.GetProperty("Title", options, out string title); json.GetProperty("Description", options, out string description); json.GetProperty("Rewards", options, out List <RewardDefinition> rewards); json.GetProperty("XP", options, out int xp); json.GetProperty("IsQuestChainElement", options, out bool isquestchainelement); json.GetProperty("ParentQuestID", options, out int parentquestid); json.GetProperty("QuestTaskList", options, out List <QuestTaskDefinition> questtasklist); var questdefinition = new QuestDefinition() { ID = id, Title = title, Description = description, Rewards = rewards, XP = xp, IsQuestChainElement = isquestchainelement, ParentQuestID = parentquestid, QuestTaskList = questtasklist }; Quests.Add(questdefinition); } }