Exemplo n.º 1
0
        static HarmonyPatches()
        {
            Harmony harmony = new Harmony("LongerCFloor.ProxyHeat");

            CompTemperatureSource.gasCompType = AccessTools.TypeByName("GasNetwork.CompGasTrader");
            if (CompTemperatureSource.gasCompType != null)
            {
                CompTemperatureSource.methodInfoGasOn = AccessTools.PropertyGetter(CompTemperatureSource.gasCompType, "GasOn");
            }
            harmony.PatchAll();
            if (ModLister.HasActiveModWithName("Brrr and Phew (Continued)"))
            {
                var prefix  = AccessTools.Method(typeof(HarmonyPatches), nameof(HarmonyPatches.TryGiveJobPrefix));
                var postfix = AccessTools.Method(typeof(HarmonyPatches), nameof(HarmonyPatches.TryGiveJobPostfix));
                foreach (var type in GenTypes.AllSubclasses(typeof(ThinkNode_JobGiver)))
                {
                    if (type.Namespace == "Brrr")
                    {
                        var method = AccessTools.Method(type, "TryGiveJob");
                        harmony.Patch(method, new HarmonyMethod(prefix), new HarmonyMethod(postfix));
                    }
                }

                var genNewRRJobMethod = AccessTools.Method("Brrr.BrrrGlobals:GenNewRRJob");
                harmony.Patch(genNewRRJobMethod, new HarmonyMethod(typeof(HarmonyPatches), nameof(HarmonyPatches.GenNewRRJobPrefix)));

                var meth_JobGiver_Brrr_TryGiveJob = AccessTools.Method("Brrr.JobGiver_Brrr:TryGiveJob");
                harmony.Patch(meth_JobGiver_Brrr_TryGiveJob, null, null, new HarmonyMethod(typeof(HarmonyPatches), nameof(HarmonyPatches.JobGiver_BrrrTranspiler)));

                var meth_JobGiver_Phew_TryGiveJob = AccessTools.Method("Brrr.JobGiver_Phew:TryGiveJob");
                harmony.Patch(meth_JobGiver_Phew_TryGiveJob, null, null, new HarmonyMethod(typeof(HarmonyPatches), nameof(HarmonyPatches.JobGiver_PhewTranspiler)));
            }
        }
Exemplo n.º 2
0
 private static void ClearAllPlayData()
 {
     LanguageDatabase.Clear();
     LoadedModManager.ClearDestroy();
     foreach (Type genericParam in GenTypes.AllSubclasses(typeof(Def)))
     {
         GenGeneric.InvokeStaticMethodOnGenericType(typeof(DefDatabase <>), genericParam, "Clear");
     }
     ThingCategoryNodeDatabase.Clear();
     BackstoryDatabase.Clear();
     SolidBioDatabase.Clear();
     PlayDataLoader.loaded = false;
 }
Exemplo n.º 3
0
        private static void ClearAllPlayData()
        {
            LanguageDatabase.Clear();
            // A14 - ModContentPackManager was removed?
            LoadedModManager.ClearDestroy();
            foreach (Type genericParam in GenTypes.AllSubclasses(typeof(Def)))
            {
                GenGeneric.InvokeStaticMethodOnGenericType(typeof(DefDatabase <>), genericParam, "Clear");
            }
            ThingCategoryNodeDatabase.Clear();
            BackstoryDatabase.Clear();
            SolidBioDatabase.Clear();

            PlayDataLoader_loaded.SetValue(null, false);
        }
Exemplo n.º 4
0
 public override bool Perform(Node node)
 {
     if (!base.Perform(node))
     {
         return(false);
     }
     if (node.fromSave)
     {
         return(true);
     }
     if (allDrivers)
     {
         node.outputPorts[0].SetData(GenTypes.AllSubclasses(baseDriver).Where(t => !driverException.Contains(t)).ToList());
     }
     else
     {
         node.outputPorts[0].SetData(driverList);
     }
     return(true);
 }