internal void SetNetworkView(PNetC.NetworkView netView) { _networkView = netView; IsMine = netView.IsMine; OwnerId = netView.OwnerId; viewID = netView.ViewID; netView.StateSynchronization = _stateSynchronization.ToPNetC(); _networkView.OnDeserializeStream += StreamDeserializeCaller; _networkView.OnRemove += DoOnRemove; if (_queuedSer != null) { _networkView.SetSerializationMethod(_queuedSer, _queuedStreamSize); } var components = gameObject.GetComponents<MonoBehaviour>().OrderBy(c => c.name); foreach (var component in components) { SubscribeMarkedRPCsOnComponent(component); SubscribeSynchronizedFields(component); } }
internal void SetNetworkView(PNetC.NetworkView netView) { _networkView = netView; IsMine = netView.IsMine; OwnerId = netView.OwnerId; viewID = netView.ViewID; netView.StateSynchronization = _stateSynchronization.ToPNetC(); _networkView.OnDeserializeStream += StreamDeserializeCaller; _networkView.OnRemove += DoOnRemove; if (_queuedSer != null) { _networkView.SetSerializationMethod(_queuedSer, _queuedStreamSize); } var components = gameObject.GetComponents <MonoBehaviour>().OrderBy(c => c.name); foreach (var component in components) { SubscribeMarkedRPCsOnComponent(component); SubscribeSynchronizedFields(component); } }
/// <summary> /// set the method to be used during stream serialization /// </summary> /// <param name="newMethod"></param> /// <param name="defaultStreamSize"></param> public void SetSerializationMethod(Action <NetOutgoingMessage> newMethod, int defaultStreamSize = 16) { if (newMethod == null) { return; } if (_networkView == null) { _queuedSer = newMethod; _queuedStreamSize = defaultStreamSize; return; } _networkView.SetSerializationMethod(newMethod, defaultStreamSize); this.defaultStreamSize = defaultStreamSize; }