]> git.smokeofanarchy.ru Git - space-station-14.git/commit
Splits temperature damage processing into its own component (#30515)
authorTemporalOroboros <TemporalOroboros@gmail.com>
Wed, 24 Dec 2025 06:37:11 +0000 (22:37 -0800)
committerGitHub <noreply@github.com>
Wed, 24 Dec 2025 06:37:11 +0000 (06:37 +0000)
commit6f38eed9d9b056ce6b4bcba2f8693cf889cdd65b
tree75514986d54d3e1e4b5c3dcea5880e1a4514ef38
parentc6a4d3f7d8938ba037e9057d02ac1de6f7363435
Splits temperature damage processing into its own component (#30515)

* Creates TemperatureDamageThresholdsComponent

* Obsolete TemperatureComponent fields

* Use TemperatureDamageThresholdsComponent
Moves all the uses of the relocated TemperatureComponent fields to use the TDTC versions

* Removes the obsolete TemperatureComponent fields

* Update YAML definitions

* Update doc comments

* Split TemperatureSystem
Creates TemperatureDamageSystem and moves the damage handling from TemperatureSystem

* Cull unused using statements

* Use component-based damage tick scheduling

* Fix temperature damage processing
Check was inverted resulting in things never starting to take temperature damage

* Poke tests

* Add TemperatureDamageThresholds to new prototypes

* Move TemperatureDamageThresholdsComponent to Shared
Parity with TemperatureComponent

* While I'm here
Fixes warning regarding obsolete ProtoId validator attribute

* Fix YAML errors

* Fix merge errors

* Rename TemperatureDamageThresholdsComponent -> TemperatureDamageComponent

* Use ContentHelpers.RoundToLevels for temperature alerts

* Fix YML

* A fuckton of cleanup

* working cleanup

* fix

* misc additions

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
27 files changed:
Content.Server/Temperature/Components/ContainerTemperatureComponent.cs [new file with mode: 0644]
Content.Server/Temperature/Components/ContainerTemperatureDamageThresholdsComponent.cs [deleted file]
Content.Server/Temperature/Systems/TemperatureSystem.Damage.cs [new file with mode: 0644]
Content.Server/Temperature/Systems/TemperatureSystem.cs
Content.Server/Zombies/ZombieSystem.Transform.cs
Content.Shared/Temperature/Components/TemperatureComponent.cs
Content.Shared/Temperature/Components/TemperatureDamageComponent.cs [new file with mode: 0644]
Content.Shared/Temperature/Systems/SharedTemperatureSystem.cs
Resources/Prototypes/Entities/Mobs/NPCs/animals.yml
Resources/Prototypes/Entities/Mobs/NPCs/carp.yml
Resources/Prototypes/Entities/Mobs/NPCs/pets.yml
Resources/Prototypes/Entities/Mobs/NPCs/scurret.yml
Resources/Prototypes/Entities/Mobs/NPCs/space.yml
Resources/Prototypes/Entities/Mobs/NPCs/xeno.yml
Resources/Prototypes/Entities/Mobs/Player/dragon.yml
Resources/Prototypes/Entities/Mobs/Species/base.yml
Resources/Prototypes/Entities/Mobs/Species/moth.yml
Resources/Prototypes/Entities/Mobs/Species/reptilian.yml
Resources/Prototypes/Entities/Mobs/Species/vulpkanin.yml
Resources/Prototypes/Entities/Mobs/base.yml
Resources/Prototypes/Entities/Objects/Consumable/Food/egg.yml
Resources/Prototypes/Entities/Objects/Consumable/Food/meat.yml
Resources/Prototypes/Entities/Objects/Misc/ice_crust.yml
Resources/Prototypes/Entities/Objects/Misc/kudzu.yml
Resources/Prototypes/Entities/Objects/Misc/spaceshroom.yml
Resources/Prototypes/Entities/Structures/Machines/Medical/cryo_pod.yml
Resources/Prototypes/Entities/Structures/spider_web.yml