具体游戏是戴森球计划
[HarmonyPrefix] [HarmonyPatch(typeof(InserterComponent), "InternalUpdate")] public static bool InternalUpdatePrefix(InserterComponent __instance) { __instance.itemId = 1234; // 测试 Console.WriteLine(__instance.itemId); // 打印 1234 return false; } [HarmonyPostfix] [HarmonyPatch(typeof(InserterComponent), "InternalUpdate")] public static void InternalUpdatePostfix(InserterComponent __instance) { Console.WriteLine(__instance.itemId); // 打印 0 }
做了个简单的测试,但未能改变 itemId 的值,反编译游戏代码,itemId 是 public
public int itemId;
不清楚为什么不能改
![]() | 1 levelworm 2021-08-04 04:27:58 +08:00 弱弱的问,这是传引用还是值进去? |
![]() | 2 zeronofreya OP @levelworm 我觉得是值 |