Beispiel #1
0
    // Update is called once per frame
    void Update()
    {
        spawnTimer   += Time.deltaTime;
        despawnTimer += Time.deltaTime;

        if (despawnTimer > 0.15f)
        {
            despawnTimer = 0.0f;
            foreach (MatScript mat in mats)
            {
                if (Random.Range(0f, 1f) > 0.3f)
                {
                    mats.Remove(mat);
                    Destroy(mat);
                    break;
                }
            }
        }

        if (spawnTimer > 0.5f)
        {
            spawnTimer = 0.0f;
            Levels.Level lev = LevelManager.Instance.CurrentLevel;
            if (!lev)
            {
                return;
            }
            if (lev != prevLev)
            {
                prevLev = lev;
                if (firstLevel)
                {
                    firstLevel = false;
                }
                else
                {
                    insanityPercent  += insanityInc / 30.0f + insanityPercent / 30.0f;
                    enemyInsanityInc += enemyInsanityInc / 30.0f + enemyInsanityInc / 30.0f;
                    Camera.main.GetComponent <MusicController>().Next();
                }
            }
            foreach (GameObject gm in lev.GetSprites())
            {
                float insanityPercent = gm.CompareTag("Enemy") ? this.enemyInsanityInc : this.insanityPercent;
                if (Random.Range(0f, 1f) >= insanityPercent)
                {
                    continue;
                }

                Material select;

                if (gm.CompareTag("Enemy"))
                {
                    select = enemyMaterialSelection[Random.Range(0, enemyMaterialSelection.Length)];
                }
                else
                {
                    select = materialSelection[Random.Range(0, materialSelection.Length)];
                }

                MatScript m = gm.AddComponent <MatScript>();

                m.newMaterial = select;

                mats.Add(m);
            }
        }
    }