2015-01-31 2 views
-2

코드에서 플레이어가 장애물을 회피하고 장애물이 -13 (오프 스크린)의 x 위치로 이동하는지 확인하려고합니다. 그것이 나타나면 다시 x 또는 y 좌표로 임의로 나타납니다. 내가 의도 한대로 코드를 제대로 수행하지 못한다고 오류가 발생하지 않습니다. 여기 내 코드 :전체 적 대상을 새로운 지점으로 이동

using UnityEngine; 
using System.Collections; 

public class Obstacle : MonoBehaviour 
{ 
    public GameObject sphere; 
    public Vector2 velocity = new Vector2(-4f, 0f); 
    public float x_range=0f; 
    public float y_range=0f; 

    // Use this for initialization 
    void Start() 
    { 
     rigidbody2D.velocity = velocity; 
    } 

    void update() 
    { 
     if (transform.position.x < -13f) 
     { 
      //random x 
      x_range=Random.Range(15,30); 
      //random y 
      y_range=Random.Range(-12,7); 
      sphere.transform.position=new Vector3(x_range,y_range,transform.position.z); 
     } 
    } 
} 

다시 무슨 문제인지. Unity 2d, C#을 사용하고 있습니다.

+0

사람들은 왜 도움을 요청하지 않고 투표를합니까? –

+0

나는 왜 당신이 모든 투표를했는지 모르겠습니다. 사람들에게 의견을 남기고 왜 그런지 말하면 훨씬 더 도움이 될 것입니다. 그러나 질문에 대해 : 스크립트가 장애물을 움직이는 "장면"보기를 확인 했습니까? – maZZZu

+0

예 x 위치를 보거나 좌표가 -13보다 작아집니다. –

답변

4

C#은 대소 문자를 구분합니다. 즉, updateUpdate은 같지 않습니다. Unity는 각 프레임을 호출하기 위해 Update이라는 메서드를 찾고 사용자의 update 메서드가 일치하지 않습니다.

그냥 U을 사용하면 도움이됩니다.

관련 문제