У меня есть игровой объект spawner, который порождает 2 падающих префаба случайным образом.
Первая версия spawner содержала только систему порождения, и эффект падения был компонентом, который был у префабов, проблема была в том, что яхотел, чтобы в процессе игры SpawnRatio и скорость падения увеличивались с синхронизацией, поэтому я объединил системы нереста и падения в игровой объект spawner, и теперь по какой-то причине объекты появляются, но не падают.
public class Random_Spawn : MonoBehaviour {
public GameObject cube, circle;
public float spawnRate = 2f;
static float fallSpeed = 2f;
float nextSpawn = 0f;
int whatToSpawn;
void Update()
{
if (Time.time > nextSpawn)
{
whatToSpawn = Random.Range(1, 3);
switch (whatToSpawn)
{
case 1:
GameObject myCube = (GameObject)Instantiate(cube, transform.position, Quaternion.identity);
myCube.transform.Translate(Vector2.down * fallSpeed * Time.deltaTime, Space.World);
myCube.transform.parent = transform;
break;
case 2:
GameObject myCircle = (GameObject)Instantiate(circle, transform.position, Quaternion.identity);
myCircle.transform.Translate(Vector2.down * fallSpeed * Time.deltaTime, Space.World);
myCircle.transform.parent = transform;
break;
}
nextSpawn = Time.time + spawnRate;
if (spawnRate >= 0.05)
{
spawnRate -= 0.04f;
fallSpeed -= 0.04f;
}
}
}
}