public override void Execute(IrcEventArgs args) { List<QuestionSet> questionSets = new List<QuestionSet>(); var questionSetNodes = TriviaPlugin.PluginSettings.SelectNodes(QuestionSetXPath); if(questionSetNodes == null) throw new Exception("Could not find any question sets in Settings config"); foreach (XmlNode node in questionSetNodes) { string filePath = TriviaPlugin.Bot.FilePath + node.InnerText; if (!string.IsNullOrEmpty(node.InnerText) && File.Exists(filePath)) { string questonSetName; if (node.Attributes[QuestionSetNameAttributeName] != null && !string.IsNullOrEmpty(node.Attributes[QuestionSetNameAttributeName].Value)) { questonSetName = node.Attributes[QuestionSetNameAttributeName].Value; } else { questonSetName = node.InnerText; } QuestionSet set = new QuestionSet(filePath) { QuestionSetName = questonSetName }; questionSets.Add(set); } } TriviaPlugin.QuestionSets = questionSets; }
public TriviaGame(TriviaPlugin plugin, string channel, List<QuestionSet> questionSets) { UsersAttempted = new List<string>(); CurrentQuestionSet = new QuestionSet(); Channel = channel; Plugin = plugin; QuestionSet = questionSets; }