* LOCKED THE FUCK IN
* Forgot this little fella
* Crying
* All entity effects ported, needs cleanup still
* Commit
* HEHEHEHAW
* Shelve for now
* fixe
* Big
* First big chunk of changes
* Big if true
* Commit
* IT BUILDS!!!
* Fix LINTER fails
* Cleanup
* Scale working, cut down on some evil code
* Delete old Entity Effects
* Accidentally breaking shit by fixing bugs
* Fix a bunch of effects not working
* Fix reagent thresholds
* Update damage
* Wait don't change the gas metabolisms A
* Cleanup
* more fixes
* Eh
* Misc fixes and jank
* Remove two things, add bullshit, change condition to inverted
* Remove unused "Shared" system structure
* Namespace fix
* merge conflicts/cleanup
* More fixes
* Guidebook text begins
* Shelve
* Push
* More shit to push
* Fix
* Fix merg conflicts
* BLOOD FOR THE BLOOD GOD!!!
* Mild cleanup and lists
* Fix localization and comments
* Shuffle localization around a bit.
* All done?
* Nearly everything
* Is this the end?
* Whoops forgot to remove that TODO
* Get rid of some warnings for good measure...
* It's done
* Should make those virtual in case we want to override them tbqh...
* Update Content.Shared/EntityEffects/Effects/Botany/PlantAttributes/PlantDestroySeeds.cs
Co-authored-by: Pok <113675512+Pok27@users.noreply.github.com>
* Fix test fails real
* Add to codeowners
* Documentation to everything
* Forgot to push whoops
* Standardize Condition names
* Fix up metabolism a little as a treat
* review
* add IsServer checks
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
Co-authored-by: Pok <113675512+Pok27@users.noreply.github.com>
* initial it works
* clean it up
* yml
* datafield the LocIds
* move from the other branch
* no max vol on puddles and anoms
* closed
* Changes inspired by #39008
* small bug and more color range
* puddle changes and more examinable solutions
* lint
* small change
* requested changes
* un-delete
* tiny comment
* 1 less loc id in this world
* request and last second change
---------
Co-authored-by: iaada <iaada@users.noreply.github.com>
* Replace usages of customTypeSerializer PrototypeIdListSerializer with something that doesn't take 20 separate words to type out
* Missed one
* Missed another
* Fix data field ids
* checkpoint
* pt 2
* pt... i forgot
* pt 4
* patch
* More test fixes
* optimization!!!
* the REAL hand system
* fix RetractableItemActionSystem.cs oversight
* the review
* test
* remove test usage of body prototype
* Update Content.IntegrationTests/Tests/Interaction/InteractionTest.cs
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
* hellcode
* hellcode 2
* Minor cleanup
* test
* Chasing the last of the bugs
* changes
---------
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
* feat: now vacuum cleaner can suck solutions from floor
* refactor using AbsorbentSystem instead of separate vacuum cleaner
* refactor: remove unused vacuum cleaner files
* refactor: renamed ConnectedContainerComponent to SlotBasedConnectedContainerComponent (and system)
* fix: fix invalid comp name
* fix: no more spray nozzle messaging about water inside bottles etc.
* refactor: minor refactor in SlotBasedConnectedContainerSystem and adjustments after merge
* refactor: cleanups
* refactor: renaming
* refactor: update to use _puddleSystem.GetAbsorbentReagents
* refactor: changed interactions with SlotBasedConnectedContainerSystem into events
* refactor: new sound and action delay adjusted to sound (amount tweaked a bit accordingly, almost)
* refactor: added networking for SlotBasedConnectedContainerComponent
* fix attribution for vacuum-cleaner-fast.ogg
* trying to fix multi-license for mix sound file
* remove empty line
* refactor: remove trailing whitespace
* by ref struct, brother
---------
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
Co-authored-by: EmoGarbage404 <retron404@gmail.com>
* Added the ability for blood to track DNA using ReagentData; Forensic Scanner now accounts for solution DNA, non-DNA holders have "Unknown DNA"
* Removes touch DNA for puddles, adds DNA to vomit
* DNA now leaves traces in containers and those marked without don't show DNA on scan (except for puddles), gibbed parts have DNA
* Fix stupid metamorphic glass bug grrr
* Removed SpillableComponent since DnaSubstanceTraceComponent is used instead
* Removes data field from maps, adds DNA tracking for some missed items
* Give default value, fix missing values.
* Fixes recipe bug
* Review changes
* Make the Data list into a nullable type
* Revert map changes
* Move gibbed unknown DNA to forensicssystem
* BlockSolutionAccessComponent now only blocks one specified solution.
* Significant overhaul
Separated spilling when worn functionality into its own component/system.
Removed BlockSolutionAccessComponent.
Added an event for solution access.
* Added warning to tryGetSolution, moved SolutionContainer code to shared
- Added an optional warning (false by default) to print an error if a solution is missing when using tryGetSolution methods
- Moved ensuring solution containers to shared, left the old method stubs for compatability and marked them as obsolete.
* Update SharedSolutionContainerSystem.cs
* Update SharedSolutionContainerSystem.cs
* Update SolutionContainerSystem.cs
* Update SharedSolutionContainerSystem.cs
* Fixing ensuring chem solutions always returning false on client
- ensuring chem solutions will only return false on the client if it is waiting for a server solutionEntity to be synced
* Added concentration helpers
* fix whitespace
* stealthy hypo
* ExaminableSolution hand check when in covert implement.
ExaminableSolution now has 'hidden' datafield to enable chemical inspection only in hand.
* cleaning code
* more cleaning
* Hidden datafield renamed to HeldOnly
* review
---------
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
* Initial prediction
* new group handling
* groups for all examines that use multiple rn
* compile
* why was it doing this??
* handle newlines with sorting properly
* Creates Content.Shared.Chemistry.Solutions
Copies Solution class to new namespace
Obsoletes old Solution class
* Switches over to the Solutions.Solution Solution
* Creates Content.Shared.Chemistry.Containers
Copies relevant components/systems to the new namespace
Obsoletes old versions
* Switches over to the Containers.XYZ namespace
* Creates SolutionSystem and obsoletes old SolutionContainerSystem methods
* Start using SolutionSystem for Solution manipulation
* EnumerateSolutions
* Move TryGetMixableSolution
* Move EnsureSolution to Server
* Create Solution Entities
* Stop using obsolete solution system methods
* Fix prototype component tests
* Add using ..Audio.Systems; back
* Wrap solution container slots in ContainerSlots
* Actually add the slot to the solution container map
* Dirty SolutionContainerComponent when ensuring solutions
* Revert namespace changes
* Remerge SolutionSystem and SolutionContainerSystem
* SolutionContainerManagerComponent refactor
* Avoid wrapping necessary code in DebugTools.Assert as it is removed when compiling for release
* Readd examine reagent sorting
* Fix errors
* Poke tests
* Fix solution names not being applied
* Fix WoolyComponent including statement
* Fix merge skew
* Fix compile errors
* Make reactions use solntities
* Reindent solution class namespace
* Field attribute changes
* AutoGenerateComponentState for SolutionContainerComponent
* SolutionContainerComponent -> ContainedSolutionComponent
* ref ReactionAttemptEvent
* Denetwork preinit solutions
* Misc 1
* Nullable TryGetSolution out vars
* Cache associated solutions
* Fix merge skew
* Use explicit regions in SharedSolutionContainerSystem.Capabilities
* Add debug assert
* Use explicit regions in SharedSolutionContainerSystem.Relay + ref SolutionContainerChangedEvent
* ContainedSolutionComponent.Name -> ContainedSolutionComponent.ContainerName
* SolutionComponent doc comments
* Implicit DataField names and property purge
* ReagentEffect DataField names
* Local variables for readability
* Sort using statements + Entity<T> event handlers
* Fix compile erros
* Fix compile errors
---------
Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>