public void Allocate(string _requestKey, NetworkView _networkView, Action _callback) { NetworkViewID _bufferedViewID; if (mAllocationBuffer.TryGetValue(_requestKey, out _bufferedViewID)) { _networkView.viewID = _bufferedViewID; return; } if (mAllocateRequests.ContainsKey(_requestKey)) { Debug.Log("Request " + _requestKey + " is incomplete. Please wait."); return; } if (Network.isServer) { _networkView.viewID = Network.AllocateViewID(); mAllocationBuffer.Add(_requestKey, _networkView.viewID); } else if (Network.isClient) { var _job = new AllocationJob(); _job.networkView = _networkView; _job.callback = _callback; mAllocateRequests.Add(_requestKey, _job); networkView.RPC("NetworkViewAllocator_RequestViewID", RPCMode.Server, Network.player, _requestKey); } else { Debug.Log("The connect is not established yet, try after connected to server."); return; } }
public void Allocate(string _requestKey, NetworkView _networkView, Action _callback) { NetworkViewID _bufferedViewID; if (mAllocationBuffer.TryGetValue(_requestKey, out _bufferedViewID)) { _networkView.viewID = _bufferedViewID; return; } if (mAllocateRequests.ContainsKey(_requestKey)) { Debug.Log("Request " + _requestKey + " is incomplete. Please wait."); return; } if (Network.isServer) { _networkView.viewID = Network.AllocateViewID(); mAllocationBuffer.Add(_requestKey, _networkView.viewID); } else if (Network.isClient) { var _job = new AllocationJob(); _job.networkView = _networkView; _job.callback = _callback; mAllocateRequests.Add(_requestKey, _job); networkView.RPC("NetworkViewAllocator_RequestViewID", RPCMode.Server, Network.player, _requestKey); } else { Debug.Log("The connect is not established yet, try after connected to server."); return; } }