]> git.smokeofanarchy.ru Git - space-station-14.git/commit
Update DamageableSystem to modern standards (#39417)
authorHannah Giovanna Dawson <karakkaraz@gmail.com>
Mon, 27 Oct 2025 19:53:04 +0000 (19:53 +0000)
committerGitHub <noreply@github.com>
Mon, 27 Oct 2025 19:53:04 +0000 (19:53 +0000)
commitcdbe92d37d65b6adc89d45f66825ad502ad4549f
treef6336c851fa528fcd23b6c356aaab8e9dfde3b4a
parentcf66dd7b350dc394ba3afc1252b636ac96c9a93d
Update DamageableSystem to modern standards (#39417)

* Update DamageableSystem to modern standards

* DamageContainerId -> DamageContainerID with lint flag

* Replace strings with protoids

* Make CVar subscription declarations all consistently whitespaced

* ChangeDamage -> TryChangeDamage, cope with C# jank

* Revert event signature changes

* Restore a comment

* Re-add two queries

* Init the queries

* Use appearanceQuery in DamageChanged

* Use damageableQuery in TryChangeDamage

* Use damageableQuery in SetDamageModifierSetId

* Final cleanup, fix sandboxing

* Rectify ExplosionSystem:::ProcessEntity's call to TryChangeDamage

* Re-organize DamageableSystem

* first big fuck you breaking change.

* THATS A LOT OF DAMAGE!!!

* Fix test fails

* test fixes 2

* push it

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
157 files changed:
Content.Benchmarks/DestructibleBenchmark.cs
Content.Client/Damage/DamageVisualsSystem.cs
Content.Client/HealthAnalyzer/UI/HealthAnalyzerWindow.xaml.cs
Content.Client/Overlays/EntityHealthBarOverlay.cs
Content.Client/Overlays/ShowHealthIconsSystem.cs
Content.Client/UserInterface/Systems/DamageOverlays/DamageOverlayUiController.cs
Content.IntegrationTests/Tests/Commands/RejuvenateTest.cs
Content.IntegrationTests/Tests/Commands/SuicideCommandTests.cs
Content.IntegrationTests/Tests/Construction/Interaction/WindowRepair.cs
Content.IntegrationTests/Tests/Damageable/DamageableTest.cs
Content.IntegrationTests/Tests/Destructible/DestructibleDamageGroupTest.cs
Content.IntegrationTests/Tests/Destructible/DestructibleDamageTypeTest.cs
Content.IntegrationTests/Tests/Destructible/DestructibleDestructionTest.cs
Content.IntegrationTests/Tests/Destructible/DestructibleThresholdActivationTest.cs
Content.IntegrationTests/Tests/GameRules/NukeOpsTest.cs
Content.IntegrationTests/Tests/Minds/MindTests.cs
Content.IntegrationTests/Tests/Mousetrap/MousetrapTest.cs
Content.IntegrationTests/Tests/Storage/EntityStorageTests.cs
Content.IntegrationTests/Tests/Vending/VendingInteractionTest.cs
Content.IntegrationTests/Tests/VendingMachineRestockTest.cs
Content.IntegrationTests/Tests/Weapons/WeaponTests.cs
Content.Server/Access/Systems/IdCardConsoleSystem.cs
Content.Server/Administration/Systems/AdminVerbSystem.Smites.cs
Content.Server/Atmos/EntitySystems/AtmosphereSystem.DeltaPressure.cs
Content.Server/Atmos/EntitySystems/AtmosphereSystem.cs
Content.Server/Atmos/EntitySystems/BarotraumaSystem.cs
Content.Server/Atmos/EntitySystems/FlammableSystem.cs
Content.Server/Atmos/Rotting/RottingSystem.cs
Content.Server/Bed/BedSystem.cs
Content.Server/Bible/BibleSystem.cs
Content.Server/Body/Systems/RespiratorSystem.cs
Content.Server/CardboardBox/CardboardBoxSystem.cs
Content.Server/Chat/SuicideSystem.cs
Content.Server/Chat/Systems/EmoteOnDamageSystem.cs
Content.Server/Cloning/CloningPodSystem.cs
Content.Server/Cluwne/CluwneSystem.cs
Content.Server/Construction/Conditions/MinHealth.cs
Content.Server/Damage/Commands/HurtCommand.cs
Content.Server/Damage/ForceSay/DamageForceSaySystem.cs
Content.Server/Damage/Systems/DamageOnHitSystem.cs
Content.Server/Damage/Systems/DamageOnLandSystem.cs
Content.Server/Damage/Systems/DamageOnToolInteractSystem.cs
Content.Server/Damage/Systems/DamageOtherOnHitSystem.cs
Content.Server/Damage/Systems/DamageRandomPopupSystem.cs
Content.Server/Damage/Systems/ExaminableDamageSystem.cs
Content.Server/Destructible/DestructibleSystem.BenchmarkHelpers.cs
Content.Server/Destructible/DestructibleSystem.cs
Content.Server/Disposal/Unit/DisposableSystem.cs
Content.Server/Dragon/DragonRiftSystem.cs
Content.Server/Electrocution/ElectrocutionSystem.cs
Content.Server/Explosion/EntitySystems/ExplosionSystem.Airtight.cs
Content.Server/Explosion/EntitySystems/ExplosionSystem.Processing.cs
Content.Server/Explosion/EntitySystems/ExplosionSystem.cs
Content.Server/Ghost/GhostSystem.cs
Content.Server/Guardian/GuardianSystem.cs
Content.Server/ImmovableRod/ImmovableRodSystem.cs
Content.Server/KillTracking/KillTrackingSystem.cs
Content.Server/Kitchen/EntitySystems/MicrowaveSystem.cs
Content.Server/Lightning/LightningTargetSystem.cs
Content.Server/Mech/Systems/MechSystem.cs
Content.Server/Medical/DefibrillatorSystem.cs
Content.Server/Medical/HealthAnalyzerSystem.cs
Content.Server/Mining/MeteorSystem.cs
Content.Server/NPC/HTN/PrimitiveTasks/Operators/Specific/PickNearbyInjectableOperator.cs
Content.Server/NPC/Systems/NPCRetaliationSystem.cs
Content.Server/NPC/Systems/NPCUtilitySystem.cs
Content.Server/Ninja/Systems/StunProviderSystem.cs
Content.Server/Nutrition/EntitySystems/SmokingSystem.Vape.cs
Content.Server/Polymorph/Systems/PolymorphSystem.cs
Content.Server/Projectiles/ProjectileSystem.cs
Content.Server/Revenant/EntitySystems/RevenantSystem.Abilities.cs
Content.Server/Revenant/EntitySystems/RevenantSystem.cs
Content.Server/Shuttles/Systems/ShuttleSystem.Impact.cs
Content.Server/Shuttles/Systems/ShuttleSystem.cs
Content.Server/Shuttles/Systems/ThrusterSystem.cs
Content.Server/Silicons/Borgs/BorgSystem.Transponder.cs
Content.Server/Silicons/StationAi/StationAiSystem.cs
Content.Server/Speech/EntitySystems/DamagedSiliconAccentSystem.cs
Content.Server/Spreader/KudzuSystem.cs
Content.Server/Temperature/Systems/TemperatureSystem.cs
Content.Server/VendingMachines/VendingMachineSystem.cs
Content.Server/Weapons/Ranged/Systems/GunSystem.AutoFire.cs
Content.Server/Zombies/ZombieSystem.Transform.cs
Content.Server/Zombies/ZombieSystem.cs
Content.Shared/Armor/SharedArmorSystem.cs
Content.Shared/Bed/Sleep/SleepingSystem.cs
Content.Shared/Blocking/BlockingSystem.User.cs
Content.Shared/Body/Systems/SharedBloodstreamSystem.cs
Content.Shared/Body/Systems/SharedBodySystem.Parts.cs
Content.Shared/Body/Systems/SharedBodySystem.cs
Content.Shared/Changeling/Systems/ChangelingDevourSystem.cs
Content.Shared/Chat/SharedSuicideSystem.cs
Content.Shared/Climbing/Systems/ClimbSystem.cs
Content.Shared/Clothing/SharedCursedMaskSystem.cs
Content.Shared/Clumsy/ClumsySystem.cs
Content.Shared/Damage/Components/ClothingSlowOnDamageModifierComponent.cs
Content.Shared/Damage/Components/DamageableComponent.cs
Content.Shared/Damage/Components/IgnoreSlowOnDamageComponent.cs
Content.Shared/Damage/Components/RequireProjectileTargetComponent.cs
Content.Shared/Damage/DamageModifierSet.cs
Content.Shared/Damage/DamageSpecifier.cs
Content.Shared/Damage/Prototypes/DamageContainerPrototype.cs
Content.Shared/Damage/Prototypes/DamageGroupPrototype.cs
Content.Shared/Damage/Systems/DamageOnAttackedSystem.cs
Content.Shared/Damage/Systems/DamageOnInteractSystem.cs
Content.Shared/Damage/Systems/DamageableSystem.API.cs [new file with mode: 0644]
Content.Shared/Damage/Systems/DamageableSystem.BenchmarkHelpers.cs
Content.Shared/Damage/Systems/DamageableSystem.Events.cs [new file with mode: 0644]
Content.Shared/Damage/Systems/DamageableSystem.cs
Content.Shared/Damage/Systems/PassiveDamageSystem.cs
Content.Shared/Damage/Systems/RequireProjectileTargetSystem.cs
Content.Shared/Damage/Systems/SharedGodmodeSystem.cs
Content.Shared/Damage/Systems/SlowOnDamageSystem.cs
Content.Shared/Destructible/Triggers/AndTrigger.cs
Content.Shared/Destructible/Triggers/DamageGroupTrigger.cs
Content.Shared/Destructible/Triggers/DamageTrigger.cs
Content.Shared/Destructible/Triggers/DamageTypeTrigger.cs
Content.Shared/Destructible/Triggers/IThresholdTrigger.cs
Content.Shared/Destructible/Triggers/OrTrigger.cs
Content.Shared/DoAfter/SharedDoAfterSystem.cs
Content.Shared/Doors/Systems/SharedDoorSystem.cs
Content.Shared/EntityConditions/Conditions/DamageGroupEntityConditionSystem.cs
Content.Shared/EntityConditions/Conditions/DamageTypeEntityConditionSystem.cs
Content.Shared/EntityConditions/Conditions/TotalDamageEntityConditionSystem.cs
Content.Shared/EntityEffects/Effects/EvenHealthChangeEntityEffectSystem.cs
Content.Shared/EntityEffects/Effects/HealthChangeEntityEffectSystem.cs
Content.Shared/Execution/SharedExecutionSystem.cs
Content.Shared/Fax/Systems/FaxecuteSystem.cs
Content.Shared/Flash/DamagedByFlashingSystem.cs
Content.Shared/HealthExaminable/HealthExaminableSystem.cs
Content.Shared/Implants/SharedImplanterSystem.cs
Content.Shared/Inventory/InventorySystem.Relay.cs
Content.Shared/Kitchen/SharedKitchenSpikeSystem.cs
Content.Shared/Medical/Healing/HealingSystem.cs
Content.Shared/Medical/Stethoscope/StethoscopeSystem.cs
Content.Shared/Medical/SuitSensors/SharedSuitSensorSystem.cs
Content.Shared/Mobs/Components/MobStateComponent.cs
Content.Shared/Mobs/Systems/MobStateSystem.Subscribers.cs
Content.Shared/Mobs/Systems/MobStateSystem.cs
Content.Shared/Mobs/Systems/MobThresholdSystem.cs
Content.Shared/Nutrition/EntitySystems/HungerSystem.cs
Content.Shared/Polymorph/Systems/SharedChameleonProjectorSystem.cs
Content.Shared/Repairable/RepairableSystem.cs
Content.Shared/Silicons/Borgs/SharedBorgSystem.Relay.cs
Content.Shared/Silicons/Bots/MedibotSystem.cs
Content.Shared/Storage/EntitySystems/SecretStashSystem.cs
Content.Shared/Stunnable/SharedStunSystem.Knockdown.cs
Content.Shared/Trigger/Systems/DamageOnTriggerSystem.cs
Content.Shared/Turrets/SharedDeployableTurretSystem.cs
Content.Shared/Weapons/Hitscan/Systems/HitscanBasicDamageSystem.cs
Content.Shared/Weapons/Marker/SharedDamageMarkerSystem.cs
Content.Shared/Weapons/Melee/SharedMeleeWeaponSystem.cs
Content.Shared/Weapons/Ranged/Systems/SharedGunSystem.cs
Content.Shared/Xenoarchaeology/Artifact/SharedXenoArtifactSystem.XAT.cs
Content.Shared/Xenoarchaeology/Artifact/XAE/XAEDamageInAreaSystem.cs
Content.Shared/Xenoarchaeology/Artifact/XAT/XATDamageThresholdReachedSystem.cs
Content.Shared/Xenoarchaeology/Equipment/SharedArtifactCrusherSystem.cs