Example #1
0
    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));
        }
    }
Example #2
0
    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;
    }
Example #3
0
    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);
        }
    }