コード例 #1
0
    private void OnTriggerEnter(Collider other)
    {
        if (other.gameObject.tag == "Player")
        {
            Debug.Log(m_Rigidbody.velocity.magnitude);
            if (m_Rigidbody.velocity.magnitude > 0 && m_ThrownBy != null && m_ThrownBy != other.gameObject && m_IsThrown)
            {
                Scr_PlayerStateController state = m_ThrownBy.GetComponent <Scr_PlayerStateController>();
                if (!state.IsMomInRoom)
                {
                    Scr_ScoreManager.UpdateScore(m_ThrownBy, 500);
                }
                else
                {
                    Scr_ScoreManager.UpdateScore(m_ThrownBy, -50);
                }

                Vector3 dir = transform.forward + transform.up;
                other.gameObject.GetComponent <Scr_CharacterController>().AddImpact(dir, 250.0f);
                other.gameObject.GetComponent <Scr_Combat>().SetHitBy(gameObject);
                m_IsThrown = false;

                //gameObject.SetActive(false);
                Scr_AudioManager.SetRandomPitch("ObjectBreak");
                Scr_AudioManager.Play("ObjectBreak");
            }
        }
    }
コード例 #2
0
    private void UpdateScoreUI()
    {
        for (int i = 0; i < m_Players.Length; ++i)
        {
            int score = Scr_ScoreManager.GetScore(m_Players[i].name);

            if (score >= 0)
            {
                GameObject scoreObject = m_PlayerHuds[i].transform.Find("Score").gameObject;
                Text       playerScore = scoreObject.GetComponent <Text>();

                playerScore.text = score.ToString();
            }
        }
    }
コード例 #3
0
    KeyValuePair <string, int> GetWinner()
    {
        List <KeyValuePair <string, int> > scores = Scr_ScoreManager.GetScores().ToList();

        var items = from pair in scores
                    orderby pair.Value descending
                    select pair;

        if (scores.Any())
        {
            return(items.ElementAt(0));
        }
        else
        {
            return(new KeyValuePair <string, int>()); //empty fallback
        }
    }
コード例 #4
0
    public void ShowScoreBoard()
    {
        m_WinScreen.SetActive(false);
        m_ScoreBoard.SetActive(true);

        List <KeyValuePair <string, int> > scores = Scr_ScoreManager.GetScores().ToList();

        var items = from pair in scores
                    orderby pair.Value descending
                    select pair;

        for (int i = 0; i < items.Count(); ++i)
        {
            m_PlayerScores[i].SetActive(true);
            Text name  = m_PlayerScores[i].transform.Find("Name").GetComponent <Text>();
            Text score = m_PlayerScores[i].transform.Find("Score").GetComponent <Text>();

            name.text  = items.ElementAt(i).Key;
            score.text = items.ElementAt(i).Value.ToString();
        }

        //Text firstScore = m_ScoreBoard.transform.Find("First Score").gameObject.GetComponent<Text>();
        //Text secondScore = m_ScoreBoard.transform.Find("Second Score").gameObject.GetComponent<Text>();
        //Text thirdScore = m_ScoreBoard.transform.Find("Third Score").gameObject.GetComponent<Text>();
        //Text fourthScore = m_ScoreBoard.transform.Find("Fourth Score").gameObject.GetComponent<Text>();

        //List<Text> scoresText = new List<Text>();
        //scoresText.Add(firstScore);
        //scoresText.Add(secondScore);
        //scoresText.Add(thirdScore);
        //scoresText.Add(fourthScore);

        ////firstScore.text = items.ElementAt(0).Key + "   " + items.ElementAt(0).Value;

        //for (int i = 0; i < m_Players.Length; ++i)
        //{
        //    scoresText[i].enabled = true;

        //    scoresText[i].text = items.ElementAt(i).Key + "    " + items.ElementAt(i).Value;
        //}

        //Disable input temporarily
        m_UI.GetComponent <Scr_PauseMenu>().SetIsGameFinished(true);
    }
コード例 #5
0
ファイル: Scr_Combat.cs プロジェクト: Jebethebest/Living-Hell
    private void Punch()
    {
        //Punching
        if (Input.GetButtonDown(m_Input.GetFire()))
        {
            GameObject closestPlayer = GetClosestObjectWithTag("Player");
            m_AnimationController.Animate("Punch");

            if (closestPlayer != null)
            {
                Scr_PlayerStateController state = closestPlayer.GetComponent <Scr_PlayerStateController>();
                if (state.PlayerState != Scr_PlayerStateController.State.BabyBox)
                {
                    Vector3 dir = transform.forward + transform.up;
                    closestPlayer.GetComponent <Scr_CharacterController>().AddImpact(dir, m_PunchingPower);
                    closestPlayer.GetComponent <Scr_Combat>().SetHitBy(gameObject);
                    Scr_AudioManager.SetRandomPitch("PlayerPunch");
                    Scr_AudioManager.Play("PlayerPunch");
                    Scr_ScoreManager.UpdateScore(gameObject, 25);
                }
            }
        }
    }