* xenoborg oil
* xenoborg oil vial
* oil gun
* minor fix to all welders
* make it more flammable
* turn into a ampoule
* update the proto
* don't declare the anchors again
* rename state
* its now a proper item
* make it spill from hitting something, but not from the hand
* fix description
* AmmoVisuals.IsFull
* make reloading animation
* update sprite
* oil gun module
* add todo comment
* less fire stacks per direct hit
* increase evaporation speed
* make it darker and not recognizable
* make oil color darker on the sprite
* add a crystal
* make it slower
* add fire sprite
* oil gun now comes with a tiny fire
* some description
* make gun glow a little
* have to be ignited
* fix
* update sprite
* flame in separate layer
* ops
* make the bullets slower
* fix the angle
* ops, it was uppercase
* comment
* typo
* empty commit
* overkill behavior is now automatic
* fix xenoborg ampoule
* oil gun custom ammo sprites
* remove glass thing
* alphabetical
* fix ampoule proto
* use localizedLabel
* update ammo counter sprite
* Add SegmentedBarChart
* CryoPodWindow: Integrate SegmentedBarChart
* Remove BeakerBarChart
* SegmentedBarChart: Fix first frame jank
To update the entries' widths, it needed Control.Width, but that wouldn't be available until later. I moved things around so that it gets updated in ArrangeOverride the first time.
* GasAnalyzerWindow: Integrate SegmentedBarChart
* AbsorbentItemStatus: Integrate SegmentedBarChart
* Remove SplitBar
* SegmentedBarChart: Fix UI scale bug
With 200% UI scale the gaps would be half the intended size.
* SegmentedBarChart: Explicit deltaSeconds
* AbsorbentItemStatus: Use bar chart's background color
* SegmentedBarChart: Edit comments
* SegmentedBarChart: Edit calculation explanation
* SegmentedBarChart: Fix a subtle UI scale bug
MinSmallNotchScreenDistance was promised to be in UI units in the comment, but it was actually in pixels.
* SegmentedBarChart: Add sheetlet and doc comments
* SegmentedBarChart: Use StylePropertyDefault instead of TryGetStyleProperty
* SegmentedBarChart: Remove unnecessary helper
* SegmentedBarChart: Small redundancy removal
* AbsorbentItemStatus: Small adjustments based on feedback
* SegmentedBarChart: Use named colors
* AbsorbentItemStatus: Draw a medium notch every six notches instead of five
This is because the capacity of mops was changed to 12. It looks a little better this way.
* SegmentedBarChart: Reorder functions, add doc comment
* Everything except the YAML slop...
* She solution on my manager till I sajfslkahfsjakfhaskjfshajksafhfsakhfasjfas
* another 1000 lines
* fix chem dispenser size
* go my shnelf
* Implicit ass
* rider is being mean for some reason
* dasdas
* borger
* better formatting go!
* clothes/bloodstream
* Cartons
* cups and bottles
* mmm soder
* bar drinks
* Spray bottles and some size tweaks with hindsight
* 99 bottles of beer on the wall I hate YAML
* push that shit
* mmm burger
* Sneed
* sheets
* condiments
* mmm yummy
* fridge yummyfood
* meat...
* sub 300
* burger...
* bready
* let them eat cake
* does she know how to make a grilled cheese?
* pizza pie!
* misc shit
* soup or salad
* Food and drinks, vanquished
* the cubes!!!
* Almost free from YAML...
* fix test fails and some yaml issues
* fix prediction, almost done
* fix all test fails
* remove master merge artifacts and undo autonetworking
* review and compatibility
* graaah
* unfuck master merge I hate github
* merg conflicts
* sfsa
* ehoop
* sadas
* afsafsaasf
* merge conflicts
* fucked up the merge conflicts
* merge conflict is fucked I might need to completely redo this branch
* test fail
* no calcium????
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
* part 1
* second pass
* final fix
* last fix i swear
* an even bigger genius
* regex missed this
* should be all of em?
* oops
* yeah
* Revert "should be all of em?"
This reverts commit 4dd54d1b9a76977b4cf8d6008358e4dacdee6eb1.
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
* Spray bottles with visible reagent contents
* Fixed cargo catalog to correctly reference the new spray bottle rsi
* Fixed indentation on rsi meta files
* Updated copyright in spray_bottle.rsi meta
* Update Resources/Prototypes/Entities/Objects/Specific/Janitorial/spray.yml
Co-authored-by: āda <ss.adasts@gmail.com>
* Updated to follow yml convention, modified to inherit from DrinkBase and renamed fill textures
* Fixed solution names
* Updated solution name in BorgMegaSprayBottle
* de-hardcode solution name
* less breaking
---------
Co-authored-by: āda <ss.adasts@gmail.com>
Co-authored-by: iaada <iaada@users.noreply.github.com>
* delete metabolismmovespeedmodifiersystem
* Revert "delete metabolismmovespeedmodifiersystem"
This reverts commit 19572fa0858bfb9385f4717fc77c8956bdbc56c0.
* misc cleanup
* math shows I should do this
* prevent popups
* fix handling as well
* this too
* actually these can create popups so just always handle em...
* remove comment
* final fixes
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
* I’M SCREAMING INTO THE VOID AND IT’S NOT LISTENING
* review
* explodes pancakes with mind
* graaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
* Meteors RAAAAAAAAAAH
* I'm so tired of solutions
* whhop
* revert
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
* fix: formating warnings
* split GetAbsorbentReagents into string and protoid
* fix: changed SplitSolutionWhitout [obsolete] to use new method
* fix: missing using directive after merge
* Replaced methods with ProtoId variant
* Initial commit
* Small QOL buff
* Review changes
* Ch-ch-ch-ch-chaaaanges
* Review changes
* oops
* Oh ya fix the fill thing
* cleanup warnings make a few more private methods
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
* feat: predict evaporation
* refactor: move puddle update logic to shared
* refactor: move more puddle stuff to Shared
Still can't do stuff that creates puddles :(
* refactor: move puddle transfers to shared
* fix: various style fixes + switch to predicted variants
* style: make some puddle stuff private instead of protected
* refactor: move solution dumping to its own system
* docs: clarify Drainable/Dumpable/Refillable docs
Also whacks unneeded VVAccess's.
* fix: audit usages of drainable+refillable
I'm leaving spear and arrow for now... but I don't love it.
* Added an item query I guess
* Review changes
* You can pour out waterguns
* Review changes
* oops
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
Co-authored-by: SlamBamActionman <slambamactionman@gmail.com>
* refactor: move puddle evaporation + absorbents to shared
* refactor: move SolutionRegeneration to shared
* refactor: make AbsorbentSystem visuals clientside
* style: general formatting/cleanup on touched files
- Few logical simplifications
- Add field for hard-coded sparkle effect ent
- Switch stuff to Entity<T>
No actual prediction fixes in this commit (though in
retrospect I should've done this commit last).
* fix: use predicted variants for predicted code
* fix: average out evaporation rates in mixtures
* refactor: move SolutionPurge to shared
* style: Basic SolutionPurgeComponent field cleanup
* fix: general prediction + timing + networking fixes
- Moves client side visuals back to shared because other
players exist
- Don't accumulate CurTime in Purge/RegenerationSystem
- Network the next update field in Purge/RegenerationSystem to
deal with UI mispredictions???
* fix: add udder bug workaround
Not needed for SolutionPurgeSystem which doesn't resolve
solutions (probably fine that SolutionPurgeSystem doesn't
cache since it's much rarer, though it probably should), and
likely not needed for AbsorbentSystem since it only resolves
against puddles which, I don't think can be in containers.
* fix: don't divide by zero for evaporation speed = 0.
* refactor: revert evaporation changes
Will cherry-pick these out in another PR.
Also reverting the evaporation speed bugfix since it's easier
to revert all at once. :)
* fix: component cleanup; autopause fields, use ProtoID
* fix: remove unused AbsorbentComponentState
* fix: ProtoId is not string
* refactor: move PuddleSystem.UpdateAppearance to shared
* style: general PuddleSystem.UpdateAppearance tweaks
- Switch to Entity<T>
- Use ProtoIds
- Minor simplifications
* fix: add udderly silly PVS workaround
* cleanup
* fix
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.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>
* Init Commit
* windows yelling at me to update commit
* working commit, need prediciton and more dehardcoding
* Project 0 warnings
* Working Commit (Near Final)
* ryder got confused commit
* I love Merge Conflicts :)
* Working commit, no prediction
* Forgot the yaml changes
* Comments and typos
* Apparently while the reduced launch mult of lube was initialized it was never used so I revered back to default
* Fixed an incorrect divisor
* bit of cleanup
* Prediciton fixed, and puddles now affect all entities
* FORGOT TO RENAME A VERY IMPORTANT VARIABLE OOPS
* Really big I forgor moment
* Even bigger I forgor moment
* four more merge conflicts to fix four more oopsies
* fixed actual divide by zero moment and also im very dumb
* Even bigger I forgor moment
* four more merge conflicts to fix four more oopsies
* fixed actual divide by zero moment and also im very dumb
* Fix all test fails
* code cleanup
* Webedit whitespace
* Code cleaup
* whitespace webedit
* whitespace webedit
* whitespace webedit
* whitespace removal
* Comments and cleanup
* Re-Added 20 warnings as per Ork's request
* Cleanups
* Spacing fix
* bugfixes and cleanup
* Small bugfix
* Actually dirty the slipComp for real
* Added Friction field to Reagent Prototype per design discussion
* Sliding system is kill
* Fix AutoDrain
Per the system comments, AutoDrain is designed to automatically move
puddles into the drain (like a floor drain). Drains without AutoDrain
are still supposed to gradually empty the buffer, but not remove puddles
(like sinks and toilets).
However, a logic error in the original implementation causes drains with
AutoDrain set to false to simply not work. Hence sinks never emptied.
* Update documentation
* Optimise drains
If it's still a problem then we do what I did for rmc14 and just dump all the active drains onto a job to getentitiesinrange in parallel.
* Fixes
* clean up solution regen and drain comps
* Tape applied.
* Update Content.Server/Chemistry/Components/SolutionRegenerationComponent.cs
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
* remain entity
* That has to be a rogue test fail.
---------
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
* 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.
* move SolutionTransfer to shared and predict as much as possible
* fully move OpenableSystem to shared now that SolutionTransfer is
* fix imports for everything
* doc for solution transfer system
* trolling
* add scoopable system
* make ash and foam scoopable
* untroll
* untroll real
* make clickable it work
* troll
* the scooping room
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
* Use new Subs.CVar helper
Removes manual config OnValueChanged calls, removes need to remember to manually unsubscribe.
This both reduces boilerplate and fixes many issues where subscriptions weren't removed on entity system shutdown.
* Fix a bunch of warnings
* More warning fixes
* Use new DateTime serializer to get rid of ISerializationHooks in changelog code.
* Get rid of some more ISerializationHooks for enums
* And a little more
* Apply suggestions from code review
Co-authored-by: 0x6273 <0x40@keemail.me>
---------
Co-authored-by: 0x6273 <0x40@keemail.me>