From 72379b3a680b8718b25b0f6a0310cdb60c0d10a9 Mon Sep 17 00:00:00 2001 From: Chomp Date: Sat, 15 Jan 2022 15:01:24 +0000 Subject: [PATCH] More logging --- AssortUpdater/Program.cs | 41 ++++++++++++++++++++++++++++++++++++---- 1 file changed, 37 insertions(+), 4 deletions(-) diff --git a/AssortUpdater/Program.cs b/AssortUpdater/Program.cs index f33a7e0..7812dd8 100644 --- a/AssortUpdater/Program.cs +++ b/AssortUpdater/Program.cs @@ -4,6 +4,7 @@ using AssortUpdater; using AssortValidator.Common; using AssortValidator.Common.Helpers; using AssortValidator.Common.Models; +using QuestValidator.Common.Helpers; class Program { @@ -22,7 +23,7 @@ class Program { var traderId = TraderHelper.GetTraderIdByName(trader.Key); var traderQuests = questData.Where(x=>x.Value.traderId == traderId); - var traderAssortData = questAssortData.Where(x => x.TraderId == traderId); + var traderQuestAssortUnlocks = questAssortData.Where(x => x.TraderId == traderId); var liveAssortsForTrader = trader.Value; var existingAssortsForTrader = existingAssortData[trader.Key]; @@ -35,13 +36,45 @@ class Program var flatAssorts = AssortMerger.CreateMergedFlattenedAssorts(trader.Key.ToString(), flattenedLiveAssorts, flattenedExistingAssorts); + LoggingHelpers.LogInfo($"trader: {TraderHelper.GetTraderIdByName(trader.Key)}"); + ListDuplicatesInMergedAssorts(flatAssorts); Assort unflattenedAssorts = AssortFlattener.UnFlatten(flatAssorts); JsonWriter.WriteJson(unflattenedAssorts, traderId, Directory.GetCurrentDirectory(), "assort"); - // generate trader specific assort quest data, write out to file - var questAssorts = QuestHelper.CreateQuestAssortsList(traderAssortData); - //JsonWriter.WriteJson(questAssorts, traderId, Directory.GetCurrentDirectory(), "questassort"); + var questAssorts = QuestHelper.CreateQuestAssortsList(traderQuestAssortUnlocks); + LogQuestUnlocks(questAssorts, unflattenedAssorts); + JsonWriter.WriteJson(questAssorts, traderId, Directory.GetCurrentDirectory(), "questassort"); + } + } + + private static void LogQuestUnlocks(QuestHelper.QuestAssorts questAssorts, Assort unflattenedAssorts) + { + foreach (var item in questAssorts.success) + { + var assortId = item.Key; + var questId = item.Value; + + var assortData = unflattenedAssorts.items.Find(x => x._id == assortId); + + LoggingHelpers.LogToConsole($"Item {assortId} {assortData?.ItemName} is unlocked by quest {QuestNames.GetNameById(questId)}"); + } + } + + private static void ListDuplicatesInMergedAssorts(List flatAssorts) + { + foreach (var item in flatAssorts) + { + var dupes = flatAssorts.Where(x=>x.ItemId == item.ItemId && x.Level == item.Level && x.IsMoney == item.IsMoney && x.AssortId != item.AssortId); + + if (dupes.Any()) + { + LoggingHelpers.LogError($"{dupes.Count()} Dupes found for assort {item.AssortId} item: {item.ItemName} id:{item.ItemId} level: {item.Level} isMoney: {item.IsMoney}"); + foreach (var dupeItem in dupes) + { + LoggingHelpers.LogError($"Dupe assort{dupeItem.AssortId}: {dupeItem.ItemId} - {dupeItem.ItemName} id:{item.ItemId} level: {dupeItem.Level} isMoney:{dupeItem.IsMoney}"); + } + } } }