private IEnumerator SelfDestroyCoroutine() { // Destroy the goods on head only start cast dissolve animation gameObject.transform.Find("Goods").GetComponent <SelfDestroyScript>().SelfDestroy(); yield return(StartCoroutine(dissolveScript.Dissolve())); GameObject.Find("GlobalManager").GetComponent <GlobalManager>().GetBuyerManager().releaseSlot(transform.parent.gameObject); Destroy(transform.parent.gameObject); }
private IEnumerator TakeDamageCoroutine(float dam) { hp -= dam; // check if dead if (hp <= 0) { PlayAudio(enemyDeadAudio); yield return(StartCoroutine(dissolveScript.Dissolve())); currState = State.Dead; GameObject parentObject = transform.parent.gameObject; GameObject spawnPointObject = transform.parent.parent.gameObject; GameObject.Find("GlobalManager").GetComponent <GlobalManager>().GetEnemyManager().releaseSlot(parentObject, spawnPointObject); Destroy(parentObject); } else { PlayAudio(enemyDamageAudio); } yield return(null); }