Сборный модуль Unity, который я разместил, не перемещается

#c# #visual-studio #unity3d

#c# #visual-studio #unity3d

Вопрос:

Я хочу переместить сборный объект, поэтому я пишу этот код, но когда я размещаю сборный объект на сцене, он не перемещается. Меняется только сборный модуль в файлах x.

Что я должен делать? (Это 2D-игра.)

 public IEnumerator IfButtonTouched() {

  Debug.Log("isWorking?");
  while (timer <= seconds) {

    timer  = Time.deltaTime;

    obstacle.transform.Translate((new Vector3( - 1, 0, 0)) * speed * Time.deltaTime);

    Debug.Log("pleaseWork");
    yield
    return null;
  }

}
 

Комментарии:

1. Вы только сказали ему перемещаться по оси x. Он не может творить чудеса

Ответ №1:

Вы не можете получить доступ к сборке с именем GameObject.

Вы не можете Instantiate(obstacle, transform.position, quaternion.identity) , а затем

 obstacle.transform.Translate
 

Конечно, вы переместите сборный модуль, а не сам объект!

Вы должны сделать это так

 GameObject obstacleSpawned = Instantiate(obstacle, transform.position, Quaternion.Identity) as GameObject;
 

И тогда вы можете получить к нему доступ obstacleSpawned и переместить его!

Комментарии:

1. Спасибо, что помогли мне!! Я попробую. Большое вам спасибо!

2. @Soo если это сработало, тогда примите ответ, чтобы он был полезен для других 🙂