diff --git a/GenerateQuestFile/Examples/quests.json b/GenerateQuestFile/Examples/quests.json index bc639b6..ce1245b 100644 --- a/GenerateQuestFile/Examples/quests.json +++ b/GenerateQuestFile/Examples/quests.json @@ -1869,7 +1869,8 @@ "index": 0, "parentId": "", "status": [ - 2 + 2, + 4 ], "target": "59675ea386f77414b32bded2", "visibilityConditions": [] @@ -2780,7 +2781,7 @@ "availableAfter": 0, "dynamicLocale": false, "id": "51d33b2d4fad9e61441772c0", - "index": 0, + "index": 1, "parentId": "", "status": [ 4 @@ -8625,14 +8626,16 @@ { "_parent": "Quest", "_props": { + "availableAfter": 0, "dynamicLocale": false, - "id": "", + "id": "51d33b2d4fad9e61441772c0", "index": 0, "parentId": "", "status": [ 4 ], - "target": "597a160786f77477531d39d2" + "target": "597a160786f77477531d39d2", + "visibilityConditions": [] }, "dynamicLocale": false } @@ -16032,7 +16035,7 @@ "type": "Merchant" }, "5a5642ce86f77445c63c3419": { - "QuestName": "Hippocratic Vow", + "QuestName": "Hippocratic Oath", "_id": "5a5642ce86f77445c63c3419", "canShowNotificationsInGame": false, "changeQuestMessageText": "5a5642ce86f77445c63c3419 changeQuestMessageText", @@ -29041,14 +29044,16 @@ { "_parent": "Quest", "_props": { + "availableAfter": 0, "dynamicLocale": false, - "id": "", + "id": "51d33b2d4fad9e61441772c0", "index": 0, "parentId": "", "status": [ 4 ], - "target": "5d25aed386f77442734d25d2" + "target": "5d25aed386f77442734d25d2", + "visibilityConditions": [] }, "dynamicLocale": false } @@ -32336,7 +32341,7 @@ "availableAfter": 0, "dynamicLocale": false, "id": "51d33b2d4fad9e61441772c0", - "index": 0, + "index": 1, "parentId": "", "status": [ 4 @@ -32781,7 +32786,7 @@ "availableAfter": 0, "dynamicLocale": false, "id": "51d33b2d4fad9e61441772c0", - "index": 0, + "index": 1, "parentId": "", "status": [ 4 @@ -33530,7 +33535,7 @@ "availableAfter": 0, "dynamicLocale": false, "id": "51d33b2d4fad9e61441772c0", - "index": 0, + "index": 1, "parentId": "", "status": [ 4 @@ -34516,7 +34521,7 @@ "availableAfter": 0, "dynamicLocale": false, "id": "51d33b2d4fad9e61441772c0", - "index": 0, + "index": 1, "parentId": "", "status": [ 4 @@ -34840,7 +34845,7 @@ "availableAfter": 0, "dynamicLocale": false, "id": "51d33b2d4fad9e61441772c0", - "index": 0, + "index": 1, "parentId": "", "status": [ 4 @@ -35183,7 +35188,7 @@ "availableAfter": 0, "dynamicLocale": false, "id": "51d33b2d4fad9e61441772c0", - "index": 0, + "index": 1, "parentId": "", "status": [ 4 @@ -41008,7 +41013,7 @@ "availableAfter": 0, "dynamicLocale": false, "id": "51d33b2d4fad9e61441772c0", - "index": 0, + "index": 2, "parentId": "", "status": [ 4 @@ -41285,7 +41290,7 @@ "availableAfter": 0, "dynamicLocale": false, "id": "51d33b2d4fad9e61441772c0", - "index": 0, + "index": 2, "parentId": "", "status": [ 4 @@ -41915,22 +41920,6 @@ "visibilityConditions": [] }, "dynamicLocale": false - }, - { - "_parent": "Quest", - "_props": { - "availableAfter": 0, - "dynamicLocale": false, - "id": "51d33b2d4fad9e61441772c0", - "index": 0, - "parentId": "", - "status": [ - 4 - ], - "target": "60c0c018f7afb4354815096a", - "visibilityConditions": [] - }, - "dynamicLocale": false } ], "Fail": [] @@ -42098,7 +42087,7 @@ "availableAfter": 0, "dynamicLocale": false, "id": "51d33b2d4fad9e61441772c0", - "index": 1, + "index": 2, "parentId": "", "status": [ 4 @@ -43811,7 +43800,7 @@ "availableAfter": 0, "dynamicLocale": false, "id": "51d33b2d4fad9e61441772c0", - "index": 0, + "index": 1, "parentId": "", "status": [ 4 @@ -47772,7 +47761,7 @@ "availableAfter": 0, "dynamicLocale": false, "id": "51d33b2d4fad9e61441772c0", - "index": 1, + "index": 2, "parentId": "", "status": [ 4 @@ -49641,7 +49630,7 @@ "availableAfter": 0, "dynamicLocale": false, "id": "51d33b2d4fad9e61441772c0", - "index": 0, + "index": 1, "parentId": "", "status": [ 4 @@ -50060,14 +50049,16 @@ { "_parent": "Quest", "_props": { + "availableAfter": 0, "dynamicLocale": false, - "id": "", + "id": "51d33b2d4fad9e61441772c0", "index": 2, "parentId": "", "status": [ 4 ], - "target": "59675d6c86f7740a842fc482" + "target": "59675d6c86f7740a842fc482", + "visibilityConditions": [] }, "dynamicLocale": false } @@ -52103,7 +52094,7 @@ "availableAfter": 0, "dynamicLocale": false, "id": "51d33b2d4fad9e61441772c0", - "index": 0, + "index": 2, "parentId": "", "status": [ 4 diff --git a/GenerateQuestFile/Program.cs b/GenerateQuestFile/Program.cs index 003f9af..1a7461c 100644 --- a/GenerateQuestFile/Program.cs +++ b/GenerateQuestFile/Program.cs @@ -1,6 +1,7 @@ using AssortGenerator.Common.Helpers; using QuestValidator.Common; using QuestValidator.Common.Helpers; +using QuestValidator.Common.Models; using QuestValidator.Helpers; using QuestValidator.Models; using System; @@ -9,6 +10,7 @@ using System.IO; using System.Linq; using System.Text; using System.Text.RegularExpressions; +using Quest = QuestValidator.Models.Quest; namespace GenerateQuestFile { @@ -115,6 +117,7 @@ namespace GenerateQuestFile foreach (var requirement in questRequirements) { + // Does quest have requirement if (!quest.Value.conditions.AvailableForStart.Any(x => x._parent == "Quest" && x._props.target.ToString() == requirement.Quest.Id)) { @@ -124,11 +127,13 @@ namespace GenerateQuestFile _parent = "Quest", _props = new AvailableForProps { - id = "", + id = Sha256(new DateTime().ToString()), index = quest.Value.conditions.AvailableForStart.Count, parentId = "", - status = new[] { requirement.QuestStatus}, - target = requirement.Quest.Id + status = GetQuestStatus(requirement.QuestStatus), + target = requirement.Quest.Id, + visibilityConditions = new List(), + availableAfter = 0 } } ); @@ -146,6 +151,21 @@ namespace GenerateQuestFile JsonWriter.WriteJson(questsToOutputToFile, "output", Directory.GetCurrentDirectory(), "quests"); } + private static int[] GetQuestStatus(QuestStatus status) + { + switch (status) + { + case QuestStatus.Started: + case QuestStatus.Success: + case QuestStatus.Fail: + return new int[] { (int)status }; + case QuestStatus.StartedSuccess: + return new int[] { (int)QuestStatus.Started, (int)QuestStatus.Success }; + } + + throw new Exception($"Unable to process quest status {status}"); + } + /// /// Latest version of eft has changed the quest json structure, this method adds missing fields /// Mega hack as we dont have a full dump as of 30/06/2022 @@ -203,11 +223,6 @@ namespace GenerateQuestFile // Iterate over quest requirements in existing quest file foreach (var questRequirementToAdd in originalQuest.conditions.AvailableForStart.ToList()) { - if (questToUpdate.Key == "60896bca6ee58f38c417d4f2") - { - var x = 2; - } - //Exists already, skip if (questToUpdate.Value.conditions.AvailableForStart.Any( x => x._parent == questRequirementToAdd._parent @@ -220,19 +235,35 @@ namespace GenerateQuestFile if (questRequirementToAdd._parent == "Quest") { questRequirementToAdd._props.id = Sha256(new DateTime().ToString()); - questRequirementToAdd._props.availableAfter = 0; - questRequirementToAdd._props.visibilityConditions = new List(); + + if (!questRequirementToAdd._props.availableAfter.HasValue) + { + questRequirementToAdd._props.availableAfter = 0; + } + + if (questRequirementToAdd._props.visibilityConditions == null || !questRequirementToAdd._props.visibilityConditions.Any()) + { + questRequirementToAdd._props.visibilityConditions = new List(); + } + + questRequirementToAdd._props.index = questToUpdate.Value.conditions.AvailableForStart.Count; + } questToUpdate.Value.conditions.AvailableForStart.Add(questRequirementToAdd); } } - static string Sha256(string randomString) + /// + /// Get a bsg happy guid, must be 24 chars long + /// + /// + /// + static string Sha256(string randomSalt) { var crypt = new System.Security.Cryptography.SHA256Managed(); var hash = new System.Text.StringBuilder(); - byte[] crypto = crypt.ComputeHash(Encoding.UTF8.GetBytes(randomString)); + byte[] crypto = crypt.ComputeHash(Encoding.UTF8.GetBytes(randomSalt)); foreach (byte theByte in crypto) { hash.Append(theByte.ToString("x2")); diff --git a/QuestValidator.Common/Helpers/QuestNames.cs b/QuestValidator.Common/Helpers/QuestNames.cs index 17bf592..e66243c 100644 --- a/QuestValidator.Common/Helpers/QuestNames.cs +++ b/QuestValidator.Common/Helpers/QuestNames.cs @@ -74,7 +74,7 @@ namespace QuestValidator.Common.Helpers { Quest.WetJobP6, "5a27bc8586f7741b543d8ea4"}, { Quest.FriendFromTheWestP1, "5a27c99a86f7747d2c6bdd8e"}, { Quest.FriendFromTheWestP2, "5a27d2af86f7744e1115b323"}, - { Quest.HippocraticVow, "5a5642ce86f77445c63c3419"}, + { Quest.HippocraticOath, "5a5642ce86f77445c63c3419"}, { Quest.HealthCarePrivacyP1, "5a68661a86f774500f48afb0"}, { Quest.HealthCarePrivacyP2, "5a68663e86f774501078f78a"}, { Quest.HealthCarePrivacyP3, "5a68665c86f774255929b4c7"}, @@ -236,6 +236,7 @@ namespace QuestValidator.Common.Helpers { Quest.CapturingOutposts, "60e71b9bbd90872cb85440f3"}, { Quest.Escort, "60e71b62a0beca400d69efc4"}, { Quest.Calibration, "60e71d23c1bfa3050473b8e6"}, + { Quest.TheCourier, "60e71d6d7fcf9c556f325055" }, { Quest.EasyJobPart1, "6179ac7511973d018217d0b9" }, { Quest.EasyJobPart2, "6179acbdc760af5ad2053585" }, { Quest.EnergyCrisis, "6179b3a12153c15e937d52bc" }, @@ -339,7 +340,7 @@ namespace QuestValidator.Common.Helpers { "5a27bc8586f7741b543d8ea4", "Wet Job Part 6"}, { "5a27c99a86f7747d2c6bdd8e", "Friend from the West Part 1"}, { "5a27d2af86f7744e1115b323", "Friend from the West Part 2"}, - { "5a5642ce86f77445c63c3419", "Hippocratic Vow"}, + { "5a5642ce86f77445c63c3419", "Hippocratic Oath"}, { "5a68661a86f774500f48afb0", "Health Care Privacy Part 1"}, { "5a68663e86f774501078f78a", "Health Care Privacy Part 2"}, { "5a68665c86f774255929b4c7", "Health Care Privacy Part 3"}, @@ -501,6 +502,7 @@ namespace QuestValidator.Common.Helpers { "60e71b9bbd90872cb85440f3", "Capturing Outposts"}, { "60e71b62a0beca400d69efc4", "Escort"}, { "60e71d23c1bfa3050473b8e6", "Calibration"}, + { "60e71d6d7fcf9c556f325055", "The Courier"}, { "6179ac7511973d018217d0b9", "Easy Job Part 1" }, { "6179acbdc760af5ad2053585", "Easy Job Part 2" }, { "6179b3a12153c15e937d52bc", "Energy Crisis" }, diff --git a/QuestValidator.Common/Helpers/QuestRequirements.cs b/QuestValidator.Common/Helpers/QuestRequirements.cs index 9548cc3..af2e242 100644 --- a/QuestValidator.Common/Helpers/QuestRequirements.cs +++ b/QuestValidator.Common/Helpers/QuestRequirements.cs @@ -28,126 +28,252 @@ namespace QuestValidator.Common.Helpers private static readonly Dictionary questWithPreceedingQuest2 = new Dictionary { { Quest.Debut, GetQuestData(Quest.Debut)}, - { Quest.Checking, GetQuestData(Quest.Checking).AddPrerequisiteQuest(Quest.Debut, QuestStatus.Success)}, - { Quest.ShootoutPicnic, GetQuestData(Quest.ShootoutPicnic).AddPrerequisiteQuest(Quest.Checking, QuestStatus.Success)}, - { Quest.DeliveryFromThePast, GetQuestData(Quest.DeliveryFromThePast).AddPrerequisiteQuest(Quest.Checking, QuestStatus.Success)}, - { Quest.BadRepEvidence , GetQuestData(Quest.BadRepEvidence).AddPrerequisiteQuest(Quest.BPDepot, QuestStatus.Success)}, - { Quest.IceCreamCones , GetQuestData(Quest.IceCreamCones).AddPrerequisiteQuest(Quest.BadRepEvidence, QuestStatus.Success)}, - { Quest.PostmanPatP1 , GetQuestData(Quest.PostmanPatP1).AddPrerequisiteQuest(Quest.IceCreamCones, QuestStatus.Success)}, - { Quest.PostmanPatP2 , GetQuestData(Quest.PostmanPatP2).AddPrerequisiteQuest(Quest.PostmanPatP1, QuestStatus.Success)}, - { Quest.ShakingUpTeller , GetQuestData(Quest.ShakingUpTeller).AddPrerequisiteQuest(Quest.IceCreamCones, QuestStatus.Success)}, - { Quest.Shortage , GetQuestData(Quest.Shortage)}, - { Quest.SanitaryStandardsP1 , GetQuestData(Quest.SanitaryStandardsP1).AddPrerequisiteQuest(Quest.Shortage, QuestStatus.Success)}, - { Quest.OperationAquarius , GetQuestData(Quest.OperationAquarius).AddPrerequisiteQuest(Quest.Shortage, QuestStatus.Success)}, - { Quest.OperationAquariusP2 , GetQuestData(Quest.OperationAquariusP2).AddPrerequisiteQuest(Quest.OperationAquarius, QuestStatus.Success)}, - { Quest.Painkiller , GetQuestData(Quest.Painkiller).AddPrerequisiteQuest(Quest.SanitaryStandardsP2, QuestStatus.Success)}, - { Quest.Pharmacist , GetQuestData(Quest.Pharmacist).AddPrerequisiteQuest(Quest.Painkiller, QuestStatus.Success)}, - { Quest.SupplyPlans , GetQuestData(Quest.SupplyPlans).AddPrerequisiteQuest(Quest.Pharmacist, QuestStatus.Success)}, - { Quest.KindOfSabotage , GetQuestData(Quest.KindOfSabotage).AddPrerequisiteQuest(Quest.Pharmacist, QuestStatus.Success)}, - { Quest.GeneralWares , GetQuestData(Quest.GeneralWares).AddPrerequisiteQuest(Quest.Pharmacist, QuestStatus.Success)}, - { Quest.SanitaryStandardsP2 , GetQuestData(Quest.SanitaryStandardsP2).AddPrerequisiteQuest(Quest.SanitaryStandardsP1, QuestStatus.Success)}, - { Quest.CarRepair , GetQuestData(Quest.CarRepair).AddPrerequisiteQuest(Quest.Pharmacist, QuestStatus.Success)}, - { Quest.Supplier , GetQuestData(Quest.Supplier)}, - { Quest.TheExtortionist , GetQuestData(Quest.TheExtortionist).AddPrerequisiteQuest(Quest.Supplier, QuestStatus.Success)}, - { Quest.Stirrup, GetQuestData(Quest.Stirrup).AddPrerequisiteQuest(Quest.TheExtortionist, QuestStatus.Success) }, - { Quest.WhatsOnTheFlashDrive, GetQuestData(Quest.WhatsOnTheFlashDrive).AddPrerequisiteQuest(Quest.TheExtortionist, QuestStatus.Success) }, - { Quest.GoldenSwag, GetQuestData(Quest.GoldenSwag).AddPrerequisiteQuest(Quest.WhatsOnTheFlashDrive, QuestStatus.Success) }, - { Quest.PolikhimHobo, GetQuestData(Quest.PolikhimHobo).AddPrerequisiteQuest(Quest.ChemicalP1, QuestStatus.Started) }, - { Quest.ChemicalP1, GetQuestData(Quest.ChemicalP1).AddPrerequisiteQuest(Quest.GoldenSwag, QuestStatus.Success) }, - { Quest.ChemicalP2, GetQuestData(Quest.ChemicalP2).AddPrerequisiteQuest(Quest.ChemicalP1, QuestStatus.Success) }, - { Quest.ChemicalP3, GetQuestData(Quest.ChemicalP3).AddPrerequisiteQuest(Quest.ChemicalP2, QuestStatus.Success) }, - { Quest.ChemicalP4, GetQuestData(Quest.ChemicalP4).AddPrerequisiteQuest(Quest.ChemicalP3, QuestStatus.Success) }, - { Quest.OutOfCuriosity, GetQuestData(Quest.OutOfCuriosity).AddPrerequisiteQuest(Quest.ChemicalP3, QuestStatus.Success) }, - { Quest.BigCustomer, GetQuestData(Quest.BigCustomer).AddPrerequisiteQuest(Quest.ChemicalP3, QuestStatus.Success) }, - { Quest.BPDepot, GetQuestData(Quest.BPDepot).AddPrerequisiteQuest(Quest.DeliveryFromThePast, QuestStatus.Success) }, - { Quest.ThePunisherP1, GetQuestData(Quest.ThePunisherP1).AddPrerequisiteQuest(Quest.ShakingUpTeller, QuestStatus.Success) }, - { Quest.ThePunisherP2, GetQuestData(Quest.ThePunisherP2).AddPrerequisiteQuest(Quest.ThePunisherP1, QuestStatus.Success) }, - { Quest.ThePunisherP3, GetQuestData(Quest.ThePunisherP3).AddPrerequisiteQuest(Quest.ThePunisherP2, QuestStatus.Success) }, - { Quest.TrustRegain, GetQuestData(Quest.TrustRegain).AddPrerequisiteQuest(Quest.ChemicalP4, QuestStatus.Success) }, - { Quest.LoyaltyBuyout, GetQuestData(Quest.LoyaltyBuyout).AddPrerequisiteQuest(Quest.OutOfCuriosity, QuestStatus.Success) }, - { Quest.NoOffence, GetQuestData(Quest.NoOffence).AddPrerequisiteQuest(Quest.BigCustomer, QuestStatus.Fail) }, - { Quest.ThePunisherP4, GetQuestData(Quest.ThePunisherP4).AddPrerequisiteQuest(Quest.ThePunisherP3, QuestStatus.Success) }, - { Quest.ThePunisherP5, GetQuestData(Quest.ThePunisherP5).AddPrerequisiteQuest(Quest.ThePunisherP4, QuestStatus.Success) }, - { Quest.ThePunisherP6, GetQuestData(Quest.ThePunisherP6).AddPrerequisiteQuest(Quest.ThePunisherP5, QuestStatus.Success) }, - //{ Quest., GetQuestData(Quest.).AddPrerequisiteQuest(Quest., QuestStatus.Success) }, // unknown quest 59f9da6786f774714230d751 - { Quest.SpaTourP1, GetQuestData(Quest.SpaTourP1).AddPrerequisiteQuest(Quest.HumanitarianSupplies, QuestStatus.Success) }, - { Quest.SpaTourP2, GetQuestData(Quest.SpaTourP2).AddPrerequisiteQuest(Quest.SpaTourP1, QuestStatus.Success) }, - { Quest.SpaTourP3, GetQuestData(Quest.SpaTourP3).AddPrerequisiteQuest(Quest.SpaTourP2, QuestStatus.Success) }, - { Quest.SpaTourP4, GetQuestData(Quest.SpaTourP4).AddPrerequisiteQuest(Quest.SpaTourP3, QuestStatus.Success) }, - { Quest.SpaTourP5, GetQuestData(Quest.SpaTourP5).AddPrerequisiteQuest(Quest.SpaTourP4, QuestStatus.Success) }, - { Quest.FishingGear, GetQuestData(Quest.FishingGear).AddPrerequisiteQuest(Quest.FriendFromTheWestP2, QuestStatus.Success) }, - { Quest.TigrSafari, GetQuestData(Quest.TigrSafari).AddPrerequisiteQuest(Quest.FishingGear, QuestStatus.Success) }, - { Quest.ScrapMetal, GetQuestData(Quest.ScrapMetal).AddPrerequisiteQuest(Quest.TigrSafari, QuestStatus.Success) }, - { Quest.EagleEye, GetQuestData(Quest.EagleEye).AddPrerequisiteQuest(Quest.ScrapMetal, QuestStatus.Success) }, - { Quest.HumanitarianSupplies, GetQuestData(Quest.HumanitarianSupplies).AddPrerequisiteQuest(Quest.EagleEye, QuestStatus.Success) }, - { Quest.TheCultP1, GetQuestData(Quest.TheCultP1).AddPrerequisiteQuest(Quest.HumanitarianSupplies, QuestStatus.Success) }, - { Quest.TheCultP2, GetQuestData(Quest.TheCultP2).AddPrerequisiteQuest(Quest.TheCultP1, QuestStatus.Success) }, - { Quest.SpaTourP6, GetQuestData(Quest.SpaTourP6).AddPrerequisiteQuest(Quest.SpaTourP5, QuestStatus.Success) }, - { Quest.SpaTourP7, GetQuestData(Quest.SpaTourP7).AddPrerequisiteQuest(Quest.SpaTourP6, QuestStatus.Success) }, - { Quest.CargoXP1, GetQuestData(Quest.CargoXP1).AddPrerequisiteQuest(Quest.SpaTourP7, QuestStatus.Success) }, - { Quest.CargoXP2, GetQuestData(Quest.CargoXP2).AddPrerequisiteQuest(Quest.CargoXP1, QuestStatus.Success) }, - { Quest.CargoXP3, GetQuestData(Quest.CargoXP3).AddPrerequisiteQuest(Quest.CargoXP2, QuestStatus.Success) }, - { Quest.CargoXP4, GetQuestData(Quest.CargoXP4).AddPrerequisiteQuest(Quest.CargoXP3, QuestStatus.Success) }, - { Quest.WetJobP1, GetQuestData(Quest.WetJobP1).AddPrerequisiteQuest(Quest.SpaTourP7, QuestStatus.Success) }, - { Quest.WetJobP2, GetQuestData(Quest.WetJobP2).AddPrerequisiteQuest(Quest.WetJobP1, QuestStatus.Success) }, - { Quest.WetJobP3, GetQuestData(Quest.WetJobP3).AddPrerequisiteQuest(Quest.WetJobP2, QuestStatus.Success) }, - { Quest.WetJobP4, GetQuestData(Quest.WetJobP4).AddPrerequisiteQuest(Quest.WetJobP3, QuestStatus.Success) }, - { Quest.WetJobP5, GetQuestData(Quest.WetJobP5).AddPrerequisiteQuest(Quest.WetJobP4, QuestStatus.Success) }, - { Quest.WetJobP6, GetQuestData(Quest.WetJobP6).AddPrerequisiteQuest(Quest.WetJobP5, QuestStatus.Success) }, - { Quest.FriendFromTheWestP1, GetQuestData(Quest.FriendFromTheWestP1).AddPrerequisiteQuest(Quest.GoldenSwag, QuestStatus.Success) }, - { Quest.FriendFromTheWestP2, GetQuestData(Quest.FriendFromTheWestP2).AddPrerequisiteQuest(Quest.FriendFromTheWestP1, QuestStatus.Success) }, - { Quest.HealthCarePrivacyP1, GetQuestData(Quest.HealthCarePrivacyP1).AddPrerequisiteQuest(Quest.Pharmacist, QuestStatus.Success) }, - { Quest.HealthCarePrivacyP2, GetQuestData(Quest.HealthCarePrivacyP2).AddPrerequisiteQuest(Quest.HealthCarePrivacyP1, QuestStatus.Success) }, - { Quest.HealthCarePrivacyP3, GetQuestData(Quest.HealthCarePrivacyP3).AddPrerequisiteQuest(Quest.HealthCarePrivacyP2, QuestStatus.Success) }, - { Quest.HealthCarePrivacyP4, GetQuestData(Quest.HealthCarePrivacyP4).AddPrerequisiteQuest(Quest.HealthCarePrivacyP3, QuestStatus.Success) }, - { Quest.HealthCarePrivacyP5, GetQuestData(Quest.HealthCarePrivacyP5).AddPrerequisiteQuest(Quest.HealthCarePrivacyP4, QuestStatus.Success) }, + { Quest.Checking, GetQuestData(Quest.Checking) + .AddPrerequisiteQuest(Quest.Debut, QuestStatus.Success)}, + { Quest.ShootoutPicnic, GetQuestData(Quest.ShootoutPicnic) + .AddPrerequisiteQuest(Quest.Checking, QuestStatus.Success)}, + { Quest.DeliveryFromThePast, GetQuestData(Quest.DeliveryFromThePast) + .AddPrerequisiteQuest(Quest.Checking, QuestStatus.Success)}, + { Quest.BadRepEvidence, GetQuestData(Quest.BadRepEvidence) + .AddPrerequisiteQuest(Quest.BPDepot, QuestStatus.Success)}, + { Quest.IceCreamCones, GetQuestData(Quest.IceCreamCones) + .AddPrerequisiteQuest(Quest.BadRepEvidence, QuestStatus.Success)}, + { Quest.PostmanPatP1, GetQuestData(Quest.PostmanPatP1) + .AddPrerequisiteQuest(Quest.IceCreamCones, QuestStatus.Success)}, + { Quest.PostmanPatP2, GetQuestData(Quest.PostmanPatP2) + .AddPrerequisiteQuest(Quest.PostmanPatP1, QuestStatus.StartedSuccess)}, + { Quest.ShakingUpTeller, GetQuestData(Quest.ShakingUpTeller) + .AddPrerequisiteQuest(Quest.IceCreamCones, QuestStatus.Success)}, + { Quest.Shortage, GetQuestData(Quest.Shortage)}, + { Quest.SanitaryStandardsP1, GetQuestData(Quest.SanitaryStandardsP1) + .AddPrerequisiteQuest(Quest.Shortage, QuestStatus.Success)}, + { Quest.OperationAquarius, GetQuestData(Quest.OperationAquarius) + .AddPrerequisiteQuest(Quest.Shortage, QuestStatus.Success)}, + { Quest.OperationAquariusP2, GetQuestData(Quest.OperationAquariusP2) + .AddPrerequisiteQuest(Quest.OperationAquarius, QuestStatus.Success)}, + { Quest.Painkiller, GetQuestData(Quest.Painkiller) + .AddPrerequisiteQuest(Quest.SanitaryStandardsP2, QuestStatus.Success)}, + { Quest.Pharmacist, GetQuestData(Quest.Pharmacist) + .AddPrerequisiteQuest(Quest.Painkiller, QuestStatus.Success)}, + { Quest.SupplyPlans, GetQuestData(Quest.SupplyPlans) + .AddPrerequisiteQuest(Quest.Pharmacist, QuestStatus.Success)}, + { Quest.KindOfSabotage, GetQuestData(Quest.KindOfSabotage) + .AddPrerequisiteQuest(Quest.SupplyPlans, QuestStatus.Started) + .AddPrerequisiteQuest(Quest.Pharmacist, QuestStatus.Success)}, + { Quest.GeneralWares, GetQuestData(Quest.GeneralWares) + .AddPrerequisiteQuest(Quest.Pharmacist, QuestStatus.Success)}, + { Quest.SanitaryStandardsP2, GetQuestData(Quest.SanitaryStandardsP2) + .AddPrerequisiteQuest(Quest.SanitaryStandardsP1, QuestStatus.Success)}, + { Quest.CarRepair, GetQuestData(Quest.CarRepair) + .AddPrerequisiteQuest(Quest.Pharmacist, QuestStatus.Success)}, + { Quest.Supplier, GetQuestData(Quest.Supplier)}, + { Quest.TheExtortionist, GetQuestData(Quest.TheExtortionist) + .AddPrerequisiteQuest(Quest.Supplier, QuestStatus.Success)}, + { Quest.Stirrup, GetQuestData(Quest.Stirrup) + .AddPrerequisiteQuest(Quest.TheExtortionist, QuestStatus.Success) }, + { Quest.WhatsOnTheFlashDrive, GetQuestData(Quest.WhatsOnTheFlashDrive) + .AddPrerequisiteQuest(Quest.TheExtortionist, QuestStatus.Success) }, + { Quest.GoldenSwag, GetQuestData(Quest.GoldenSwag) + .AddPrerequisiteQuest(Quest.WhatsOnTheFlashDrive, QuestStatus.Success) }, + { Quest.PolikhimHobo, GetQuestData(Quest.PolikhimHobo) + .AddPrerequisiteQuest(Quest.ChemicalP1, QuestStatus.Started) }, + { Quest.ChemicalP1, GetQuestData(Quest.ChemicalP1) + .AddPrerequisiteQuest(Quest.GoldenSwag, QuestStatus.Success) }, + { Quest.ChemicalP2, GetQuestData(Quest.ChemicalP2) + .AddPrerequisiteQuest(Quest.ChemicalP1, QuestStatus.Success) }, + { Quest.ChemicalP3, GetQuestData(Quest.ChemicalP3) + .AddPrerequisiteQuest(Quest.ChemicalP2, QuestStatus.Success) }, + { Quest.ChemicalP4, GetQuestData(Quest.ChemicalP4) + .AddPrerequisiteQuest(Quest.ChemicalP3, QuestStatus.Success) }, + { Quest.OutOfCuriosity, GetQuestData(Quest.OutOfCuriosity) + .AddPrerequisiteQuest(Quest.ChemicalP3, QuestStatus.Success) }, + { Quest.BigCustomer, GetQuestData(Quest.BigCustomer) + .AddPrerequisiteQuest(Quest.ChemicalP4, QuestStatus.Started) + .AddPrerequisiteQuest(Quest.ChemicalP3, QuestStatus.Success) }, + { Quest.BPDepot, GetQuestData(Quest.BPDepot) + .AddPrerequisiteQuest(Quest.DeliveryFromThePast, QuestStatus.Success) }, + { Quest.ThePunisherP1, GetQuestData(Quest.ThePunisherP1) + .AddPrerequisiteQuest(Quest.ShakingUpTeller, QuestStatus.Success) }, + { Quest.ThePunisherP2, GetQuestData(Quest.ThePunisherP2) + .AddPrerequisiteQuest(Quest.ThePunisherP1, QuestStatus.Success) }, + { Quest.ThePunisherP3, GetQuestData(Quest.ThePunisherP3) + .AddPrerequisiteQuest(Quest.ThePunisherP2, QuestStatus.Success) }, + { Quest.ThePunisherP4, GetQuestData(Quest.ThePunisherP4) + .AddPrerequisiteQuest(Quest.ThePunisherP3, QuestStatus.Success) }, + { Quest.ThePunisherP5, GetQuestData(Quest.ThePunisherP5) + .AddPrerequisiteQuest(Quest.ThePunisherP4, QuestStatus.Success) }, + { Quest.ThePunisherP6, GetQuestData(Quest.ThePunisherP6) + .AddPrerequisiteQuest(Quest.ThePunisherP5, QuestStatus.Success) }, + { Quest.OurOwnLand, GetQuestData(Quest.OurOwnLand) + .AddPrerequisiteQuest(Quest.ThePunisherP5, QuestStatus.StartedSuccess) }, + { Quest.TrustRegain, GetQuestData(Quest.TrustRegain) + .AddPrerequisiteQuest(Quest.OutOfCuriosity, QuestStatus.Fail) + .AddPrerequisiteQuest(Quest.ChemicalP4, QuestStatus.Success) }, + { Quest.LoyaltyBuyout, GetQuestData(Quest.LoyaltyBuyout) + .AddPrerequisiteQuest(Quest.OutOfCuriosity, QuestStatus.Success) }, + { Quest.NoOffence, GetQuestData(Quest.NoOffence) + .AddPrerequisiteQuest(Quest.BigCustomer, QuestStatus.Fail) }, + { Quest.SpaTourP1, GetQuestData(Quest.SpaTourP1) + .AddPrerequisiteQuest(Quest.HumanitarianSupplies, QuestStatus.Success) }, + { Quest.SpaTourP2, GetQuestData(Quest.SpaTourP2) + .AddPrerequisiteQuest(Quest.SpaTourP1, QuestStatus.Success) }, + { Quest.SpaTourP3, GetQuestData(Quest.SpaTourP3) + .AddPrerequisiteQuest(Quest.SpaTourP2, QuestStatus.Success) }, + { Quest.SpaTourP4, GetQuestData(Quest.SpaTourP4) + .AddPrerequisiteQuest(Quest.SpaTourP3, QuestStatus.Success) }, + { Quest.SpaTourP5, GetQuestData(Quest.SpaTourP5) + .AddPrerequisiteQuest(Quest.SpaTourP4, QuestStatus.Success) }, + { Quest.SpaTourP6, GetQuestData(Quest.SpaTourP6) + .AddPrerequisiteQuest(Quest.SpaTourP5, QuestStatus.Success) }, + { Quest.SpaTourP7, GetQuestData(Quest.SpaTourP7) + .AddPrerequisiteQuest(Quest.SpaTourP6, QuestStatus.Success) }, + { Quest.FishingGear, GetQuestData(Quest.FishingGear) + .AddPrerequisiteQuest(Quest.FriendFromTheWestP2, QuestStatus.Success) }, + { Quest.TigrSafari, GetQuestData(Quest.TigrSafari) + .AddPrerequisiteQuest(Quest.FishingGear, QuestStatus.Success) }, + { Quest.ScrapMetal, GetQuestData(Quest.ScrapMetal) + .AddPrerequisiteQuest(Quest.TigrSafari, QuestStatus.Success) }, + { Quest.EagleEye, GetQuestData(Quest.EagleEye) + .AddPrerequisiteQuest(Quest.ScrapMetal, QuestStatus.Success) }, + { Quest.HumanitarianSupplies, GetQuestData(Quest.HumanitarianSupplies) + .AddPrerequisiteQuest(Quest.EagleEye, QuestStatus.Success) }, + { Quest.TheCultP1, GetQuestData(Quest.TheCultP1) + .AddPrerequisiteQuest(Quest.HumanitarianSupplies, QuestStatus.Success) + .AddPrerequisiteQuest(Quest.EagleEye, QuestStatus.Success)}, + { Quest.TheCultP2, GetQuestData(Quest.TheCultP2) + .AddPrerequisiteQuest(Quest.TheCultP1, QuestStatus.Success) }, + { Quest.CargoXP1, GetQuestData(Quest.CargoXP1) + .AddPrerequisiteQuest(Quest.SpaTourP7, QuestStatus.Success) }, + { Quest.CargoXP2, GetQuestData(Quest.CargoXP2) + .AddPrerequisiteQuest(Quest.CargoXP1, QuestStatus.Success) }, + { Quest.CargoXP3, GetQuestData(Quest.CargoXP3) + .AddPrerequisiteQuest(Quest.CargoXP2, QuestStatus.Success) }, + { Quest.CargoXP4, GetQuestData(Quest.CargoXP4) + .AddPrerequisiteQuest(Quest.CargoXP3, QuestStatus.Success) }, + { Quest.WetJobP1, GetQuestData(Quest.WetJobP1) + .AddPrerequisiteQuest(Quest.SpaTourP7, QuestStatus.Success) }, + { Quest.WetJobP2, GetQuestData(Quest.WetJobP2) + .AddPrerequisiteQuest(Quest.WetJobP1, QuestStatus.Success) }, + { Quest.WetJobP3, GetQuestData(Quest.WetJobP3) + .AddPrerequisiteQuest(Quest.WetJobP2, QuestStatus.Success) }, + { Quest.WetJobP4, GetQuestData(Quest.WetJobP4) + .AddPrerequisiteQuest(Quest.WetJobP3, QuestStatus.Success) }, + { Quest.WetJobP5, GetQuestData(Quest.WetJobP5) + .AddPrerequisiteQuest(Quest.WetJobP4, QuestStatus.Success) }, + { Quest.WetJobP6, GetQuestData(Quest.WetJobP6) + .AddPrerequisiteQuest(Quest.WetJobP5, QuestStatus.Success) }, + { Quest.FriendFromTheWestP1, GetQuestData(Quest.FriendFromTheWestP1) + .AddPrerequisiteQuest(Quest.GoldenSwag, QuestStatus.Success) }, + { Quest.FriendFromTheWestP2, GetQuestData(Quest.FriendFromTheWestP2) + .AddPrerequisiteQuest(Quest.FriendFromTheWestP1, QuestStatus.Success) }, + { Quest.HippocraticOath, GetQuestData(Quest.HippocraticOath) + .AddPrerequisiteQuest(Quest.CarRepair, QuestStatus.Success) + .AddPrerequisiteQuest(Quest.Stirrup, QuestStatus.Success)}, + { Quest.HealthCarePrivacyP1, GetQuestData(Quest.HealthCarePrivacyP1) + .AddPrerequisiteQuest(Quest.Pharmacist, QuestStatus.Success) }, + { Quest.HealthCarePrivacyP2, GetQuestData(Quest.HealthCarePrivacyP2) + .AddPrerequisiteQuest(Quest.HealthCarePrivacyP1, QuestStatus.Success) }, + { Quest.HealthCarePrivacyP3, GetQuestData(Quest.HealthCarePrivacyP3) + .AddPrerequisiteQuest(Quest.HealthCarePrivacyP2, QuestStatus.Success) }, + { Quest.HealthCarePrivacyP4, GetQuestData(Quest.HealthCarePrivacyP4) + .AddPrerequisiteQuest(Quest.HealthCarePrivacyP3, QuestStatus.Success) }, + { Quest.HealthCarePrivacyP5, GetQuestData(Quest.HealthCarePrivacyP5) + .AddPrerequisiteQuest(Quest.HealthCarePrivacyP4, QuestStatus.Success) }, { Quest.GunsmithP1, GetQuestData(Quest.GunsmithP1) }, - { Quest.GunsmithP2, GetQuestData(Quest.GunsmithP2).AddPrerequisiteQuest(Quest.GunsmithP1, QuestStatus.Success) }, - { Quest.GunsmithP3, GetQuestData(Quest.GunsmithP3).AddPrerequisiteQuest(Quest.GunsmithP2, QuestStatus.Success) }, - { Quest.GunsmithP4, GetQuestData(Quest.GunsmithP4).AddPrerequisiteQuest(Quest.GunsmithP3, QuestStatus.Success) }, - { Quest.GunsmithP5, GetQuestData(Quest.GunsmithP5).AddPrerequisiteQuest(Quest.GunsmithP4, QuestStatus.Success) }, - { Quest.GunsmithP6, GetQuestData(Quest.GunsmithP6).AddPrerequisiteQuest(Quest.GunsmithP5, QuestStatus.Success) }, - { Quest.GunsmithP7, GetQuestData(Quest.GunsmithP7).AddPrerequisiteQuest(Quest.GunsmithP6, QuestStatus.Success) }, - { Quest.GunsmithP8, GetQuestData(Quest.GunsmithP8).AddPrerequisiteQuest(Quest.GunsmithP7, QuestStatus.Success) }, - { Quest.GunsmithP9, GetQuestData(Quest.GunsmithP9).AddPrerequisiteQuest(Quest.GunsmithP8, QuestStatus.Success) }, - { Quest.GunsmithP10, GetQuestData(Quest.GunsmithP10).AddPrerequisiteQuest(Quest.GunsmithP9, QuestStatus.Success) }, - { Quest.GunsmithP11, GetQuestData(Quest.GunsmithP11).AddPrerequisiteQuest(Quest.GunsmithP10, QuestStatus.Success) }, - { Quest.GunsmithP12, GetQuestData(Quest.GunsmithP12).AddPrerequisiteQuest(Quest.GunsmithP11, QuestStatus.Success) }, - { Quest.GunsmithP13, GetQuestData(Quest.GunsmithP13).AddPrerequisiteQuest(Quest.GunsmithP12, QuestStatus.Success) }, - { Quest.GunsmithP14, GetQuestData(Quest.GunsmithP14).AddPrerequisiteQuest(Quest.GunsmithP13, QuestStatus.Success) }, - { Quest.GunsmithP15, GetQuestData(Quest.GunsmithP15).AddPrerequisiteQuest(Quest.GunsmithP14, QuestStatus.Success) }, - { Quest.GunsmithP16, GetQuestData(Quest.GunsmithP16).AddPrerequisiteQuest(Quest.GunsmithP15, QuestStatus.Success) }, - { Quest.FarmingP1, GetQuestData(Quest.FarmingP1).AddPrerequisiteQuest(Quest.GunsmithP1, QuestStatus.Success) }, - { Quest.FarmingP2, GetQuestData(Quest.FarmingP2).AddPrerequisiteQuest(Quest.FarmingP1, QuestStatus.Success) }, - { Quest.FarmingP3, GetQuestData(Quest.FarmingP3).AddPrerequisiteQuest(Quest.FarmingP2, QuestStatus.Success) }, - { Quest.FarmingP4, GetQuestData(Quest.FarmingP4).AddPrerequisiteQuest(Quest.FarmingP3, QuestStatus.Success) }, - { Quest.SignalP1, GetQuestData(Quest.SignalP1).AddPrerequisiteQuest(Quest.GunsmithP2, QuestStatus.Success) }, - { Quest.SignalP2, GetQuestData(Quest.SignalP2).AddPrerequisiteQuest(Quest.SignalP1, QuestStatus.Success) }, - { Quest.SignalP3, GetQuestData(Quest.SignalP3).AddPrerequisiteQuest(Quest.SignalP2, QuestStatus.Success) }, - { Quest.SignalP4, GetQuestData(Quest.SignalP4).AddPrerequisiteQuest(Quest.SignalP3, QuestStatus.Success) }, - { Quest.BadHabit, GetQuestData(Quest.BadHabit).AddPrerequisiteQuest(Quest.FarmingP2, QuestStatus.Success) }, - { Quest.Scout, GetQuestData(Quest.Scout).AddPrerequisiteQuest(Quest.SignalP2, QuestStatus.Success) }, - { Quest.Insider, GetQuestData(Quest.Insider).AddPrerequisiteQuest(Quest.SignalP1, QuestStatus.Success).AddPrerequisiteQuest(Quest.GunsmithP3, QuestStatus.Success) }, - { Quest.MakeUltraGreatAgain, GetQuestData(Quest.MakeUltraGreatAgain).AddPrerequisiteQuest(Quest.OnlyBusiness, QuestStatus.Success) }, - { Quest.BigSale, GetQuestData(Quest.BigSale).AddPrerequisiteQuest(Quest.OnlyBusiness, QuestStatus.Success) }, - { Quest.TheBloodOfWar, GetQuestData(Quest.TheBloodOfWar).AddPrerequisiteQuest(Quest.BigSale, QuestStatus.Success) }, - { Quest.DressedToKill, GetQuestData(Quest.DressedToKill).AddPrerequisiteQuest(Quest.TheBloodOfWar, QuestStatus.Success) }, - { Quest.DatabaseP1, GetQuestData(Quest.DatabaseP1).AddPrerequisiteQuest(Quest.BigSale, QuestStatus.Success) }, - { Quest.DatabaseP2, GetQuestData(Quest.DatabaseP2).AddPrerequisiteQuest(Quest.DatabaseP1, QuestStatus.Success) }, - { Quest.SewItGoodP1, GetQuestData(Quest.SewItGoodP1).AddPrerequisiteQuest(Quest.DatabaseP2, QuestStatus.Success) }, - { Quest.SewItGoodP2, GetQuestData(Quest.SewItGoodP2).AddPrerequisiteQuest(Quest.SewItGoodP1, QuestStatus.Success) }, - { Quest.SewItGoodP3, GetQuestData(Quest.SewItGoodP3).AddPrerequisiteQuest(Quest.SewItGoodP2, QuestStatus.Success) }, - { Quest.SewItGoodP4, GetQuestData(Quest.SewItGoodP4).AddPrerequisiteQuest(Quest.SewItGoodP3, QuestStatus.Success) }, - { Quest.TheKeyToSuccess, GetQuestData(Quest.TheKeyToSuccess).AddPrerequisiteQuest(Quest.SewItGoodP2, QuestStatus.Success) }, - { Quest.CharismaBringsSuccess, GetQuestData(Quest.CharismaBringsSuccess).AddPrerequisiteQuest(Quest.SewItGoodP4, QuestStatus.Success) }, - { Quest.NoFussNeeded, GetQuestData(Quest.NoFussNeeded).AddPrerequisiteQuest(Quest.TheKeyToSuccess, QuestStatus.Success) }, - { Quest.Gratitude, GetQuestData(Quest.Gratitude).AddPrerequisiteQuest(Quest.DressedToKill, QuestStatus.Success).AddPrerequisiteQuest(Quest.DatabaseP2, QuestStatus.Success) }, - { Quest.SalesNight, GetQuestData(Quest.SalesNight).AddPrerequisiteQuest(Quest.Gratitude, QuestStatus.Success) }, - { Quest.Supervisor, GetQuestData(Quest.Supervisor).AddPrerequisiteQuest(Quest.SalesNight, QuestStatus.Success) }, - { Quest.LivingHighIsNotACrime, GetQuestData(Quest.LivingHighIsNotACrime).AddPrerequisiteQuest(Quest.SewItGoodP3, QuestStatus.Success) }, - { Quest.HotDelivery, GetQuestData(Quest.HotDelivery).AddPrerequisiteQuest(Quest.Gratitude, QuestStatus.Success) }, - { Quest.Minibus, GetQuestData(Quest.Minibus).AddPrerequisiteQuest(Quest.DatabaseP2, QuestStatus.Success) }, - { Quest.VitaminsP1, GetQuestData(Quest.VitaminsP1).AddPrerequisiteQuest(Quest.ChemicalP3, QuestStatus.Success) }, + { Quest.GunsmithP2, GetQuestData(Quest.GunsmithP2) + .AddPrerequisiteQuest(Quest.GunsmithP1, QuestStatus.Success) }, + { Quest.GunsmithP3, GetQuestData(Quest.GunsmithP3) + .AddPrerequisiteQuest(Quest.GunsmithP2, QuestStatus.Success) }, + { Quest.GunsmithP4, GetQuestData(Quest.GunsmithP4) + .AddPrerequisiteQuest(Quest.GunsmithP3, QuestStatus.Success) }, + { Quest.GunsmithP5, GetQuestData(Quest.GunsmithP5) + .AddPrerequisiteQuest(Quest.GunsmithP4, QuestStatus.Success) }, + { Quest.GunsmithP6, GetQuestData(Quest.GunsmithP6) + .AddPrerequisiteQuest(Quest.GunsmithP5, QuestStatus.Success) }, + { Quest.GunsmithP7, GetQuestData(Quest.GunsmithP7) + .AddPrerequisiteQuest(Quest.GunsmithP6, QuestStatus.Success) }, + { Quest.GunsmithP8, GetQuestData(Quest.GunsmithP8) + .AddPrerequisiteQuest(Quest.GunsmithP7, QuestStatus.Success) }, + { Quest.GunsmithP9, GetQuestData(Quest.GunsmithP9) + .AddPrerequisiteQuest(Quest.GunsmithP8, QuestStatus.Success) }, + { Quest.GunsmithP10, GetQuestData(Quest.GunsmithP10) + .AddPrerequisiteQuest(Quest.GunsmithP9, QuestStatus.Success) }, + { Quest.GunsmithP11, GetQuestData(Quest.GunsmithP11) + .AddPrerequisiteQuest(Quest.GunsmithP10, QuestStatus.Success) }, + { Quest.GunsmithP12, GetQuestData(Quest.GunsmithP12) + .AddPrerequisiteQuest(Quest.GunsmithP11, QuestStatus.Success) }, + { Quest.GunsmithP13, GetQuestData(Quest.GunsmithP13) + .AddPrerequisiteQuest(Quest.GunsmithP12, QuestStatus.Success) }, + { Quest.GunsmithP14, GetQuestData(Quest.GunsmithP14) + .AddPrerequisiteQuest(Quest.GunsmithP13, QuestStatus.Success) }, + { Quest.GunsmithP15, GetQuestData(Quest.GunsmithP15) + .AddPrerequisiteQuest(Quest.GunsmithP14, QuestStatus.Success) }, + { Quest.GunsmithP16, GetQuestData(Quest.GunsmithP16) + .AddPrerequisiteQuest(Quest.GunsmithP15, QuestStatus.Success) }, + { Quest.FarmingP1, GetQuestData(Quest.FarmingP1) + .AddPrerequisiteQuest(Quest.GunsmithP1, QuestStatus.Success) }, + { Quest.FarmingP2, GetQuestData(Quest.FarmingP2) + .AddPrerequisiteQuest(Quest.FarmingP1, QuestStatus.Success) }, + { Quest.FarmingP3, GetQuestData(Quest.FarmingP3) + .AddPrerequisiteQuest(Quest.FarmingP2, QuestStatus.Success) }, + { Quest.FarmingP4, GetQuestData(Quest.FarmingP4) + .AddPrerequisiteQuest(Quest.FarmingP3, QuestStatus.Success) }, + { Quest.SignalP1, GetQuestData(Quest.SignalP1) + .AddPrerequisiteQuest(Quest.GunsmithP2, QuestStatus.Success) }, + { Quest.SignalP2, GetQuestData(Quest.SignalP2) + .AddPrerequisiteQuest(Quest.SignalP1, QuestStatus.Success) }, + { Quest.SignalP3, GetQuestData(Quest.SignalP3) + .AddPrerequisiteQuest(Quest.SignalP2, QuestStatus.Success) }, + { Quest.SignalP4, GetQuestData(Quest.SignalP4) + .AddPrerequisiteQuest(Quest.SignalP3, QuestStatus.Success) }, + { Quest.BadHabit, GetQuestData(Quest.BadHabit) + .AddPrerequisiteQuest(Quest.FarmingP2, QuestStatus.Success) }, + { Quest.Scout, GetQuestData(Quest.Scout) + .AddPrerequisiteQuest(Quest.SignalP2, QuestStatus.Success) }, + { Quest.Insider, GetQuestData(Quest.Insider) + .AddPrerequisiteQuest(Quest.SignalP1, QuestStatus.Success) + .AddPrerequisiteQuest(Quest.GunsmithP3, QuestStatus.Success) }, + { Quest.OnlyBusiness, GetQuestData(Quest.OnlyBusiness)}, + { Quest.MakeUltraGreatAgain, GetQuestData(Quest.MakeUltraGreatAgain) + .AddPrerequisiteQuest(Quest.OnlyBusiness, QuestStatus.Success) }, + { Quest.BigSale, GetQuestData(Quest.BigSale) + .AddPrerequisiteQuest(Quest.OnlyBusiness, QuestStatus.Success) }, + { Quest.DressedToKill, GetQuestData(Quest.DressedToKill) + .AddPrerequisiteQuest(Quest.TheBloodOfWar, QuestStatus.Success) }, + { Quest.DatabaseP1, GetQuestData(Quest.DatabaseP1) + .AddPrerequisiteQuest(Quest.BigSale, QuestStatus.Success) }, + { Quest.DatabaseP2, GetQuestData(Quest.DatabaseP2) + .AddPrerequisiteQuest(Quest.DatabaseP1, QuestStatus.Success) }, + { Quest.SewItGoodP1, GetQuestData(Quest.SewItGoodP1) + .AddPrerequisiteQuest(Quest.DatabaseP2, QuestStatus.Success) }, + { Quest.SewItGoodP2, GetQuestData(Quest.SewItGoodP2) + .AddPrerequisiteQuest(Quest.SewItGoodP1, QuestStatus.Success) }, + { Quest.SewItGoodP3, GetQuestData(Quest.SewItGoodP3) + .AddPrerequisiteQuest(Quest.SewItGoodP2, QuestStatus.Success) }, + { Quest.SewItGoodP4, GetQuestData(Quest.SewItGoodP4) + .AddPrerequisiteQuest(Quest.SewItGoodP3, QuestStatus.Success) }, + { Quest.TheKeyToSuccess, GetQuestData(Quest.TheKeyToSuccess) + .AddPrerequisiteQuest(Quest.SewItGoodP2, QuestStatus.Success) }, + { Quest.CharismaBringsSuccess, GetQuestData(Quest.CharismaBringsSuccess) + .AddPrerequisiteQuest(Quest.SewItGoodP4, QuestStatus.Success) }, + { Quest.NoFussNeeded, GetQuestData(Quest.NoFussNeeded) + .AddPrerequisiteQuest(Quest.TheKeyToSuccess, QuestStatus.Success) }, + { Quest.Gratitude, GetQuestData(Quest.Gratitude) + .AddPrerequisiteQuest(Quest.DressedToKill, QuestStatus.Success) + .AddPrerequisiteQuest(Quest.DatabaseP2, QuestStatus.Success) }, + { Quest.SalesNight, GetQuestData(Quest.SalesNight) + .AddPrerequisiteQuest(Quest.Gratitude, QuestStatus.Success) }, + { Quest.Supervisor, GetQuestData(Quest.Supervisor) + .AddPrerequisiteQuest(Quest.SalesNight, QuestStatus.Success) + .AddPrerequisiteQuest(Quest.TheKeyToSuccess, QuestStatus.Success)}, + { Quest.LivingHighIsNotACrime, GetQuestData(Quest.LivingHighIsNotACrime) + .AddPrerequisiteQuest(Quest.SewItGoodP3, QuestStatus.Success) }, + { Quest.HotDelivery, GetQuestData(Quest.HotDelivery) + .AddPrerequisiteQuest(Quest.Gratitude, QuestStatus.Success) }, + { Quest.Minibus, GetQuestData(Quest.Minibus) + .AddPrerequisiteQuest(Quest.DatabaseP2, QuestStatus.Success) }, + { Quest.VitaminsP1, GetQuestData(Quest.VitaminsP1) + .AddPrerequisiteQuest(Quest.ChemicalP3, QuestStatus.Success) }, { Quest.VitaminsP2, GetQuestData(Quest.VitaminsP2).AddPrerequisiteQuest(Quest.VitaminsP1, QuestStatus.Success) }, { Quest.InformedMeansArmed, GetQuestData(Quest.InformedMeansArmed).AddPrerequisiteQuest(Quest.FriendFromTheWestP2, QuestStatus.Success) }, { Quest.Chumming, GetQuestData(Quest.Chumming).AddPrerequisiteQuest(Quest.InformedMeansArmed, QuestStatus.Success) }, @@ -176,7 +302,10 @@ namespace QuestValidator.Common.Helpers .AddPrerequisiteQuest(Quest.PrivateClinic, QuestStatus.Success) }, { Quest.PeacekeepingMission, GetQuestData(Quest.PeacekeepingMission).AddPrerequisiteQuest(Quest.LendLeaseP2, QuestStatus.Success) }, { Quest.TheGuide, GetQuestData(Quest.TheGuide).AddPrerequisiteQuest(Quest.WetJobP6, QuestStatus.Success) }, - { Quest.TheBloodOfWarP2, GetQuestData(Quest.TheBloodOfWarP2).AddPrerequisiteQuest(Quest.SewItGoodP1, QuestStatus.Success) }, + { Quest.TheBloodOfWar, GetQuestData(Quest.TheBloodOfWar) + .AddPrerequisiteQuest(Quest.BigSale, QuestStatus.Success) }, + { Quest.TheBloodOfWarP2, GetQuestData(Quest.TheBloodOfWarP2) + .AddPrerequisiteQuest(Quest.SewItGoodP1, QuestStatus.Success) }, { Quest.TheBloodOfWarP3, GetQuestData(Quest.TheBloodOfWarP3).AddPrerequisiteQuest(Quest.TheBloodOfWarP2, QuestStatus.Success) }, { Quest.Fertilizers, GetQuestData(Quest.Fertilizers).AddPrerequisiteQuest(Quest.FarmingP4, QuestStatus.Success) }, { Quest.Scavenger, GetQuestData(Quest.Scavenger).AddPrerequisiteQuest(Quest.HotDelivery, QuestStatus.Success) }, @@ -185,7 +314,8 @@ namespace QuestValidator.Common.Helpers { Quest.PerfectMediator, GetQuestData(Quest.PerfectMediator).AddPrerequisiteQuest(Quest.ShakingUpTeller, QuestStatus.Success) }, { Quest.Import, GetQuestData(Quest.Import).AddPrerequisiteQuest(Quest.FarmingP4, QuestStatus.Success) }, { Quest.Collector, GetQuestData(Quest.Collector) }, - { Quest.Introduction, GetQuestData(Quest.Introduction) }, + { Quest.Introduction, GetQuestData(Quest.Introduction) + .AddPrerequisiteQuest(Quest.GunsmithP1, QuestStatus.Started)}, { Quest.Acquaintance, GetQuestData(Quest.Acquaintance).AddPrerequisiteQuest(Quest.Introduction, QuestStatus.Success) }, { Quest.TheSurvivalistPathUnprotectedButDangerous, GetQuestData(Quest.TheSurvivalistPathUnprotectedButDangerous).AddPrerequisiteQuest(Quest.Acquaintance, QuestStatus.Success) }, { Quest.TheSurvivalistPathThrifty, GetQuestData(Quest.TheSurvivalistPathThrifty).AddPrerequisiteQuest(Quest.Acquaintance, QuestStatus.Success) }, @@ -204,12 +334,23 @@ namespace QuestValidator.Common.Helpers { Quest.HuntsmanPathWoodsKeeper, GetQuestData(Quest.HuntsmanPathWoodsKeeper).AddPrerequisiteQuest(Quest.HuntsmanPathSellOut, QuestStatus.Success) }, { Quest.HuntsmanPathJustice, GetQuestData(Quest.HuntsmanPathJustice).AddPrerequisiteQuest(Quest.HuntsmanPathTheTrophy, QuestStatus.Success) }, { Quest.HuntsmanPathEvilWatchman, GetQuestData(Quest.HuntsmanPathEvilWatchman).AddPrerequisiteQuest(Quest.HuntsmanPathWoodsCleaning, QuestStatus.Success) }, - { Quest.HuntsmanPathFactoryChief, GetQuestData(Quest.HuntsmanPathFactoryChief).AddPrerequisiteQuest(Quest.HuntsmanPathWoodsKeeper, QuestStatus.Success) }, + { Quest.HuntsmanPathFactoryChief, GetQuestData(Quest.HuntsmanPathFactoryChief) + .AddPrerequisiteQuest(Quest.HuntsmanPathSecuredPerimeter, QuestStatus.Success) + .AddPrerequisiteQuest(Quest.Scout, QuestStatus.Success) + .AddPrerequisiteQuest(Quest.HuntsmanPathWoodsKeeper, QuestStatus.Success)}, { Quest.HuntsmanPathEraser, GetQuestData(Quest.HuntsmanPathEraser) .AddPrerequisiteQuest(Quest.BunkerP2, QuestStatus.Success) .AddPrerequisiteQuest(Quest.HuntsmanPathSecuredPerimeter, QuestStatus.Success) }, { Quest.HuntsmanPathEraserP2, GetQuestData(Quest.HuntsmanPathEraserP2).AddPrerequisiteQuest(Quest.HuntsmanPathEraser, QuestStatus.Success) }, + { Quest.HuntsmanPathSadist, GetQuestData(Quest.HuntsmanPathSadist) + .AddPrerequisiteQuest(Quest.ColleaguesP2, QuestStatus.Success) + .AddPrerequisiteQuest(Quest.RiggedGame, QuestStatus.Success) + .AddPrerequisiteQuest(Quest.TheChemistryCloset, QuestStatus.Success) + }, + { Quest.HuntsmanPathOutcasts, GetQuestData(Quest.HuntsmanPathOutcasts) + .AddPrerequisiteQuest(Quest.HuntsmanPathTheTrophy, QuestStatus.Success) }, + { Quest.HuntsmanPathRelentless, GetQuestData(Quest.HuntsmanPathRelentless) }, { Quest.Ambulance, GetQuestData(Quest.Ambulance).AddPrerequisiteQuest(Quest.TheSurvivalistPathColdBlooded, QuestStatus.Success) }, { Quest.CourtesyVisit, GetQuestData(Quest.CourtesyVisit).AddPrerequisiteQuest(Quest.TheSurvivalistPathToughGuy, QuestStatus.Success) }, { Quest.ShadyBusiness, GetQuestData(Quest.ShadyBusiness).AddPrerequisiteQuest(Quest.WhatsOnTheFlashDrive, QuestStatus.Success) }, @@ -225,80 +366,118 @@ namespace QuestValidator.Common.Helpers { Quest.TextileP2Usec, GetQuestData(Quest.TextileP2Usec).AddPrerequisiteQuest(Quest.TextileP1Usec, QuestStatus.Success) }, { Quest.TextileP1Bear, GetQuestData(Quest.TextileP1Bear).AddPrerequisiteQuest(Quest.SewItGoodP4, QuestStatus.Success) }, { Quest.TextileP2Bear, GetQuestData(Quest.TextileP2Bear).AddPrerequisiteQuest(Quest.TextileP1Usec, QuestStatus.Success) }, - { Quest.BunkerP1, GetQuestData(Quest.BunkerP1).AddPrerequisiteQuest(Quest.BPDepot, QuestStatus.Success) }, - { Quest.BunkerP2, GetQuestData(Quest.BunkerP2).AddPrerequisiteQuest(Quest.BunkerP1, QuestStatus.Success) }, + { Quest.BunkerP1, GetQuestData(Quest.BunkerP1) + .AddPrerequisiteQuest(Quest.BPDepot, QuestStatus.Success) }, + { Quest.BunkerP2, GetQuestData(Quest.BunkerP2) + .AddPrerequisiteQuest(Quest.BunkerP1, QuestStatus.Success) }, { Quest.Anesthesia, GetQuestData(Quest.Anesthesia).AddPrerequisiteQuest(Quest.ShakingUpTeller, QuestStatus.Success) }, { Quest.Samples, GetQuestData(Quest.Samples).AddPrerequisiteQuest(Quest.Anesthesia, QuestStatus.Success) }, - { Quest.HuntsmanPathSadist, GetQuestData(Quest.HuntsmanPathSadist) - .AddPrerequisiteQuest(Quest.ColleaguesP2, QuestStatus.Success) - .AddPrerequisiteQuest(Quest.RiggedGame, QuestStatus.Success) - .AddPrerequisiteQuest(Quest.TheChemistryCloset, QuestStatus.Success) - }, { Quest.ColleaguesP1, GetQuestData(Quest.ColleaguesP1).AddPrerequisiteQuest(Quest.GeneralWares, QuestStatus.Success) }, { Quest.ColleaguesP2, GetQuestData(Quest.ColleaguesP2).AddPrerequisiteQuest(Quest.ColleaguesP1, QuestStatus.Success) }, { Quest.ColleaguesP3, GetQuestData(Quest.ColleaguesP3) + // .AddPrerequisiteQuest(Quest.HuntsmanPathSadist, QuestStatus.Started) // TODO - what happens when player completes sadist? .AddPrerequisiteQuest(Quest.ColleaguesP2, QuestStatus.Success) .AddPrerequisiteQuest(Quest.RiggedGame, QuestStatus.Success) .AddPrerequisiteQuest(Quest.TheChemistryCloset, QuestStatus.Success) }, { Quest.RiggedGame, GetQuestData(Quest.RiggedGame).AddPrerequisiteQuest(Quest.Anesthesia, QuestStatus.Success) }, - { Quest.TerraGroupEmployee, GetQuestData(Quest.TerraGroupEmployee).AddPrerequisiteQuest(Quest.HuntsmanPathSadist, QuestStatus.Success).AddPrerequisiteQuest(Quest.Samples, QuestStatus.Success) }, - { Quest.TheChemistryCloset, GetQuestData(Quest.TheChemistryCloset).AddPrerequisiteQuest(Quest.ColleaguesP1, QuestStatus.Success) }, + { Quest.TerraGroupEmployee, GetQuestData(Quest.TerraGroupEmployee) + .AddPrerequisiteQuest(Quest.HuntsmanPathSadist, QuestStatus.Success) + .AddPrerequisiteQuest(Quest.Samples, QuestStatus.Success) }, + { Quest.TheChemistryCloset, GetQuestData(Quest.TheChemistryCloset) + .AddPrerequisiteQuest(Quest.ColleaguesP1, QuestStatus.Success) }, { Quest.SearchMission, GetQuestData(Quest.SearchMission).AddPrerequisiteQuest(Quest.Debut, QuestStatus.Success) }, { Quest.Hunter, GetQuestData(Quest.Hunter) }, { Quest.Revision, GetQuestData(Quest.Revision).AddPrerequisiteQuest(Quest.EagleEye, QuestStatus.Success) }, - { Quest.PestControl, GetQuestData(Quest.PestControl).AddPrerequisiteQuest(Quest.HuntsmanPathWoodsKeeper, QuestStatus.Success) }, - { Quest.BackDoor, GetQuestData(Quest.BackDoor).AddPrerequisiteQuest(Quest.SurplusGoods, QuestStatus.Success) }, - { Quest.SafeCorridor, GetQuestData(Quest.SafeCorridor).AddPrerequisiteQuest(Quest.ChemicalP4, QuestStatus.Success) }, - { Quest.InventoryCheck, GetQuestData(Quest.InventoryCheck).AddPrerequisiteQuest(Quest.FuelMatter, QuestStatus.Success) }, - { Quest.FuelMatter, GetQuestData(Quest.FuelMatter).AddPrerequisiteQuest(Quest.OnlyBusiness, QuestStatus.Success) }, - { Quest.DiseaseHistory, GetQuestData(Quest.DiseaseHistory).AddPrerequisiteQuest(Quest.Pharmacist, QuestStatus.Success) }, + { Quest.PestControl, GetQuestData(Quest.PestControl) + .AddPrerequisiteQuest(Quest.HuntsmanPathWoodsKeeper, QuestStatus.Success) }, + { Quest.BackDoor, GetQuestData(Quest.BackDoor) + .AddPrerequisiteQuest(Quest.SurplusGoods, QuestStatus.Success) }, + { Quest.SafeCorridor, GetQuestData(Quest.SafeCorridor) + .AddPrerequisiteQuest(Quest.ChemicalP4, QuestStatus.Success) }, + { Quest.InventoryCheck, GetQuestData(Quest.InventoryCheck) + .AddPrerequisiteQuest(Quest.FuelMatter, QuestStatus.Success) }, + { Quest.FuelMatter, GetQuestData(Quest.FuelMatter) + .AddPrerequisiteQuest(Quest.OnlyBusiness, QuestStatus.Success) }, + { Quest.DiseaseHistory, GetQuestData(Quest.DiseaseHistory) + .AddPrerequisiteQuest(Quest.Pharmacist, QuestStatus.Success) }, { Quest.Documents, GetQuestData(Quest.Documents) .AddPrerequisiteQuest(Quest.NoPlaceForRenegades, QuestStatus.Success) .AddPrerequisiteQuest(Quest.IceCreamCones, QuestStatus.Success) }, - { Quest.SurplusGoods, GetQuestData(Quest.SurplusGoods).AddPrerequisiteQuest(Quest.Scout, QuestStatus.Success) }, + { Quest.SurplusGoods, GetQuestData(Quest.SurplusGoods) + .AddPrerequisiteQuest(Quest.Scout, QuestStatus.Success) }, { Quest.ExperienceExchange, GetQuestData(Quest.ExperienceExchange).AddPrerequisiteQuest(Quest.Revision, QuestStatus.Success) }, - { Quest.LongLine, GetQuestData(Quest.LongLine).AddPrerequisiteQuest(Quest.Supervisor, QuestStatus.Success) }, + { Quest.LongLine, GetQuestData(Quest.LongLine) + .AddPrerequisiteQuest(Quest.Supervisor, QuestStatus.Success) }, { Quest.Booze, GetQuestData(Quest.Booze).AddPrerequisiteQuest(Quest.LongLine, QuestStatus.Success) }, - { Quest.SwiftOne, GetQuestData(Quest.SwiftOne).AddPrerequisiteQuest(Quest.HuntsmanPathSadist, QuestStatus.Success) }, + { Quest.SwiftOne, GetQuestData(Quest.SwiftOne) + .AddPrerequisiteQuest(Quest.HuntsmanPathSadist, QuestStatus.Success) }, { Quest.TheChoice, GetQuestData(Quest.TheChoice).AddPrerequisiteQuest(Quest.ThePunisherP6, QuestStatus.Success) }, - { Quest.EasyJobPart1, GetQuestData(Quest.EasyJobPart1).AddPrerequisiteQuest(Quest.ThePunisherP2, QuestStatus.Success) }, - { Quest.EasyJobPart2, GetQuestData(Quest.EasyJobPart2).AddPrerequisiteQuest(Quest.EasyJobPart1, QuestStatus.Success) }, - { Quest.SeasideVacation, GetQuestData(Quest.SeasideVacation).AddPrerequisiteQuest(Quest.Pharmacist, QuestStatus.Success) }, - { Quest.LostContact, GetQuestData(Quest.LostContact).AddPrerequisiteQuest(Quest.HealthCarePrivacyP2, QuestStatus.Success) }, - { Quest.RevisionPart2, GetQuestData(Quest.RevisionPart2).AddPrerequisiteQuest(Quest.EagleEye, QuestStatus.Success) }, - { Quest.TheHermit, GetQuestData(Quest.TheHermit).AddPrerequisiteQuest(Quest.TheSurvivalistPathToughGuy, QuestStatus.Success) }, - { Quest.LongRoad, GetQuestData(Quest.LongRoad).AddPrerequisiteQuest(Quest.FriendFromTheWestP2, QuestStatus.Success) }, - { Quest.MissingCargo, GetQuestData(Quest.MissingCargo).AddPrerequisiteQuest(Quest.LongRoad, QuestStatus.Success) }, - { Quest.Counteraction, GetQuestData(Quest.Counteraction).AddPrerequisiteQuest(Quest.SpaTourP3, QuestStatus.Success) }, - { Quest.Overpopulation, GetQuestData(Quest.Overpopulation).AddPrerequisiteQuest(Quest.SpaTourP1, QuestStatus.Success) }, + { Quest.EasyJobPart1, GetQuestData(Quest.EasyJobPart1) + .AddPrerequisiteQuest(Quest.ThePunisherP2, QuestStatus.Success) }, + { Quest.EasyJobPart2, GetQuestData(Quest.EasyJobPart2) + .AddPrerequisiteQuest(Quest.EasyJobPart1, QuestStatus.Success) }, + { Quest.SeasideVacation, GetQuestData(Quest.SeasideVacation) + .AddPrerequisiteQuest(Quest.DiseaseHistory, QuestStatus.StartedSuccess) + .AddPrerequisiteQuest(Quest.Pharmacist, QuestStatus.Success) }, + { Quest.LostContact, GetQuestData(Quest.LostContact) + .AddPrerequisiteQuest(Quest.HealthCarePrivacyP2, QuestStatus.Success) }, + { Quest.RevisionPart2, GetQuestData(Quest.RevisionPart2) + .AddPrerequisiteQuest(Quest.Revision, QuestStatus.StartedSuccess) + .AddPrerequisiteQuest(Quest.EagleEye, QuestStatus.Success) }, + { Quest.TheHermit, GetQuestData(Quest.TheHermit) + .AddPrerequisiteQuest(Quest.TheSurvivalistPathToughGuy, QuestStatus.Success) + .AddPrerequisiteQuest(Quest.CourtesyVisit, QuestStatus.Success)}, + { Quest.LongRoad, GetQuestData(Quest.LongRoad) + .AddPrerequisiteQuest(Quest.FriendFromTheWestP2, QuestStatus.Success) }, + { Quest.MissingCargo, GetQuestData(Quest.MissingCargo) + .AddPrerequisiteQuest(Quest.LongRoad, QuestStatus.Success) }, + { Quest.Counteraction, GetQuestData(Quest.Counteraction) + .AddPrerequisiteQuest(Quest.SpaTourP3, QuestStatus.Success) }, + { Quest.Overpopulation, GetQuestData(Quest.Overpopulation) + .AddPrerequisiteQuest(Quest.SpaTourP1, QuestStatus.Success) }, //{ Quest.CommunicationDifficulties, GetQuestData(Quest.CommunicationDifficulties).AddPrerequisiteQuest(Quest.MakeUltraGreatAgain, QuestStatus.Success) }, - { Quest.EnergyCrisis, GetQuestData(Quest.EnergyCrisis).AddPrerequisiteQuest(Quest.PostmanPatP2, QuestStatus.Success) }, - { Quest.CorporateSecrets, GetQuestData(Quest.CorporateSecrets).AddPrerequisiteQuest(Quest.FarmingP3, QuestStatus.Success) }, - { Quest.HuntsmanPathOutcasts, GetQuestData(Quest.HuntsmanPathOutcasts).AddPrerequisiteQuest(Quest.HuntsmanPathTheTrophy, QuestStatus.Success) }, - { Quest.NightSweep, GetQuestData(Quest.NightSweep).AddPrerequisiteQuest(Quest.RiggedGame, QuestStatus.Success) }, + { Quest.EnergyCrisis, GetQuestData(Quest.EnergyCrisis) + .AddPrerequisiteQuest(Quest.FarmingP4, QuestStatus.StartedSuccess) + .AddPrerequisiteQuest(Quest.PostmanPatP2, QuestStatus.Success) }, + { Quest.CorporateSecrets, GetQuestData(Quest.CorporateSecrets) + .AddPrerequisiteQuest(Quest.FarmingP3, QuestStatus.Success) }, + { Quest.NightSweep, GetQuestData(Quest.NightSweep) + .AddPrerequisiteQuest(Quest.RiggedGame, QuestStatus.Success) }, { Quest.NoPlaceForRenegades, GetQuestData(Quest.NoPlaceForRenegades).AddPrerequisiteQuest(Quest.BunkerP2, QuestStatus.Success).AddPrerequisiteQuest(Quest.IceCreamCones, QuestStatus.Success) }, - { Quest.Escort, GetQuestData(Quest.Escort).AddPrerequisiteQuest(Quest.ThePunisherP6, QuestStatus.Success) }, - { Quest.CapturingOutposts, GetQuestData(Quest.CapturingOutposts).AddPrerequisiteQuest(Quest.ThePunisherP6, QuestStatus.Success) }, - { Quest.Intimidator, GetQuestData(Quest.Intimidator).AddPrerequisiteQuest(Quest.ThePunisherP6, QuestStatus.Success) }, + { Quest.Escort, GetQuestData(Quest.Escort) + .AddPrerequisiteQuest(Quest.ThePunisherP6, QuestStatus.Success) }, + { Quest.CapturingOutposts, GetQuestData(Quest.CapturingOutposts) + .AddPrerequisiteQuest(Quest.ThePunisherP6, QuestStatus.Success) }, + { Quest.Intimidator, GetQuestData(Quest.Intimidator) + .AddPrerequisiteQuest(Quest.ThePunisherP6, QuestStatus.Success) }, { Quest.Crisis, GetQuestData(Quest.Crisis) }, - { Quest.TheCleaner, GetQuestData(Quest.TheCleaner).AddPrerequisiteQuest(Quest.TheGuide, QuestStatus.Success) }, - { Quest.Calibration, GetQuestData(Quest.Calibration) }, //TODO - { Quest.HuntsmanPathRelentless, GetQuestData(Quest.HuntsmanPathRelentless) }, + { Quest.TheCleaner, GetQuestData(Quest.TheCleaner) + .AddPrerequisiteQuest(Quest.TheGuide, QuestStatus.Success) }, + { Quest.Calibration, GetQuestData(Quest.Calibration) + .AddPrerequisiteQuest(Quest.TheChemistryCloset, QuestStatus.Success)}, { Quest.CompensationForDamageTrust, GetQuestData(Quest.CompensationForDamageTrust) }, { Quest.CompensationForDamageWager, GetQuestData(Quest.CompensationForDamageWager) }, { Quest.CompensationForDamageWergild, GetQuestData(Quest.CompensationForDamageWergild) }, { Quest.CompensationForDamageCollection, GetQuestData(Quest.CompensationForDamageCollection) }, { Quest.CompensationForDamageBarkeep, GetQuestData(Quest.CompensationForDamageBarkeep) }, - { Quest.DrugTrafficking, GetQuestData(Quest.DrugTrafficking).AddPrerequisiteQuest(Quest.LostContact, QuestStatus.Success)}, - { Quest.Reconnaissance, GetQuestData(Quest.Reconnaissance).AddPrerequisiteQuest(Quest.EasyJobPart1, QuestStatus.Success)}, - { Quest.TopSecret, GetQuestData(Quest.TopSecret).AddPrerequisiteQuest(Quest.FriendFromTheWestP2, QuestStatus.Success)}, - { Quest.Broadcast, GetQuestData(Quest.Broadcast).AddPrerequisiteQuest(Quest.FarmingP2, QuestStatus.Success)}, - { Quest.StrayDogs, GetQuestData(Quest.StrayDogs).AddPrerequisiteQuest(Quest.HuntsmanPathOutcasts, QuestStatus.Success)}, - - { Quest.Trophies, GetQuestData(Quest.Trophies).AddPrerequisiteQuest(Quest.TheCleaner, QuestStatus.Success)}, - { Quest.SpecialEquipment, GetQuestData(Quest.SpecialEquipment).AddPrerequisiteQuest(Quest.Trophies, QuestStatus.Success)}, + { Quest.DrugTrafficking, GetQuestData(Quest.DrugTrafficking) + .AddPrerequisiteQuest(Quest.LostContact, QuestStatus.Success)}, + { Quest.Reconnaissance, GetQuestData(Quest.Reconnaissance) + .AddPrerequisiteQuest(Quest.EasyJobPart1, QuestStatus.Success)}, + { Quest.TopSecret, GetQuestData(Quest.TopSecret) + .AddPrerequisiteQuest(Quest.FriendFromTheWestP2, QuestStatus.Success)}, + { Quest.Broadcast, GetQuestData(Quest.Broadcast) + .AddPrerequisiteQuest(Quest.FarmingP2, QuestStatus.Success)}, + { Quest.StrayDogs, GetQuestData(Quest.StrayDogs) + .AddPrerequisiteQuest(Quest.HuntsmanPathOutcasts, QuestStatus.Success)}, + { Quest.Trophies, GetQuestData(Quest.Trophies) + .AddPrerequisiteQuest(Quest.TheCleaner, QuestStatus.Success)}, + { Quest.SpecialEquipment, GetQuestData(Quest.SpecialEquipment) + .AddPrerequisiteQuest(Quest.Trophies, QuestStatus.Success)}, + { Quest.TheCourier, GetQuestData(Quest.TheCourier) + .AddPrerequisiteQuest(Quest.Calibration, QuestStatus.Success)} }; private static QuestData GetQuestData(Quest quest) diff --git a/QuestValidator.Common/Models/Quest.cs b/QuestValidator.Common/Models/Quest.cs index 819e4d3..7bd8023 100644 --- a/QuestValidator.Common/Models/Quest.cs +++ b/QuestValidator.Common/Models/Quest.cs @@ -72,7 +72,7 @@ WetJobP6 = 66, FriendFromTheWestP1 = 67, FriendFromTheWestP2 = 68, - HippocraticVow = 69, + HippocraticOath = 69, HealthCarePrivacyP1 = 70, HealthCarePrivacyP2 = 71, HealthCarePrivacyP3 = 72, @@ -263,6 +263,7 @@ StrayDogs = 258, Trophies = 259, TheCleaner = 260, - SpecialEquipment = 261 + SpecialEquipment = 261, + TheCourier = 262 } } diff --git a/QuestValidator.Common/Models/QuestStatus.cs b/QuestValidator.Common/Models/QuestStatus.cs index 568939a..bb7cdf5 100644 --- a/QuestValidator.Common/Models/QuestStatus.cs +++ b/QuestValidator.Common/Models/QuestStatus.cs @@ -4,6 +4,7 @@ { Started = 2, Success = 4, - Fail = 5 + Fail = 5, + StartedSuccess = 99 } }