void AimingHandler()
    {
        if (gunHandler)
        {
            if ((int)status < 2)
            {
                if ((int)gunHandler.status < 2 && !playerBlocking() && playerStatus != Status.sprinting)
                {
                    if (toggleADS && input.aim)
                    {
                        status = (status == GunControlStatus.aiming) ? GunControlStatus.ready : GunControlStatus.aiming;
                    }
                    else if (!toggleADS)
                    {
                        status = (input.aiming) ? GunControlStatus.aiming : GunControlStatus.ready;
                    }
                }
                else
                {
                    status = GunControlStatus.ready;
                }
            }

            AdjustFOV(isAiming());
            gunHandler.AimDownSights(isAiming());
            ui.SetCrosshair(isAiming() ? 0.01f : bulletSpread, isAiming());
            weaponSwaying.SetSwayMultiplier(isAiming() ? gunHandler.gun.aimDownMultiplier : 1f);
        }
        else
        {
            status = GunControlStatus.none;
            weaponSwaying.SetSwayMultiplier(1f);
            ui.SetCrosshair(0.01f, true);
        }
    }