diff --git a/Assets/Scripts/Managers/SceneManager.cs b/Assets/Scripts/Managers/SceneManager.cs index 8fa7a1fa..e7252367 100644 --- a/Assets/Scripts/Managers/SceneManager.cs +++ b/Assets/Scripts/Managers/SceneManager.cs @@ -28,15 +28,11 @@ public class SceneManager if (spawn.name.ToLower() == _spawnLocationName.ToLower()) { var interactable = spawn.GetComponent(); - Player.Instance.SetPosition(interactable._interactionPoint.position); - Player.Instance.Rotate(interactable._interactionPoint.forward * -1); + Player.Instance.SetPosition(interactable._interactionPoint); + } } } - else - { - Player.Instance.SetPosition(Vector3.zero); - } GameManager.Instance.Camera.ResetToPlayerPosition(); } } diff --git a/Assets/Scripts/Player/BaseCharacter.cs b/Assets/Scripts/Player/BaseCharacter.cs index 73bddbbc..59ddd7d1 100644 --- a/Assets/Scripts/Player/BaseCharacter.cs +++ b/Assets/Scripts/Player/BaseCharacter.cs @@ -89,7 +89,7 @@ public abstract class BaseCharacter : MonoBehaviour return false; } - public TaskStatus Rotate(Vector3 target) + protected TaskStatus Rotate(Vector3 target) { var targetRot = Quaternion.LookRotation(target); Quaternion rotation = Quaternion.Slerp(transform.rotation, Quaternion.LookRotation(target), 10 * Time.deltaTime); diff --git a/Assets/Scripts/Player/Player.cs b/Assets/Scripts/Player/Player.cs index c5ad1245..22240874 100644 --- a/Assets/Scripts/Player/Player.cs +++ b/Assets/Scripts/Player/Player.cs @@ -51,10 +51,11 @@ public class Player : BaseCharacter GameManager.Instance.Time.OnMinuteChanged -= UpdateStatsByClock; } - public void SetPosition(Vector3 desiredPosition) + public void SetPosition(Transform desiredPosition) { - _navAgent.Warp(desiredPosition); + _navAgent.Warp(desiredPosition.position); _navAgent.updatePosition = false; + Rotate(desiredPosition.forward * -1); } public void GoToPoint(BaseInteractableObject point)