CatStation/Content.Shared/Weapons/Ranged/Components
Centronias 3c15d9f312
Adds BallisticAmmoSelfRefillerComponent (#38537)
* Adds BallisticAmmoSelfRefillerComponent

And uses it to replace battery-based refilling of the Syndicate L6 and Viper modules.

# Automagic Ballistic Ammo Refilling
- Add `BallisticAmmoSelfRefillerComponent`
- Handle `EmpPulseEvent` to pause refilling behavior for EMP's duration

# Supporting Changes
- Change `Content.Server.Weapons.Ranged.Systems.Update` override in `GunSystem.AutoFire.cs` to `UpdateAutoFire`
- Add `Content.Server.Weapons.Ranged.Systems.Update` to `GunSystem.cs` so that it can call `UpdateAutoFire` and `UpdateBallistic`
- Add public methods to GunSystem for use by refilling implementation
  - PauseSelfRefill
  - IsFullBallistic (same as #299)
  - CanInsertBallistic (same as #299)
  - TryBallisticInsert (same as #299)

* _timing -> Timing

* unspawned count stuff

* imagine building the code before pushing

* - apply to c20r ROW
- make predicted/shared

* revert server system import only changes

* oop

* o great and wise Slarti

* Scar comments

* field deltas + correct serializer

* review

---------

Co-authored-by: ScarKy0 <scarky0@onet.eu>
2025-12-17 22:52:32 +00:00
..
ActionGunComponent.cs
AmmoComponent.cs Automatically add trash tag to spent bullet casings (#40829) 2025-10-12 18:34:20 +00:00
AmmoProviderComponent.cs Spray nozzle can suck puddles into tank directly! (#30600) 2025-05-25 23:36:16 -04:00
AutoShootGunComponent.cs
BallisticAmmoProviderComponent.cs
BallisticAmmoSelfRefillerComponent.cs Adds BallisticAmmoSelfRefillerComponent (#38537) 2025-12-17 22:52:32 +00:00
BasicEntityAmmoProviderComponent.cs
BatteryAmmoProviderComponent.cs Predict powercells, chargers and PowerCellDraw (#41379) 2025-11-24 16:52:11 +00:00
BatteryWeaponFireModesComponent.cs Allow pacifists to use disabling modes of energy magnum and energy shotgun (#41029) 2025-10-30 19:19:36 +00:00
ChamberMagazineAmmoProviderComponent.cs
ClothingSlotAmmoProviderComponent.cs Spray nozzle can suck puddles into tank directly! (#30600) 2025-05-25 23:36:16 -04:00
ContainerAmmoProviderComponent.cs
FlyBySoundComponent.cs
GrapplingGunComponent.cs
GunComponent.cs Double bullet speeds (#34971) 2025-12-07 16:35:06 +00:00
GunRequiresWieldComponent.cs
GunSpreadModifierComponent.cs Give kammerer tighter spread so it's not a complete downgrade to the enforcer (#37616) 2025-05-19 15:45:18 -07:00
GunWieldBonusComponent.cs
MagazineAmmoProviderComponent.cs
RechargeBasicEntityAmmoComponent.cs
RechargeCycleAmmoComponent.cs
ReflectiveComponent.cs
RevolverAmmoProviderComponent.cs
SharedAmmoCounterComponent.cs
SolutionAmmoProviderComponent.cs
SpeedLoaderComponent.cs
TargetedProjectileComponent.cs
UseDelayOnShootComponent.cs