private IEnumerator CutsceneLogic() { TopDownController p = FindObjectOfType <PlayerController>().GetComponent <TopDownController>(); p.FaceDirection(Vector3.down); while (FadeTransitionScreen.Instance.IsTransitioning) { yield return(null); } FadeTransitionScreen.Instance.SetCinematic(true); p.FaceDirection(Vector3.down); yield return(new WaitForSeconds(1.5f)); p.GetComponent <Animator>().SetTrigger("Dive"); yield return(MoveToPosition(p, "Position", .7f)); p.GetComponent <Animator>().SetTrigger("Roll"); yield return(MoveToPosition(p, "Position2", .3f)); p.GetComponent <Animator>().SetTrigger("RollDone"); yield return(new WaitForSeconds(1f)); yield return(MoveToPosition(p, "Position3", .5f)); yield return(new WaitForSeconds(1f)); SoundManager.Instance.PlaySound(SoundManager.Sound.Music_Transition2); FadeTransitionScreen.Instance.Transition(() => { SceneManager.LoadScene(p.GetComponent <PlayerController>().sceneToWarpBackTo); }); }
private void Update() { if (!lockTarget) { foreach (Transform camp in camps) { if (camp.gameObject.activeSelf) { float MinDistance = 3.45f; float distance = Vector2.Distance(transform.position, camp.transform.position); if (distance < MinDistance - Epsilon) { Vector2 director = new Vector2(camp.transform.position.x - transform.position.x, camp.transform.position.y - transform.position.y); director.Normalize(); transform.Translate(director * 2 * Time.deltaTime); } } if ((Target.transform.position.x < transform.position.x && FaceDirection == 1) || (Target.transform.position.x > transform.position.x && FaceDirection == -1)) { FlipHorizontal(); } } } else { float distance = Vector2.Distance(transform.position, Target.transform.position); if (distance <= .2f && Target.GetSpotlightRadius() == 1) { Target.GetComponent <TopDownController>().isDead = true; } } }
private IEnumerator CutsceneLogic() { TopDownController p = FindObjectOfType <PlayerController>().GetComponent <TopDownController>(); p.FaceDirection(Vector3.right); while (FadeTransitionScreen.Instance.IsTransitioning) { yield return(null); } FadeTransitionScreen.Instance.SetCinematic(true); p.FaceDirection(Vector3.right); yield return(new WaitForSeconds(1f)); yield return(MoveToPosition(p, "PositionOne", 1.5f)); yield return(MoveToPosition(p, "PositionOne (1)", 1.5f)); yield return(new WaitForSeconds(1f)); p.FaceDirection(Vector3.left); yield return(new WaitForSeconds(1f)); yield return(MoveToPosition(p, "PositionTwo", 1f)); yield return(new WaitForSeconds(1.5f)); p.FaceDirection(Vector3.left); yield return(new WaitForSeconds(2f)); yield return(MoveToPosition(p, "PositionThree", .3f)); yield return(MoveToPosition(p, "PositionThree (1)", .2f)); yield return(MoveToPosition(p, "PositionThree (2)", .2f)); yield return(MoveToPosition(p, "PositionThree (3)", .2f)); yield return(MoveToPosition(p, "PositionThree (4)", .3f)); yield return(new WaitForSeconds(1f)); yield return(DialogueManager.Instance.StartDialogueThreaded(cutsceneDialogue)); SoundManager.Instance.PlaySound(SoundManager.Sound.Music_Transition2); FadeTransitionScreen.Instance.Transition(() => { SceneManager.LoadScene(p.GetComponent <PlayerController>().sceneToWarpBackTo); }); }
private IEnumerator CutsceneLogic() { while (FadeTransitionScreen.Instance.IsTransitioning) { yield return(null); } FadeTransitionScreen.Instance.SetCinematic(true); yield return(new WaitForSeconds(3f)); GameObject fargoth = GameObject.Find("Fargoth"); TopDownController p = FindObjectOfType <PlayerController>().GetComponent <TopDownController>(); yield return(MoveToPosition(p, GameObject.Find("CinemaStartPos").transform.position, 1.5f)); p.FacePosition(fargoth.transform.position); yield return(new WaitForSeconds(1f)); yield return(MoveToPosition(fargoth.GetComponent <TopDownController>(), p.transform.position + Vector3.left * 4f, 1f)); yield return(new WaitForSeconds(.5f)); yield return(MoveToPosition(fargoth.GetComponent <TopDownController>(), p.transform.position + Vector3.left * 2f, 3f)); yield return(new WaitForSeconds(1f)); yield return(DialogueManager.Instance.StartDialogueThreaded(cutsceneDialogue)); yield return(MoveToPosition(fargoth.GetComponent <TopDownController>(), p.transform.position + Vector3.left * 2f + Vector3.up * 20f, 1f)); if (partSyst != null) { partSyst.Stop(); } yield return(new WaitForSeconds(3f)); SoundManager.Instance.PlaySound(SoundManager.Sound.Music_Transition2); FadeTransitionScreen.Instance.Transition(() => { SceneManager.LoadScene(p.GetComponent <PlayerController>().sceneToWarpBackTo); }); }
private IEnumerator CutsceneLogic() { TopDownController p = FindObjectOfType <PlayerController>().GetComponent <TopDownController>(); p.FaceDirection(Vector3.down); while (FadeTransitionScreen.Instance.IsTransitioning) { yield return(null); } FadeTransitionScreen.Instance.SetCinematic(true); p.FaceDirection(Vector3.down); p.GetComponent <Animator>().SetFloat("whipY", -1); p.GetComponent <Animator>().SetTrigger("Whip"); p.GetComponent <Animator>().SetTrigger("WhipHoldDone"); yield return(new WaitForSeconds(1f)); StartCoroutine(MoveToPosition(GameObject.Find("ThrowEnemy").GetComponent <TopDownController>(), Vector3.down, .3f, true)); p.FaceDirection(Vector3.left); p.GetComponent <Animator>().SetFloat("whipY", 0); p.GetComponent <Animator>().SetFloat("whipX", -1); p.GetComponent <Animator>().SetTrigger("Whip"); p.GetComponent <Animator>().SetTrigger("WhipHoldDone"); StartCoroutine(MoveToPosition(GameObject.Find("ThrowEnemy (1)").GetComponent <TopDownController>(), Vector3.left, .3f, true)); yield return(new WaitForSeconds(1.5f)); p.FaceDirection(Vector3.right); p.GetComponent <Animator>().SetFloat("whipX", -1); p.GetComponent <Animator>().SetTrigger("Whip"); p.GetComponent <Animator>().SetTrigger("WhipHoldDone"); StartCoroutine(MoveToPosition(GameObject.Find("ThrowEnemy (2)").GetComponent <TopDownController>(), Vector3.right, .3f, true)); yield return(new WaitForSeconds(1f)); yield return(new WaitForSeconds(1f)); SoundManager.Instance.PlaySound(SoundManager.Sound.Music_Transition2); FadeTransitionScreen.Instance.Transition(() => { SceneManager.LoadScene(p.GetComponent <PlayerController>().sceneToWarpBackTo); }); }