IEnumerator Cycle() { while (true) { //appear foreach (Collider2D col in colliders) { col.enabled = true; } yield return(new WaitForSeconds(Random.Range(AppearTimeMin, AppearTimeMax))); //fade out StartCoroutine(anim.AnimationCoroutine()); yield return(new WaitForSeconds(FadeAnimationTime)); //disappear foreach (Collider2D col in colliders) { col.enabled = false; } yield return(new WaitForSeconds(Random.Range(DisappearTimeMin, DisappearTimeMax))); //fade in StartCoroutine(anim.AnimationCoroutine(back: true)); yield return(new WaitForSeconds(FadeAnimationTime)); } }
IEnumerator PlayerEnterPortalCoroutine(GameObject player) { SpriteColorLerpCoroutine anim = new SpriteColorLerpCoroutine(player, new Color(255f, 255f, 255f, 1f), new Color(255f, 255f, 255f, 0f), EnterPortalTime); //fade out player.GetComponent <Rigidbody2D>().velocity = Vector3.zero; player.GetComponent <Rigidbody2D> ().angularVelocity = 0f; player.GetComponent <Rigidbody2D> ().isKinematic = true; StartCoroutine(anim.AnimationCoroutine()); yield return(new WaitForSeconds(EnterPortalTime)); player.transform.position = new Vector3(toPortal.gameObject.transform.position.x, toPortal.gameObject.transform.position.y, player.transform.position.z); //fade in StartCoroutine(anim.AnimationCoroutine(back: true)); yield return(new WaitForSeconds(EnterPortalTime)); player.GetComponent <Rigidbody2D> ().isKinematic = false; }
IEnumerator Cycle() { while (true) { yield return(new WaitForSeconds(Random.Range(spawnMinInterval, spawnMaxInterval))); number.SetActive(true); number.transform.localRotation = Quaternion.Euler(0f, 0f, Random.Range(0f, 359f)); StartCoroutine(transformAnimation.AnimationCoroutine()); StartCoroutine(colorAnimation.AnimationCoroutine()); yield return(new WaitForSeconds(moveTime)); number.SetActive(false); } }