* 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>
Technically some stuff could be dependent upon the entity regardless if it's deleted but this is how ICollideBehavior does it (not by my design) so I figured we'd make it consistent.
If someone really needs the functionality even if it's deleted then they can refactor it.
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
* 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
* 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
* 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
* Make Godmode able to be disabled and more accessible
* You got a license for that exclamation mark?
* Move restore logic to the entity system
* Make MovedByPressureComponent able to be disabled
* Add extension that gives you the moved by pressure component
* Fix not disabling moved by pressure
* makes conveyors to use machine linking & refactors machine linking a bit
* nullable errors
* temp commit, starting work on construction
* working recipies & graphs
* fixes crash
* makes items gravitate towards the center when on a conveyor
* makes conveyors take bool signal too
* ignores components clientside
* default arm
entitymanager
maxtransmitters
unsubscribe methods
* twowayLEVER
* _
* componentreference
struct
* yaml run
leverDefinitelyNotCopiedFromGirderNoNoNo dies today :(
* nullable
* no divide by 0
* making sloth happy
* space gone - happy?
* final fix
* yes
* adds item to lathe
* conveyor item -> conveyor assembly
* technology
* reviews ADRESSED
* Update Content.Shared/GameObjects/Verbs/VerbUtility.cs
Co-authored-by: Paul <ritter.paul1+git@googlemail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
* #272 add bordered panel for effects bar
* #272 avoid mouse overlapping tooltip when near edges,
change tooltip colors to match mockups
* #272 WIP defining status effect states as YML and
sending them as encoded integers
* #272 refactor to use new alert system
* #272 refactor to use new alert system
* #272 fix various bugs with new alert system and update
alerts to have color
* #272 WIP
* #272 rename status effects to alerts
* #272 WIP reworking alert internals to avoid code dup
and eliminate enum
* #272 refactor alerts to use
categories and fix various bugs
* #272 more alert bugfixes
* #272 alert ordering
* #272 callback-based approach for alert clicks
* #272 add debug commands for alerts
* #272 utilize new GridContainer capabilities for sizing of alerts tab
* #272 scale alerts height based on
window size
* #272 fix tooltip flicker
* #272 transparent alert panel
* #272 adjust styles to match injazz mockups more, add cooldown info in tooltip
* #272 adjust styles to match injazz mockups more, add cooldown info in tooltip
* #272 alert prototype tests
* #272 alert manager tests
* #272 alert order tests
* #272 simple unit test for alerts component
* #272 integration test for alerts
* #272 rework alerts to use enums instead
of id / category
* #272 various cleanups for PR
* #272 use byte for more compact alert messages
* #272 rename StatusEffects folder to Alerts,
add missing NetSerializable
* FloorTileItemComponent can now extend the station, or create new grids.
* Fixes wrong interaction system EntityCoordinates check.
Needed for all this to work.
There's also the existing events command as well that's separate. I think there's value in having both? (Where mods can turn it on and off but not change the default?)
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
* Make pointing check for occlusions
* Make pointing ignore the pointer in case you are hella occluding
* Merge branch 'master' of https://github.com/space-wizards/space-station-14 into unoccluded-pointing
* Revert "Add weightlessness status effect. (#2384)"
This reverts commit 9b751fc079.
* Bring back the icon and status
* Make weightless status track gravity and parent
* Refactor battery/powercell assets and add new ones.
* committing before I fuck things up
* slot component doned I think
* dictionary update
* Fixes
* Moving flashlight to powerslotcomponent
* har har i am using the message tubes
* Better documentation comment
* Reverting this overengineered garbage.
* Off with ye I said
* Examine texts.
* Some minor fixes to IDE complaints
* slot size from yaml
* Ignored component + removing a useless typo entry
* Making stunbatons use this
* Handle the message and remove some unnecessary dirtiness
* actionblocker checks
* remove unused file
* remove updatevisual
* make these nullable
* make these nullable too
* Unrename sprite folder
* check itemcomponent on insertion
* Use SendMessage over Owner.SendMessage
* Add support for auto-recharging batteries, an auto-recharging cell, and make flashlight status update correctly if one is inserted in it.
* get rid of public fields which are Bad
* add a description for the stun baton while i'm in here
* one more public field
* Add the blinky animation to the atomic cell
* Fix the charge indicator being STUPID
* better comments
* this is a better function
* add pause for flashlight, remove unnecessary imports from battery
* potato battery copyright link
* WHO DID THAT
* mr clean has come
* Random pitch
* pausing
* round to nearest levels