public virtual void DetermineAttackState(bool inputActive)
        {
            if (currentHitAnimationCooldown >= 0.0f)
            {
                currentHitAnimationCooldown -= 0.5f * Time.deltaTime;
            }
            else
            {
                this_Animator.speed = 1.5f;
            }

            var isWeaponIdle = this_Animator.GetCurrentAnimatorStateInfo(0).IsName("Idle");

            if (character_Stats.HasStamina(staminaUsage))
            {
                if (inputActive && isWeaponIdle && character_Power.AllowOtherActions())
                {
                    character_Stats.TakeStamina(staminaUsage);
                    this_Animator.SetTrigger("Attack");
                    isAttacking = true;
                }
            }

            this.ResetAttackAnimations(inputActive, isWeaponIdle);
        }