示例#1
0
    // this happens after approval (96% sure :p)
    private void ML_OnClientConnected(ulong _clientId)
    {
        if (!NetworkingManager.Singleton.IsHost && !NetworkingManager.Singleton.IsServer)
        {
            return;
        }

        Debug.Log("Client " + _clientId + " connected");

        NetworkedClient client = NetworkingManager.Singleton.ConnectedClients[_clientId];
        Player          player = client.GetPlayer();



        player.ClientId.Value = _clientId;

        player.Name.Value = connectionDataCache[_clientId].playerName;

        connectionDataCache.Remove(_clientId);

        using (PooledBitStream stream = PooledBitStream.Get())
        {
            using (PooledBitWriter w = PooledBitWriter.Get(stream))
            {
                w.WriteUInt64(player.NetworkedObject.NetworkId);
                CustomMessagingManager.SendNamedMessage("ClientConnected", AllClientIDs(), stream);
            }
        }
    }