Как спаунить объекты на уровне в зависимости от позиции игрока по оси Y

Игра бесконечный раннер, игрок спускается по склону и объекты дальше должны появляться ниже заданной точки в начале

 public class Spawn : MonoBehaviour
{
    public float speed;
    public GameObject pl;
    public GameObject obj;
    public GameObject[] fields;
    public GameObject cam;
    Rigidbody2D rb;
    bool b = false;
    int sizeOfFields;
    
    //References
    void Start()
    {
        rb = GetComponent<Rigidbody2D>();
        
    }

    
    // Update is called once per frame
    void Update()
    {
        sizeOfFields = Random.Range(0, fields.Length);
        transform.Translate(Vector2.left * speed * Time.deltaTime);
        if (transform.position.x <= -8.779995f)
        {
            Destroy(gameObject);
        }
        if (transform.position.x <= -3.779995f && !b)
        {
            CreateNewWay();
            b = true;
            StartCoroutine(t());
        }
    }
    void CreateNewWay()
    {
        obj = fields[sizeOfFields];

        Instantiate(obj, new Vector3(20.46f, transform.position.y, 0), Quaternion.identity);
    }
    IEnumerator t()
    {
        yield return new WaitForSeconds(4);
        b = false;
    }

}

Ответы (0 шт):