Unity keeps trying to invoke a void that no longer exists or is no longer being invoked.
I’m repeatedly getting this message in my console:
Even after I have went though and deleted the invoke call and the method it’s trying to call.
Current script (No invoke or function to invoke, but tries to do so):
using UnityEngine;
using System.Collections;
public class SpawnerGroupEnableTime : MonoBehaviour {
public GameObject firststage;
public GameObject Secondstage;
public GameObject ZeroStage;
public SqiushySpawner SquishySpawner1;
// Use this for initialization
void Start ()
{
ZeroStage.SetActive (true);
firststage.SetActive (false);
Secondstage.SetActive (false);
Invoke ("DelaySpawn", 25.5f);
Invoke ("DelaySecondStage", 35.0f);
//Still Trying to invoke the third stage even though it's gone.
//Invoke was was being called here after 55 seconds.
}
// Update is called once per frame
void DelaySpawn ()
{
if (SquishySpawner1.WillSpawnSquishy == true)
{
firststage.SetActive (true);
}
else
{
return;
}
}
void DelaySecondStage()
{
if (SquishySpawner1.WillSpawnSquishy == true)
{
Secondstage.SetActive (true);
}
else
{
return;
}
}
//Location of the void "DelayThirdStage" that was being invoked.
}
Old Script With the invoke (This is from a backup of the project):
using UnityEngine;
using System.Collections;
public class SpawnerGroupEnableTime : MonoBehaviour {
public GameObject firststage;
public GameObject Secondstage;
public GameObject ZeroStage;
public GameObject ThirdStage;
public SqiushySpawner SquishySpawner1;
// Use this for initialization
void Start ()
{
ZeroStage.SetActive (true);
firststage.SetActive (false);
Secondstage.SetActive (false);
ThirdStage.SetActive (false);
Invoke ("DelaySpawn", 25.5f);
Invoke ("DelaySecondStage", 35.0f);
Invoke ("DelayThirdStage", 55.0f);
}
// Update is called once per frame
void DelaySpawn ()
{
if (SquishySpawner1.WillSpawnSquishy == true)
{
firststage.SetActive (true);
}
else
{
//Debug.Log("Delay spawn is about to return");
return;
}
}
void DelaySecondStage()
{
if (SquishySpawner1.WillSpawnSquishy == true)
{
Secondstage.SetActive (true);
}
else
{
//Debug.Log("Delay second Stage is about to return");
return;
}
}
void DelayThirdStage()
{
if (SquishySpawner1.WillSpawnSquishy == true)
{
ThirdStage.SetActive (true);
}
else
{
//Debug.Log("Delay second Stage is about to return");
return;
}
}
}
How could this be happening? any one willing to help or give advice it will be appreciated
!
