Значения не реализуются должным образом ⇐ C#

Место общения программистов C#
Anonymous
Значения не реализуются должным образом

Сообщение Anonymous »

Я пытаюсь начать кодировать в Unity, и я следил за учебником. Короче говоря, я хотел отредактировать игру после того, как закончил учебник. Я хотел сделать так, чтобы игровая объект случайным образом появился в другом месте после сбора.
Вот сценарий для собранного объекта: < /p>
void Start()
{
float x = Random.Range((float)-17.5, 17);
float y = Random.Range((float)-8.6, (float)8.6);
transform.Translate(x, y, 0);
}

private void OnCollisionEnter2D(Collision2D collision)
{
if (collision.gameObject.tag == "Rabbit")
{
score++;
if (score >= winScore)
{
winText.SetActive(true);
}
else
{
float x = Random.Range((float)-17.5, 17);
float y = Random.Range((float)-8.6, (float)8.6);
transform.Translate(x, y, 0);
}

}
}
< /code>
Код должен перемещать объект, когда он вступает в контакт с контролируемым объектом кролика, однако объект иногда выходит за рамки параметров диапазона. Объект не в каких -либо родительских объектах, так как у меня была небольшая проблема с тем, что координаты отличаются, когда я в родительском объекте, поэтому я не уверен, почему он нерестив вне его диапазона. В качестве дополнительной записки я все еще очень новичок в единстве, поэтому могут быть некоторые вещи, которые я не знаю, это может повлиять на это, но любые исправления приветствуются.

Подробнее здесь: https://stackoverflow.com/questions/796 ... d-properly

Вернуться в «C#»