コード例 #1
0
    public void Update()
    {
        if (kartid != -1)
        {
            return;
        }
        var component       = GetComponent <NetworkIdentity>();
        var clientAuthority = component.clientAuthorityOwner;

        if (clientAuthority != null && isServer)
        {
            MyNetworkLobbyPlayer.GetLobbyPlayer(clientAuthority).kartNetId = GetComponent <NetworkIdentity>().netId.Value;
            GetComponent <UpdateKartInformation>().KB = GetComponent <KartBehaviour>();
        }
        var lobbyplayers = MyNetworkLobbyPlayer.GetLobbyPlayers();

        foreach (MyNetworkLobbyPlayer lobbyplayer in lobbyplayers)
        {
            if (lobbyplayer.kartNetId == GetComponent <NetworkIdentity>().netId.Value)
            {
                kartid = lobbyplayer.kartId;
            }
        }



        GetComponent <UpdateKartInformation>().ChangeKart(kartid);
    }
コード例 #2
0
 // Update is called once per frame
 void Update()
 {
     if (lobbyPlayer == null)
     {
         lobbyPlayer = transform.GetComponent<MyNetworkLobbyPlayer>();
         if (ServerInfo.hosting)
             ToggleReady();
     }
 }
コード例 #3
0
 // Update is called once per frame
 void Update()
 {
     if (lobbyPlayer == null)
     {
         lobbyPlayer = transform.GetComponent <MyNetworkLobbyPlayer>();
         if (ServerInfo.hosting)
         {
             ToggleReady();
         }
     }
 }
コード例 #4
0
ファイル: LobbyMenu.cs プロジェクト: zeropointx/KartClone
    public void UpdateList()
    {
        //clear list
        for (int i = 0; i < lobbyScript.lobbyPlayerList.transform.childCount; i++)
        {
            Destroy(lobbyScript.lobbyPlayerList.transform.GetChild(i).gameObject);
        }

        //local player to top
        for (int i = 0; i < lobbyScript.players.Count; i++)
        {
            var obj = lobbyScript.players[i];
            if (obj.GetComponent <MyNetworkLobbyPlayer>().isLocalPlayer)
            {
                lobbyScript.players.RemoveAt(i);
                lobbyScript.players.Insert(0, obj);
                break;
            }
        }

        int j          = -1;
        int readyCount = 0;

        foreach (var obj in lobbyScript.players)
        {
            MyNetworkLobbyPlayer mnlb = obj.GetComponent <MyNetworkLobbyPlayer>();
            string label = "id " + mnlb.netId.Value + " | ";
            if (mnlb.isLocalPlayer)
            {
                label += "local player | ";
            }
            label      += mnlb.readyInLobby ? "Ready!" : "Not ready!";
            readyCount += mnlb.readyInLobby ? 1 : 0;

            GameObject listEntry = (GameObject)Instantiate(lobbyScript.listEntryObject, lobbyScript.listEntryObject.transform.position, lobbyScript.listEntryObject.transform.rotation);
            listEntry.transform.SetParent(lobbyScript.lobbyPlayerList.transform, false);
            listEntry.GetComponent <Text>().text = label;
            listEntry.transform.localPosition   += new Vector3(0, j * listEntrySpacing, 0);
            j--;
        }
        everyoneReady = (readyCount == lobbyScript.players.Count);
    }
コード例 #5
0
    public void ChangeCurrentCharacter(int number)
    {
        var localPlayer = MyNetworkLobbyPlayer.GetLocalLobbyPlayer();

        localPlayer.CmdChangeKart(number);
    }