- Home /
Question by
Ssali_muhamood123 · Apr 07, 2015 at 08:39 PM ·
gameobjectfalsetrueleftphase
hi, am getting these two errors
UnityException: Tag: Moveable is not defined! MoveRight.Start () (at Assets/MoveRight.cs:19)
NullReferenceException MoveRight.Update () (at Assets/MoveRight.cs:67)
with the following code
using UnityEngine; using System.Collections;
public class MoveLeft : MonoBehaviour { public Vector3 moveSpeed = new Vector3(); private bool moving = false; private GameObject[] scene; //array of game objects that conform the scene private GameObject bg;
// Use this for initialization
void Start()
{
scene = GameObject.FindGameObjectsWithTag("Moveable"); //Game objects with Moveable tag
bg = GameObject.Find("Background"); //Game Background
}
// Update is called once per frame
void Update()
{
/* Detect touch */
if (Application.platform == RuntimePlatform.Android)
{
if (Input.touchCount > 0)
{
if (Input.GetTouch(0).phase == TouchPhase.Began)
{
CheckTouch(Input.GetTouch(0).position, "began");
} else if (Input.GetTouch(0).phase == TouchPhase.Ended)
{
CheckTouch(Input.GetTouch(0).position, "ended");
}
}
}
if (Application.platform == RuntimePlatform.OSXEditor)
{
if (Input.GetMouseButtonDown(0))
{
CheckTouch(Input.mousePosition, "began");
}
if (Input.GetMouseButtonUp(0))
{
CheckTouch(Input.mousePosition, "ended");
}
}
// Move if button is pressed
if (moving && bg.transform.position.x < 4.82f)
{
for (int i = 0; i < scene.Length; i++)
{
if (scene [i] != null)
{
scene [i].transform.position += moveSpeed;
}
}
}
}
void CheckTouch(Vector3 pos, string phase)
{
Vector3 wp = Camera.main.ScreenToWorldPoint(pos);
Vector2 touchPos = new Vector2(wp.x, wp.y);
Collider2D hit = Physics2D.OverlapPoint(touchPos);
if (hit.gameObject.name == "LeftButton" && hit && phase == "began")
{
moving = true;
}
if (hit.gameObject.name == "LeftButton" && hit && phase == "ended")
{
moving = false;
}
}
}
Comment
Answer by tanoshimi · Apr 07, 2015 at 08:42 PM
The error message is pretty explicit - you haven't got a tag called "Moveable" defined. Therefore scene
is null, which is what the second error tells you.