private static void NoblePatch(BannerInvestigationQuestBehavior __instance) { if (CSCharCreationOption.SkipFolly) { __instance.GetType().GetField("_allNoblesDead", BindingFlags.NonPublic | BindingFlags.Instance).SetValue(__instance, true); } }
// didnt end up needing this leaving in case I do public static bool Prefix(MobileParty spawnedParty, BannerInvestigationQuestBehavior __instance) { Type t = AccessTools.TypeByName("Storymode.BannerInvestigationQuestBehavior+BannerInvestigationQuest"); Dictionary <Hero, bool> _noblesToTalk = (Dictionary <Hero, bool>)AccessTools.Field(t, "_noblesToTalk").GetValue(__instance); if (spawnedParty.LeaderHero != null && _noblesToTalk.ContainsKey(spawnedParty.LeaderHero) && !_noblesToTalk[spawnedParty.LeaderHero]) { } return(false); }
private static void NoblePatch(BannerInvestigationQuestBehavior __instance) { if (CSCharCreationOption.CSGameOption == 1) { __instance.GetType().GetField("_allNoblesDead", BindingFlags.NonPublic | BindingFlags.Instance).SetValue(__instance, true); } if (CSCharCreationOption.CSGameOption == 2) { //CampaignEvents.RemoveListeners(__instance); } }