示例#1
0
        private static void InitUltraFastMode()
        {
            MethodInfo source = typeof(RimWorld.TimeControls).GetMethod("DoTimeControlsGUI", BindingFlags.Static | BindingFlags.Public);
            MethodInfo dest   = typeof(Detouring.TimeControls).GetMethod("DoTimeControlsGUI", BindingFlags.Static | BindingFlags.Public);

            Detour.TryDetourFromTo(source, dest);
        }
示例#2
0
        private static void InitEventSpeedControl()
        {
            MethodInfo source = typeof(Verse.TickManager).GetProperty("TickRateMultiplier", BindingFlags.Instance | BindingFlags.Public).GetGetMethod();
            MethodInfo dest   = typeof(Detouring.TickManager).GetProperty("TickRateMultiplier", BindingFlags.Instance | BindingFlags.Public).GetGetMethod();

            Detour.TryDetourFromTo(source, dest);

            source = typeof(Detouring.TickManager).GetMethod("NothingHappeningInGame", BindingFlags.Instance | BindingFlags.NonPublic);
            dest   = typeof(Verse.TickManager).GetMethod("NothingHappeningInGame", BindingFlags.Instance | BindingFlags.NonPublic);
            Detour.TryDetourFromTo(source, dest);
        }