MonoBehaviour.OnSerializeNetworkView Manual     Reference     Scripting  
Scripting > Runtime Classes > MonoBehaviour
MonoBehaviour.OnSerializeNetworkView

function OnSerializeNetworkView (stream : BitStream, info : NetworkMessageInfo) : void

Description

Used to customize synchronization of variables in a script watched by a network view.

It is automatically determined if the variables being serialized should be sent or received, see example below for a better description. This depends on who owns the object, i.e. the owner sends and all others receive.

JavaScript
// This objects health information

var currentHealth : int = 0;

function OnSerializeNetworkView(stream : BitStream, info : NetworkMessageInfo) {
if (stream.isWriting) {
var healthC : int = currentHealth;
stream.Serialize(healthC);
} else {
var healthZ : int = 0;
stream.Serialize(healthZ);
currentHealth = healthZ;
}
}

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
public int currentHealth = 0;
void OnSerializeNetworkView(BitStream stream, NetworkMessageInfo info) {
if (stream.isWriting) {
int healthC = currentHealth;
stream.Serialize(ref healthC);
} else {
int healthZ = 0;
stream.Serialize(ref healthZ);
currentHealth = healthZ;
}
}
}

import UnityEngine
import System.Collections

class example(MonoBehaviour):

public currentHealth as int = 0

def OnSerializeNetworkView(stream as BitStream, info as NetworkMessageInfo):
if stream.isWriting:
healthC as int = currentHealth
stream.Serialize(healthC)
else:
healthZ as int = 0
stream.Serialize(healthZ)
currentHealth = healthZ