Used to customize synchronization of variables in a script watched by a network view.
// This objects health information var currentHealth : int; function OnSerializeNetworkView(stream : BitStream, info : NetworkMessageInfo) { var health : int = 0; if (stream.isWriting) { health = currentHealth; stream.Serialize(health); } else { stream.Serialize(health); currentHealth = health; } }
using UnityEngine; using System.Collections; public class Example : MonoBehaviour { public int currentHealth; void OnSerializeNetworkView(BitStream stream, NetworkMessageInfo info) { int health = 0; if (stream.isWriting) { health = currentHealth; stream.Serialize(ref health); } else { stream.Serialize(ref health); currentHealth = health; } } }
import UnityEngine import System.Collections public class Example(MonoBehaviour): public currentHealth as int def OnSerializeNetworkView(stream as BitStream, info as NetworkMessageInfo) as void: health as int = 0 if stream.isWriting: health = currentHealth stream.Serialize() else: stream.Serialize() currentHealth = health