* 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>
* 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>