using System;
using UnityEngine;

namespace Gyvr.Mythril2D
{
    [Serializable]
    public class MountPolydirectionalAnimationStrategy : PolydirectionalAnimationStrategy
    {
        [Header("Mount Animation Parameters")]
        [SerializeField] private string m_riderIsMountedParameter = "isMounted";

        private bool m_hasRiderIsMountedParameter = false;

        public override void Initialize()
        {
            base.Initialize();

            m_hasRiderIsMountedParameter = AnimationUtils.HasParameter(m_animator, m_riderIsMountedParameter);
        }

        public void SetMountedState(bool value)
        {
            if (m_hasRiderIsMountedParameter)
            {
                m_animator.SetBool(m_riderIsMountedParameter, value);
            }
        }
    }
}
