Commit Graph

31 Commits

Author SHA1 Message Date
Fruitsalad 036ed50b6e Cryo pod UI (#41850)
* Add CryoPodWindow (placeholder)

* Change HealthAnalyzerWindow: split off reusable HealthAnalyzerControl for cryo pod UI

* Improve CryoPodWindow: add health analyzer

* Improve CryoPodWindow: add eject button

This wasn't requested in the issue but I implemented it as practice with the UI system.

* Rewrote GasAnalyzerWindow, split off reusable gas mix viewer for cryo pod

* Change GasAnalyzerWindow: change back to three columns

With two rows you get a layouting bug when there's a lot of different gases, which looks somewhat bad. I didn't feel like fixing the layouting bug (it's an engine issue) so we're going back to three columns. That way you don't ever get two rows in practice.

* Change GasAnalyzerWindow: simplify by disabling Resizable

I added a lot of complexity to make resizable work nicely with a derived max & min size, but it's not necessary.

* Change GasAnalyzerWindow: file-wide namespace

* Change GasAnalyzerSystem: add GenerateGasMixEntry

* Split HealthAnalyzerUiState from HealthAnalyzerScannedUserMessage

* Rewrote CryoPodWindow, add atmos info

* Improve CryoPodWindow: add loading placeholder

* Improve CryoPodWindow: add internationalization support

* Fix GasAnalyzerControl: add missing translation

* Improve CryoPodWindow: add beaker info, high temperature warning

* Improve CryoPodWindow/System: inject button in window + necessary system changes

* Fix CryoPodWindow: Entering cryopod now closes window

This way you can't heal yourself with a cryopod.

* Change CryoPodWindow: add & update comments

* Change HealthAnalyzerComponent: remove `uiKey` property (no longer necessary)

* Tiny fixes

* Improve CryoPodUiMessage: replace string with enum

* Change GasAnalyzerWindow: simplify Measure code

* Change CryoPodComponent: rename Injecting to InjectionBuffer

* Change CryoPodBUI: tiny code simplification

* Fix HealthAnalyzerComponent: Removed stray import

* Improve CryoPodWindow: Prettier, concise atmos

* Improve CryoPodWindow: Chemicals bar chart

* Improve CryoPodWindow: Add Ruler to reagents

* Change CryoPodWindow: More horizontal layout

* Improve CryoPodWindow: Reduce height jiggling

The health analyzer's height changes a lot, which can be annoying with the buttons (for example when the oxygen damage label is popping in and out)

* Improve CryoPodWindow: Add setup checklist

This is mostly here to fill vertical space in the new horizontal layout.

* Improve CryoPodWindow: Eject beaker button

* Improve CryoPodWindow: Localization

* Improve CryoPodWindow: Add BeakerBarChart

An animated version of the chemicals chart

* Fix CryoPodSystem: Ejecting beaker no longer clears injection buffer

* Improve BeakerBarChart: Not animated on first frame

* Fix CryoPodWindow: Fix broken translation

* Improve CryoPodWindow: Reorder sections

* Fix BeakerBarChart: Tooltips now show up

* Change BeakerBarChart: Reorder functions

* Change CryoPodWindow: Reorder sections, change margins

* Change CryoPodWindow: Edit flavor text

* Revert changes to GasAnalyzerWindow

Since GasAnalyzerControl is no longer used in CryoPodWindow, these changes are no longer relevant to this PR.

* Tidy CryoPodWindow: Remove old workarounds

These are old layouting bug workarounds from the older version of CryoPodWindow that had a ScrollContainer in it. They're no longer necessary. Less ScrollContainers less problems.

* Tidy up: Remove unused imports

* Remove LabelledSplitBar

It was replaced by BeakerBarChart, which is a lot fancier.

* Tidy up: Tiny code style fix

* Change CryoPodSystem: Move code from server to shared

This is still without adding UI prediction

* move a ton of stuff to shared.

* one last thing

* Improve BeakerBarChart: Keep visual entry width when swapping beakers

* Improve BeakerBarChart: Respect beaker order of reagents

* Improve CryoPodWindow: Ensure space for injection buffer

 We need to keep space on the chart for the injection buffer after swapping to a full beaker.

* Improve CryoPodWindow: Prettier ejection error

* Improve CryoPodWindow: Add "Cooling patient" status

* BeakerBarChart: Fix UI scale bug

* BeakerBarChart: Fix bluespace beaker ugliness

* BeakerBarChart: Add more pod status strings

* HealthAnalyzerControl: Filewide namespace, sort imports

* Style fix: Replace `bool x = y` with `var x = y`

* CryoPodUiMessage: Split off separate class for inject

* SharedCryoPodSystem: Move message-related code into Subs.BuiEvents

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2026-04-04 16:57:54 +02:00
Vanessa 26db1e8f36
Health Analyzer Uncloneable Refactor (#5330)
* Partial revert of #5310

* Refactored uncloneable out of the HealthAnalyzerScannedUserMessage BUI.
2026-01-30 22:11:55 +01:00
PureBreadBagel dc8b6ba143
Uncloneable in my medical scanner? Yes. (#5310)
* Update OrganManipulation.xml

* Merge branch 'DeltaV-Station:master' into master

* Merge branch 'DeltaV-Station:master' into master

* Merge branch 'DeltaV-Station:master' into master

* no more taser!

* Merge branch 'DeltaV-Station:master' into master

* Merge branch 'DeltaV-Station:master' into master

* Merge branch 'DeltaV-Station:master' into master

* Merge branch 'DeltaV-Station:master' into master

* Merge branch 'DeltaV-Station:master' into master

* MMm yummy fixes

* Adsd the UNcloneable to the scanner!

* fixing some guidebook things about the cloning

* Fixed the guidebook entry

* undone a change to splaw

* textlinkd

* COMMENTS RAHHHHH

* Update CryoPodSystem.cs

Co-authored-by: Tobias Berger <toby@tobot.dev>
Signed-off-by: PureBreadBagel <146181383+PureBreadBagel@users.noreply.github.com>

* Update HealthAnalyzerSystem.cs

Co-authored-by: Tobias Berger <toby@tobot.dev>
Signed-off-by: PureBreadBagel <146181383+PureBreadBagel@users.noreply.github.com>

* Update HealthAnalyzerSystem.cs

Co-authored-by: Tobias Berger <toby@tobot.dev>
Signed-off-by: PureBreadBagel <146181383+PureBreadBagel@users.noreply.github.com>
2026-01-30 16:18:07 +00:00
pathetic meowmeow e2c63a83b3
Add triaging to health analyzers and HUD (#3149) 2025-03-18 00:24:12 +00:00
gluesniffler da885d8854 Shitmed (#869)
* full fucking send

* ope forgot to remove the EE scripts

* fix test

* fix shitcode fail
2024-12-27 16:47:20 +00:00
deltanedas 2620eb48a8
upstream merge 2/11 (#2090)
* Fix multiplying colors of differing nullabilities (#32991)

* revert the temporary hack

* Make atmos alert computer colors private variables (#32992)

* Add flash reaction effect (#32377)

add flash reaction effect

* Automatic changelog update

* Fix loneop spawnrate by reverting it to not use the shuttle event system. (#32942)

Fix loneop spawnrate by reverting it to not use the custom shuttle event system.

* Automatic changelog update

* add atmosia to devmap (#32460)

change

* bowls now make drinking sounds (#32819)

* Automatic changelog update

* Add health analyzer unrevivability warning (#32636)

* Add health analyzer unrevivability warning

* Remove errornous comment

* Automatic changelog update

* Removed the name "Hujsak" (#32998)

removed hujsak

* fix pie throwing sound not playing (#33017)

* Automatic changelog update

* Fix TestSuicideByHeldItem and TestSuicideByHeldItemSpreadDamage (#33030)

* make ai speak robotically (#33025)

* Automatic changelog update

* Extends the minimum round time for meteor swarm events (#32876)

* adjusted minimum timers in meteorswarms.yml

* Updated timer minimum from 20 to 15 minutes

* Reduced minimum timer to 10 minutes as a result of other meteor changes

---------

Co-authored-by: august-sun <45527070+august.sun@users.noreply.github.com>

* Automatic changelog update

* add StartDelay bool to actions (#33026)

* add StartDelay bool to actions

* forgot summary

* Updated an incorrect sprite in the smite menu (#33043)

changed the synth sprite used in the icon for the instrumentify smite out for the more accurate supersynth sprite

* fix lava expeds (#33042)

Co-authored-by: deltanedas <@deltanedas:kde.org>

* Automatic changelog update

* Fix separated game screen bumping (#33046)

I don't really understand why RecordedSplitContainer exists but removing it looks identical and fixes the panel bumping occasionally.

* Automatic changelog update

* Fix: Make Plushie Damage Unexaminable (#33061)

Set hidden to true

* fix chameleon projector bot whitelist (#33055)

fix

* Various Vaugely Connected Sprite Updates™: Encryption Keys, Station Map, Brig Timer (#32786)

* various resprites (encryption keys + signal screens + station map)

* brig timer update

* fixes n shit

* Give proto-kinetic crushers, glaives, and daggers better inhands. Update the crusher and glaive icons. (#32212)

* inhands

* better inhands

* indent

* Automatic changelog update

* Make the security belt contain more useful items by default (#32291)

* replace tear gas and flashbang with holobarrier and sec radio

* holobarrier-belt-fix

* revert changes of 32291

* Automatic changelog update

* Add 3 bottle boxes to nanomed plus (#33018)

three bottle boxes in nanomed plus

* Automatic changelog update

* Nukie med bundle now costs 24 tc and contains a unique defibrillator (#32720)

* a-few-injectors

* comment

* defib-ops-when

* Automatic changelog update

* Pill Bottles can only store pills now (#33074)

* no longer absurd

* Update Resources/Prototypes/Entities/Objects/Specific/chemistry.yml

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Automatic changelog update

* Add a spare bible to PietyVend (#32363)

Update chapel.yml

* Automatic changelog update

* [#28722 fix] Add notification for dependent wearables being dropped (#33078)

* add notification for dependent wearables being dropped

* fix dropped item popup redundancy
- did a check to see if any item was dropped, instead of making a notification for each item being dropped.

* change popup to client-only variant

* fix redundant messages, add plural locale string

* fix conventions, fix locale input to be more intuitive

---------

Co-authored-by: Justin <justinbrick1@gmail.com>

* Automatic changelog update

* More pda space (#32601)

* Rebalance the max programs that a PDA can hold

* Give Caps PDA more programs too.

* Make the max programs a static 8

* I forgor sec and med

* CaseCase

* Empty commit to re-run checks

* The final change, I hope.

* Automatic changelog update

* Fixed spelling mistake in water blaster description. (#33087)

Fixed minor spelling mistake

* [#20285 fix] Carp Plush and Rehydratables can now be put into mop bucket (#33079)

* Make shark plush janitor-bucketable

* fix bucketed grey shark texture

* Make sprites less shiny and adapt copyright notice

* Made shark way way less shiny

* Allow carp plush and rehydratables in mop bucket.

* Remove old mop bucket shark sprites

* Fix post-merge bugs

* Fix errors

* Move ReactiveContainer stuff to shared

That should mean it is now predicted.

* Custom eject verb for the mop bucket

* Fixes OnSolutionChange, removes pop-up as there already is one.

* .ftl is not necessary as the custom pop-up was removed

* Review fixes

* Update Content.Shared/Chemistry/Components/ReactiveContainerComponent.cs

* Update Content.Shared/Chemistry/EntitySystems/ReactiveContainerSystem.cs

---------

Co-authored-by: Psychpsyo <psychpsyo@gmail.com>
Co-authored-by: Psychpsyo <60073468+Psychpsyo@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Automatic changelog update

* remove now duplicated nyano PlushieCarp tag

* Fixes tailthump breaking positional audio by making it mono (#33092)

* Automatic changelog update

* ExaminableDamage now puts its message at the bottom and in color (#32820)

* the examineableDamage component now puts its messages at the bottom, and in color

* god help us if something is priority -100 :godo:

* Automatic changelog update

* Lower in-round votekick requirements (#32953)

Initial commit

* Allow votekicks to be initiated in the lobby (#32528)

Initial commit

* Automatic changelog update

* Fixes bolt lights of previously unpowered bolted doors (#33063)

fix

* Automatic changelog update

* Muffins (#29318)

* Update meta.json

* Add files via upload

* Update misc.yml

* Update meal_recipes.yml

* Update meta.json

* Add files via upload

* Update plate.yml

* Update food_baked_single.yml

* Update dinnerware.yml

* Update cooking.yml

* Update misc.yml

* Add files via upload

* Delete Resources/Textures/Objects/Consumable/Food/Baked/misc.rsi/muffin-cherry.png

* Add files via upload

* Update meta.json

* Update misc.yml

* Update meal_recipes.yml

* Update meta.json

* Fix meta.json

* Fix meta.json again

* Update misc.yml

* Update misc.yml

* Update misc.yml

* Update misc.yml

* Update meta.json

* Update meta.json

* Update misc.yml

* Update meal_recipes.yml

* Update Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/misc.yml

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Update dinnerware.yml

* Delete cherry

* Add files via upload

* Delete banana

* Add banana

* Delete chocolate

* Add chocolate

* lathe recipe fix

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Automatic changelog update

* Borgs can no longer see mindshield + AI can no longer toggle off seeing job icons (#33069)

* :(

* Removed the sprite + updated RSI

* Automatic changelog update

* Add CanLoad for biomes (#33050)

CPUJob to come later.

* Remove CargoPallet component from the cargo pallet (#33022)

* Change cargo shuttle pallets to catwalks.

* Remove CargoPallet component from the cargo pallet.

* Undo cargo shuttle changes.

* Automatic changelog update

* Minor antagonist guidebook changes (#32824)

* took a two month nap. accidentally pushed too many buttons. let's try this again. added thieves to antagonists.xml

* even after that nap, i don't feel well-rested at all.

* please don't kill me for using webedit

* capitalization, typo

* Apply suggestions from code review (more period moving)

Thanks Evan, very cool

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* guess you could say im not pro-proper noun

* typo

* Update Resources/ServerInfo/Guidebook/Antagonist/Nuclear Operatives.xml

* ok

Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>

* Give Nukies a Hand Labeler (#33053)

* Add hand-labeler to nukie planet

* Rearrange nukie chem table

* Fix `ItemSlotSystem` popup Logic (#28856)

* move popup call out of `CanInsert` into `OnInteractUsing`

* im stupid and `reason` is completely unnecessary

Signed-off-by: Brandon Li <sirbrandonthenerd@gmail.com>

* return early when `itemSlots.Slots.Count == 0`

* tweak logic for triggering popups

* change popup logic again

* Consolidate whitelist check

* Get any popup message not just last failed slot

* Apply suggestions from code review

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* yoink

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

---------

Signed-off-by: Brandon Li <sirbrandonthenerd@gmail.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Add cvars to votekick to customize requirements for the initiator. (#32490)

* Automatic changelog update

* Add on-call functionality for adminning (#30443)

* Add on-call functionality for adminning

The first time an ahelp gets SOS it gets relayed to the specified channel with the specified ping. Every time after that it doesn't until it gets a non-SOS response received.

* Remove redundant name

Pretty sure this already gets chucked on the name of the msg itself I think it just didn't show in screenshot because they were subsequent.

* Update Content.Server/Administration/Systems/BwoinkSystem.cs

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

---------

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
Co-authored-by: deathride58 <deathride58@users.noreply.github.com>

* Automatic changelog update

* Pills are explosion resistant (partially reverts #15851) (#32458)

* idk how to revert a pr so I just deleted some lines

* pill destructible with explosion resistance

* comment for explosion resist

* "and" to "but"

---------

Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>

* Automatic changelog update

* Hasten handcraft gauze recipe & decrease techfab gauze cost (#32744)

* med lathe gauze price reduction

* gauze craft doafter time

* 3 second doafter craft

* Automatic changelog update

* Service workers antagonist fix. (#31359)

* add

* Revert "add"

This reverts commit 25da34b0fead5812fe5800c9bf5dd7b10ef48d7d.

* antagonism allowed™️

* Automatic changelog update

* Adds a new AME sound effect! (#33097)

* Changes the AME sound effect to not be the default MetalThud.

* Was told on discord to make a minor change to autorerun the tests due to the Build & Test Debug failing!

* Attribution and licensing, as requsted by deathride58

* Fixes the high-pitched squeak audible to some people!

* Audio file tweaked by SlamBamActionMan to eliminate a weird squeak they were still able to hear. Thanks!

* Automatic changelog update

* Allow for the ai's laws to be changed from its core and eye (#32461)

* Allow for the ai's laws to be changed from its core and eye

* Address reviews

* Automatic changelog update

* clean up tools lathe recipes (#31521)

* clean up tools lathe recipes

* add medical and cooking tools

* add result

* add result to others

* review

* engine

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>

* Automatic changelog update

* Intercoms and Radios both pick up proximate speech (#32737)

* Deduping of recent messages should consider the channel it's being sent to

* rerun actions

* Automatic changelog update

* Adds headphones to loadouts (#33067)

added headphones to trinkets

* Automatic changelog update

* Cardboard Box Capacity 4 -> 5 (#32743)

* capacity upgrade

* comment update

* remove our duplicate pill whitelist

* fix

* remove broken crew monitor from dev map, how did it even get there

---------

Signed-off-by: Brandon Li <sirbrandonthenerd@gmail.com>
Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com>
Co-authored-by: BramvanZijp <56019239+BramvanZijp@users.noreply.github.com>
Co-authored-by: Ilya246 <57039557+Ilya246@users.noreply.github.com>
Co-authored-by: Moomoobeef <62638182+Moomoobeef@users.noreply.github.com>
Co-authored-by: Saphire Lattice <lattice@saphi.re>
Co-authored-by: FluffMe <1780586+FluffMe@users.noreply.github.com>
Co-authored-by: Theodore Lukin <66275205+pheenty@users.noreply.github.com>
Co-authored-by: August Sun <45527070+august-sun@users.noreply.github.com>
Co-authored-by: august-sun <45527070+august.sun@users.noreply.github.com>
Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Preston Smith <92108534+thetolbean@users.noreply.github.com>
Co-authored-by: Milon <plmilonpl@gmail.com>
Co-authored-by: Flareguy <78941145+Flareguy@users.noreply.github.com>
Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com>
Co-authored-by: Boaz1111 <149967078+Boaz1111@users.noreply.github.com>
Co-authored-by: Jarmer123 <148848017+Jarmer123@users.noreply.github.com>
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
Co-authored-by: Justin <justinbrick1@gmail.com>
Co-authored-by: SpaceLizard <the.justice.league.of.canada@gmail.com>
Co-authored-by: Psychpsyo <psychpsyo@gmail.com>
Co-authored-by: Psychpsyo <60073468+Psychpsyo@users.noreply.github.com>
Co-authored-by: deathride58 <deathride58@users.noreply.github.com>
Co-authored-by: PopGamer46 <yt1popgamer@gmail.com>
Co-authored-by: RumiTiger <154005209+RumiTiger@users.noreply.github.com>
Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>
Co-authored-by: Minemoder5000 <minemoder50000@gmail.com>
Co-authored-by: UBlueberry <161545003+UBlueberry@users.noreply.github.com>
Co-authored-by: Brandon Li <48413902+aspiringLich@users.noreply.github.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
Co-authored-by: Vasilis <vasilis@pikachu.systems>
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
Co-authored-by: K-Dynamic <20566341+K-Dynamic@users.noreply.github.com>
Co-authored-by: Ubaser <134914314+UbaserB@users.noreply.github.com>
Co-authored-by: AftrLite <61218133+AftrLite@users.noreply.github.com>
Co-authored-by: nikthechampiongr <32041239+nikthechampiongr@users.noreply.github.com>
Co-authored-by: Centronias <me@centronias.com>
Co-authored-by: joshepvodka <86210200+joshepvodka@users.noreply.github.com>
Co-authored-by: Scribbles0 <91828755+Scribbles0@users.noreply.github.com>
2024-11-07 20:09:25 +00:00
Whisper e0d84f2db2
Whisper bleed update v3 (#25434)
* Whisper bleed update v3

* missed a few

* Add bleeding message to health analyzer.

* Fix bleed notification not updating.

* Apparently this either doesnt exist

(cherry picked from commit ff65cb7b0caaeb9edd9461eff942bdc6f5eb7f50)
2024-03-07 00:59:34 +01:00
Rainfey ecf9634e0c
Make Health Analysers UI continuously update (#22449)
(cherry picked from commit 4129c77a5b7c4d5cdfa4763881bdaa443c128f33)
2024-02-08 12:39:55 +01:00
metalgearsloth c9648da984 Content update for NetEntities (#18935) 2023-09-27 21:59:12 +02:00
DrSmugleaf a88e747a0b
Refactor serialization copying to use source generators (#19412) 2023-08-22 18:14:33 -07:00
Whisper 301fbffcfd
adds both blood level and body temp to analyzers and cryo (#16778)
* Ports temperature scanning from mining station 14

* Added blood level to analyzer

* adds body temp and blood level to health analyzers and cryo

* Blood and temperature will show N/A if not available
2023-07-18 15:13:26 -06:00
DrSmugleaf f474171451
Remove health analyzer component references (#15322) 2023-04-11 17:11:02 -07:00
Leon Friedrich 19277a2276
More DoAfter Changes (#14609)
* DoAfters

* Compact Clone()

* Fix mice and cuffables

* Try generalize attempt events

* moves climbabledoafter event to shared, fixes issue with climbable target

* Fix merge (cuffing)

* Make all events netserializable

* handful of doafter events moved

* moves the rest of the events to their respective shared folders

* Changes all mentions of server doafter to shared

* stop stripping cancellation

* fix merge errors

* draw paused doafters

* handle unpausing

* missing netserializable ref

* removes break on stun reference

* removes cuffing state reference

* Fix tools

* Fix door prying.

* Fix construction

* Fix dumping

* Fix wielding assert

* fix rev

* Fix test

* more test fixes

---------

Co-authored-by: keronshb <keronshb@live.com>
2023-04-02 21:13:48 -04:00
metalgearsloth c8f89eca60
ECS dragdrop (#12973)
* ECS dragdrop

No more excuses.

* AAAAAAAAAAAAAA

* kry

* events

* aaaaaaaaaa

* HUH

* Fix stripping

* aaaaaa

* spoike

* asease

* fix table vaulting

* ded

* rebiew

* aaaaaaaaaaaaa

* drag

* aeaeae

* weh
2023-02-13 13:29:34 +00:00
DrSmugleaf f323fb7644
ECS and cleanup body system, merge body templates and presets into body prototypes (#11991)
Co-authored-by: Jezithyr <Jezithyr@gmail.com>
2022-10-22 15:46:28 -07:00
Rane 2f4849eae1
Cloning Rework (#8972)
Co-authored-by: fishfish458 <fishfish458>
2022-08-03 21:05:17 -07:00
Fishfish458 7f43f38cc7
Add health analyzer and medical scanner ECS (#6907)
Co-authored-by: fishfish458 <fishfish458>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-03-08 14:45:52 +11:00
mirrorcult ec4d4688c7
Seal/abstract/virtual everything (#6739) 2022-02-16 18:23:23 +11:00
wrexbe 17db0775c8
Auto comp (#6416) 2022-02-02 14:35:40 +11:00
Vera Aguilera Puerto 151778a1b9 More error fixes. 2021-12-04 12:47:09 +01:00
Vera Aguilera Puerto 5cd42c9ad6 Inline UID 2021-12-03 15:53:09 +01:00
Vera Aguilera Puerto 0feebbff00 Inline HasComponent entirely 2021-12-03 12:23:18 +01:00
mirrorcult 3ab4a30a0f
Generalize ReagentUnit into FixedPoint2 and use it for damage calculations (#5151)
* Damage units

* sum ext method
2021-11-03 16:48:03 -07:00
Leon Friedrich 6cb58e608b
ECS verbs and update context menu (#4594)
* Functioning ECS verbs

Currently only ID card console works.

* Changed verb types and allow ID card insertions

* Verb GUI sorting and verb networking

* More networking, and shared components

* Clientside verbs work now.

* Verb enums changed to bitmask flags

* Verb Categories redo

* Fix range check

* GasTank Verb

* Remove unnecessary bodypart verb

* Buckle Verb

* buckle & unbuckle verbs

* Updated range checks

* Item cabinet verbs

* Add range user override

* construction verb

* Chemistry machine verbs

* Climb Verb

* Generalise pulled entity verbs

* ViewVariables Verb

* rejuvenate, delete, sentient, control verbs

* Outfit verb

* inrangeunoccluded and tubedirection verbs

* attach-to verbs

* remove unused verbs and move VV

* Rename DebugVerbSystem

* Ghost role and pointing verbs

* Remove global verbs

* Allow verbs to raise events

* Changing categories and simplifying debug verbs

* Add rotate and flip verbs

* fix rejuvenate test

* redo context menu

* new Add Gas debug verb

* Add Set Temperature debug verb

* Uncuff verb

* Disposal unit verbs

* Add pickup verb

* lock/unlock verb

* Remove verb type, add specific verb events

* rename verb messages -> events

* Context menu displays verbs by interaction type

* Updated context menu HandleMove

previously, checked if entities moved 1 tile from click location.

Now checks if entities moved out of view.

Now you can actually right-click interact with yourself while walking!

* Misc Verb menu GUI changes

* Fix non-human/ghost verbs

* Update types and categories

* Allow non-ghost/human to open context menu

* configuration verb

* tagger verb

* Morgue Verbs

* Medical Scanner Verbs

* Fix solution refactor merge issues

* Fix context menu in-view check

* Remove prepare GUI

* Redo verb restrictions

* Fix context menu UI

* Disposal Verbs

* Spill verb

* Light verb

* Hand Held light verb

* power cell verbs

* storage verbs

and adding names to insert/eject

* Pulling verb

* Close context menu on verb execution

* Strip verb

* AmmoBox verb

* fix pull verb

* gun barrel verbs

revolver verb
energy weapon verbs
Bolt action verb

* Magazine gun barrel  verbs

* Add charger verbs

* PDA verbs

* Transfer amount verb

* Add reagent verb

* make alt-click use ECS verbs

* Delete old verb files

* Magboot verb

* finalising tweaks

* context menu visibility changes

* code cleanup

* Update AdminAddReagentUI.cs

* Remove HasFlag

* Consistent verb keys

* Remove Linq, add comment

* Fix in-inventory check

* Update GUI text alignment and padding

* Added close-menu option

* Changed some "interaction" verbs to "activation"

* Remove verb keys, use sorted sets

* fix master merge

* update some verb text

* Undo Changes

Remove some new verbs that can be added later

undid some .ftl bugfixes, can and should be done separately

* fix merge

* Undo file rename

* fix merge

* Misc Cleanup

* remove contraction

* Fix keybinding issue

* fix comment

* merge fix

* fix merge

* fix merge

* fix merge

* fix merge

* fix open-close verbs

* adjust uncuff verb

* fix merge

and undo the renaming of SharedPullableComponent to PullableComponent. I'm tired of all of those merge conflicts
2021-10-04 20:29:03 -07:00
Leon Friedrich df584ad446
ECS damageable (#4529)
* ECS and damage Data

* Comments and newlines

* Added Comments

* Make TryChangeDamageEvent immutable

* Remove SetAllDamage event

Use public SetAllDamage function instead

* Undo destructible mistakes

That was some shit code.

* Rename DamageData to DamageSpecifier

And misc small edits

misc

* Cache trigger prototypes.

* Renaming destructible classes & functions

* Revert "Cache trigger prototypes."

This reverts commit 86bae15ba6616884dba75f552dfdfbe2d1fb6586.

* Replace prototypes with prototype IDs.

* Split damage.yml into individual files

* move get/handle component state to system

* Update HealthChange doc

* Make godmode call Dirty() on damageable component

* Add Initialize() to fix damage test

* Make non-static

* uncache resistance set prototype and trim DamageableComponentState

* Remove unnecessary Dirty() calls during initialization

* RemoveTryChangeDamageEvent

* revert Dirty()

* Fix MobState relying on DamageableComponent.Dirty()

* Fix DisposalUnit Tests.

These were previously failing, but because the async was not await-ed, this never raised the exception.

After I fixed MobState component, this exception stopped happening and instead the assertions started being tested & failing

* Disposal test 2: electric boogaloo

* Fix typos/mistakes

also add comments and fix spacing.

* Use Uids instead of IEntity

* fix merge

* Comments, a merge issue, and making some damage ignore resistances

* Extend DamageSpecifier and use it for DamageableComponent

* fix master merge

* Fix Disposal unit test. Again.

Snapgrids were removed in master

* Execute Exectute
2021-09-14 10:07:37 -07:00
Leon Friedrich 32d99eaba9
Damageable Refactor 3: Revenge of the Instamerge (#4524)
* Add DamageType And DamageGroup Prototypes

* Remove DamageTypePrototype Field "name" as its redundant

* Change I/DamageableComponent to use prototypes

* Update DamageContainer, ReisistanceSet and DamageChangeData

* Change Barotrauma Component to use DamageType from DamageSystem

* Update AsteroidRockComponent

* update some more components

* update some more components

* Fix m o r e c o m p o n e n t s and their damageType

* all thats left is bug/missing node hunting then verification.

* push changes

* update submodule

* Merge fixes

* push DGP for example

* update damagecomponent across shared and server

* fix a few bugs

* Fix Merge issues

* Refactor damageablecomponent update (#4406)

* Fixing merge.

I messed up part of the merge. this should fix it?

* Barotrauma now uses prototypeManager

As System.Runtime.CompilerServices also has a [Dependency], I think I had to use the full path [Robust.Shared.IoC.Dependency]

* FlammableComponent now uses prototypeManager

* SuicideCommands now use prototypeManager

* Changed  many files to use prototypeManager to resolve damaege prototypes

Yeah.... prototype references would be very nice. maybe this was all a waste of time.

* Grouping prototypeManager.Index with datafield definitions

This will make it easier to eventually add prototype references

* removed unused variable

* Moved lines around.

Lines now consistent with other TODO PROTOTYPE blocks

* Grouping more prototypeManager.Index with datafield definitions

* Removed unnecessary code

* Added more prototypeManager indexing

These ones weren't pointed out by DrSmug. But I think this is all of them? That or my regex is shit.

* Remove redundant _damage field

* Remove redundant _currentTemperature

* Moved variables down

* Added prototypeManager indexing to TemperatureComponent

* WeaponComponent/System now use ProtptypeManager

And as far as I can tell damageType is required, and therefore should never have been null anyway?

* Make ranged weapon clumsy fire effects datafields

And yes, the order in which the clumsy effects occur is very important.

* Made damage on vital body part loss a datafield

* Renamed several damageGroup variables to group

* Capitalised DamageListToDamageGroup

* Make radiation and explosion damage types datafields

* Renamed _supportedDamageGroupIDs and _supportedDamageTypeIDs

* Fixed mistakes

Frogot to remove prototypeManager index DamageTypeTrigger, and wrong variable visibility in TemperatureComponent

* Added necessary code

Is something tragically wrong?

* MeleeWeapon damageType is not actually required

* Fixing someone else's mistakes

A search comes up with nothing in the yaml files, and its not a required field. So no one uses it? Hopefully?

* Changed and renamed damageTypeToDamageGroup

Previously would incorrectly return the total container damage for each group, not the total in the group

* renaming varitables

* Renamed variable DamageClasses

* Added dictionary converting functions

* Added ID-keyed dictionaries

* Making MedicalScanner use ID dictionaries, instead of prototype dictionaries

Oh oh no. I've been able to avoid UI & networking up until now. I have no Idea what I am doing.

* Fix Medical Scanner

* Summary (required)

The joke here is that this fixes the empty summary.

* Removed DamageableComponent.GetDamageGroup/Type

* Renamed "damage classes" to groups.

* Update ChangeDamage description

* Replaced Heal() with SettAllDamage()

Heal() was just a confusing name,

* More Class -> Group renaming

* Replace Class with Group in yaml files

DamageClassTrigger does not appear in any yaml? only in testing?
DamageTypeTrigger appears only in human.yaml?
HealthChangeMetabolism is Mostly in medicine.yml and one in soad.yaml

Why the hell is Cola metabolizable by plants? Who is pouring cola on their plants!?!?

* Fix _prototypeManager being null errors.

* Changing comments

Where are the prototype references

* MetabolismComponent doesn't give free heals anymore.

* Changes HungerComponent healing.

Previously I think it would actually damage you.  Only did this as I though it was causing the fast healing. Turns out that was just BREATHING.

* Generalised a function in DamageableComponent and moved it to DamageGroupPrototype

previously DamageTypesDictToDamageGroupDict was private to DamageableComponent, but was also quite general (nearly a static function). As this sort of function may be needed by other components using DamageGroupPrototypes in the future, I moved it there as a static function instead.

* modified DamageableComponent.ChangeDamage()

ignoreResistances was renamed to ignoreDamageResistances to make it clearer that it had no effect on healing.

Now uses default argument for ignoreDamageResistances, so when healing you are not forced to specify an argument that does nothing.

Also made some general changes to ignoreResistances()

* Changed class->group and added missing damage type functionality to DamageContainerPrototypes

* Added Comments to damage.yml

* Misc Changes to DamageableComponent

* Differentiated between group support and group applicability

So far, every damage type is a member of one, and only one, damage group. So this change has no real effect so far.

* Added proposed alternative to ChangeDamage()

* fixed error in DamageGroupPrototype

* Changes to DamageableComponent

Lots of changes to comments.
Some variables renamed in IDamageableComponent and DamageableComponent (also required renaming in other files)

Some minor logic changes, mostly for incorrect descirptions of boolean return values.

Also further differentiating between ApplicableGroups and SupportedGroups... if that will ever even matter

* Generalised MedicalScannerComponent

If needed, can print miscellaneous damage types now

* Fixed HealthChangeMetabolism bug

* Changing Comments around

* More questions

* Made Barotrauma default to blunt

* Fix RejuvenateTest.cs

* Comments

* Coments and variable names

* fix some master-merge issues

* Removed redundant fields

* Misc changes for readbility of PR diff

* Consistent naming

* Fixed atmos damage bug

* Removed Ranting

* Fixed Hunger after I broke it

* Fixing Bugs

* Removed stupid question

* Removed more stupid questions

* Fix potential null errors.

* Made boolean return values consistent

Also renamed several functions, to make it clear they return a bool. Docs were also updated.

* Removed IoCManager.InjectDependencies()

* Removed unnecessary 'suffocation' prefix

* Fixed Spelling

Also removed accidentally left in logger call

* Fixed Medical Scanner

* Apply suggestions from code review

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

* Changing comments and whitespaces

* Made damage thresholds trigger  datafields required

* So many typos

* Changes to DamageableComponents

Changed documentation in IDamageableComponent

Made testing code more readable.

Relabelled groups as 'Applicable' either 'Fully Supported'

* Removed function and degeneralised

* Update DamageableComponent.cs

Removed unused parameters
Fixed Networking

* Added IoCManager.Resolve

* Now using alternative TryChangeDamage()

* Removed function from DamageGroupPrototype

* Removing comments

* Remove bad if statement?

* Fix damageChanged ordering

* Fix hurt server command

* Changed //TODO PROTOTYPE blocks

Now use PrototypeManager differently. Wherever possible, only retrieve the prototype once.

Also added default damage types to some more datafields

* Update Content.Shared/Damage/Container/DamageContainerPrototype.cs

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

* renamed _accumulatedHealth -> _accumulatedDamage and added TODOs

* Another class-> group

* Fix bug in generalisation of damage container prototypes

* Addes Tests to make sure I dont keep adding bugs to my own code.

* Changed Return values when setting

* Removed unused class

* Added more tests, split tests into three files

* Made damage types public and VV read-write-able

* Minor changes to DamageableComponent

Replaced internal use of GetDamagePerType with _damageDict and removed some unnecessary fields

* Fix Suicide, by adding IoC Resolve()

* Fix DamageGroupTrigger bug

* Fix typos in tests

* Change comments./docstrings & spacing

* Merge tests, use test prototypes

Co-authored-by: Leon Friedrich <60421075+leonsfriedrich@users.noreply.github.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

* Fix merge issues

Co-authored-by: Silver <Silvertorch5@gmail.com>
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
Co-authored-by: Leon Friedrich <60421075+leonsfriedrich@users.noreply.github.com>
2021-08-24 11:06:27 -06:00
Silver e708091518
Revert "Refactor Damage to use Protoypes (#4262)"
This reverts commit 20bf5739a9.
2021-08-24 01:06:32 -06:00
Silver 20bf5739a9
Refactor Damage to use Protoypes (#4262)
* Add DamageType And DamageGroup Prototypes

* Remove DamageTypePrototype Field "name" as its redundant

* Change I/DamageableComponent to use prototypes

* Update DamageContainer, ReisistanceSet and DamageChangeData

* Change Barotrauma Component to use DamageType from DamageSystem

* Update AsteroidRockComponent

* update some more components

* update some more components

* Fix m o r e c o m p o n e n t s and their damageType

* all thats left is bug/missing node hunting then verification.

* push changes

* update submodule

* Merge fixes

* Revert "#3935 implemented suggestions from PR"

This reverts commit a9b1c7b96333ca570067d6a9df1954481005892a.

* #4219 revert of single sound removal in EmitSoundSystem

* #4219 single sounds in EmitSoundSystem should work now

* #4219 some small project tweaks

* push DGP for example

* update damagecomponent across shared and server

* fix a few bugs

* #4219 upgraded EmitSoundSystem to use SoundSpecifier

* replacing sound (collection) names with SoundSpecifier - part 1

* #4219 pr tweaks

* #4219 pr tweak

(cherry picked from commit 00b80cb1df2434259ab5df45188e176be57603af)

* emitsoundsystem tweak

* first windoor commit

* finished yaml

* windoors work #Dab

* sound + locked prototypes

* Inserted SoundSpecifier where appropiate

* added comment

* removed TryGetSound + made some SoundSpecifier datafields required

* changed some prototypes' sound paths

* test fixes

* Fix Merge issues

* Made plasma grindable (#4334)

Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>
Co-authored-by: Swept <sweptwastaken@protonmail.com>

* Automatic changelog update

* Fixes invalid yaml line (#4408)

* Fix potential timer exception

* SetTile during extensions test (#4409)

Mainly so it can actually account for accurate grid bounds when doing the test

Co-authored-by: metalgearsloth <metalgearsloth@gmail.com>

* Update submodule

* GasFilter appearance, EnabledAtmosDeviceVisualizer improvements.

* Add Enabled property to SubFloorHideComponent, make it networked. (#4404)

* Refactor IDoorCheck into entity events (#4366)

* IDoorCheck refactored to events

# Conflicts:
#	Content.Server/Atmos/TileAtmosphere.cs
#	Content.Server/Doors/Components/AirlockComponent.cs
#	Content.Server/Doors/Components/FirelockComponent.cs
#	Content.Server/Doors/Components/ServerDoorComponent.cs
#	Content.Server/Doors/IDoorCheck.cs

* namespaces

* Fix mapinit bug with refreshautoclose

* ok i guess these just didnt feel like staging today

* Automatic changelog update

* AtmosDevices can optionally process in space. (#4405)

Refactors some misc atmos things, too.

* Fix gravity generator yeeting

* Enables nullables for atmos internals

* Meth (#4186)

* adds an overdose metabolism with sensible default settings

* adds the compoenents for the run fast part of meth

* not sure what I changed here but I trust my past self to not fuck up for once

* adds basic meth recipe

* correctly names comething

* I really should've checked my spelling before making this pr

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* adds suggestion from the maintaner, who managed to get to this pr suprisingly fast

* Revert "adds suggestion from the maintaner, who managed to get to this pr suprisingly fast"

This reverts commit 9b0f07402e35ed5890b3af805691b690671b950c.

* tweak

* tweak

* git's gitting on my nerves

* some small tweaks

* don't need these anymore

* makes some stuff required

* changes the meth recipe to arbitary bullshit to get the yaml thingy to leave me alone goddamnit

* extremely minor change

* removes overdose, because however it's gonna be done, it's definitely not my way

* i should really double check every key I press

* hm

* sigh, I should be more thorough with looking at error messages.

* beenus

* gay sex is gay

* this one goes out to bingo

* reviews

* not sure why status lifetime description wasn't being commited

* Update MovespeedModifierMetabolism.cs

Co-authored-by: mirrorcult <notzombiedude@gmail.com>

* adds VV to component variables

* rebalances meth, and makes the completely unrealistic recipe properly work now

* meth effects should go away now or something do you think I test these changes before pushing??

* ah yes, orginization

* adds proper recipe and prequisite chemicals

* fixes linter hopefully

* Update chemicals.yml

* a

* starts working on prediction

* thing

* predmiction??

* changes thing

* does it properly

* uses timespan instead of timer

* uses dif timers and adds a system

* updates robust and tweaks a small thing

* Fixes

* "Fix" prediction

* starts changing the timer to timespans to avoid icky on timer end

* okay fixes the check thing but now meth is broken and I don't know why

* fixes predicition (partially)

* Delete ContentNetIDs.cs

whoops

* some changes advised by sloth

* certified scalycode fix right here

* moves resettimer to the metabolism to make it less oop stinky

* moves resettimer to the metabolism to make it less oop stinky

* gamin

* when the  is

* updates mth colour to be accurate because I forgot

* abc hard ok

* everything should be up to date now

* makes MovespeedModifierMetabolism ECS and cleans up some other stuff

* does a fixy wixy

* fix thing

* Revert "Merge branch 'master' of https://github.com/space-wizards/space-station-14 into meth"

This reverts commit 62886561098be02f9adb6352f4e858a8269d5bd5, reversing
changes made to ca34fffb5b7a40f19aec7b9e4bc37bdeab914bc1.

* Revert "Revert "Merge branch 'master' of https://github.com/space-wizards/space-station-14 into meth""

This reverts commit 4f550da19656abfd0be05f818fc6b7100252d5b8.

* fix hopefully

* updates metabolism to works with mirror's fancy new system

* updates yaml + tweaks

* bruh

* yaml moment

* :yaml moment

* Revert " :yaml moment"

This reverts commit 8cb51573c64db76d989de22acdbb9c50b2c6d052.

* 99th commit yay, also I need to not do this

* removes something that I don't need

* makes system work with this and gets rid of unnesescary check

* make the update only work on active components

* oops

* Cleanup

* alphabetise this shit

* Touchup

* Woops stupid alloc by me

* Nerf nyoom for now

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: mirrorcult <notzombiedude@gmail.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>

* Automatic changelog update

* Random offset for DefaultGrid every round (#4411)

* Random offset for DefaultGrid every round

This is useful to make coders aware of entitycoordinates and mapcoordinates being different and to help spot problems early. It also puts the onus of fixing positioning bugs back onto the original coder rather than someone else if they happen to spot it.

* Fix clickable test

* Fix entitysystemextensions

* Automatic changelog update

* Document a few atmos classes.

* Update submodule

We do a little bit of debugging

* Make pulling feel less crap (#4414)

Something something pulling refactor someday

* Automatic changelog update

* Comment joint prediction

* Add CVar for random grid offset, disable it by default.

* Fixes not taking pressure damage in space.
Fixes #4415

* Automatic changelog update

* Adds an alternate jumpsuit for botany (#4419)

* Adds an alternate botanists jumpsuit

* Updated license information

* Automatic changelog update

* Added two new small areas to maintenence (#4359)

Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>

* Automatic changelog update

* Updated meta.json to standard

* Update meta.json to standard

* a

* Revert "Update meta.json to standard"

This reverts commit 4c6702f17b.

* Revert "Updated meta.json to standard"

This reverts commit 8ea7a3ad1f.

* fix rsi

* proper sprites + visualizes nicely

* Removes broken new-line markers from a few desc.

* Fixes a localization error with solution container descriptions

* construction

* reviews + test

* remove SetLayerVisibility, doesnt work for some reason

* swept moment

* leftover

* Automatic changelog update

* Fix can't return to body bug (#4424)

* Automatic changelog update

* Update submodule

* Fix gas tile overlays on shuttles

* Offset station on roundstart again

* Fix PlaceableSurface incorrect coordinate usage.
It set world position to entity coordinate positions...

* Automatic changelog update

* Fix pickup animation incorrect coordinate usage.
Animation finalPosition was world position, while initialPosition was local position.

* Automatic changelog update

* Pointing coordinate fixes.

* Automatic changelog update

* Further pickup animation improvements.

* Adds Science Windoors (#4433)

Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>

* Gave CMO a Hardsuit (#4434)

Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>

* Automatic changelog update

* Fixed station engineer table spawn (#4436)

* Maps in windoors (#4432)

* Automatic changelog update

* Losing a head doesn't mean you lose your eyes #3956 #4061 (#4225)

Co-authored-by: Michael Will <will_m@outlook.de>

* Automatic changelog update

* Adds windoors for security and the brig. (#4441)

* Automatic changelog update

* Remaps Chemistry and Security, and some Mapping Fixes (#4442)

* Automatic changelog update

* Made the cloning pod and medical scanner constructible (#4439)

* Made the cloning machine pod constructable

* Added everything like I did but with the Medical Scanner

Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>

* Automatic changelog update

* Fix fixed-point format specifier in PowerCellComponent

* Update submodule

* Actually update submodule

The last one was a test to check if you were paying attention.

* Update maps for grid collisions (#4450)

* Update submodule

* Fixes the windoor in science. (#4444)

* Automatic changelog update

* Remove IActionBlocker.CanMove (#4449)

* Remove IActionBlocker.CanMove

Ported the remainders over to using MovementAttemptEvent which should also help make mob movement a bit faster.

* Make that check faster

* Added restrictions for what can be inserted into most belts (#4367)

* Belts now restrict what can be inserted into them

* Bandolier now only holds shotgun shells

* Tiny typo

* Another tiny typo

* Automatic changelog update

* Fix indentation

* Fix stuff

* Fix gas canister

* Organize gas canister prototype

* Fix audio occlusion

This was previously being done on every SoundComponent.

* Call SoundSystem instead

* Parents crowbar-red and merges RSIs

* Deletes old crowbar_red.rsi

* Abstracts BasePlushie and ReagentContainerBase

* Adds missing suffixes to debug items and tags them all

* Crematorium now makes a noise on start and during cremation (#4459)

* Automatic changelog update

* Refactor disposals to ECS (#4418)

* ECS up disposals

Also significantly reduced its CPU usage.

* Make update significantly less S L O W

* Start units pressurised

* Client-side flush lerping

* Fix powered not toggling UI

* Fix flush button

* InteractUsing

* Minor optimisations

* Fix collisions

* Make visual state ECS

* Almost done with shared

* Most stuff moved

* Optimise item sleeping

* Automatic changelog update

* Fix door sound dampening (#4453)

* Completely fix NPC pathfinding

Through rigorous investigation and hard work.

* Implement Entity List Display and rework StorageComponent window (#4140)

* Create EntityListDisplay

* Rework ClientStorage window

* Add styling

* Remove unnecessary colors

* Rename list

* Make scrollbar push content

* Change children update a bit

* Add old index

* Localize ClientStorageComponent

* Add size return

* Remove spaces

* Fix usings

* Fix tool sounds.
Fixes #4465

* Automatic changelog update

* Fix missing sounds (#4466)

* Fix missing sounds

* Make SoundHitSpecies fallback to SoundHit

* Fix crayon YAML

* Update PlaySoundBehavior YAML

* Fix required

* Update README.md

* Fix taser physics (#4470)

* Increase MoverController performance (#4448)

Should be a decent amount; rest will come from removing IActionBlocker.

* Remove throwing fixture error

* Update submodule

* Fix sound crash when making foam (#4476)

* Automatic changelog update

* Centers some sprites

* Fix showatmos

* Fix tests.
Flashlight RSI state names had been changed, and some places weren't updated properly

* Remove pillcomponent (#4469)

* Remove PillComponent

* Make food without any solution left delete and create trash

* Replace PillComponent references with a Pill tag

* Clean up

* Add swallow message to food

* Change to eatMessage override

* Change FoodComponent transferAmount to nullable

* Change properties to private

* ItemCabinetVisualizer uses layers (#4445)

* ItemCabinetVisualizer uses layers

* Reviews applied

* Fixes the fireaxe cabinet as well

* I'm dumb

* Fixes bedsheets being unpickupable (#4479)

* Automatic changelog update

* Adds inhands for crayons and the crayon box (#4481)

* Automatic changelog update

* Fixes cigarette animations and matches now have lit/unlit inhand sprites (#4480)

* Automatic changelog update

* Adds plant clippers and changes hydro tool sprites to be more consistent (#4482)

* Adds plant clippers

* Updates sycthe, hoe and spade sprites

* Adds inhands for radio/walkietalkie (#4483)

* Adds inhands for radio/walkietalkie and separates layers

* License thingy

* Fixes test

* Can now equip fireaxe, claymore, spear and baseball back on your back (#4484)

* Can equip spears and claymores on your back now

* Adds fireaxe and baseball bat back equip

* Automatic changelog update

* Makes Match[sticks/box] ECS, Makes Matchsticks ignite plasma

* am big dumdum pls no shed

* Owner Transform to Owner in SoundSystem calls (#4460)

* Owner Transform to Owner

* Owner Transform to Owner minor fixes

* Improve hand pickup code
This way I can break EntityCoordinates' API without breaking content.
BWAHAHAHAHAH!

* Update submodule

* Version v0.5.11 does not exist

* Update submodule

We don't talk about v0.5.12 either.

* Update submodule

For the last time

* Adds duck-related content and a seclite (#4489)

* Added rubber ducky

* Adds ducky slippers

* Adds seclite

* Update Resources/Textures/Objects/Tools/seclite.rsi/meta.json

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

* Update Resources/Textures/Objects/Fun/ducky.rsi/meta.json

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

* The duck slippers now quack as you walk

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

* Automatic changelog update

* Adds the ability to assign equip sounds in ClothingComponent (#4485)

* Initial

* Works (Kinda)

* Polish

* Reviews

* Removes vending inventory desc and adds missing vending machine descriptions (#4493)

* Removes inventory descriptions

* Adds missing vending machine descriptions using inventory descriptions

* Woops missed a file

* Automatic changelog update

* Adds a ton more inhands (#4488)

* Removed useless loc and added inhands for some lamps

* Adds a ton of inhands to the game

* Actually adds the pill inhand

* Update Resources/Textures/Objects/Misc/utensils.rsi/meta.json

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

* Update Resources/Textures/Objects/Tools/rcd.rsi/meta.json

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

* Added open/close/stacklayers for Matchbox and inhands (#4496)

* Added open/close/stacklayers for Matchbox

* Added inhands for matchbox

* What am I a clown not gonna leave no indent spaces

* Adds sound to fire extinguisher safety (#4494)

* Automatic changelog update

* Adds a 6pack of Cola (#4499)

* Adds a 6pack of Cola

* Revert "Adds a 6pack of Cola"

This reverts commit 99f024b94ab3c684ce62e28018bd0fe2f26a2e09.

* Revert "Revert "Adds a 6pack of Cola""

This reverts commit 9e3d31e41c8ea61a962ad7d4d3c0ea7124e82653.

* Automatic changelog update

* Fix H-pulling? (#4425)

In retrospect the answer is easy, but man this took a while.

* Automatic changelog update

* Makes DiceComponent ECS

* Makes PlaceableSurface ECS

* Added classic announcement sound to announcements (#4504)

* Automatic changelog update

* Refactors throw events, makes cream pies ECS (#4500)

* Automatic changelog update

* Port the tumbler from Box2D (#4486)

* Subscribe TransformComponent events by-ref (#4478)

* Refactor damageablecomponent update (#4406)

* Fixing merge.

I messed up part of the merge. this should fix it?

* Barotrauma now uses prototypeManager

As System.Runtime.CompilerServices also has a [Dependency], I think I had to use the full path [Robust.Shared.IoC.Dependency]

* FlammableComponent now uses prototypeManager

* SuicideCommands now use prototypeManager

* Changed  many files to use prototypeManager to resolve damaege prototypes

Yeah.... prototype references would be very nice. maybe this was all a waste of time.

* Grouping prototypeManager.Index with datafield definitions

This will make it easier to eventually add prototype references

* removed unused variable

* Moved lines around.

Lines now consistent with other TODO PROTOTYPE blocks

* Grouping more prototypeManager.Index with datafield definitions

* Removed unnecessary code

* Added more prototypeManager indexing

These ones weren't pointed out by DrSmug. But I think this is all of them? That or my regex is shit.

* Remove redundant _damage field

* Remove redundant _currentTemperature

* Moved variables down

* Added prototypeManager indexing to TemperatureComponent

* WeaponComponent/System now use ProtptypeManager

And as far as I can tell damageType is required, and therefore should never have been null anyway?

* Make ranged weapon clumsy fire effects datafields

And yes, the order in which the clumsy effects occur is very important.

* Made damage on vital body part loss a datafield

* Renamed several damageGroup variables to group

* Capitalised DamageListToDamageGroup

* Make radiation and explosion damage types datafields

* Renamed _supportedDamageGroupIDs and _supportedDamageTypeIDs

* Fixed mistakes

Frogot to remove prototypeManager index DamageTypeTrigger, and wrong variable visibility in TemperatureComponent

* Added necessary code

Is something tragically wrong?

* MeleeWeapon damageType is not actually required

* Fixing someone else's mistakes

A search comes up with nothing in the yaml files, and its not a required field. So no one uses it? Hopefully?

* Changed and renamed damageTypeToDamageGroup

Previously would incorrectly return the total container damage for each group, not the total in the group

* renaming varitables

* Renamed variable DamageClasses

* Added dictionary converting functions

* Added ID-keyed dictionaries

* Making MedicalScanner use ID dictionaries, instead of prototype dictionaries

Oh oh no. I've been able to avoid UI & networking up until now. I have no Idea what I am doing.

* Fix Medical Scanner

* Summary (required)

The joke here is that this fixes the empty summary.

* Removed DamageableComponent.GetDamageGroup/Type

* Renamed "damage classes" to groups.

* Update ChangeDamage description

* Replaced Heal() with SettAllDamage()

Heal() was just a confusing name,

* More Class -> Group renaming

* Replace Class with Group in yaml files

DamageClassTrigger does not appear in any yaml? only in testing?
DamageTypeTrigger appears only in human.yaml?
HealthChangeMetabolism is Mostly in medicine.yml and one in soad.yaml

Why the hell is Cola metabolizable by plants? Who is pouring cola on their plants!?!?

* Fix _prototypeManager being null errors.

* Changing comments

Where are the prototype references

* MetabolismComponent doesn't give free heals anymore.

* Changes HungerComponent healing.

Previously I think it would actually damage you.  Only did this as I though it was causing the fast healing. Turns out that was just BREATHING.

* Generalised a function in DamageableComponent and moved it to DamageGroupPrototype

previously DamageTypesDictToDamageGroupDict was private to DamageableComponent, but was also quite general (nearly a static function). As this sort of function may be needed by other components using DamageGroupPrototypes in the future, I moved it there as a static function instead.

* modified DamageableComponent.ChangeDamage()

ignoreResistances was renamed to ignoreDamageResistances to make it clearer that it had no effect on healing.

Now uses default argument for ignoreDamageResistances, so when healing you are not forced to specify an argument that does nothing.

Also made some general changes to ignoreResistances()

* Changed class->group and added missing damage type functionality to DamageContainerPrototypes

* Added Comments to damage.yml

* Misc Changes to DamageableComponent

* Differentiated between group support and group applicability

So far, every damage type is a member of one, and only one, damage group. So this change has no real effect so far.

* Added proposed alternative to ChangeDamage()

* fixed error in DamageGroupPrototype

* Changes to DamageableComponent

Lots of changes to comments.
Some variables renamed in IDamageableComponent and DamageableComponent (also required renaming in other files)

Some minor logic changes, mostly for incorrect descirptions of boolean return values.

Also further differentiating between ApplicableGroups and SupportedGroups... if that will ever even matter

* Generalised MedicalScannerComponent

If needed, can print miscellaneous damage types now

* Fixed HealthChangeMetabolism bug

* Changing Comments around

* More questions

* Made Barotrauma default to blunt

* Fix RejuvenateTest.cs

* Comments

* Coments and variable names

* fix some master-merge issues

* Removed redundant fields

* Misc changes for readbility of PR diff

* Consistent naming

* Fixed atmos damage bug

* Removed Ranting

* Fixed Hunger after I broke it

* Fixing Bugs

* Removed stupid question

* Removed more stupid questions

* Fix potential null errors.

* Made boolean return values consistent

Also renamed several functions, to make it clear they return a bool. Docs were also updated.

* Removed IoCManager.InjectDependencies()

* Removed unnecessary 'suffocation' prefix

* Fixed Spelling

Also removed accidentally left in logger call

* Fixed Medical Scanner

* Apply suggestions from code review

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

* Changing comments and whitespaces

* Made damage thresholds trigger  datafields required

* So many typos

* Changes to DamageableComponents

Changed documentation in IDamageableComponent

Made testing code more readable.

Relabelled groups as 'Applicable' either 'Fully Supported'

* Removed function and degeneralised

* Update DamageableComponent.cs

Removed unused parameters
Fixed Networking

* Added IoCManager.Resolve

* Now using alternative TryChangeDamage()

* Removed function from DamageGroupPrototype

* Removing comments

* Remove bad if statement?

* Fix damageChanged ordering

* Fix hurt server command

* Changed //TODO PROTOTYPE blocks

Now use PrototypeManager differently. Wherever possible, only retrieve the prototype once.

Also added default damage types to some more datafields

* Update Content.Shared/Damage/Container/DamageContainerPrototype.cs

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

* renamed _accumulatedHealth -> _accumulatedDamage and added TODOs

* Another class-> group

* Fix bug in generalisation of damage container prototypes

* Addes Tests to make sure I dont keep adding bugs to my own code.

* Changed Return values when setting

* Removed unused class

* Added more tests, split tests into three files

* Made damage types public and VV read-write-able

* Minor changes to DamageableComponent

Replaced internal use of GetDamagePerType with _damageDict and removed some unnecessary fields

* Fix Suicide, by adding IoC Resolve()

* Fix DamageGroupTrigger bug

* Fix typos in tests

* Change comments./docstrings & spacing

* Merge tests, use test prototypes

Co-authored-by: Leon Friedrich <60421075+leonsfriedrich@users.noreply.github.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

* Add Alt-click functionality (#4497)

* Fix ItemSlot Bug

* Add Alt-use Key

* Fix TransferAmount window bug

* Alt-click functionality

* Added AltInteract verbs

* Add new verbs

* verb icons

* Changed Comments

* Change Comments

* Fix disposal verbs

* Changed Get...() to Get...OrNull()

* Changed alt-interact combat behaviour

* Update verb icons

* Inventory interact event

* Add Alt+E secondary binding

* Add alt-z keybinding

* Rename AltUse -> AltActivateItemInWorld

* Automatic changelog update

* Fixes chocolate/energy bar (#4503)

* Bring refactor-damageablecomponent branch up-to-date with master (#4510)

* Revert "#3935 implemented suggestions from PR"

This reverts commit a9b1c7b96333ca570067d6a9df1954481005892a.

* #4219 revert of single sound removal in EmitSoundSystem

* #4219 single sounds in EmitSoundSystem should work now

* #4219 some small project tweaks

* #4219 upgraded EmitSoundSystem to use SoundSpecifier

* replacing sound (collection) names with SoundSpecifier - part 1

* #4219 pr tweaks

* #4219 pr tweak

(cherry picked from commit 00b80cb1df2434259ab5df45188e176be57603af)

* emitsoundsystem tweak

* first windoor commit

* finished yaml

* windoors work #Dab

* sound + locked prototypes

* Inserted SoundSpecifier where appropiate

* added comment

* removed TryGetSound + made some SoundSpecifier datafields required

* changed some prototypes' sound paths

* test fixes

* Made plasma grindable (#4334)

Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>
Co-authored-by: Swept <sweptwastaken@protonmail.com>

* Automatic changelog update

* Fixes invalid yaml line (#4408)

* Fix potential timer exception

* SetTile during extensions test (#4409)

Mainly so it can actually account for accurate grid bounds when doing the test

Co-authored-by: metalgearsloth <metalgearsloth@gmail.com>

* Update submodule

* GasFilter appearance, EnabledAtmosDeviceVisualizer improvements.

* Add Enabled property to SubFloorHideComponent, make it networked. (#4404)

* Refactor IDoorCheck into entity events (#4366)

* IDoorCheck refactored to events

# Conflicts:
#	Content.Server/Atmos/TileAtmosphere.cs
#	Content.Server/Doors/Components/AirlockComponent.cs
#	Content.Server/Doors/Components/FirelockComponent.cs
#	Content.Server/Doors/Components/ServerDoorComponent.cs
#	Content.Server/Doors/IDoorCheck.cs

* namespaces

* Fix mapinit bug with refreshautoclose

* ok i guess these just didnt feel like staging today

* Automatic changelog update

* AtmosDevices can optionally process in space. (#4405)

Refactors some misc atmos things, too.

* Fix gravity generator yeeting

* Enables nullables for atmos internals

* Meth (#4186)

* adds an overdose metabolism with sensible default settings

* adds the compoenents for the run fast part of meth

* not sure what I changed here but I trust my past self to not fuck up for once

* adds basic meth recipe

* correctly names comething

* I really should've checked my spelling before making this pr

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* adds suggestion from the maintaner, who managed to get to this pr suprisingly fast

* Revert "adds suggestion from the maintaner, who managed to get to this pr suprisingly fast"

This reverts commit 9b0f07402e35ed5890b3af805691b690671b950c.

* tweak

* tweak

* git's gitting on my nerves

* some small tweaks

* don't need these anymore

* makes some stuff required

* changes the meth recipe to arbitary bullshit to get the yaml thingy to leave me alone goddamnit

* extremely minor change

* removes overdose, because however it's gonna be done, it's definitely not my way

* i should really double check every key I press

* hm

* sigh, I should be more thorough with looking at error messages.

* beenus

* gay sex is gay

* this one goes out to bingo

* reviews

* not sure why status lifetime description wasn't being commited

* Update MovespeedModifierMetabolism.cs

Co-authored-by: mirrorcult <notzombiedude@gmail.com>

* adds VV to component variables

* rebalances meth, and makes the completely unrealistic recipe properly work now

* meth effects should go away now or something do you think I test these changes before pushing??

* ah yes, orginization

* adds proper recipe and prequisite chemicals

* fixes linter hopefully

* Update chemicals.yml

* a

* starts working on prediction

* thing

* predmiction??

* changes thing

* does it properly

* uses timespan instead of timer

* uses dif timers and adds a system

* updates robust and tweaks a small thing

* Fixes

* "Fix" prediction

* starts changing the timer to timespans to avoid icky on timer end

* okay fixes the check thing but now meth is broken and I don't know why

* fixes predicition (partially)

* Delete ContentNetIDs.cs

whoops

* some changes advised by sloth

* certified scalycode fix right here

* moves resettimer to the metabolism to make it less oop stinky

* moves resettimer to the metabolism to make it less oop stinky

* gamin

* when the  is

* updates mth colour to be accurate because I forgot

* abc hard ok

* everything should be up to date now

* makes MovespeedModifierMetabolism ECS and cleans up some other stuff

* does a fixy wixy

* fix thing

* Revert "Merge branch 'master' of https://github.com/space-wizards/space-station-14 into meth"

This reverts commit 62886561098be02f9adb6352f4e858a8269d5bd5, reversing
changes made to ca34fffb5b7a40f19aec7b9e4bc37bdeab914bc1.

* Revert "Revert "Merge branch 'master' of https://github.com/space-wizards/space-station-14 into meth""

This reverts commit 4f550da19656abfd0be05f818fc6b7100252d5b8.

* fix hopefully

* updates metabolism to works with mirror's fancy new system

* updates yaml + tweaks

* bruh

* yaml moment

* :yaml moment

* Revert " :yaml moment"

This reverts commit 8cb51573c64db76d989de22acdbb9c50b2c6d052.

* 99th commit yay, also I need to not do this

* removes something that I don't need

* makes system work with this and gets rid of unnesescary check

* make the update only work on active components

* oops

* Cleanup

* alphabetise this shit

* Touchup

* Woops stupid alloc by me

* Nerf nyoom for now

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: mirrorcult <notzombiedude@gmail.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>

* Automatic changelog update

* Random offset for DefaultGrid every round (#4411)

* Random offset for DefaultGrid every round

This is useful to make coders aware of entitycoordinates and mapcoordinates being different and to help spot problems early. It also puts the onus of fixing positioning bugs back onto the original coder rather than someone else if they happen to spot it.

* Fix clickable test

* Fix entitysystemextensions

* Automatic changelog update

* Document a few atmos classes.

* Update submodule

We do a little bit of debugging

* Make pulling feel less crap (#4414)

Something something pulling refactor someday

* Automatic changelog update

* Comment joint prediction

* Add CVar for random grid offset, disable it by default.

* Fixes not taking pressure damage in space.
Fixes #4415

* Automatic changelog update

* Adds an alternate jumpsuit for botany (#4419)

* Adds an alternate botanists jumpsuit

* Updated license information

* Automatic changelog update

* Added two new small areas to maintenence (#4359)

Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>

* Automatic changelog update

* Updated meta.json to standard

* Update meta.json to standard

* a

* Revert "Update meta.json to standard"

This reverts commit 4c6702f17b.

* Revert "Updated meta.json to standard"

This reverts commit 8ea7a3ad1f.

* fix rsi

* proper sprites + visualizes nicely

* Removes broken new-line markers from a few desc.

* Fixes a localization error with solution container descriptions

* construction

* reviews + test

* remove SetLayerVisibility, doesnt work for some reason

* swept moment

* leftover

* Automatic changelog update

* Fix can't return to body bug (#4424)

* Automatic changelog update

* Update submodule

* Fix gas tile overlays on shuttles

* Offset station on roundstart again

* Fix PlaceableSurface incorrect coordinate usage.
It set world position to entity coordinate positions...

* Automatic changelog update

* Fix pickup animation incorrect coordinate usage.
Animation finalPosition was world position, while initialPosition was local position.

* Automatic changelog update

* Pointing coordinate fixes.

* Automatic changelog update

* Further pickup animation improvements.

* Adds Science Windoors (#4433)

Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>

* Gave CMO a Hardsuit (#4434)

Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>

* Automatic changelog update

* Fixed station engineer table spawn (#4436)

* Maps in windoors (#4432)

* Automatic changelog update

* Losing a head doesn't mean you lose your eyes #3956 #4061 (#4225)

Co-authored-by: Michael Will <will_m@outlook.de>

* Automatic changelog update

* Adds windoors for security and the brig. (#4441)

* Automatic changelog update

* Remaps Chemistry and Security, and some Mapping Fixes (#4442)

* Automatic changelog update

* Made the cloning pod and medical scanner constructible (#4439)

* Made the cloning machine pod constructable

* Added everything like I did but with the Medical Scanner

Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>

* Automatic changelog update

* Fix fixed-point format specifier in PowerCellComponent

* Update submodule

* Actually update submodule

The last one was a test to check if you were paying attention.

* Update maps for grid collisions (#4450)

* Update submodule

* Fixes the windoor in science. (#4444)

* Automatic changelog update

* Remove IActionBlocker.CanMove (#4449)

* Remove IActionBlocker.CanMove

Ported the remainders over to using MovementAttemptEvent which should also help make mob movement a bit faster.

* Make that check faster

* Added restrictions for what can be inserted into most belts (#4367)

* Belts now restrict what can be inserted into them

* Bandolier now only holds shotgun shells

* Tiny typo

* Another tiny typo

* Automatic changelog update

* Fix indentation

* Fix stuff

* Fix gas canister

* Organize gas canister prototype

* Fix audio occlusion

This was previously being done on every SoundComponent.

* Call SoundSystem instead

* Parents crowbar-red and merges RSIs

* Deletes old crowbar_red.rsi

* Abstracts BasePlushie and ReagentContainerBase

* Adds missing suffixes to debug items and tags them all

* Crematorium now makes a noise on start and during cremation (#4459)

* Automatic changelog update

* Refactor disposals to ECS (#4418)

* ECS up disposals

Also significantly reduced its CPU usage.

* Make update significantly less S L O W

* Start units pressurised

* Client-side flush lerping

* Fix powered not toggling UI

* Fix flush button

* InteractUsing

* Minor optimisations

* Fix collisions

* Make visual state ECS

* Almost done with shared

* Most stuff moved

* Optimise item sleeping

* Automatic changelog update

* Fix door sound dampening (#4453)

* Completely fix NPC pathfinding

Through rigorous investigation and hard work.

* Implement Entity List Display and rework StorageComponent window (#4140)

* Create EntityListDisplay

* Rework ClientStorage window

* Add styling

* Remove unnecessary colors

* Rename list

* Make scrollbar push content

* Change children update a bit

* Add old index

* Localize ClientStorageComponent

* Add size return

* Remove spaces

* Fix usings

* Fix tool sounds.
Fixes #4465

* Automatic changelog update

* Fix missing sounds (#4466)

* Fix missing sounds

* Make SoundHitSpecies fallback to SoundHit

* Fix crayon YAML

* Update PlaySoundBehavior YAML

* Fix required

* Update README.md

* Fix taser physics (#4470)

* Increase MoverController performance (#4448)

Should be a decent amount; rest will come from removing IActionBlocker.

* Remove throwing fixture error

* Update submodule

* Fix sound crash when making foam (#4476)

* Automatic changelog update

* Centers some sprites

* Fix showatmos

* Fix tests.
Flashlight RSI state names had been changed, and some places weren't updated properly

* Remove pillcomponent (#4469)

* Remove PillComponent

* Make food without any solution left delete and create trash

* Replace PillComponent references with a Pill tag

* Clean up

* Add swallow message to food

* Change to eatMessage override

* Change FoodComponent transferAmount to nullable

* Change properties to private

* ItemCabinetVisualizer uses layers (#4445)

* ItemCabinetVisualizer uses layers

* Reviews applied

* Fixes the fireaxe cabinet as well

* I'm dumb

* Fixes bedsheets being unpickupable (#4479)

* Automatic changelog update

* Adds inhands for crayons and the crayon box (#4481)

* Automatic changelog update

* Fixes cigarette animations and matches now have lit/unlit inhand sprites (#4480)

* Automatic changelog update

* Adds plant clippers and changes hydro tool sprites to be more consistent (#4482)

* Adds plant clippers

* Updates sycthe, hoe and spade sprites

* Adds inhands for radio/walkietalkie (#4483)

* Adds inhands for radio/walkietalkie and separates layers

* License thingy

* Fixes test

* Can now equip fireaxe, claymore, spear and baseball back on your back (#4484)

* Can equip spears and claymores on your back now

* Adds fireaxe and baseball bat back equip

* Automatic changelog update

* Makes Match[sticks/box] ECS, Makes Matchsticks ignite plasma

* am big dumdum pls no shed

* Owner Transform to Owner in SoundSystem calls (#4460)

* Owner Transform to Owner

* Owner Transform to Owner minor fixes

* Improve hand pickup code
This way I can break EntityCoordinates' API without breaking content.
BWAHAHAHAHAH!

* Update submodule

* Version v0.5.11 does not exist

* Update submodule

We don't talk about v0.5.12 either.

* Update submodule

For the last time

* Adds duck-related content and a seclite (#4489)

* Added rubber ducky

* Adds ducky slippers

* Adds seclite

* Update Resources/Textures/Objects/Tools/seclite.rsi/meta.json

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

* Update Resources/Textures/Objects/Fun/ducky.rsi/meta.json

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

* The duck slippers now quack as you walk

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

* Automatic changelog update

* Adds the ability to assign equip sounds in ClothingComponent (#4485)

* Initial

* Works (Kinda)

* Polish

* Reviews

* Removes vending inventory desc and adds missing vending machine descriptions (#4493)

* Removes inventory descriptions

* Adds missing vending machine descriptions using inventory descriptions

* Woops missed a file

* Automatic changelog update

* Adds a ton more inhands (#4488)

* Removed useless loc and added inhands for some lamps

* Adds a ton of inhands to the game

* Actually adds the pill inhand

* Update Resources/Textures/Objects/Misc/utensils.rsi/meta.json

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

* Update Resources/Textures/Objects/Tools/rcd.rsi/meta.json

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

* Added open/close/stacklayers for Matchbox and inhands (#4496)

* Added open/close/stacklayers for Matchbox

* Added inhands for matchbox

* What am I a clown not gonna leave no indent spaces

* Adds sound to fire extinguisher safety (#4494)

* Automatic changelog update

* Adds a 6pack of Cola (#4499)

* Adds a 6pack of Cola

* Revert "Adds a 6pack of Cola"

This reverts commit 99f024b94ab3c684ce62e28018bd0fe2f26a2e09.

* Revert "Revert "Adds a 6pack of Cola""

This reverts commit 9e3d31e41c8ea61a962ad7d4d3c0ea7124e82653.

* Automatic changelog update

* Fix H-pulling? (#4425)

In retrospect the answer is easy, but man this took a while.

* Automatic changelog update

* Makes DiceComponent ECS

* Makes PlaceableSurface ECS

* Added classic announcement sound to announcements (#4504)

* Automatic changelog update

* Refactors throw events, makes cream pies ECS (#4500)

* Automatic changelog update

* Port the tumbler from Box2D (#4486)

* Subscribe TransformComponent events by-ref (#4478)

* Add Alt-click functionality (#4497)

* Fix ItemSlot Bug

* Add Alt-use Key

* Fix TransferAmount window bug

* Alt-click functionality

* Added AltInteract verbs

* Add new verbs

* verb icons

* Changed Comments

* Change Comments

* Fix disposal verbs

* Changed Get...() to Get...OrNull()

* Changed alt-interact combat behaviour

* Update verb icons

* Inventory interact event

* Add Alt+E secondary binding

* Add alt-z keybinding

* Rename AltUse -> AltActivateItemInWorld

* Automatic changelog update

* Fixes chocolate/energy bar (#4503)

* Fix merge issues

Co-authored-by: Galactic Chimp <GalacticChimpanzee@gmail.com>
Co-authored-by: Kara Dinyes <lunarautomaton6@gmail.com>
Co-authored-by: SethLafuente <84478872+SethLafuente@users.noreply.github.com>
Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>
Co-authored-by: Swept <sweptwastaken@protonmail.com>
Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com>
Co-authored-by: metalgearsloth <metalgearsloth@gmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Vera Aguilera Puerto <gradientvera@outlook.com>
Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: ScalyChimp <72841710+scaly-chimp@users.noreply.github.com>
Co-authored-by: mirrorcult <notzombiedude@gmail.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
Co-authored-by: Jaskanbe <86671825+Jaskanbe@users.noreply.github.com>
Co-authored-by: scrato <Mickaello2003@gmx.de>
Co-authored-by: Michael Will <will_m@outlook.de>
Co-authored-by: TimrodDX <timrod@gmail.com>
Co-authored-by: Leon Friedrich <60421075+leonsfriedrich@users.noreply.github.com>
Co-authored-by: Ygg01 <y.laughing.man.y@gmail.com>
Co-authored-by: Paul <ritter.paul1+git@googlemail.com>
Co-authored-by: ColdAutumnRain <73938872+ColdAutumnRain@users.noreply.github.com>
Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

* Singularity fixes (#4383)

* Singularity fixes

* Fix the rest

* Woops

* ahh

* Nerf singulo for now

* Final touchups for now

* Review

* Automatic changelog update

* Fix PA construction crash, make it clear that PA construction needs LV cables (#4506)

* Automatic changelog update

* Add security barriers (#4458)

* Add sprites

* Lock system now raises lock toggle events

* Add prototype and barrier system

* Toggle lock on click

* Barrier blocks bullets (like a real wall)

* Barrier now destroyable

* Fancy visualzer and lighting. Also unlock by default

* Deleted comma

* Ignored components?

* Update Resources/Prototypes/Entities/Objects/Specific/Security/barrier.yml

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Update Resources/Prototypes/Entities/Objects/Specific/Security/barrier.yml

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Toggle Lock no longer handled

* Made it much easier to move through airlocks

Co-authored-by: Swept <sweptwastaken@protonmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Automatic changelog update

* Updates name of LV cable coil

* Admin ghosts can now interact with stuff (#4178)

* Ghosts now have a bool for interacting with stuff

* Wrong ghost

* Simping for Swept

* Merge cleanup

* IT'S ODNE

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>

* Automatic changelog update

* Added Basic Parts Technology (#4440)

* Added parts Technology

* is something they're something

bad grammar

* Update Parts.yml

* Update technologies.yml

Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>
Co-authored-by: Swept <sweptwastaken@protonmail.com>

* Add basic meteor swarm (#4420)

* Add basic meteor swarm

* Map fixes

* Dependency cache

* Fix projectile crash

* Last of the reviews

* Automatic changelog update

* Update content for PhysicsMapComponent (#4462)

* Update content for PhysicsMapComponent

* Fix command

* Cache broadphasesystem

* Update submodule

* Update SS14 for grid contraction (#4452)

* Update SS14 for grid contraction

* Remove more dummy chunks

* Update submodule

* ratio's rects

* Add DamageType And DamageGroup Prototypes

* Remove DamageTypePrototype Field "name" as its redundant

* Change I/DamageableComponent to use prototypes

* Update DamageContainer, ReisistanceSet and DamageChangeData

* Change Barotrauma Component to use DamageType from DamageSystem

* Update AsteroidRockComponent

* update some more components

* update some more components

* Fix m o r e c o m p o n e n t s and their damageType

* all thats left is bug/missing node hunting then verification.

* push changes

* update submodule

* Merge fixes

* push DGP for example

* update damagecomponent across shared and server

* fix a few bugs

* Fix Merge issues

* Refactor damageablecomponent update (#4406)

* Fixing merge.

I messed up part of the merge. this should fix it?

* Barotrauma now uses prototypeManager

As System.Runtime.CompilerServices also has a [Dependency], I think I had to use the full path [Robust.Shared.IoC.Dependency]

* FlammableComponent now uses prototypeManager

* SuicideCommands now use prototypeManager

* Changed  many files to use prototypeManager to resolve damaege prototypes

Yeah.... prototype references would be very nice. maybe this was all a waste of time.

* Grouping prototypeManager.Index with datafield definitions

This will make it easier to eventually add prototype references

* removed unused variable

* Moved lines around.

Lines now consistent with other TODO PROTOTYPE blocks

* Grouping more prototypeManager.Index with datafield definitions

* Removed unnecessary code

* Added more prototypeManager indexing

These ones weren't pointed out by DrSmug. But I think this is all of them? That or my regex is shit.

* Remove redundant _damage field

* Remove redundant _currentTemperature

* Moved variables down

* Added prototypeManager indexing to TemperatureComponent

* WeaponComponent/System now use ProtptypeManager

And as far as I can tell damageType is required, and therefore should never have been null anyway?

* Make ranged weapon clumsy fire effects datafields

And yes, the order in which the clumsy effects occur is very important.

* Made damage on vital body part loss a datafield

* Renamed several damageGroup variables to group

* Capitalised DamageListToDamageGroup

* Make radiation and explosion damage types datafields

* Renamed _supportedDamageGroupIDs and _supportedDamageTypeIDs

* Fixed mistakes

Frogot to remove prototypeManager index DamageTypeTrigger, and wrong variable visibility in TemperatureComponent

* Added necessary code

Is something tragically wrong?

* MeleeWeapon damageType is not actually required

* Fixing someone else's mistakes

A search comes up with nothing in the yaml files, and its not a required field. So no one uses it? Hopefully?

* Changed and renamed damageTypeToDamageGroup

Previously would incorrectly return the total container damage for each group, not the total in the group

* renaming varitables

* Renamed variable DamageClasses

* Added dictionary converting functions

* Added ID-keyed dictionaries

* Making MedicalScanner use ID dictionaries, instead of prototype dictionaries

Oh oh no. I've been able to avoid UI & networking up until now. I have no Idea what I am doing.

* Fix Medical Scanner

* Summary (required)

The joke here is that this fixes the empty summary.

* Removed DamageableComponent.GetDamageGroup/Type

* Renamed "damage classes" to groups.

* Update ChangeDamage description

* Replaced Heal() with SettAllDamage()

Heal() was just a confusing name,

* More Class -> Group renaming

* Replace Class with Group in yaml files

DamageClassTrigger does not appear in any yaml? only in testing?
DamageTypeTrigger appears only in human.yaml?
HealthChangeMetabolism is Mostly in medicine.yml and one in soad.yaml

Why the hell is Cola metabolizable by plants? Who is pouring cola on their plants!?!?

* Fix _prototypeManager being null errors.

* Changing comments

Where are the prototype references

* MetabolismComponent doesn't give free heals anymore.

* Changes HungerComponent healing.

Previously I think it would actually damage you.  Only did this as I though it was causing the fast healing. Turns out that was just BREATHING.

* Generalised a function in DamageableComponent and moved it to DamageGroupPrototype

previously DamageTypesDictToDamageGroupDict was private to DamageableComponent, but was also quite general (nearly a static function). As this sort of function may be needed by other components using DamageGroupPrototypes in the future, I moved it there as a static function instead.

* modified DamageableComponent.ChangeDamage()

ignoreResistances was renamed to ignoreDamageResistances to make it clearer that it had no effect on healing.

Now uses default argument for ignoreDamageResistances, so when healing you are not forced to specify an argument that does nothing.

Also made some general changes to ignoreResistances()

* Changed class->group and added missing damage type functionality to DamageContainerPrototypes

* Added Comments to damage.yml

* Misc Changes to DamageableComponent

* Differentiated between group support and group applicability

So far, every damage type is a member of one, and only one, damage group. So this change has no real effect so far.

* Added proposed alternative to ChangeDamage()

* fixed error in DamageGroupPrototype

* Changes to DamageableComponent

Lots of changes to comments.
Some variables renamed in IDamageableComponent and DamageableComponent (also required renaming in other files)

Some minor logic changes, mostly for incorrect descirptions of boolean return values.

Also further differentiating between ApplicableGroups and SupportedGroups... if that will ever even matter

* Generalised MedicalScannerComponent

If needed, can print miscellaneous damage types now

* Fixed HealthChangeMetabolism bug

* Changing Comments around

* More questions

* Made Barotrauma default to blunt

* Fix RejuvenateTest.cs

* Comments

* Coments and variable names

* fix some master-merge issues

* Removed redundant fields

* Misc changes for readbility of PR diff

* Consistent naming

* Fixed atmos damage bug

* Removed Ranting

* Fixed Hunger after I broke it

* Fixing Bugs

* Removed stupid question

* Removed more stupid questions

* Fix potential null errors.

* Made boolean return values consistent

Also renamed several functions, to make it clear they return a bool. Docs were also updated.

* Removed IoCManager.InjectDependencies()

* Removed unnecessary 'suffocation' prefix

* Fixed Spelling

Also removed accidentally left in logger call

* Fixed Medical Scanner

* Apply suggestions from code review

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

* Changing comments and whitespaces

* Made damage thresholds trigger  datafields required

* So many typos

* Changes to DamageableComponents

Changed documentation in IDamageableComponent

Made testing code more readable.

Relabelled groups as 'Applicable' either 'Fully Supported'

* Removed function and degeneralised

* Update DamageableComponent.cs

Removed unused parameters
Fixed Networking

* Added IoCManager.Resolve

* Now using alternative TryChangeDamage()

* Removed function from DamageGroupPrototype

* Removing comments

* Remove bad if statement?

* Fix damageChanged ordering

* Fix hurt server command

* Changed //TODO PROTOTYPE blocks

Now use PrototypeManager differently. Wherever possible, only retrieve the prototype once.

Also added default damage types to some more datafields

* Update Content.Shared/Damage/Container/DamageContainerPrototype.cs

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

* renamed _accumulatedHealth -> _accumulatedDamage and added TODOs

* Another class-> group

* Fix bug in generalisation of damage container prototypes

* Addes Tests to make sure I dont keep adding bugs to my own code.

* Changed Return values when setting

* Removed unused class

* Added more tests, split tests into three files

* Made damage types public and VV read-write-able

* Minor changes to DamageableComponent

Replaced internal use of GetDamagePerType with _damageDict and removed some unnecessary fields

* Fix Suicide, by adding IoC Resolve()

* Fix DamageGroupTrigger bug

* Fix typos in tests

* Change comments./docstrings & spacing

* Merge tests, use test prototypes

Co-authored-by: Leon Friedrich <60421075+leonsfriedrich@users.noreply.github.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

* Bring refactor-damageablecomponent branch up-to-date with master (#4510)

* Revert "#3935 implemented suggestions from PR"

This reverts commit a9b1c7b96333ca570067d6a9df1954481005892a.

* #4219 revert of single sound removal in EmitSoundSystem

* #4219 single sounds in EmitSoundSystem should work now

* #4219 some small project tweaks

* #4219 upgraded EmitSoundSystem to use SoundSpecifier

* replacing sound (collection) names with SoundSpecifier - part 1

* #4219 pr tweaks

* #4219 pr tweak

(cherry picked from commit 00b80cb1df2434259ab5df45188e176be57603af)

* emitsoundsystem tweak

* first windoor commit

* finished yaml

* windoors work #Dab

* sound + locked prototypes

* Inserted SoundSpecifier where appropiate

* added comment

* removed TryGetSound + made some SoundSpecifier datafields required

* changed some prototypes' sound paths

* test fixes

* Made plasma grindable (#4334)

Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>
Co-authored-by: Swept <sweptwastaken@protonmail.com>

* Automatic changelog update

* Fixes invalid yaml line (#4408)

* Fix potential timer exception

* SetTile during extensions test (#4409)

Mainly so it can actually account for accurate grid bounds when doing the test

Co-authored-by: metalgearsloth <metalgearsloth@gmail.com>

* Update submodule

* GasFilter appearance, EnabledAtmosDeviceVisualizer improvements.

* Add Enabled property to SubFloorHideComponent, make it networked. (#4404)

* Refactor IDoorCheck into entity events (#4366)

* IDoorCheck refactored to events

# Conflicts:
#	Content.Server/Atmos/TileAtmosphere.cs
#	Content.Server/Doors/Components/AirlockComponent.cs
#	Content.Server/Doors/Components/FirelockComponent.cs
#	Content.Server/Doors/Components/ServerDoorComponent.cs
#	Content.Server/Doors/IDoorCheck.cs

* namespaces

* Fix mapinit bug with refreshautoclose

* ok i guess these just didnt feel like staging today

* Automatic changelog update

* AtmosDevices can optionally process in space. (#4405)

Refactors some misc atmos things, too.

* Fix gravity generator yeeting

* Enables nullables for atmos internals

* Meth (#4186)

* adds an overdose metabolism with sensible default settings

* adds the compoenents for the run fast part of meth

* not sure what I changed here but I trust my past self to not fuck up for once

* adds basic meth recipe

* correctly names comething

* I really should've checked my spelling before making this pr

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* adds suggestion from the maintaner, who managed to get to this pr suprisingly fast

* Revert "adds suggestion from the maintaner, who managed to get to this pr suprisingly fast"

This reverts commit 9b0f07402e35ed5890b3af805691b690671b950c.

* tweak

* tweak

* git's gitting on my nerves

* some small tweaks

* don't need these anymore

* makes some stuff required

* changes the meth recipe to arbitary bullshit to get the yaml thingy to leave me alone goddamnit

* extremely minor change

* removes overdose, because however it's gonna be done, it's definitely not my way

* i should really double check every key I press

* hm

* sigh, I should be more thorough with looking at error messages.

* beenus

* gay sex is gay

* this one goes out to bingo

* reviews

* not sure why status lifetime description wasn't being commited

* Update MovespeedModifierMetabolism.cs

Co-authored-by: mirrorcult <notzombiedude@gmail.com>

* adds VV to component variables

* rebalances meth, and makes the completely unrealistic recipe properly work now

* meth effects should go away now or something do you think I test these changes before pushing??

* ah yes, orginization

* adds proper recipe and prequisite chemicals

* fixes linter hopefully

* Update chemicals.yml

* a

* starts working on prediction

* thing

* predmiction??

* changes thing

* does it properly

* uses timespan instead of timer

* uses dif timers and adds a system

* updates robust and tweaks a small thing

* Fixes

* "Fix" prediction

* starts changing the timer to timespans to avoid icky on timer end

* okay fixes the check thing but now meth is broken and I don't know why

* fixes predicition (partially)

* Delete ContentNetIDs.cs

whoops

* some changes advised by sloth

* certified scalycode fix right here

* moves resettimer to the metabolism to make it less oop stinky

* moves resettimer to the metabolism to make it less oop stinky

* gamin

* when the  is

* updates mth colour to be accurate because I forgot

* abc hard ok

* everything should be up to date now

* makes MovespeedModifierMetabolism ECS and cleans up some other stuff

* does a fixy wixy

* fix thing

* Revert "Merge branch 'master' of https://github.com/space-wizards/space-station-14 into meth"

This reverts commit 62886561098be02f9adb6352f4e858a8269d5bd5, reversing
changes made to ca34fffb5b7a40f19aec7b9e4bc37bdeab914bc1.

* Revert "Revert "Merge branch 'master' of https://github.com/space-wizards/space-station-14 into meth""

This reverts commit 4f550da19656abfd0be05f818fc6b7100252d5b8.

* fix hopefully

* updates metabolism to works with mirror's fancy new system

* updates yaml + tweaks

* bruh

* yaml moment

* :yaml moment

* Revert " :yaml moment"

This reverts commit 8cb51573c64db76d989de22acdbb9c50b2c6d052.

* 99th commit yay, also I need to not do this

* removes something that I don't need

* makes system work with this and gets rid of unnesescary check

* make the update only work on active components

* oops

* Cleanup

* alphabetise this shit

* Touchup

* Woops stupid alloc by me

* Nerf nyoom for now

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: mirrorcult <notzombiedude@gmail.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>

* Automatic changelog update

* Random offset for DefaultGrid every round (#4411)

* Random offset for DefaultGrid every round

This is useful to make coders aware of entitycoordinates and mapcoordinates being different and to help spot problems early. It also puts the onus of fixing positioning bugs back onto the original coder rather than someone else if they happen to spot it.

* Fix clickable test

* Fix entitysystemextensions

* Automatic changelog update

* Document a few atmos classes.

* Update submodule

We do a little bit of debugging

* Make pulling feel less crap (#4414)

Something something pulling refactor someday

* Automatic changelog update

* Comment joint prediction

* Add CVar for random grid offset, disable it by default.

* Fixes not taking pressure damage in space.
Fixes #4415

* Automatic changelog update

* Adds an alternate jumpsuit for botany (#4419)

* Adds an alternate botanists jumpsuit

* Updated license information

* Automatic changelog update

* Added two new small areas to maintenence (#4359)

Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>

* Automatic changelog update

* Updated meta.json to standard

* Update meta.json to standard

* a

* Revert "Update meta.json to standard"

This reverts commit 4c6702f17b.

* Revert "Updated meta.json to standard"

This reverts commit 8ea7a3ad1f.

* fix rsi

* proper sprites + visualizes nicely

* Removes broken new-line markers from a few desc.

* Fixes a localization error with solution container descriptions

* construction

* reviews + test

* remove SetLayerVisibility, doesnt work for some reason

* swept moment

* leftover

* Automatic changelog update

* Fix can't return to body bug (#4424)

* Automatic changelog update

* Update submodule

* Fix gas tile overlays on shuttles

* Offset station on roundstart again

* Fix PlaceableSurface incorrect coordinate usage.
It set world position to entity coordinate positions...

* Automatic changelog update

* Fix pickup animation incorrect coordinate usage.
Animation finalPosition was world position, while initialPosition was local position.

* Automatic changelog update

* Pointing coordinate fixes.

* Automatic changelog update

* Further pickup animation improvements.

* Adds Science Windoors (#4433)

Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>

* Gave CMO a Hardsuit (#4434)

Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>

* Automatic changelog update

* Fixed station engineer table spawn (#4436)

* Maps in windoors (#4432)

* Automatic changelog update

* Losing a head doesn't mean you lose your eyes #3956 #4061 (#4225)

Co-authored-by: Michael Will <will_m@outlook.de>

* Automatic changelog update

* Adds windoors for security and the brig. (#4441)

* Automatic changelog update

* Remaps Chemistry and Security, and some Mapping Fixes (#4442)

* Automatic changelog update

* Made the cloning pod and medical scanner constructible (#4439)

* Made the cloning machine pod constructable

* Added everything like I did but with the Medical Scanner

Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>

* Automatic changelog update

* Fix fixed-point format specifier in PowerCellComponent

* Update submodule

* Actually update submodule

The last one was a test to check if you were paying attention.

* Update maps for grid collisions (#4450)

* Update submodule

* Fixes the windoor in science. (#4444)

* Automatic changelog update

* Remove IActionBlocker.CanMove (#4449)

* Remove IActionBlocker.CanMove

Ported the remainders over to using MovementAttemptEvent which should also help make mob movement a bit faster.

* Make that check faster

* Added restrictions for what can be inserted into most belts (#4367)

* Belts now restrict what can be inserted into them

* Bandolier now only holds shotgun shells

* Tiny typo

* Another tiny typo

* Automatic changelog update

* Fix indentation

* Fix stuff

* Fix gas canister

* Organize gas canister prototype

* Fix audio occlusion

This was previously being done on every SoundComponent.

* Call SoundSystem instead

* Parents crowbar-red and merges RSIs

* Deletes old crowbar_red.rsi

* Abstracts BasePlushie and ReagentContainerBase

* Adds missing suffixes to debug items and tags them all

* Crematorium now makes a noise on start and during cremation (#4459)

* Automatic changelog update

* Refactor disposals to ECS (#4418)

* ECS up disposals

Also significantly reduced its CPU usage.

* Make update significantly less S L O W

* Start units pressurised

* Client-side flush lerping

* Fix powered not toggling UI

* Fix flush button

* InteractUsing

* Minor optimisations

* Fix collisions

* Make visual state ECS

* Almost done with shared

* Most stuff moved

* Optimise item sleeping

* Automatic changelog update

* Fix door sound dampening (#4453)

* Completely fix NPC pathfinding

Through rigorous investigation and hard work.

* Implement Entity List Display and rework StorageComponent window (#4140)

* Create EntityListDisplay

* Rework ClientStorage window

* Add styling

* Remove unnecessary colors

* Rename list

* Make scrollbar push content

* Change children update a bit

* Add old index

* Localize ClientStorageComponent

* Add size return

* Remove spaces

* Fix usings

* Fix tool sounds.
Fixes #4465

* Automatic changelog update

* Fix missing sounds (#4466)

* Fix missing sounds

* Make SoundHitSpecies fallback to SoundHit

* Fix crayon YAML

* Update PlaySoundBehavior YAML

* Fix required

* Update README.md

* Fix taser physics (#4470)

* Increase MoverController performance (#4448)

Should be a decent amount; rest will come from removing IActionBlocker.

* Remove throwing fixture error

* Update submodule

* Fix sound crash when making foam (#4476)

* Automatic changelog update

* Centers some sprites

* Fix showatmos

* Fix tests.
Flashlight RSI state names had been changed, and some places weren't updated properly

* Remove pillcomponent (#4469)

* Remove PillComponent

* Make food without any solution left delete and create trash

* Replace PillComponent references with a Pill tag

* Clean up

* Add swallow message to food

* Change to eatMessage override

* Change FoodComponent transferAmount to nullable

* Change properties to private

* ItemCabinetVisualizer uses layers (#4445)

* ItemCabinetVisualizer uses layers

* Reviews applied

* Fixes the fireaxe cabinet as well

* I'm dumb

* Fixes bedsheets being unpickupable (#4479)

* Automatic changelog update

* Adds inhands for crayons and the crayon box (#4481)

* Automatic changelog update

* Fixes cigarette animations and matches now have lit/unlit inhand sprites (#4480)

* Automatic changelog update

* Adds plant clippers and changes hydro tool sprites to be more consistent (#4482)

* Adds plant clippers

* Updates sycthe, hoe and spade sprites

* Adds inhands for radio/walkietalkie (#4483)

* Adds inhands for radio/walkietalkie and separates layers

* License thingy

* Fixes test

* Can now equip fireaxe, claymore, spear and baseball back on your back (#4484)

* Can equip spears and claymores on your back now

* Adds fireaxe and baseball bat back equip

* Automatic changelog update

* Makes Match[sticks/box] ECS, Makes Matchsticks ignite plasma

* am big dumdum pls no shed

* Owner Transform to Owner in SoundSystem calls (#4460)

* Owner Transform to Owner

* Owner Transform to Owner minor fixes

* Improve hand pickup code
This way I can break EntityCoordinates' API without breaking content.
BWAHAHAHAHAH!

* Update submodule

* Version v0.5.11 does not exist

* Update submodule

We don't talk about v0.5.12 either.

* Update submodule

For the last time

* Adds duck-related content and a seclite (#4489)

* Added rubber ducky

* Adds ducky slippers

* Adds seclite

* Update Resources/Textures/Objects/Tools/seclite.rsi/meta.json

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

* Update Resources/Textures/Objects/Fun/ducky.rsi/meta.json

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

* The duck slippers now quack as you walk

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

* Automatic changelog update

* Adds the ability to assign equip sounds in ClothingComponent (#4485)

* Initial

* Works (Kinda)

* Polish

* Reviews

* Removes vending inventory desc and adds missing vending machine descriptions (#4493)

* Removes inventory descriptions

* Adds missing vending machine descriptions using inventory descriptions

* Woops missed a file

* Automatic changelog update

* Adds a ton more inhands (#4488)

* Removed useless loc and added inhands for some lamps

* Adds a ton of inhands to the game

* Actually adds the pill inhand

* Update Resources/Textures/Objects/Misc/utensils.rsi/meta.json

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

* Update Resources/Textures/Objects/Tools/rcd.rsi/meta.json

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

* Added open/close/stacklayers for Matchbox and inhands (#4496)

* Added open/close/stacklayers for Matchbox

* Added inhands for matchbox

* What am I a clown not gonna leave no indent spaces

* Adds sound to fire extinguisher safety (#4494)

* Automatic changelog update

* Adds a 6pack of Cola (#4499)

* Adds a 6pack of Cola

* Revert "Adds a 6pack of Cola"

This reverts commit 99f024b94ab3c684ce62e28018bd0fe2f26a2e09.

* Revert "Revert "Adds a 6pack of Cola""

This reverts commit 9e3d31e41c8ea61a962ad7d4d3c0ea7124e82653.

* Automatic changelog update

* Fix H-pulling? (#4425)

In retrospect the answer is easy, but man this took a while.

* Automatic changelog update

* Makes DiceComponent ECS

* Makes PlaceableSurface ECS

* Added classic announcement sound to announcements (#4504)

* Automatic changelog update

* Refactors throw events, makes cream pies ECS (#4500)

* Automatic changelog update

* Port the tumbler from Box2D (#4486)

* Subscribe TransformComponent events by-ref (#4478)

* Add Alt-click functionality (#4497)

* Fix ItemSlot Bug

* Add Alt-use Key

* Fix TransferAmount window bug

* Alt-click functionality

* Added AltInteract verbs

* Add new verbs

* verb icons

* Changed Comments

* Change Comments

* Fix disposal verbs

* Changed Get...() to Get...OrNull()

* Changed alt-interact combat behaviour

* Update verb icons

* Inventory interact event

* Add Alt+E secondary binding

* Add alt-z keybinding

* Rename AltUse -> AltActivateItemInWorld

* Automatic changelog update

* Fixes chocolate/energy bar (#4503)

* Fix merge issues

Co-authored-by: Galactic Chimp <GalacticChimpanzee@gmail.com>
Co-authored-by: Kara Dinyes <lunarautomaton6@gmail.com>
Co-authored-by: SethLafuente <84478872+SethLafuente@users.noreply.github.com>
Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>
Co-authored-by: Swept <sweptwastaken@protonmail.com>
Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com>
Co-authored-by: metalgearsloth <metalgearsloth@gmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Vera Aguilera Puerto <gradientvera@outlook.com>
Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: ScalyChimp <72841710+scaly-chimp@users.noreply.github.com>
Co-authored-by: mirrorcult <notzombiedude@gmail.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
Co-authored-by: Jaskanbe <86671825+Jaskanbe@users.noreply.github.com>
Co-authored-by: scrato <Mickaello2003@gmx.de>
Co-authored-by: Michael Will <will_m@outlook.de>
Co-authored-by: TimrodDX <timrod@gmail.com>
Co-authored-by: Leon Friedrich <60421075+leonsfriedrich@users.noreply.github.com>
Co-authored-by: Ygg01 <y.laughing.man.y@gmail.com>
Co-authored-by: Paul <ritter.paul1+git@googlemail.com>
Co-authored-by: ColdAutumnRain <73938872+ColdAutumnRain@users.noreply.github.com>
Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
Co-authored-by: Galactic Chimp <GalacticChimpanzee@gmail.com>
Co-authored-by: Kara Dinyes <lunarautomaton6@gmail.com>
Co-authored-by: Leon Friedrich <leonsfriedrich@gmail.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
Co-authored-by: SethLafuente <84478872+SethLafuente@users.noreply.github.com>
Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>
Co-authored-by: Swept <sweptwastaken@protonmail.com>
Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com>
Co-authored-by: metalgearsloth <metalgearsloth@gmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Vera Aguilera Puerto <gradientvera@outlook.com>
Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: ScalyChimp <72841710+scaly-chimp@users.noreply.github.com>
Co-authored-by: mirrorcult <notzombiedude@gmail.com>
Co-authored-by: Jaskanbe <86671825+Jaskanbe@users.noreply.github.com>
Co-authored-by: scrato <Mickaello2003@gmx.de>
Co-authored-by: Michael Will <will_m@outlook.de>
Co-authored-by: TimrodDX <timrod@gmail.com>
Co-authored-by: Leon Friedrich <60421075+leonsfriedrich@users.noreply.github.com>
Co-authored-by: Ygg01 <y.laughing.man.y@gmail.com>
Co-authored-by: Paul <ritter.paul1+git@googlemail.com>
Co-authored-by: ColdAutumnRain <73938872+ColdAutumnRain@users.noreply.github.com>
Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>
Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
Co-authored-by: 20kdc <asdd2808@gmail.com>
Co-authored-by: Alex Evgrashin <aevgrashin@yandex.ru>
2021-08-24 00:50:39 -06:00
Visne b7dc3c81ae
Remove redundant #nullable enable (#4275) 2021-07-16 17:37:09 -07:00
DrSmugleaf 69969bbdc6
Remove IBody, IBodyPart, IMechanism and IMechanismBehavior (#4187)
* Remove IBody, IBodyPart, IMechanism and IMechanismBehavior interfaces

* Summary cleanup
2021-06-17 00:44:38 +10:00
DrSmugleaf ff1a2d97ea
Re-organize all projects (#4166) 2021-06-09 22:19:39 +02:00