2015-01-21 2 views
-4

Я начинаю с Unity3D и программирую с C#. Я делаю игру под названием flappy plane. Проблема заключается в уничтожении препятствий после того, как они уходят с экрана. Я сделал prefab и код, который делает клоны этого сборника где-то на сцене (с помощью экземпляра) и, конечно же, что сборник (препятствие) перемещается влево.Создание игры «Flappy Bird» в Unity3D (Flappy Plane), как уничтожить препятствия?

Я попытался с помощью этого кода:

void Update() 
{ 
    Vector2 position = Camera.main.WorldToScreenPoint (transform.position); 
    if (position.x < Screen.width) 
    { 
// Here I will try to destroy the obstacle. 
     } 
    } 

Этот код на самом деле не логика поэтому, пожалуйста, люди помогают мне. Я пытался это сделать, но я не знаю, как я могу сделать ширину. Я хочу уничтожить препятствия для ускорения игры. Благодаря!

ответ

0

MonoBehaviour.Destroy(gameObject) что вы после? Я не совсем уверен, в какой части процесса вы боретесь?

Edit: С осветления, ниже пересмотренный ответ:

Трек позиция игроков координирует и когда объект находит, что его собственные координаты менее, что игроки координируют минус смещение, где игрок находится на экране, уничтожить его. В основном что-то вроде следующее (при условии, что камера всегда сосредоточены на игрока и перемещается вместе с ней):

void Update() 
{ 
    int xBound = Camera.main.transform.position.x - (Screen.width/2); 
    if (transform.position.x < xBound) 
    { 
     MonoBehaviour.Destroy(gameObject) 
    } 
} 
+0

Нет, я знаю, как сделать это, но код, написанный там не работает, скорее всего, если утверждение неверно, я не знаю, что там делать. –

+0

Отредактировал свой ответ, чтобы ответить на вопрос. –

+0

Все еще не работает .. и я не знаю, поняли ли вы меня, что я спросил. –

Смежные вопросы