예제 #1
0
    public override void OnServerAddPlayer(NetworkConnection conn)      // --------------- LOBBY ----------------
    {
        bool isLeader = RoomPlayers.Count == 0;

        NetworkRoomPlayer roomPlayerInstance = Instantiate(roomPlayerPrefab);

        roomPlayerInstance.IsLeader = isLeader;
        NetworkServer.AddPlayerForConnection(conn, roomPlayerInstance.gameObject);
    }
 public override void OnServerAddPlayer(NetworkConnection conn)
 {
     if (SceneManager.GetActiveScene().path == menuScene)
     {
         bool isLeader = roomPlayers.Count == 0;
         NetworkRoomPlayer roomPlayerInstance = Instantiate(_roomPlayerPrefab);
         roomPlayerInstance.IsLeader = isLeader;
         NetworkServer.AddPlayerForConnection(conn, roomPlayerInstance.gameObject);
     }
 }
예제 #3
0
    // Start is called before the first frame update
    void Start()
    {
        player = this.GetComponent <NetworkRoomPlayer>();

        readybutton = GameObject.Find("ready").GetComponent <Button>();
        readybutton.onClick.AddListener(toggle);

        disconnect = GameObject.Find("disconnect").GetComponent <Button>();
        disconnect.onClick.AddListener(() => setbool(true));
        Debug.Log(player);
    }
예제 #4
0
    public override void OnServerAddPlayer(NetworkConnection conn)
    {
        if (SceneManager.GetActiveScene().path != menuScene)
        {
            return;
        }

        NetworkRoomPlayer roomPlayer = Instantiate(roomPlayerPrefab);

        NetworkServer.AddPlayerForConnection(conn, roomPlayer.gameObject);
    }
    public override void OnServerDisconnect(NetworkConnection conn)
    {
        if (conn.identity != null)
        {
            NetworkRoomPlayer player = conn.identity.GetComponent <NetworkRoomPlayer>();

            RoomPlayers.Remove(player);

            NotifyPlayersOfReadyState();
        }

        base.OnServerDisconnect(conn);
    }
    public override void OnServerAddPlayer(NetworkConnection conn)
    {
        if ("Assets/Scenes/" + SceneManager.GetActiveScene().name + ".unity" == menuScene)
        {
            bool isLeader = RoomPlayers.Count == 0;

            NetworkRoomPlayer roomPlayerInstance = Instantiate(roomPlayerPrefab);

            roomPlayerInstance.IsLeader = isLeader;

            NetworkServer.AddPlayerForConnection(conn, roomPlayerInstance.gameObject);
        }
    }
예제 #7
0
    public override void OnServerAddPlayer(NetworkConnection conn)
    {
        //if("Assets/Scenes/ActiveScenes/" + SceneManager.GetActiveScene().name + ".unity" == menuScene) //only add player to lobby if we're in the menu screen


        bool isLeader = RoomPlayers.Count == 0;     //Room leader if you're first to join

        Debug.Log("player added to server. spawning player prefab.");
        NetworkRoomPlayer roomPlayerInstance = Instantiate(roomPlayerPrefab);

        roomPlayerInstance.IsLeader = isLeader;

        NetworkServer.AddPlayerForConnection(conn, roomPlayerInstance.gameObject);
    }
예제 #8
0
    public override void OnServerDisconnect(NetworkConnection conn)
    {
        //removes players when a disconnect occurs so they aren't affected by the world
        if (conn.identity != null)
        {
            NetworkRoomPlayer player = conn.identity.GetComponent <NetworkRoomPlayer>();

            RoomPlayers.Remove(player);

            NotifyPlayersOfReadyState();
        }

        base.OnServerDisconnect(conn);
    }