private void Start()
    {
        InvokeRepeating("EstimatePlayerVelocity_InvokeRepeating", 1.0f, velocityPollPeriod);

        WeapSelect  = GetComponent <WeaponSelection>();
        controller  = GetComponent <CharacterController>();
        PlayST      = GetComponent <PlayerStats>();
        playerInt   = GetComponent <Interaction>();
        audioSrc    = GetComponent <AudioSource>();
        rb          = GetComponent <Rigidbody>();
        SwordAni    = SwordModel.GetComponent <AnimatedSword>();
        playerSpeed = walkSpeed;
        rayDistance = controller.height * .5f + controller.radius;
        slideLimit  = controller.slopeLimit - .1f;
        jumpTimer   = antiBunnyHopFactor;
        myTransform = transform;
        canRun      = true;
    }
    public void EnableWeapon(int sword)
    {
        //audioSrc.PlayOneShot(selection);
        EnableSword = SwordModel.GetComponent <AnimatedSword>();
        //if (sword == 0)
        //{
        //    Armed.SetActive(true);
        //    arrows.enabled = true;
        //    arrowUI.enabled = true;
        //    weaponSelected.text = "Crossbow";
        //    broadSword.SetActive(false);
        //    magicSword.SetActive(false);
        //    thunderSword.SetActive(false);
        //    crossBow.SetActive(true);
        //    swordOfIce.SetActive(false);
        //    Unarmed.SetActive(false);
        //    crossbowImg.enabled = true;
        //    broadSwordImg.enabled = false;
        //    magicSwordImg.enabled = false;
        //    thunderSwordImg.enabled = false;
        //    swordOfIceImg.enabled = false;
        //    UnarmedEnabled = false;

        //}
        if (sword == 1)
        {
            powcount = GetComponent <PowerCounter>();
            Armed.SetActive(true);
            arrows.enabled      = false;
            arrowUI.enabled     = false;
            weaponSelected.text = "Broad Sword";
            broadSword.SetActive(true);
            magicSword.SetActive(false);
            thunderSword.SetActive(false);
            crossBow.SetActive(false);
            swordOfIce.SetActive(false);
            Unarmed.SetActive(false);
            crossbowImg.enabled     = false;
            broadSwordImg.enabled   = true;
            magicSwordImg.enabled   = false;
            thunderSwordImg.enabled = false;
            swordOfIceImg.enabled   = false;
            UnarmedEnabled          = false;
            powcount.EnableWeapon(1);
            EnableSword.SwordEquip(AnimatedSword.EquipSword.BroadSword);
        }
        if (sword == 2)
        {
            powcount = GetComponent <PowerCounter>();
            Armed.SetActive(true);
            arrows.enabled      = false;
            arrowUI.enabled     = false;
            weaponSelected.text = "Flame Sword";
            broadSword.SetActive(false);
            magicSword.SetActive(true);
            thunderSword.SetActive(false);
            crossBow.SetActive(false);
            swordOfIce.SetActive(false);
            Unarmed.SetActive(false);
            crossbowImg.enabled     = false;
            broadSwordImg.enabled   = false;
            magicSwordImg.enabled   = true;
            thunderSwordImg.enabled = false;
            swordOfIceImg.enabled   = false;
            UnarmedEnabled          = false;
            powcount.EnableWeapon(2);
            EnableSword.SwordEquip(AnimatedSword.EquipSword.FlameSword);
        }
        if (sword == 3)
        {
            powcount = GetComponent <PowerCounter>();
            Armed.SetActive(true);
            arrows.enabled      = false;
            arrowUI.enabled     = false;
            weaponSelected.text = "Electro Sword";
            broadSword.SetActive(false);
            magicSword.SetActive(false);
            thunderSword.SetActive(true);
            crossBow.SetActive(false);
            swordOfIce.SetActive(false);
            Unarmed.SetActive(false);
            crossbowImg.enabled     = false;
            broadSwordImg.enabled   = false;
            magicSwordImg.enabled   = false;
            thunderSwordImg.enabled = true;
            swordOfIceImg.enabled   = false;
            UnarmedEnabled          = false;
            powcount.EnableWeapon(3);
            EnableSword.SwordEquip(AnimatedSword.EquipSword.ThunderSword);
        }
        if (sword == 4)
        {
            powcount = GetComponent <PowerCounter>();
            Armed.SetActive(true);
            arrows.enabled      = false;
            arrowUI.enabled     = false;
            weaponSelected.text = "Glacial Sword";
            broadSword.SetActive(false);
            magicSword.SetActive(false);
            thunderSword.SetActive(false);
            crossBow.SetActive(false);
            swordOfIce.SetActive(true);
            Unarmed.SetActive(false);
            crossbowImg.enabled     = false;
            broadSwordImg.enabled   = false;
            magicSwordImg.enabled   = false;
            thunderSwordImg.enabled = false;
            swordOfIceImg.enabled   = true;
            UnarmedEnabled          = false;

            EnableSword.SwordEquip(AnimatedSword.EquipSword.GlacialSword);
            powcount.EnableWeapon(4);
        }
        if (sword == 5)
        {
            arrows.enabled      = false;
            arrowUI.enabled     = false;
            weaponSelected.text = "Unarmed";
            Armed.SetActive(false);
            Unarmed.SetActive(true);
            crossbowImg.enabled     = false;
            broadSwordImg.enabled   = false;
            magicSwordImg.enabled   = false;
            thunderSwordImg.enabled = false;
            swordOfIceImg.enabled   = false;
            UnarmedEnabled          = true;
        }
        UnarmedEnabled = false;
        SwordAttacked  = SwordModel.GetComponent <AnimatedSword>();
        SwordAttacked.ResetAttacked();
    }