// ------------------------------------------- /* * SendTransform */ public void SendTransform(int _netID, int _uID, int _indexPrefab, Vector3 _position, Vector3 _forward, Vector3 _scale) { if (m_uid != -1) { m_events.Add(new ItemMultiObjectEntry(OpCodes.Transform, MatchDataJson.Transform(_netID, _uID, _indexPrefab, _position, _forward, _scale))); } }
// ------------------------------------------- /* * OnNetworkEvent */ private void OnNetworkEvent(string _nameEvent, bool _isLocalEvent, int _networkOriginID, int _networkTargetID, object[] _list) { if (_nameEvent == NetworkEventController.EVENT_SYSTEM_DESTROY_NETWORK_COMMUNICATIONS) { Destroy(); } if (_nameEvent == NetworkEventController.EVENT_SYSTEM_INITIALITZATION_REMOTE_COMPLETED) { int networkIDPlayer = int.Parse((string)_list[0]); if (networkIDPlayer != m_uid) { if (ClientNewConnection(networkIDPlayer)) { NetworkEventController.Instance.DelayNetworkEvent(NetworkEventController.EVENT_SYSTEM_INITIALITZATION_REMOTE_COMPLETED, 0.2f, m_uid.ToString()); } } } if (_nameEvent == NetworkEventController.EVENT_SYSTEM_PLAYER_HAS_BEEN_DESTROYED) { int networkIDPlayer = int.Parse((string)_list[0]); ClientDisconnected(networkIDPlayer); } if (_nameEvent == NetworkEventController.EVENT_STREAMSERVER_REPORT_CLOSED_STREAM) { int networkIDPlayer = int.Parse((string)_list[0]); ClientDisconnected(networkIDPlayer); } if (!_isLocalEvent) { m_events.Add(new ItemMultiObjectEntry(OpCodes.Message, MatchDataJson.Message(_nameEvent, _networkOriginID, _networkTargetID, _list))); } }
// ------------------------------------------- /* * SendUIDsPlayers */ private async Task SendUIDsPlayers() { List <string> uids = new List <string>(); foreach (NakamaPlayer player in m_players) { uids.Add(player.ID); } BasicSystemEventController.Instance.DelayBasicSystemEvent(EVENT_NAKAMACONTROLLER_TIMEOUT_SEND_UIDS, 2); await SendMatchStateAsync(OpCodes.AssignUID, MatchDataJson.AssignUIDS(uids.ToArray()), true); }