* adjust fields of meal recipe prototype
* document microwave recipe datafields
* use file scoped namespace for microwave recipes
* more of this
* localize every microwave recipe
* make microwave system shared
* refactor recipe reagent contents
* refactor recipe solids + add material ingredient datafield
* im making this a bit less silly
* awa
* move this shit out
* move this shit out also
* refactor Wzhzhzh
* im gonna shorten this parameter by 1 actually
* move this into recipes
* make processcontents a little better(?)
* clean imports
* rename a struct
* use cooking ingredients struct
* comment
* use whitelist for this
* unused dependency
* rearranged the parameters of get recipe portions
* rearrange some stuff
* clean up more imports
* move container related functions into separate file
* move this function out of ProcessContents
* prevent microwaves from having items inserted while active
* use IsPowered in microwave system
* use byref syntax and Entity<>
* moving the override up
sorry i like it being up here
* refactor microwave updating
* clean up recipe finish logic
* im renaming this function actually
* move some functions around
* move more stuff around
* some comments
* fix compiler error
* fix the yml of all microwave recipes
* use materials instead of solids for this stuff
* oops
* fix this
* turn microwave sparks into datafield
* move activelymicrowaved events into separate folder
* make UpdateUserInterfaceState use entity only
* rearrange some functions
* move UI functions out
* comment microwave UI stuff
* more comments
* comment recipe functions
* refactor GetTotalIngredients to use an operator
* give CookingIngredients addition methods
* comment the rest of CookingIngredients
* make subtraction functions clearer?
* remove redundant comment
* handle zero/negative ingredient cases
* simplify subtract contents logic
* fix these comments
* typo
* add microwave recipe test
* move active microwave methods
* comment active microwave methods
* comment cooking methods
* comment microwave methods
* change setappearance to use entity<>
* add some public api decorators
* comment all of MicrowaveComponent
* use file-scoped namespace for MicrowaveComponent
* comment
* fix baguette sword
* maybe...?
* oh oops
* document the rest of the owl
* kill the massive YML breaking change
* fix protoman dependency
* move shared microwave stuff to SharedMicrowaveSystem
* fix usings
* move microwave components to shared
* fix up microwave datafields
* move APIs to shared
* move activemicrowave methods to shared
* initialize on shared
* move ui functions to shared
* add actor here
* stuff
* predict microwave update loop
* make clientside microwave system
* adjust the update loop for microwaves
* clean up
* add field deltas to microwaves
* dirty fields instead of whole component
* move this to the partial
* move GetRecipesForMicrowave to shared
* comments
* predict microwave BUI
* oops
* refactor microwave bui update
* move UI messages to shared
* move messages to UI file
* move init to shared
* move container methosd to shared
* oops my using
* move cooking functions into partial
* move cooking methods to shared
* move microwave recipe methods to shared
* move the rest of the microwave events to shared
* update imports
* remove custom type serializer
* better (?) microwave UI prediction
* fix list notations
* OK IT WAS THE DATAFIELDS
* add IOC inject
* dont use IOC for htis
* sealed
* prediction fixes pt1
* make microwave cooking updates more consistent
* datafield tweaks
* test for multiple portions in microwave recipes
* test for multiple recipe portions
* better(?) prediction for malfunctions
* remove redundant comment
* prevent solution reactions in microwave
* cleanup some microwave stuff
* eh i think this should be container actually
* this can be API i think
* reduce system redundancy
* this has to be public
* use resolve pattern for explode
* use GetMicrowaveContents in microwave system
* this can be an API too
* add conversion script for unlocalized recipes
* use EnsureComp instead of AddComp
* suffering
* fix recipe prediction
* fix the audio
* reduce redundant networking
* i think this should be autopaused?
* nevermind we use dynamic portions in the test
* oops i wrote the test wrong
* make lemoon cake take 2 lemoons again
sorry test fail
* rename "materials" to "stacks"
realized theyre different
* add stack guidebook quantities
* Kill audio
* fix lemoon cake recipe for real?
* mark PortionedRecipe as a datadefinition
* fix the microwave timer
* review
* cleanup
* Update SharedMicrowaveSystem.Recipes.cs
* update
* add audio params
* review: inject microwavesystem
* review: named variable
* review: move dependencies
* review: use gametest for recipe test
* review: make access attributes standalone
* rename prototypes and datafields
* review: rename this var
* review: move this function down
* review: remove these scripts
* actually this should stay
* refactor cook time buttons
* review: use a color name for this
* fix timer reset
* Dirty
* review: make ActivelyMicrowavedComponent networked
* review: slarti comments part 1
* review: remove serializable attribute from CookingIngredients
* rename file
* review: more microwave audio boilerplate. yippee!
* review: use resolve pattern for TryGetStackId
i dont like the way this makes the rest of the code look but we ball maybe. i dont know what else to do here
* review: move ui update to constructor
* review: kill LastCookUpdated
* actually i do this instead
* fixed up the PR
* cleanup
* ///
* Update microwave.yml
---------
Co-authored-by: Princess Cheeseballs <66055347+Princess-Cheeseballs@users.noreply.github.com>
Co-authored-by: Pok245 <113675512+Pok27@users.noreply.github.com>
* ports chat follow function from AL and removes PJB implementation
forgor to commit earlier so it's just one chunk
* fixes accidental MiscTab.xaml restructuring
* fix name color
* remove unused function
* cvar summary
* typo
* accidental doc removal
* fix test fail
* fix test fail
* like i said first pr :|
* inject in constructor
* adds chat links to Local, Whisper, LOOC and Dead Chat respects Admin ghost privacy
* i hate chat code
* remove cvar
* single events file
* adds CanGhostWarp back
* filter for admin ghosts
* move tag
* remove ChatLinkTag.cs
* fix speechbubble rendering
* i want to bash my brain in
* kill chatcode
* formatting
* testfail
* still not working
* atleast deadchat works now
* even prettier TextLinkTag.cs
* fix speechbubble rendering for looc
* docs
* renaming and better docs
* Revert "remove cvar"
This reverts commit 1acb168f
* final changes (hopefully)
* requested changes
* can't parse -
* change TextLinkTag again
* formatting and typo
Co-authored-by: Connor Huffine <chuffine@gmail.com>
* quickfix
* no logging for now actually
* i will work on this in the morning
* restructuring
* wip
* final restructuring and docs
* still not done btw
* review
* docfix
* actually we can filter for admin ghosts
* doc
* fix color
* fix fix color
* review
* all I care to clean up
* bold names
* doc
* admin warp
* fixed
* fsaasffsa
* GOD ONCE SAID: GOOD ENOUGH
* they call me the shuffler
* admin chat links
* forgor newline
* fix?
* actual fix
* dumb stuff
* chungus
---------
Co-authored-by: Connor Huffine <chuffine@gmail.com>
Co-authored-by: Princess Cheeseballs <66055347+Princess-Cheeseballs@users.noreply.github.com>
* Make every EntitySystem partial
* Oobs thats for a diff PR
* Also oops on that one
* Test systems
* git are we fr
* Update file templates
* cleanup empty classes while we are here
* forgor
---------
Co-authored-by: AJCM-git <ajcm_mail@disroot.org>
* Resolve obsolete TransformComponent warnings
* all gas no lerp, a few unused imports
* Resolve TransformSystem via IEntityManager.System
* Revert to set anchored in ConstructionSystem.Graph
* pragma, no FIXME, redundant TransformSystems
* Remove unused variable
* Address sloth's suggestions
* oneliner rotation assignment
* Use spawn commands with rotation
* yet more spawnattachedto changes & cleanup
* Remove unused transform import
* more transform system cleanup, dump restock warn
* Add table of contents to the guidebook
* It takes way too much reading space adding another panel, so lets do
this instead
* unused
---------
Co-authored-by: AJCM-git <ajcm_mail@disroot.org>
* Make guidebook not reset when re-opened to same guide
* Make guidebook only expand tree when guides are changed
* Update to match master
Make guidebook not reset when re-opened to same guide
Make guidebook only expand tree when guides are changed
* Reviews
* oop
---------
Co-authored-by: AJCM-git <ajcm_mail@disroot.org>
* Admins can now see what items are contraband and chameleon in the strip menu
* Fix the color, the default is now red
* better admin view comment
* Simplify logic, make new simple slot overlay to combine logic
* Make isadmin logic a little clearer
* Minor cleanup / spelling mistakes
* change button shape
* change to res path
* opps
* Add option to change default behavior
* Fix spacing
* Remove unused
* Rename to default
* Take away the soul of the overlay
* Add tooltip
* Fix error
* Commit
* add the form post
* dv
* fixes
* Change wording
* Address review
* wording change
* Added some stuff
* New format
* bruh
* thanks perry!
* yes
* More fixes!
* typo
* Add a command to show the list, improve the UI slightly, split up command names
* Fix UI controller
* Add better comment
* Get rid of weird recursive thing
* Cleanup
* Work on moving feedback popups out of simulation
* Move round end screen subscription to feedback ui controller
* Finish moving feedback popups out of simulation
* Fix _ as parameter
* Clean up FeedbackPopupUIController
* Clean up commands
* Fix prototype yaml
* Fix openfeedbackpopup command description
* Update Resources/Locale/en-US/feedbackpopup/feedbackpopup.ftl
Co-authored-by: Simon <63975668+Simyon264@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: Simon <63975668+Simyon264@users.noreply.github.com>
* Address reviews
* Address reviews
* Fix FeedbackPopupPrototype.cs using empty string instead of string.empty
* Address some more of the reviews, style nano is still trolling sadly
* Fix feedback popup styling
* Fix PopupPrototype ID field not having a setter
* Address reviews
* Add label when no feedback entries are present
Change link button to not show when no link is set
---------
Co-authored-by: beck-thompson <beck314159@hotmail.com>
Co-authored-by: SlamBamActionman <slambamactionman@gmail.com>
Co-authored-by: Simon <63975668+Simyon264@users.noreply.github.com>
* skeleton
* ok I think I understand this now
* xaml more like xam L
* good enough individual law control
* Works
* Final checks
* Final_Final.exe.docx
* removed unecessary usings
* locstrings
* doc comments
* requested changeds except var
* visual stuff
* I could write a manifesto about how much I dislike var
* color tweak + other thing
* request changed minus the inheritance
* sans Boxcontainer
* :/
* cache find
* requested changed
* removed usings
* Moved margin and removed unecessary BoxContainer
* Add log statement for missing guidebook proto
Also removed an unused parameter.
* Update Content.Client/Guidebook/DocumentParsingManager.cs
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Switched obsolete logger usages to use Sawmill
Fix the majority of obsolete logger usages outside the engine code.
* Fix injection in ChatManager and revert BuildMech changes
* Removed extra manual injection
* Reduced extra static injection and reverted changes to CommandButton as it needs engine changes.
* Removed two more cases of double injection and an extra using
* Reverted changes for Inventory Display
* Moved sawmill setup outside constructor in Table to resolve test failure
* Fix usages of TryIndex()
Most usages of TryIndex() were using it incorrectly. Checking whether prototype IDs specified in prototypes actually existed before using them. This is not appropriate as it's just hiding bugs that should be getting caught by the YAML linter and other tools. (#39115)
This then resulted in TryIndex() getting modified to log errors (94f98073b0), which is incorrect as it causes false-positive errors in proper uses of the API: external data validation. (#39098)
This commit goes through and checks every call site of TryIndex() to see whether they were correct. Most call sites were replaced with the new Resolve(), which is suitable for these "defensive programming" use cases.
Fixes#39115
Breaking change: while doing this I noticed IdCardComponent and related systems were erroneously using ProtoId<AccessLevelPrototype> for job prototypes. This has been corrected.
* fix tests
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Add in-page links for guidebook reagent recipes
* Add links to microwave recipes
* This function is too specific to be in Control extensions
* Better naming
* Wrap RichTextLabel instead of subclassing
* "Activate" is ambiguous
* fixed all yml and cs
* Subjective Rearranging
* fixed my accidentally removed xml endline
* Accidentally included for a different PR
* Added .ThenBy and cleaned up newplayer.yml
* First clumsy implementation of guidebook protodata
* Support for Properties, format strings
* Better null
* Rename file
* Documentation and some cleanup
* Handle errors better
* Added note about client-side components
* A couple of examples
* DataFields
* Use attributes like a sane person
* Outdated doc
* string.Empty
* No IComponent?
* No casting
* Use EntityManager.ComponentFactory
* Use FrozenDictionary
* Cache tagged component fields
* Iterate components and check if they're tagged