具体游戏是戴森球计划
[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;
不清楚为什么不能改
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.