* AvoidCollision if collided entity is the one that the character is buckled to
* Attempt to PreventCollision after the player is unbuckled but still colliding with StrapComponent
* Moved PreventCollide to the Shared script.
* Add WakeBody to keep updating the physics collision while being on a collidable strap component.
* Addressed some of metalgearsloth's suggestions:
- Made EntityBuckledTo,IsOnStrapEntityThisFrame and DontCollide not virtual
-Made EntityBuckledTo nullable
-Don't call update on Paused BuckleComponents
-Removed EntityBuckledTo variable declaration in BuckleComponent because it's not needed anymore
-Call TryUnbuckle if (!IsOnStrapEntityThisFrame && DontCollide) to set BuckledTo entity to null.
* Formatting
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
* Formatting
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
* Formatting again :P
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
* Formatting
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
* Formatting
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
* Renamed variable EntityBuckledTo to LastEntityBuckledTo
* As per DrSmugLeaf suggestion: Added [ComponentDependency] to the Body variable.
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
* Cleanup surgery classes
* Add DoAfter to surgery
* Consolidate doafter, break on user and target move
* Ignore biological surgery data component on the client
* Apply suggestions from code review
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Use a stringbuilder for surgery descriptions
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Async Interface
* Update Content.Server/GameObjects/Components/Fluids/MopComponent.cs
Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>
* Changed the glassbeaker
* Update Content.Shared/Interfaces/GameObjects/Components/Interaction/IAfterInteract.cs
Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>
* Update Content.Shared/Interfaces/GameObjects/Components/Interaction/IAfterInteract.cs
Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>
* Interaction system fix
* Removed I from the interface
* Changed all implementations of the interface I could find
* all public void implementation fixed
* All built, no errors should remain
* Update Resources/Prototypes/Entities/Objects/Specific/chemistry.yml
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Update Content.Server/GameObjects/Components/Portal/TeleporterComponent.cs
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Update Content.Server/GameObjects/Components/ActionBlocking/HandcuffComponent.cs
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Commit based off Sloth's commentary
* Removed the Rag file from the PR
* Reverted sloth's commentary changes on the publcity of the function
* Injector component properly implemented interface
* Update Content.Server/GameObjects/Components/Fluids/MopComponent.cs
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Update Content.Server/GameObjects/Components/Fluids/SprayComponent.cs
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: BlueberryShortcake <rubetskoy234@mail.ru>
Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* #2744 fix NRE on clicking alerts with no OnClick, and don't send the click
message unless the alert has an onclick
* #2744 fix NRE on clicking alerts with no OnClick, and don't send the click
message unless the alert has an onclick
* Traitor Deathmatch: Add the preset [Rebase onto factors line]
* Traitor Deathmatch: Being a human head or other not-quite-fully-animate object counts as dead. [ROFL]
* Traitor Deathmatch: Add redemption machine (but it doesn't work) [ROFL]
* Traitor Deathmatch: Map in redemption machines [ROFL]
* Traitor Deathmatch: Make the rounds end properly [ROFL]
* Traitor Deathmatch: PDA redemption works [ROFL]
* Traitor Deathmatch: New redemption machine sprite ( @Tomeno )
* Traitor Deathmatch: Get rid of redundant using
* Traitor Deathmatch: Change scoring, prevent redeeming your own PDA, fix bug where PDAs are not tagged with their owner names
* Traitor Deathmatch: Better messages, change cvar name, don't count ghosts for spawnpoint selection
* Added atmos sprites from CEV-Eris
* Moved canister sprites to appropriate dir
* Removed unnecessary sprites, edited canisters prototype
* Created Gas Canister UI and release pressure buttons
* Changed GasMixture's pressure calculation (convert liters to cube meters)
* Added relabeling Canisters
* Reverted changes on GasMixture
* Changed my name in the credits
* Added valve opening on canisters
* Change canister visual state when connected to a port
* Added nullable to SharedGasCanisterComponent
* Replaced nullable contexts
* Changed again nullable annotation context
* Moved name in the credits to correct alphabetical order
* Canisters: Fix the most blatant issues with this PR (the added project interdependencies for no reason whatsoever)
* Canisters: Stop crashes when canisters leave atmosphere
* Canisters: Gas released into no atmosphere gets transferred "into space" (deleted)
* Atmos: Nullability annotations on TileAtmosphere, explaination of the states of TileAtmosphere.Air
* Canisters: If in an airblocked tile, do NOT release gas
* Scrubbers: Fix typo leading to them not connecting properly.
* Revert manual changes to credits file (sorry!) (1/2)
This reverts commit 94f3b0e5df8d9c2fa189866a17a231920f99bdaf.
* Revert manual changes to credits file (sorry!) (2/2)
This reverts commit 1986fb094dfaa44060f08d280f36b755258d17a6.
* Canisters: Apply @Zumorica 's reviews
* Canisters: Add missing localization as suggested by PJB
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
* Canisters: Pressure lights!
* Canisters: Light is now unshaded.
* Canisters: Now using IActivate
* Gas canisters (& air canister), now with their numbers properly calibrated (hopefully)
* Canisters: Refactor how their layers are added to be more like ApcVisualizer
* Canisters: Clean up of the tile invalidation/air release logic
* Canisters: Some gas canister window improvements
* Canisters: Clean up release pressure change button label code
Co-authored-by: Clement-O <topy72.mine@gmail.com>
Co-authored-by: Clément <clement.orlandini@gmail.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
* More Construction Pieces: Default construction targets
* More Construction Pieces: Unfinished particle accelerator will tell you how to finish it
* More Construction Pieces: Construction system actually pathfinds any-to-any
* More Construction Pieces: Verb to begin deconstruction of an object
* Make damage work through messages and events, make destructible not inherit ruinable or reference damageable
* Copy sound logic to destructible component for now
* Fix typo
* Fix prototype error
* Remove breakable component damageable reference
* Remove breakable construction reference
* Remove ruinable component
* Move thresholds to individual components and away from damageable
* Add threshold property to damageable component code
* Add thresholds to destructible component, add states to damageable, remove damage container, fix up mob states
* Being alive isn't normal
* Fix not reading the id
* Merge fixes
* YAML fixes
* Grammar moment
* Remove unnecessary dependency
* Update thresholds doc
* Change naming of thresholds to states in MobStateComponent
* Being alive is once again normal
* Make DamageState a byte
* Bring out classes structs and enums from DestructibleComponent
* Add test for destructible thresholds
* Merge fixes
* More merge fixes and fix rejuvenate test
* Remove IMobState.IsConscious
* More merge fixes someone please god review this shit already
* Fix rejuvenate test
* Update outdated destructible in YAML
* Fix repeatedly entering the current state
* Fix repeatedly entering the current state, add Threshold.TriggersOnce and expand test
* Update saltern
* Start work on upgradeable machines.
* Upgradeable machines work
* Component requirements for upgradeable machines
* Better container handling
* Remember to not push submodule updates in your PRs, kids!
* Refresh parts after building a machine.
* NetSync false
* Address some reviews, fix some bugs
* Nullable stackhelpers dependencies
* Use container helper method to delete all entities in containers
* Nullable string in AddContainer
* Better examine for machine frame and construction in general
* Machine breakage
* Nullable node
* nullable GraphPrototype
* Re-save saltern for autolathe parts
* Fix SaveLoadSave
* Initial
* More
* Pissed in a cup
* Cleansup some gunk I accidently committed
* More fuckups
* Added third gender option
* Applied review
* Fixed changed storage
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* basic implementation
* minor fixes
* objectives temp commit
* proper onstart bind
* changes all conditions to be bound to a mind-instance
* oops
* oops v2
* adds possiblity to enable duplicate assignment of objective
equal objectives are unable to be added
* minor fixes, adds greentext
* refactors incompatability to be defined by requirements
* fixes a wrong whitespace
* minor fix
* addressed reviews v1
* address reviews v2
Co-authored-by: Exp <theexp111@gmail.com>
* final sweep
* adds/refactors traitor&sss cvars
* Update Content.Server/Mobs/Mind.cs
* never trust github web
* adds datasets & makes codewords use them
* addresses exp's reviews
* addressed zumos reviews
Co-authored-by: Paul <ritter.paul1+git@googlemail.com>
Co-authored-by: Exp <theexp111@gmail.com>
* Atmos Debug Overlay: Add a way of showing blocked directions
* Atmos Debug Overlay: Adjustable modes client-side
* Atmos Debug Overlay: Fix atvrange help text
* Atmos Debug Overlay: More flexible and clear gas ID specification
* Pulling: Migrate critical pull state from PullController to SharedPullableComponent, fixing two bugs in the process
Bug 1: PullController can be just summoned for no reason when the verb is queried
Bug 2: PullController keeps it's own independent pull state which can (and will) go out of sync (See https://github.com/space-wizards/space-station-14/issues/2619 )
* Pulling: Fix issues with previous commit (or possibly in general?) causing transferring a pull to cause alerts to go wrong
The primary problem is that there is one "pulling slot" for a puller, so SharedPullableComponent needs to stop the existing pull.
* Pulling: Remove debug logs (whoops)
* Update usages of ! is with is not
* Content.IntegrationTests commit
* Content.Server commit
* Content.Shared commit
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
* commit skeleton reagent grinder component
* add reagentgrinder bounduserinterface, add suffix to grinder yml, add reagentgrinder sprites
* implement much more of the grinder ui functionality
* get more use out of hasbeaker bool
* complete wiring up most of the chamber/beaker UI controls
* remove whitelist prototype id. add grindable tag component
* add juiceable component
* rename boolparam to be clearer
* more juice
* add some juice reagents and apply them to their drink prototypes
* re add glassyellow
* implement juicing and results
* add time delay to grindjuice
* add reagent grinder visualizer, add reagent grinder sounds, fix some yaml errors too
* interface has clear indication of currennt operation, and busy status
* add ReagentGrinder to Client ignnored components
* Update Content.Client/GameObjects/Components/Kitchen/ReagentGrinderBoundUserInterface.cs
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Update Content.Client/GameObjects/Components/Kitchen/ReagentGrinderBoundUserInterface.cs
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Update Content.Shared/Kitchen/SharedReagentGrinderComponent.cs
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* implemennt sloth changes
* fix isbusy
* Disable grind/juice buttons if there's nothing to grind or juice, also some misc fixes
* unsubscribe from messages on remove + fix xmlcomment
* fix bounding box
* Add these to dictionary
* Add these to client ignore
* Whitespace and unneeded import fixes
* tommy's toes
* Where'd these newlines come from
* power
* improve bounding box
* Check power better & show contents when beaker is ejected
* check power here
* Disable eject buttons when running
* improve comments
* readwrite for viewvars on work time and capacity
* Address most of Sloth's reviews
* Make this cleaner
* add grindablecomponent to motherfucking everything
* Fix reviews
* some more null suppressions
* remove unused random field
Co-authored-by: scuffedjays <yetanotherscuffed@gmail.com>
Co-authored-by: namespace-Memory <66768086+namespace-Memory@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* SIMD atmos
* Moles will always be a multiple of four.
* Component dependencies for grid atmos.
* Let's optimize allocations while we're at it!
* Inline this
* A bunch of atmos optimizations
* Fix crimes against atmos
* Microsoft moment
* Remove nuget.config
* do not reference Robust.UnitTests in Content.Benchmarks as it's unneeded.
* Revert "Remove nuget.config"
This reverts commit 872604ae6a51365af4075bb23687bd005befd8ac.
* Gas overlay optimization and fixes
* Lattice is now spess
* minor atmos tweaks
* temp commit to save progress
* adds objectives
* refactors mind.addobjective a bit
* better names for my testobjectives which i'll remove later on anyways
* nullable errors
* some misc fixes
* no sorted or set, what was i thinking here?
* removes unused imports
* added commands
* fully implements stealcondition
* started uiwork
* moved prototypeicon to engine
* removes objective class & uiwork
* refactors ui to only update when opened
adds progresstexturerect
* adds some margin
* removes some testing code
* ignores objectiveprototypes on clientside
* fixes
* removes using statements for exp
* gets the job
* always show issuer
* locs & _
* giving commands some love
* Update Content.Client/GameObjects/EntitySystems/DoAfter/DoAfterBar.cs
Co-authored-by: Exp <theexp111@gmail.com>
* makes commands use new thingy
* string interpolation
* good catch exp
* loc'd
* linq gone
* runtime
* moves function from engine
* oopsie
* Update Content.Server/Objectives/Conditions/StealCondition.cs
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* makes messages directed
* base call & validation
* shuffle once
* No? Money down!
Co-authored-by: Paul <ritter.paul1+git@googlemail.com>
Co-authored-by: Exp <theexp111@gmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>