예제 #1
0
 public override System.Collections.IEnumerator LevelComplete()
 {
     animator.Shoryuken();
     StartCoroutine(animator.JumpOffscreen());
     foreach (SlideAnimation item in menuItems)
     {
         item.MovingTowards = false;
         if (item.tag == "arrow")
         {
             StartCoroutine(item.MoveTo(new UnityEngine.Vector3(0.0f, -8.0f)));
         }
         else
         {
             StartCoroutine(item.MoveBackwards());
         }
     }
     sfx.PlaySound(SoundManager.SOUNDS.VICTORY);
     StartCoroutine(currentNode.Scatter(NODE_DIRECTION.DOWN));
     DecrementRemainingStones();
     while (animator.OnScreen)
     {
         yield return(null);
     }
     SceneManager.LoadScene("Zen Mode");
 }
    // Update is called once per frame
    void Update()
    {
        if (!jumping)
        {
            // Level Complete
            if (levelManager.RemainingStones == 1)
            {
                //if (!animationController.IsShoryuken)
                //    StartCoroutine(animationController.ShoryukenBounce());
                animationController.Shoryuken();
                StartCoroutine(levelManager.LevelComplete());
            }
            animationController.Jump(false);
            KeyboardInput();
            TouchInput();
        }
        else
        {
            animationController.Jump(true);
            if (!resetting)
            {
                transform.position = Vector3.MoveTowards(transform.position, levelManager.CurrentNode.transform.position, jumpSpeed);
                if (transform.position == levelManager.CurrentNode.transform.position)
                {
                    jumping = false;
                    levelManager.CurrentNode.GetComponent <Node>().Squish();
                }

                // squash/stretch over jump
                if (Vector2.Distance(transform.position, levelManager.CurrentNode.transform.position) > distanceFromNextRock / 2.0f)
                {
                    transform.localScale += new Vector3(scaleAmount, scaleAmount);
                }
                else
                {
                    if (transform.localScale.x > 1.0f)
                    {
                        transform.localScale -= new Vector3(scaleAmount, scaleAmount);
                    }
                }
            }
        }
    }