示例#1
0
    public IEnumerator AddPlayerAndSetupCourutine()
    {
        LobbyPlayerList list = null;

        while (true)
        {
            while (list == null)
            {
                list = LobbyPlayerList.singleton;
                yield return(new WaitForSeconds(0.1f));
            }
            if (list.gameObject.activeSelf)
            {
                list.AddPlayer(this);
                if (isLocalPlayer)
                {
                    SetupLocalPlayer();
                }
                else
                {
                    SetupOtherPlayer();
                }
                yield break;
            }
            else
            {
                yield return(new WaitForSeconds(0.1f));
            }
        }
    }
示例#2
0
    public override void OnClientEnterLobby()
    {
        base.OnClientEnterLobby();

        playerList = LobbyPlayerList.Instance;

        //if (LobbyNetworkManager.s_Singleton != null) LobbyNetworkManager.s_Singleton.OnPlayersNumberModified(1);

        playerList.AddPlayer(this);
        //playerList.DisplayDirectServerWarning(isServer && LobbyManager.s_Singleton.matchMaker == null);

        if (isLocalPlayer)
        {
            SetupLocalPlayer();
        }
        else
        {
            SetupOtherPlayer();
        }

        //setup the player data on UI. The value are SyncVar so the player
        //will be created with the right value currently on server
        OnMyName(playerName);
        OnMyColor(playerColor);

        /* if (isServer)
         * {*/
        //}
    }
示例#3
0
    public void Start()
    {
        _instance = this;
        _layout = playerListContentTransform.GetComponent<VerticalLayoutGroup>();

        // Evita que se destruya el objeto del menu que contiene la lista de jugadores
        // derivados de la clase NetworkLobbyPlayer
        DontDestroyOnLoad(gameObject);
    }
示例#4
0
文件: Server.cs 项目: webconfig/Ballz
        private void HandleNewPlayer(NetConnection sender, LobbyPlayerGreeting player)
        {
            long remoteId = sender == null ? -1 : sender.RemoteUniqueIdentifier;

            PlayersByConnection[remoteId] = new PlayerConnection
            {
                Connection = sender,
                PlayerName = player.PlayerName
            };

            var lobbyPlayerList = new LobbyPlayerList {
                PlayerNames = PlayersByConnection.Values.Select(p => p.PlayerName).ToArray()
            };

            PlayerListChanged?.Invoke(this, lobbyPlayerList);
            Broadcast(lobbyPlayerList);
        }
示例#5
0
 private void Awake()
 {
     Instance = this;
 }
示例#6
0
 /**
  * Get components
  */
 public void OnEnable()
 {
     _instance = this;
     _layout   = playerListContentTransform.GetComponent <VerticalLayoutGroup>();
 }
 public void OnEnable()
 {
     _instance = this;
     _layout = playerListContentTransform.GetComponent<VerticalLayoutGroup>();
 }
 protected virtual void Awake()
 {
     instance = this;
 }
示例#9
0
 // Use this for initialization
 void Start()
 {
     singleton = this;
 }
示例#10
0
 public void Awake()
 {
     _instance = this;
 }