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); } } } } }