Exemple #1
0
    void OnGUI()
    {
        if ((!GameSettings.entered_players) && (photonView.owner.Equals(PhotonNetwork.masterClient)))
        {
            if (photonView.isMine)
            {
                numPlayers = GUILayout.TextArea(numPlayers, 2);
                if (GUILayout.Button("Setup"))
                {
                    GameSettings.entered_players = true;
                    GameSettings.num_players     = Int32.Parse(numPlayers);

                    //Send over to the other players that game settings are set
                    photonView.RPC("SetGameSettings", PhotonTargets.AllBufferedViaServer, GameSettings.entered_players, GameSettings.num_players);
                }
            }
            else
            {
                GUILayout.Label("The room owner is setting up the game, please wait");
            }
        }
        //Entered the amt of players, room is full, cards not dealt
        else if ((GameSettings.entered_players) && (PhotonNetwork.playerList.Length == GameSettings.num_players) && (!GameSettings.dealt))
        {
            GUILayout.Label("Ready to begin!");

            //Master client deals
            if (photonView.owner.Equals(PhotonNetwork.masterClient) && (photonView.isMine))
            {
                GameSettings.Deal(photonView);
            }

            //Ready to play the game!
        }
        else if ((GameSettings.entered_players) && (PhotonNetwork.playerList.Length == GameSettings.num_players) && (GameSettings.dealt))
        {
            if (photonView.isMine)
            {
                if (playerCardFaceUp)
                {
                    string cardLabel = "Your Card: " + GameSettings.playerRole;
                    GUILayout.Label(cardLabel);
                }

                string otherLabel = "Other cards you can see: ";

                if (otherCardsFaceUp)
                {
                    if (GameSettings.known_cards != null)
                    {
                        for (int i = 0; i < GameSettings.known_cards.Length; i++)
                        {
                            string cardstr = GameSettings.known_cards [i] + ",";
                            otherLabel += cardstr;
                        }
                        GUILayout.Label(otherLabel);
                    }
                    else
                    {
                        GUILayout.Label("no other known cards");
                    }
                }
            }
        }

        //Entered amt of players, waiting on all to join room
        else if (GameSettings.entered_players)
        {
            GUILayout.Label("Waiting on players to join...");
        }
    }