コード例 #1
0
        public static void Prefix(ref global::MetroTrackBridgeAI __instance, ushort nodeID, out MetroTrackBridgePillarPatcherState?__state)
        {
            var skin = NetworkSkinManager.NodeSkins[nodeID];

            if (skin != null)
            {
                __state = new MetroTrackBridgePillarPatcherState(__instance);

                __instance.m_bridgePillarInfo = skin.m_bridgePillarInfo;
                __instance.m_middlePillarInfo = skin.m_middlePillarInfo;
            }
            else
            {
                __state = null;
            }
        }
コード例 #2
0
 public MetroTrackBridgePillarPatcherState(global::MetroTrackBridgeAI netAi)
 {
     BridgePillarInfo = netAi.m_bridgePillarInfo;
     MiddlePillarInfo = netAi.m_middlePillarInfo;
 }
コード例 #3
0
 public void Restore(global::MetroTrackBridgeAI netAi)
 {
     netAi.m_bridgePillarInfo = BridgePillarInfo;
     netAi.m_middlePillarInfo = MiddlePillarInfo;
 }
コード例 #4
0
 public static void Postfix(ref global::MetroTrackBridgeAI __instance, ref MetroTrackBridgePillarPatcherState?__state)
 {
     __state?.Restore(__instance);
 }