public static void AddQuestContentRules(List <Rule> rules) { if (!working) { Log.Error("Tried to add quest content rules while not resolving any quest."); } else { questContentRules.AddRange(QuestGenUtility.AppendCurrentPrefix(rules)); } }
public static void AddQuestNameConstants(Dictionary <string, string> constants) { if (!working) { Log.Error("Tried to add quest name constants while not resolving any quest."); return; } foreach (KeyValuePair <string, string> item in QuestGenUtility.AppendCurrentPrefix(constants)) { if (!questNameConstants.ContainsKey(item.Key)) { questNameConstants.Add(item.Key, item.Value); } } }
public static void AddTextRequest(string localKeyword, Action <string> setter, List <Rule> extraLocalRules) { if (!working) { Log.Error("Tried to add a text request while not resolving any quest."); return; } QuestTextRequest questTextRequest = new QuestTextRequest(); questTextRequest.keyword = localKeyword; if (!slate.CurrentPrefix.NullOrEmpty()) { questTextRequest.keyword = slate.CurrentPrefix + "/" + questTextRequest.keyword; } questTextRequest.keyword = QuestGenUtility.NormalizeVarPath(questTextRequest.keyword); questTextRequest.setter = setter; if (extraLocalRules != null) { questTextRequest.extraRules = QuestGenUtility.AppendCurrentPrefix(extraLocalRules); } textRequests.Add(questTextRequest); }