37 lines
1.2 KiB
C#
37 lines
1.2 KiB
C#
using UnityEngine;
|
|
|
|
namespace Animators.Leonid_Animator.Bot
|
|
{
|
|
[RequireComponent(typeof(Rigidbody))]
|
|
[RequireComponent(typeof(AnimatorHandler))]
|
|
[RequireComponent(typeof(MovementController))]
|
|
[RequireComponent(typeof(NPC))]
|
|
public class BotLocomotion : MonoBehaviour
|
|
{
|
|
private Vector3 _moveDirection;
|
|
private Transform _myTransform;
|
|
|
|
private AnimatorHandler _myAnimatorHandler;
|
|
private MovementController _movementController;
|
|
private NPC _npc;
|
|
private Rigidbody _myRigidbody;
|
|
|
|
private void Start()
|
|
{
|
|
_myRigidbody = GetComponent<Rigidbody>();
|
|
_myAnimatorHandler = GetComponent<AnimatorHandler>();
|
|
_movementController = GetComponent<MovementController>();
|
|
_npc = GetComponent<NPC>();
|
|
|
|
_myTransform = transform;
|
|
_myAnimatorHandler.Initialize();
|
|
}
|
|
|
|
public void UpdateAnimatorValues()
|
|
{
|
|
var movementDir = _movementController.Velocity;
|
|
_myAnimatorHandler.UpdateAnimatorValues( Mathf.Clamp01(movementDir.magnitude), 0,
|
|
false, _npc.NpcBodyState is NpcCrouchingState, _npc.IsFiring);
|
|
}
|
|
}
|
|
} |