C#
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4 5public class Enemy : MovingObject 6{ 7 private Transform target; 8 private GameObject nearestfood; 9 private float dist; 10 11 // Use this for initialization 12 protected override void Start() 13 { 14 GameManager.instance.AddEnemyToList(this); 15 16 GameObject[] foods = GameObject.FindGameObjectsWithTag("Food"); 17 foreach(GameObject food in foods) 18 { 19 Vector3 foodPos = food.transform.position; 20 dist = Vector3.Distance(this.transform.position, food.transform.position); 21 nearestfood = null; 22 if(dist < 11) 23 { 24 nearestfood = food; 25 target = nearestfood.transform; 26 } 27 } 28 if (dist > 10) 29 { 30 int rampos_x = Random.Range(4, 104); 31 int rampos_y = Random.Range(4, 104); 32 GameObject ramobject = null; 33 Vector3 pos = ramobject.transform.position; 34 pos.x = rampos_x; 35 pos.y = rampos_y; 36 ramobject.transform.position = pos; 37 target = ramobject.transform; 38 } 39 40 //target = GameObject.FindGameObjectWithTag("Food").transform; 41 base.Start(); 42 } 43//省略
Vector3 pos = ramobject.transform.position;
で
NullReferenceException: Object reference not set to an instance of an object
Enemy.Start () (at Assets/Enemy.cs:33)
というエラーが出て来てしまいます。
なぜエラーになるか分からないので、理由を教えていただけないでしょうか?
回答お願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/05/14 13:04