IEnumerator ActiveAndPositionObject(SpawnObject so)
 {
     while (true)
     {
         so.ActiveRandomObject();
         yield return(new WaitForSeconds(Random.Range(so.minTimeToSpawn, so.maxTimeToSpawn)));
     }
 }
    IEnumerator CreateBeginingBG(SpawnObject so)
    {
        float   endMapX           = 8f;
        Vector3 currentSpawnPoint = new Vector3(-8f, so.spawnPoint.position.y, so.spawnPoint.position.z);

        while (currentSpawnPoint.x < endMapX)
        {
            // Random position
            float offSet = Random.Range(minDistanceSpawn, maxDistanceSpawn);
            currentSpawnPoint += new Vector3(offSet, 0, 0);
            // enable and set Object on new position
            so.ActiveRandomObject(currentSpawnPoint);

            yield return(null);
        }
    }
 void SpawnPlayer()
 {
     playerSO.ActiveRandomObject();
 }