コード例 #1
0
 public static void GetEncyclopediaPageInstancePatch(ref EncyclopediaPageVM __result)
 {
     if (__result is EncyclopediaHeroPageVM)
     {
         EncyclopediaPageArgs args = (EncyclopediaPageArgs)typeof(EncyclopediaPageVM).GetField("_args", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(__result);
         __result = new EncyclopediaHeroPageVMExtensionVM(args);
     }
     else if (__result is EncyclopediaFactionPageVM)
     {
         EncyclopediaPageArgs args = (EncyclopediaPageArgs)typeof(EncyclopediaPageVM).GetField("_args", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(__result);
         __result = new EncyclopediaFactionPageVMExtensionVM(args);
     }
 }
コード例 #2
0
        public static void GetEncyclopediaPageInstancePostfix(ref EncyclopediaPageVM __result)
        {
            var args = (EncyclopediaPageArgs)AccessTools.Field(typeof(EncyclopediaPageVM), "_args").GetValue(__result);

            if (__result is EncyclopediaHeroPageVM)
            {
                __result = new EncyclopediaHeroPageVMExtensionVM(args);
            }
            else if (__result is EncyclopediaFactionPageVM)
            {
                __result = new EncyclopediaFactionPageVMExtensionVM(args);
            }
        }