예제 #1
0
 // Start is called before the first frame update
 void Start()
 {
     //begins in easy with the speed at default and spawn time at default
     timer              = 0;
     lastSpawnTime      = 0;
     spawnTime          = baseSpawnTime;
     state              = difficultyState.easy;
     BeamMovement.speed = BeamMovement.startSpeed;
 }
예제 #2
0
    // Update is called once per frame
    void Update()
    {
        //if the speed is less than the max speed, increase every frame
        timer += Time.deltaTime;
        if (BeamMovement.speed < BeamMovement.maxSpeed)
        {
            BeamMovement.speed += Time.deltaTime / 2;
        }
        //increasing the spawn rate every frame as well
        spawnTime = baseSpawnTime / (BeamMovement.speed / BeamMovement.startSpeed);

        //spawn layer of beams
        if (timer >= lastSpawnTime + spawnTime)
        {
            lastSpawnTime = timer;
            SpawnRandomBeamLayer();
        }

        //switch to meduim difficuty
        if (timer >= mediumTime && timer < hardTime)
        {
            Debug.Log("Medium");
            state = difficultyState.medium;
        }
        //switch to hard difficulty
        else if (timer >= hardTime && timer < expertTime)
        {
            Debug.Log("hard");
            state = difficultyState.hard;
        }
        //switch to expert difficulty
        else if (timer >= expertTime)
        {
            Debug.Log("expert");
            state = difficultyState.expert;
        }
        //stay at easy difficulty in beginning
        else
        {
            Debug.Log("easy");
            state = difficultyState.easy;
        }
    }