Example #1
0
    // Update is called once per frame
    void Update()
    {
        speed = ObstacleSpeed.getSpeed();
        float tempY = myRB.velocity.y;

        myRB.velocity = new Vector2(speed, tempY);
    }
 // Spawns an obstacle based on provided information from LevelController.cs
 public void SpawnObstacle(ObstacleSpeed obsSpeed)
 {
     // If the level has not reached the maximum number of obstacles and obstacles should be spawned
     if (currObs < maxObs && !obsSpeed.Equals(ObstacleSpeed.NULL))
     {
         SpawnPointAndRotation();
         obstacle.GetComponent <ObstacleBehavior>().rotX = rotX;
         obstacle.GetComponent <ObstacleBehavior>().rotY = rotY;
         obstacle.GetComponent <ObstacleBehavior>().rotZ = rotZ;
         SetSpeed(obsSpeed);
         Instantiate(obstacle, chosenSpawn, Quaternion.identity);
         currObs += 1;
     }
 }
 void SetSpeed(ObstacleSpeed obsSpeed)
 {
     if (obsSpeed.Equals(ObstacleSpeed.Slow))
     {
         speed = Random.Range(speedSlowMin, speedSlowMax);
     }
     if (obsSpeed.Equals(ObstacleSpeed.Fast))
     {
         speed = Random.Range(speedFastMin, speedFastMax);
     }
     if (obsSpeed.Equals(ObstacleSpeed.Random))
     {
         speed = Random.Range(speedSlowMin, speedFastMax);
     }
 }
Example #4
0
 void Restart()
 {
     Time.timeScale = 1.0f;
     ObstacleSpeed.setSpeed(DefValues.startSpeed);
     SceneManager.LoadScene(SceneManager.GetActiveScene().name);
 }
Example #5
0
 // Update is called once per frame
 void Update()
 {
     speed         = ObstacleSpeed.getSpeed();
     myRB.velocity = new Vector2(speed, 0);
 }
Example #6
0
    IEnumerator SpawnObstacle()
    {
        while (true)
        {
            yield return(new WaitForSeconds(Random.Range(spawnTime, spawnTime + 0.2f)));

            //decrease spawntime until maxspawntime is reached
            if (spawnTime > DefValues.maxSpawnTime)
            {
                spawnTime = spawnTime - DefValues.decreaseSpawnTime;
            }

            //increase overall obstaclespeed if max Speed isnt reached
            if (DefValues.maxSpeed < ObstacleSpeed.getSpeed())
            {
                ObstacleSpeed.setSpeed(ObstacleSpeed.getSpeed() - DefValues.increaseSpeed);
            }

            //obstacle or item
            if (Random.value > 0.9f)
            {
                //spawn Item
                int itemNumber = (int)Random.Range(0.0f, (float)items.Length);
                SpawnItem(itemNumber);
            }
            else
            {
                //spawn Obstacle
                float random = Random.Range(0.0f, (float)obstacles.Length);

                switch ((int)random)
                {
                case 0:
                    if (random > 0.6f)
                    {
                        SpawnChocolate();
                    }
                    else
                    {
                        SpawnRock();
                    }
                    break;

                case 1:
                    SpawnRock();
                    break;

                case 2:
                    SpawnBouncing();
                    break;

                case 3:
                    //also SpawnBouncing because its on slot 4 of the obstacles (nneds a fix)
                    SpawnRock();
                    break;

                default:
                    Debug.LogError("No Obstacle with id " + (int)random);
                    break;
                }
            }
        }
        yield return(null);
    }