diff --git a/LabApi/Features/Wrappers/Items/Firearm/FirearmItem.cs b/LabApi/Features/Wrappers/Items/Firearm/FirearmItem.cs index a1f3c798..ed379556 100644 --- a/LabApi/Features/Wrappers/Items/Firearm/FirearmItem.cs +++ b/LabApi/Features/Wrappers/Items/Firearm/FirearmItem.cs @@ -127,15 +127,30 @@ internal FirearmItem(Firearm firearm) /// public float BaseLength => Base.BaseLength; + /// + /// Gets whether the player is currently reloading this firearm. + /// + public bool IsReloading => ReloaderModule.IsReloading; + + /// + /// Gets whether the player is currently unloading this firearm. + /// + public bool IsUnloading => ReloaderModule.IsUnloading; + + /// + /// Gets whether the player is either reloading or unloading this firearm. + /// + public bool IsReloadingOrUnloading => ReloaderModule.IsReloadingOrUnloading; + /// /// Gets whether the player can reload this firearm. /// - public bool CanReload => IReloadUnloadValidatorModule.ValidateReload(Base); + public bool CanReload => IReloadUnloadValidatorModule.ValidateReload(Base) && !IsReloadingOrUnloading; /// /// Gets whether the player can unload this firearm. /// - public bool CanUnload => IReloadUnloadValidatorModule.ValidateUnload(Base); + public bool CanUnload => IReloadUnloadValidatorModule.ValidateUnload(Base) && !IsReloadingOrUnloading; /// /// Gets the firearm's ammo type.