Exemplo n.º 1
0
    // Use this for initialization
    void OnEnable()
    {
        GameObject bmGO = GameObject.FindWithTag("Music");

        m_pBeatMaster = bmGO.GetComponent <BeatMaster>();
        m_fSpeed      = m_pBeatMaster.getDiscoPeteSpeedDependingOnMusic();

        GameObject gmGO = GameObject.FindWithTag("GridMaster");

        m_pGridMaster = gmGO.GetComponent <GridMaster>();
        m_pGridMaster.SetDiscoPeteToStart();

        m_pBeatMaster.beatEvent += BeatMasterOnBeatEvent;
        m_pBeatMaster.onJumpChancePassedEvent += BeatMasterOnJumpChancePassedEvent;

        m_pAnimator = GetComponent <Animator>();
        m_pAnimator.SetFloat(JUMP_DURATION, m_fSpeed);
        m_pAnimator.SetFloat(SPEED, m_pBeatMaster.songInfo.Bps);

        GameObject lapGO = GameObject.FindWithTag("LevelAndPointMaster");

        m_pLevelAndPointMaster = lapGO.GetComponent <LevelAndPointBehaviour>();

        if (m_pLevelAndPointMaster == null)
        {
            Debug.Log("DiscoPeteBehaviour: LevelAndPointMaster not found!");
        }
    }
Exemplo n.º 2
0
    protected override void OnEnable()
    {
        base.OnEnable();

        GameObject lapGO = GameObject.FindWithTag("LevelAndPointMaster");

        m_pLevelMaster = lapGO.GetComponent <LevelAndPointBehaviour>();
    }
Exemplo n.º 3
0
        void Awake()
        {
            GameObject levelMasterGo = GameObject.FindWithTag("LevelAndPointMaster");
            int        score         = 0;

            if (levelMasterGo)
            {
                LevelAndPointBehaviour levelMaster = levelMasterGo.GetComponent <LevelAndPointBehaviour>();
                score = levelMaster.OverallPoints;

                Destroy(levelMasterGo);
            }

            bool newHighscore = false;
            int  highscore;

            if (PlayerPrefs.HasKey("Highscore"))
            {
                highscore = PlayerPrefs.GetInt("Highscore");

                if (highscore < score)
                {
                    highscore    = score;
                    newHighscore = true;
                }
            }
            else
            {
                highscore    = score;
                newHighscore = true;
            }

            if (newHighscore)
            {
                PlayerPrefs.SetInt("Highscore", highscore);
                PlayerPrefs.Save();
                highscoreText.text = string.Format("New Highscore: {0}", highscore);
            }
            else
            {
                highscoreText.text = string.Format("Highscore: {0}", highscore);
            }
        }
Exemplo n.º 4
0
    IEnumerator handleSongEnd()
    {
        yield return(new WaitForSeconds(musicSource.clip.length + 2f));

        GameObject[]             emissiveObjects = GameObject.FindGameObjectsWithTag("Emissive");
        GameObjectPriorityPair[] goPairs         = new GameObjectPriorityPair[emissiveObjects.Length];

        int numGroups = Mathf.Max(2, emissiveObjects.Length / 10);

        for (int i = 0; i < emissiveObjects.Length; ++i)
        {
            goPairs[i].go       = emissiveObjects[i];
            goPairs[i].priority = Random.Range(0, numGroups);
        }

        goPairs = goPairs.OrderBy(x => x.priority).ToArray();

        int lastIndex = 0;

        for (int p = 0; p < numGroups; ++p)
        {
            for (int i = lastIndex; i < goPairs.Length; ++i)
            {
                lastIndex = i;
                if (goPairs[i].priority > p)
                {
                    break;
                }

                Renderer[] renderers   = goPairs[i].go.GetComponentsInChildren <Renderer>();
                bool       changeColor = !"SpotlightCone".Equals(goPairs[i].go.name);

                for (int r = 0; r < renderers.Length; ++r)
                {
                    if (changeColor)
                    {
                        Material[] materials = renderers[r].materials;
                        int        matIndex  = Mathf.Min(1, materials.Length - 1);

                        materials[matIndex].SetColor("_Color", Color.black);
                        materials[matIndex].SetColor("_EmissionColor", Color.black);
                    }
                    else
                    {
                        renderers[r].enabled = false;
                    }
                }
            }

            if (deactivateLightsSound)
            {
                deactivateLightsSound.Play();
            }

            if (p + 1 < numGroups)
            {
                yield return(new WaitForSeconds(0.8f));
            }
            else
            {
                GameObject[] lightGos = GameObject.FindGameObjectsWithTag("Light");

                for (int l = 0; l < lightGos.Length; ++l)
                {
                    Light[] lights = lightGos[l].GetComponentsInChildren <Light>();

                    for (int ls = 0; ls < lights.Length; ++ls)
                    {
                        lights[ls].enabled = false;
                    }
                }
            }
        }

        GameObject             guiGO       = GameObject.FindWithTag("LevelAndPointMaster");
        LevelAndPointBehaviour levelMaster = guiGO.GetComponent <LevelAndPointBehaviour>();

        levelMaster.DisplaySongOverMessage();
    }