I have a Game Object ghostBuddy (with a collider) with script GhostBuddy.cs as here:
using UnityEngine;
using System.Collections;
namespace GameScripts.BalloonBalance {
public class GhostBuddy : MonoBehaviour {
public bool isInsideGhost = false;
void OnTriggerEnter2D (Collider2D other)
{
if (other.gameObject.GetComponent<singleCharacter>() || other.gameObject.GetComponent<Character_Bimanual>()) {
isInsideGhost = true;
}
}
}
}
and I am trying to check from the game manager if isInside Ghost is true , by setting:
public GameObject ghostBuddy;
void Awake() {
ghostBuddy = (GameObject)Instantiate (Resources.Load ("Prefabs/GhostBuddy"));
}
void FixedUpdate () {
currentPoolSize = pool.Count;
if (shouldIDraw) {
if ((ghostBuddy.GetComponent<GhostBuddy> () != null)) {
if (ghostBuddy.GetComponent<GhostBuddy ().isInsideGhost)
StartSpawningBigEgg ();
}
}
else if (!shouldIDraw) {
return;
}
}
void StartSpawningBigEgg() {
if (currentPoolSize == 4) {
Spawn (1, new Vector3 (0, 2.0f, 0));
Spawn (1, new Vector3 (0, 3.0f, 0));
Spawn (1, new Vector3 (0, 4.0f, 0));
}
}
where spawn will just spawn an egg. I get an error
NullReferenceException: Object
reference not set to an instance of an
object
GameScripts.BalloonBalance.GhostBuddy.FixedUpdate
() (
but couldn’t figure out why because I have instatitated everything properly.