change StateManager to use StartCoroutine and IEnumerator instead of switch case during Update. Also made delayed destroy animation using StartCoroutine.