protected void SpawnMinion(GameObject prefab, Vector3 position, Minion.MinionEventHandler deathCallBack) { GameObject spawned = Instantiate(prefab, position, Quaternion.identity) as GameObject; spawned.SendMessage("SetWalkTarget", transform.position); Minion minionScript = spawned.GetComponent <Minion>(); minionScript.OnMinionDeath += deathCallBack; }
virtual protected IEnumerator spawnMinion(GameObject prefab, Vector3 spawnPosition, Minion.MinionEventHandler deathCallBack, GameObject spawnEffects) { spawnEffects.transform.position = spawnPosition; //spawnEffects.SetActiveRecursively(true); yield return(new WaitForSeconds(2f)); //spawnEffects.SetActiveRecursively(false); spawnEffects.transform.position = effectHoldingPosition; GameObject spawned = Instantiate(prefab, spawnPosition, Quaternion.identity) as GameObject; //print("spawned: " + spawned.name); spawned.SendMessage("SetWalkTarget", walkTarget); Minion minionScript = spawned.GetComponent <Minion>(); if (deathCallBack != null) { minionScript.OnMinionDeath += deathCallBack; } }