Beispiel #1
0
    void Update()
    {
        if (isServer)
        {
            if (m_gameState == CTF_GameState.GS_WaitingForPlayers && IsNumPlayersReached())
            {
                m_gameState = CTF_GameState.GS_Ready;
            }
            if (m_gameState == CTF_GameState.GS_InGame)
            {
                if (m_gameTime <= 0)
                {
                    m_gameState = CTF_GameState.GS_GameOver;
                }
            }
            if (m_gameState == CTF_GameState.GS_GameOver)
            {
                StopAllCoroutines();

                EndText.text = "Game is Over, The Winner is You!";
            }
        }

        UpdateGameState();
    }
    public void UpdateGameState()
    {
        if (m_gameState == CTF_GameState.GS_Ready)
        {
            //call whatever needs to be called
            if (isServer)
            {
                SpawnFlag();
                //change state to ingame
                m_gameState = CTF_GameState.GS_InGame;

                PlayerController101[] players = GameObject.FindObjectsOfType <PlayerController101>();
                for (int x = 0; x < players.Length; x++)
                {
                    psNames[x] = players[x].playerName;
                }
            }
        }

        if (isServer && m_gameState == CTF_GameState.GS_GameOver)
        {
            NetworkManager.singleton.StopHost();
            NetworkManager.singleton.ServerChangeScene("Offline");
        }
    }
Beispiel #3
0
    // Update is called once per frame
    void Update()
    {
        if (m_gameState == CTF_GameState.GS_InGame)
        {
            time            -= Time.deltaTime;
            m_timerText.text = "Time Left: " + time;
            //m_ScoreText.text = "Your Score: " + PlayerController.score;
        }
        if (time <= 0)
        {
            m_timerText.text = "GameOver!";
            if (PlayerController.ScoreP1 > PlayerController.ScoreP2)
            {
                m_ScoreText.text = "Winners Score: " + PlayerController.ScoreP1;
            }
            if (PlayerController.ScoreP1 < PlayerController.ScoreP2)
            {
                m_ScoreText.text = "Winners Score: " + PlayerController.ScoreP2;
            }
            else
            {
                m_ScoreText.text = "You Lose";
            }
        }

        if (isServer)
        {
            if (m_gameState == CTF_GameState.GS_WaitingForPlayers && IsNumPlayersReached())
            {
                m_gameState = CTF_GameState.GS_Ready;
            }
        }

        UpdateGameState();
    }
Beispiel #4
0
 //switch to select character screen
 public void gotochoosescreen()
 {
     if (!isServer)
     {
         return;
     }
     if (netmag.numPlayers >= 2)
     {
         m_gamestate = CTF_GameState.Ready;
         sapwnflag();
     }
 }
    // Update is called once per frame
    void Update()
    {
        if (isServer)
        {
            if (m_gameState == CTF_GameState.GS_WaitingForPlayers && IsNumPlayersReached())
            {
                m_gameState = CTF_GameState.GS_Ready;
            }
        }

        UpdateGameState();
    }
    // Update is called once per frame
    void Update()
    {
        if (isServer)
        {
            if (m_gameState == CTF_GameState.GS_WaitingForPlayers && IsNumPlayersReached())
            {
                m_gameState = CTF_GameState.GS_Ready;
                m_players   = FindObjectsOfType <StartTheGame> ();
            }
        }

        UpdateGameState();
    }
 public void UpdateGameState()
 {
     if (m_gameState == CTF_GameState.GS_Ready)
     {
         //call whatever needs to be called
         if (isServer)
         {
             SpawnFlag();
             //change state to ingame
             m_gameState = CTF_GameState.GS_InGame;
         }
     }
 }
    // Update is called once per frame
    void Update()
    {
        if (isServer && m_gameState == CTF_GameState.GS_InGame)
        {
            m_gameTime -= Time.deltaTime;

            if (m_gameTime <= 0.0f)
            {
                m_gameState = CTF_GameState.GS_GameOver;
            }
        }

        if (isServer)
        {
            if (m_gameState == CTF_GameState.GS_WaitingForPlayers && IsNumPlayersReached())
            {
                m_gameState = CTF_GameState.GS_Ready;
            }
        }

        PlayerController101[] players = GameObject.FindObjectsOfType <PlayerController101>();
        for (int x = 0; x < players.Length; x++)
        {
            if (players[x].HasFlag())
            {
                if (players[x].playerNum == 1)
                {
                    ps1Score++;
                }
                else if (players[x].playerNum == 2)
                {
                    ps2Score++;
                }
                else if (players[x].playerNum == 3)
                {
                    ps3Score++;
                }
                else if (players[x].playerNum == 4)
                {
                    ps4Score++;
                }

                break;
            }
        }

        UpdateGameState();

        HUD.instance.DisplayTimer(m_gameTime);
        HUD.instance.DisplayScore(psNames, ps1Score, ps2Score, ps3Score, ps4Score);
    }
Beispiel #9
0
 public void UpdateGameState()
 {
     if (m_gameState == CTF_GameState.GS_Ready)
     {
         //call whatever needs to be called
         if (isServer)
         {
             SpawnFlag();
             SpawnSpeedPickUp();
             SpawnFiringPickUp();
             StartCoroutine(StartCountdown());
             //change state to ingame
             m_gameState = CTF_GameState.GS_InGame;
         }
     }
 }
    public void UpdateGameState()
    {
        if (m_gameState == CTF_GameState.GS_Ready)
        {
            int playerReady = 0;
            //call whatever needs to be called
            if (isServer)
            {
                Debug.Log("Tootal Players: " + m_players.Length);

                //checks if the all the players are ready
                for (int i = 0; i < m_players.Length; i++)
                {
                    if (m_players [i].m_ready)
                    {
                        playerReady++;
                        Debug.Log("Num of players ready: " + playerReady);
                    }
                }

                if (playerReady == m_numPlayers)
                {
                    SpawnFlag();
                    m_gameState                = CTF_GameState.GS_InGame;
                    Timer.m_startTime          = true;
                    StartTheGame.m_gameStarted = true;
                }
            }
        }
        if (m_gameState == CTF_GameState.GS_InGame)
        {
            m_ready.text = "";
            if (isServer)
            {
                Game();
            }
        }
        if (m_gameState == CTF_GameState.GS_EndGame)
        {
            m_ready.text = "Game Over";
        }
    }
    //Timer for the powerup spawn
    void Game()
    {
        RpcScore();

        for (int i = 0; i < m_players.Length; i++)
        {
            if (m_players [i].GetComponent <PlayerController> ().HasFlag())
            {
                m_elapseTime += Time.deltaTime;
                if (m_elapseTime >= 1)
                {
                    m_elapseTime = 0;
                    if (i == 0)
                    {
                        player1Score++;
                    }
                    else if (i == 1)
                    {
                        player2Score++;
                    }
                    else
                    {
                        player3Score++;
                    }
                }
            }
            if (m_time.m_timeLeft <= 0)
            {
                m_gameState = CTF_GameState.GS_EndGame;
            }
        }

        if (!m_powerOnScreen)
        {
            m_powerTimer -= Time.deltaTime;
            if (m_powerTimer <= 0)
            {
                SpawnPower();
                m_powerTimer = 10;
            }
        }
    }
Beispiel #12
0
    // Update is called once per frame
    void Update()
    {
        if (!isServer)
        {
            return;
        }
        if (m_gamestate == CTF_GameState.WaitingForPlayer)
        {
            // m_gamestate = CTF_GameState.Ready;
            //sapwnflag();
            if (netmag.numPlayers != 0)
            {
                numofplayeringame = netmag.numPlayers;
                Rpcchangenumofplayerui(numofplayeringame);
                RpclobbyUI();
            }
        }
        if (m_gamestate == CTF_GameState.Ready)
        {
            GameObject[] players = GameObject.FindGameObjectsWithTag("Player");
            int          cindex  = 1;
            for (int a = 0; a < players.Length; a++)
            {
                Rpcupdatecolor(players[a], cindex);
                // a.GetComponent<player>().playercolor = cindex;
                cindex++;
            }

            m_gamestate = CTF_GameState.Ingame;
            //RpccharacterUI();
            RpclobbyUIDisable();
            // selectcharacter
        }
        if (m_gamestate == CTF_GameState.Ingame)
        {
            gametime -= Time.deltaTime;
            Rpcchangetime(gametime);
            if (GameObject.FindGameObjectWithTag("item1") == null && spawning == false)
            {
                spawning = true;
                Invoke("respawn", 7);



                // Rpcrandomgenerateitem(randomposition);
            }

            if (gametime <= 0)
            {
                GameObject[] players       = GameObject.FindGameObjectsWithTag("Player");
                int          hightestscore = 0;
                int          playernum     = 0;
                string       playercolor   = "";
                foreach (GameObject a in players)
                {
                    if (a.GetComponent <player>().score > hightestscore)
                    {
                        hightestscore = a.GetComponent <player>().score;
                        playernum     = a.GetComponent <player>().playercolor;
                        switch (playernum)
                        {
                        case 1:
                            playercolor = "red";
                            break;

                        case 2:
                            playercolor = "green";
                            break;

                        case 3:
                            playercolor = "blue";
                            break;

                        case 4:
                            playercolor = "yellow";
                            break;
                        }
                    }
                }

                m_gamestate = CTF_GameState.gameend;
                RpcshowendUI();
                RpcwinnerUI(hightestscore, playernum, playercolor);
            }
        }
    }