Fix default spawn issue TODO: Fix issue with spawning when loading from other scenes
36 lines
1.0 KiB
C#
36 lines
1.0 KiB
C#
using UnityEngine;
|
|
using UnityEngine.SceneManagement;
|
|
|
|
namespace Scampz.GameJam.Assets.Scripts.Player
|
|
{
|
|
public class PlayerState : MonoBehaviour
|
|
{
|
|
private Animator _animator;
|
|
private bool _canMove;
|
|
private GameObject _player;
|
|
private CharacterController _characterController;
|
|
public string SceneName;
|
|
|
|
private void Start()
|
|
{
|
|
_animator = GetComponent<Animator>();
|
|
_player = GameObject.FindGameObjectWithTag("Player");
|
|
_characterController = _player.GetComponent<CharacterController>();
|
|
}
|
|
|
|
private void Update()
|
|
{
|
|
_canMove = true;
|
|
_animator.SetFloat("Speed", _characterController.velocity.magnitude);
|
|
var rayCasterExists = TryGetComponent<RayCaster>(out var rayCaster);
|
|
if (SceneManager.GetActiveScene().name.Equals("WorldMap") && rayCasterExists)
|
|
_canMove = rayCaster.IsWithinBoundsWithRay();
|
|
|
|
if (SceneName != string.Empty && SceneName != "WorldMap")
|
|
SceneName = SceneManager.GetActiveScene().name;
|
|
}
|
|
|
|
public bool CanMove => _canMove;
|
|
}
|
|
}
|