При нажатии клавиши 'C' создается новый куб с твердым телом и добавляется в качестве дочернего объекта для GameObject. Однако, когда нажата клавиша F, я добавляю взрыв ко всем дочерним объектам, но ничего не происходит. Я попытался AddForce (), и это прекрасно работает, это просто AddExplosionForce (). Я только начал работать с единицей, так что это может быть глупой ошибкой.
Вот мой метод обновления скрипта:
void Update()
{
if (Input.GetKeyDown(KeyCode.C) || Input.GetMouseButtonDown(0))
{
Vector3 pos = transform.position;
cube = Instantiate(cubePrefab, pos, Quaternion.identity);
GameObject ParentCube = GameObject.Find("GameObject");
cube.transform.parent = ParentCube.transform;
}
if (Input.GetKeyDown(KeyCode.F))
{
foreach (Transform currentCube in transform)
{
Vector3 pointOfExplosion = new Vector3(transform.position.x - 1, transform.position.y - 1, transform.position.z - 1);
currentCube.GetComponent<Rigidbody>().AddExplosionForce(20, pointOfExplosion, 10, 1);
}
}
}