ошибка в скрипте C#
есть такой скрипт на сишарпе:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ToiletSpawner : MonoBehaviour
{
public GameObject Platform;
public List<GameObject> blocks = new List<GameObject>();
public GameObject spawner;
void Start()
{
Vector3 spawnPos = spawner.transform.position; GameObject firstblock = Instantiate(Platform, new Vector3(-8, spawnPos.y - 0.04f, 0),Quaternion.identity); //new Quaternion(0, 0, 1, transform.rotation.w))
blocks.Add(firstblock);
}
public void spawn()
{
GameObject block = Instantiate(Platform, new Vector3(-8f, blocks[blocks.Count - 1].transform.position.y + 0.2f, 0),
Quaternion.identity);
blocks.Add(block);
}
}
и он по идее должен создавать платформы на порядок выше предыдущего, но если его запустить то блоки начинаю с 5 будут наезжать друг на друга и сталкиваться ломая всю игру. Сама функция вызывается в другом скрипте:
if (hit.collider.GetComponent<PlatformMove>())
{
Destroy(hit.collider.gameObject.GetComponent<PlatformMove>());
hit.collider.gameObject.GetComponent<Rigidbody>().isKinematic = false;
hit.collider.gameObject.GetComponent<Rigidbody>().mass = 100;
spawner.spawn();
}
как мне исправить эту проблему?