IEnumerator Teletransport() { PlayerMovement.ToggleInput(); AreaManager.EnableNextArea(); Player.transform.position = ExitPoint.transform.position; PlayerStats.EnteredArea(ExitPoint.transform.position); Camera.transform.position = CameraPosition; yield return(new WaitForSeconds(LockInputDurantion)); AreaManager.DisablePreviousArea(); PlayerMovement.ToggleInput(); }
IEnumerator MoveCamera(Vector3 NewCameraPosition, Vector3 NewPlayerPosition) { Player.transform.position = NewPlayerPosition; Thor.ToggleInput(); AreaManager.EnableNextArea(); float timeElapsed = 0; while (timeElapsed < LerpSmoothness) { Camera.transform.position = Vector3.Lerp(Camera.transform.position, NewCameraPosition, timeElapsed / LerpSmoothness); timeElapsed += Time.deltaTime; yield return(null); } AreaManager.DisablePreviousArea(); Thor.ToggleInput(); ThorStats.EnteredArea(Player.transform.position); }