* add button to menu
* networking and component work
* try to add access stuff
* main functionality done
* add access lock? I think?
* remove extra line
* fix access system
* move SkipTime to StationCargoBountyDatabaseComponent
* Disable/Enable skip button based on cooldown
* remove debugging
* add access denied sound
* remove DataField tags
* dynamic timer
(cherry picked from commit fd067731b544eb219493338a8fe446c154e880f4)
* Lathes: Show missing materials amount in tooltip
* Use AppendLine and remove the last newline at the end
(cherry picked from commit a17875498056ff746abb9ec1d4a40017c99ad7cc)
* Give lollipops and gumballs random flavors
* RandomizedCandy: Fix borg lollipop action
* RandomizedCandy: Play sound when candy is fabricated
* RandomizedCandy: Lollipop can now be put in mouth
* RandomizedCandy: Quieten fab sound
* RandomizedCandy: merge icons and reexport without pHYs chunk
should speed up downloading these textures on 9600 baud modems
* RandomizedCandy: loads more flavors and update description
* RandomizedCandy: Fix duplicate candyFlavor IDs
* RandomizedCandy: Fix attrib and preserve flavor order
* RandomizedCandy: init on MapInit instead of ComponentInit
* RandomizedCandy: Fix minor code style issues, file placement
* RandomizedCandy: put new code into DeltaV namespace
* RandomizedCandy: Removed redundant datafield tags
Signed-off-by: no <165581243+pissdemon@users.noreply.github.com>
---------
Signed-off-by: no <165581243+pissdemon@users.noreply.github.com>
* StatusIcon: add field to set if icon should be rendered with shading
* set/unset shader based on icon field
* set new field to true for hud icons
* re-shade health bars
(cherry picked from commit d314a41e4f5c166de5e59504090117435f6ba0c2)
* Suit sensors now know the 'total health' of an entity
* Missed the constructor 😔
(cherry picked from commit f5d9d3c4586252b6741f1c7473eef2b63b8fe586)
* Adds the option for you to toggle your OOC Patron color visibility to yourself and others.
* Makes the button magically disappear if you arent a patron
(cherry picked from commit 7ced9d42f0351319b20828115cad0abd274e4577)
* Adds a new slider to the misc tab in options that lets the player set chat window transparency
* Tweaked variable names
* Fixed order to match UI
* Renamed set chat window transparency function
* Changed and refactored to opacity instead of transparency
* Remove unnecessary int to float conversions
Slider used to be 0-100 while the CCVar was 0.0-1.0f. This is confusing and was only used for rounding to 2 decimal points.
* Round the value to two decimal points
* Remove rounding for now
* Rename
* Unhardcode chat color by moving to stylesheet
* Fix indent
* Make opacity slider only change opacity
---------
Co-authored-by: Your Name <you@example.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
(cherry picked from commit bc31c193c25b297179e0de2bf54c2623fbeeebe0)
* Add scrollbars to lathe material list when necessary
* Fix bug where shrinking window would cause elements to overlap
---------
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
(cherry picked from commit a05f95269f8e04a29e8d93da37cff47b84026d51)
* 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>
(cherry picked from commit 1db178b63254c5b509a6493a631fddb596b376a4)
* Add door electronics configuration menu
* Use file-scoped namespaces
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Open door electronics configuration menu only with network configurator
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Doors will now try to move their AccessReaderComponent to their door electronics when the map is initialized
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Make the access list in the id card computer a separate control
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Fix merge conflict
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Remove DoorElectronics tag
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Integrate doors with #17927
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Move door electornics ui stuff to the right place
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Some review fixes
Signed-off-by: c4llv07e <kseandi@gmail.com>
* More fixes
Signed-off-by: c4llv07e <kseandi@gmail.com>
* review fix
Signed-off-by: c4llv07e <kseandi@gmail.com>
* move all accesses from airlock prototypes to door electronics
Signed-off-by: c4llv07e <kseandi@gmail.com>
* rework door electronics config access list
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Remove Linq from the door electronics user interface
* [WIP] Add EntityWhitelist to the activatable ui component
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Better interaction system
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Refactor
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Fix some door electronics not working without AccessReaderComponent
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Move AccessReaderComponent update code to the AccessReaderSystem
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Remove unnecesary newlines in the door access prototypes
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Remove unused variables in access level control
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Remove unnecessary method from the door electronics configuration menu
Signed-off-by: c4llv07e <kseandi@gmail.com>
* [WIP] change access type from string to ProtoId<AccessLevelPrototype>
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Remove unused methods
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Newline fix
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Restored to a functional state
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Fix access configurator not working with door electronics AccessReaderComponent
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Replace all string access fields with ProtoId
Signed-off-by: c4llv07e <kseandi@gmail.com>
* move access level control initialization into Populate method
Signed-off-by: c4llv07e <kseandi@gmail.com>
* Review
---------
Signed-off-by: c4llv07e <kseandi@gmail.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 64bb8dbdd50e0b1e5744e1eb0cc6f24bda959ade)
* Adds the CentComm Disk and configures it to work with direct-use shuttles
* Added functionality for drone shuttles (i.e. cargo shuttle)
* Adds support for pods, and a disk console object for disks to be inserted into. Also sprites.
* Added the disk to HoP's locker
* Removed leftover logs & comments
* Fix for integration test
* Apply suggestions from code review (formatting & proper DataField)
Co-authored-by: 0x6273 <0x40@keemail.me>
* Fix integration test & changes based on code review
* Includes Disk Cases to contain Coordinate Disks, which are now CDs instead of Floppy Disks
* Check pods & non-evac shuttles for CentCom travel, even in FTL
* Import
* Remove CentCom travel restrictions & pod disk consoles
* Major changes that changes the coordinates disk system to work with salvage expeditions
* Missed CC diskcase removal
* Fix build
* Review suggestions and changes
* Major additional changes after merge
* Minor tag miss
* Integration test fix
* review
---------
Co-authored-by: 0x6273 <0x40@keemail.me>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit bed9e9ac6a068495ff70f09eb852a9c7a156d632)
* Don't clip text in item status
* Fix overflow in examine tooltip
---------
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
(cherry picked from commit 9b08c2c908e344e3356c7cb4bd75efca0adae2e4)
* Initial radial menu prototyping for the RCD
* Radial UI buttons can send messages to the server
* Beginning to update RCDSystem
* RCD building system in progress
* Further updates
* Added extra effects, RCDSystem now reads RCD prototype data
* Replacing tiles is instant, multiple constructions are allowed, deconstruction is broken
* Added extra functionality to RadialContainers plus documentation
* Fixed localization of RCD UI strings
* Menu opens near cursor, added basic RCD
* Avoiding merge conflict
* Implemented atomized construction / deconstruction rules
* Increased RCD ammo base charges
* Moved input context definition to content
* Removed obsoleted code
* Updates to system
* Switch machine and computer frames for electrical cabling
* Added construction ghosts
* Fixed issue with keybind detection code
* Fixed RCD construction ghost mispredications
* Code clean up
* Updated deconstruction effects
* RCDs effects don't rotate
* Code clean up
* Balancing for ammo counts
* Code clean up
* Added missing localized strings
* More clean up
* Made directional window handling more robust
* Added documentation to radial menus and made them no longer dependent on Content
* Made radial containers more robust
* Further robustness to the radial menu
* The RCD submenu buttons are only shown when the destination layer has at least one children
* Expanded upon deconstructing plus construction balance
* Fixed line endings
* Updated list of RCD deconstructable entities. Now needs a component to deconstruct instead of a tag
* Bug fixes
* Revert unnecessary change
* Updated RCD strings
* Fixed bug
* More fixes
* Deconstructed tiles/subflooring convert to lattice instead
* Fixed failed tests (Linux doesn't like invalid spritespecifer paths)
* Fixing merge conflict
* Updated airlock assembly
* Fixing merge conflict
* Fixing merge conflict
* More fixing...
* Removed erroneous project file change
* Fixed string handling issue
* Trying to fix merge conflict
* Still fixing merge conflicts
* Balancing
* Hidden RCD construction ghosts when in 'build' mode
* Fixing merge conflict
* Implemented requested changes (Part 1)
* Added more requested changes
* Fix for failed test. Removed sussy null suppression
* Made requested changes - custom construction ghost system was replaced
* Fixing merge conflict
* Fixed merge conflict
* Fixed bug in RCD construction ghost validation
* Fixing merge conflict
* Merge conflict fixed
* Made required update
* Removed lingering RCD deconstruct tag
* Fixing merge conflict
* Merge conflict fixed
* Made requested changes
* Bug fixes and balancing
* Made string names more consistent
* Can no longer stack catwalks
(cherry picked from commit 02273ca0e7a4091bac88e585ecca5253dd0e7fd7)
* Can now search the uplink store interface with a searchbar.
* Search text updates no longer send server messages. Persists listings locally.
* Formatting fixes and tidying.
* Added helper method to get localised name and description (or otherwise, entity name and description) of store listing items.
* Update Content.Client/Store/Ui/StoreMenu.xaml
* Review change; moved localisation helper functions to their own class.
* Prevent thread-unsafe behaviour as-per review.
* Remove dummy boxcontainer
---------
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit de62ec204b04809175945a2ccfd4dbce6dafd8eb)
* Make timer ignore client predict setting
* making tests run
---------
Co-authored-by: wrexbe <wrexbe@protonmail.com>
(cherry picked from commit 8676aad583ad7104151bf22932da86a87cb52c5a)
* Hyposprays Draw from Jugs
* Fix last onlyMobs usage in yml
* Some Suggested Changes
* Remove unnecessary datafield name declarations
* Remove unnecessary dirtying of component
* Same line parentheses
* Added client-side HypospraySystem
* Cache UI values and only updates if values change
* empty line
* Update label
* Label change
* Reimplement ReactionMixerSystem
* Remove DataField from Hypospray Toggle Mode
* Change ToggleMode from enum to Bool OnlyAffectsMobs
* Add DataField required back since it's required for replays...?
* update EligibleEntity and uses of it
* Add user argument back
* Adds newline
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Guard for dirty entity
* Adds summary tag
---------
Co-authored-by: Plykiya <plykiya@protonmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit f192d7901fedd134c38a6cab38731f8e93994492)
The FTL UI on the shuttle console would reset the FTL progress bar every time you open it. This is because the server only sends "time until completion", not a start/end time. The FTL code now uses a separate start/end time so the exact same progress bar can be preserved.
For convenience, I made a StartEndTime record struct that stores the actual tuple. This is now used by the code and has some helpers.
(cherry picked from commit 3b791459c74c6b56c8ae6204a936f6de06674b93)
* Add auto-mode to reagent grinder
* Remove redundant stuff with DataField
* Use margin instead of dummy control
* Resolve grinder component
(cherry picked from commit a606909d30477453bc23765df4c78f04b2ead522)
* remove deprecated entity coordinate extension functions. Reduces warning count by approximately 50
* final toCoords Removed
* Remove all unused variables and dead code paths
* remove always true variable, should be a cvar or something instead
* remove superfluous variables from tests
(cherry picked from commit 59e46aab93ca38f8d57fcad4e3a2c893737d9ad4)
* make sure to keep late join button disabled if requirements not met
* more succinct representation of condition
(cherry picked from commit cfc0ecbf80ab497a01443aea354f4ac3dc205b58)
* Separated "thank you" messages from general ads
* Moved MessagePackPrototype to shared, cleaned up AdvertiseComponent, and actually killed AdvertisementsPackPrototype.
+More suggests changes.
* Rename PackPrototypeID to Pack in both components.
(cherry picked from commit 794a447bb7f0a36abaac802e0fa4d1ce7c8998ef)
* add Name field to SpeechVerbPrototype
* extra locale for voice mask ui
* SpeechVerb ui and handling
* raaaaaaaaa
* reeeeeeeeal
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
* fix sort
* did you hear john syndicate died of ligma
* Update Content.Client/VoiceMask/VoiceMaskNameChangeWindow.xaml
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit d13da2837d3a919df2101b37eae945e633c76c56)
* add SaveItemLocation keybind
* make item direction public to avoid having to change between Angle for no reason
* add item location saving
* show
* Added a better save keybind, made it draw saved positions, and trying to save in a position it has already been saved in removes that position.
* w
* code style
* Make taken spots appear blue
* style
* !
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: notquitehadouken <tripwiregamer@gmail.com>
Co-authored-by: I.K <45953835+notquitehadouken@users.noreply.github.com>
(cherry picked from commit 6863a7cc26f815ec9089003e8735777cea927d0f)
* When another player late joins it will correctly update the UI locally
* Resolve passengers not displaying the correct message in late join
* Improve final boolean comparison of button disabled state to be a bit neater
(cherry picked from commit bf7c1d647e7633ee2993a7da22318b7cf280d8ba)
* Fix mailing units turning into disposal units while recharging.
The states were hardcoded.
* Fix error handling
* Make default states constants
(cherry picked from commit 94e4755a8de6885c97fac1cfb767144e8e07981a)
- Fix text drawing being offset.
- Fix beacon snapping and distance check.
- Fix DrawData being offset.
- Fix bounds check for map objects not using PixelSize.
(cherry picked from commit 000a259563fd6ac1ec6889cd1fc767fcbc4a39de)
* Prep for DoorRemote Status
* Door Remote Mode Messages
* plural opens and closes
* never trust webedits
---------
Co-authored-by: Plykiya <plykiya@protonmail.com>
(cherry picked from commit e627a0d24bc8ae89665feb0b0d519b5fbb77ce32)
Fixes#26211
Admin messages now have separate "seen" and "dismissed" fields. The idea is that an admin should be able to tell whether a user pressed the "dismiss for now" button. Instead of using "seen" as "show this message to players when they join", "dismissed" is now used for this.
Existing notes in the database will automatically be marked as dismissed on migration. A note cannot be dismissed without being seen (enforced via constraint in the database too, aren't I fancy).
As part of this, it has become impossible for a player to play without dismissing the message in some form. Instead of a shitty popup window, the popup is now a fullscreen overlay that blocks clicks behind it, making the game unplayable. Also, if a user somehow has multiple messages they will be combined into one popup.
Also I had enough respect for the codebase to make it look better and clean up the code somewhat. Yippee.
(cherry picked from commit d776c4b392a082dba7539d77cfa20fc904ed4091)
* Replaced uses of Dirty(Component) with Dirty(Uid, Component)
Modified some systems (notably pulling-related) to use uids.
* Missed a few
* Revert changes to pulling
* No
(cherry picked from commit 4a83c365858830e3b2ff2b94fff501256422c20e)
* Pulling rework
Fixing up the FOUR systems managing pulling, all the shitcode, and also making it nicer ingame.
* More pulling cleanup
* stats
* More cleanup
* First draft
* More pulling
* weh
* Fix puller
* Pulling working
* Fix merge
* Dunked
* Self-merge time
* Fix hotkey
* Fix container changes
* oop
* Fix multi-pulling
* Move alerts cleanup.
* pulling fixes
(cherry picked from commit c584f6444a85cc53edb060230f7e7b2b76cc87bf)
* Fix SCRAM implant not being usable while in cuffs. Also fix freedom implant from working while dead/crit as a side effect
* Move check up to apply to all actions and do thing I forgor to do before
* Change check into an ActionBlocker check that also checks whether the user is sleeping.
* Make checking for Consciousness the default for actions
Went through and chose what I believe to be sensible defaults for actions that had CheckCanInteract.
* Fix typos my beloved
I had an unbelievable skill issue
* Fix major skill issue
(cherry picked from commit 22e9d6562f21bdd4f0962d6e3b6fcdd81bb4c253)
* Spray Paint (Draft)
* paint colors, paints in maints loot, cargo crate of paints.
* fix
* remove paint (sort of)
* moved paintcleaner into own system
* Moved paint to server (had to unfortunately)
* doafter now breaks when moving away.
* cant paint mobstatecomp
* loads of fixes
* fixes
* fixes
* nopaintshadercomp
* fixes
* fix
* use locale for paint remove string
* remove nopaintshadercomponent and use blacklist
* remove enabled.true from visualizer
* paint doafter event.
* add verbs for paint and remove paint and icon for paint verb.
* fixes
* no longer replaces shader when shader exists.
* replace forloop with foreach, check shader before adding and removing.
* paint doafter now separate so no copy paste code
* Entities in sprayed targets item slots are also now correctly sprayed.
* fix
* fix
* fix airlock psray painter now removes painted before painting door.
* spray paints now use openablecomponent.
* fix
* fix damn accesstypes.
* fix
* fix
(cherry picked from commit e4d5e7f1aebfc37b1bc3453fdb39578f3897b6a1)
* Improvements to the medical hud interface
* Adds an icon for SSD players
* Indentation fix
* Update sprites, changes direction and adds new status icon.
* Adds decomposing icon
* Code cleaning
* Changes Crit Icon sprite
* Simplifies the decision structure
* Changes copyright line
* Changes Critical Icon sprite
* Makes the Critical Icon border darker
* Changes sprites to /tg/ station
* Updates copyright
* Makes Dead Icon animation slight faster
* Code cleaning
* Remove some unused imports
* Code cleaning and rename icon
* Minor code cleaning
(cherry picked from commit 8d40bc36a93d3d5c6d3ece6c662ac9747f7837ae)
* move faction prototype to shared
* move faction exception and member stuff to shared
* fix breaking changes for random stuff
* move pettable friend stuff to shared
* mostly fix
* final fixy
* dragonops
* final fixy II
* use querys and fix warpspeed fish (probably)
* fixer
* Rrrr!
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 7561bef6a7aee65149381e155da53abc65a6a4e7)
SS13 Criminal Record Icon Location REAL
Adds a new Offset DataField to the StatusIcon Prototype. It effects status icon location on a per-pixel level. Not sure what else it could be used for, but hey, nothing wrong with generalizing. Also moves the mindshield icon priority to one, to fix an unreported bug with them covering non-job icons.
(cherry picked from commit 21de5e9a08929e8c710030b887c081bf6afc9649)
* Kill the static InRangeUnOccluded
* Adjusted 4 more EntitySystems that were missed.
(cherry picked from commit 7d275a4b5e4188db424cc417c609dced3f9aca89)
* add color field to clothing layers
* add support to randomsprite
* bababa
* finalize spriting work
* add to game
* fix
* remove space
* edit patelle, +1 decor variant
* added only pants, some sprite fix
* inflation
* fix mixed
* not tested commit
* Revert "not tested commit"
This reverts commit 4a904df3452263e87c9cb819ab5d8cf411ebe468.
* naked human is fun
* update
* add new style
* some sprite pixel tweak
* Update meta.json
(cherry picked from commit 986ac589b44687fd2f3b71da00a52434db75abe3)
* Throttle people trying to connect to a full server.
To reduce spam/load on the server and connection logs table.
Players are forced to wait 30 seconds after getting denied for "server full", before they can try connecting again.
This code is an absolute nightmare mess. I tried to re-use the existing code for the redial timer but god everything here sucks so much.
Requires https://github.com/space-wizards/RobustToolbox/pull/4487
* Use new NetDisconnectMessage API instead.
* Add admin.bypass_max_players CVar.
Just something to help with debugging the player cap on dev, I don't expect this to ever be disabled on real servers.
(cherry picked from commit 0ecc5e8c96c235af265ab747d7345b363f94b1e4)
* Security hud shows icon based on criminal record status
* Criminal status now linked to name instead of identity
* parole loc
* Test fix
* review changes
* Check station records instead of storing names on criminal record consoles.
* cleanup
* more cleanup
* review changes
* change outdated comments
* rename
* review changes
* remove event subscription
* replaced event with trycomp
* default value
(cherry picked from commit 60b9d89e4dbdd8aaad4992a105628297d9480617)
* guidebook pages defined
* species info button in character profile editor
* if current species has no guidebook page then open the parent page
* skrek
* destroying evidence of secret vox plot
* icon size adjustment, no icon if guidebook page for species does not exist
* finished pages
* additional info
* weh
(cherry picked from commit 84a07315dde09c2cff716f9f3a73f493b6b56cc7)
- HideLabel just means it won't have its name / button drawn whereas Hide will block it completely.
(cherry picked from commit a41772a006302bbe267793569b4b0d171eb82c87)
* Small obsolete Logger cleanup
* Fixed three EntitySystem logs that weren't doing it right.
(cherry picked from commit aafe81512258b5a80776ada1f471b58e7507ca2d)
* Add a toggle for progress bar colors
* yeah this thing
* PJB review
* optimization
(cherry picked from commit f3f4616c49317898aeeff304160b0b50df9ee851)
- every category of type "cargoProduct" was edited to "cargoproduct-category-name-{categoryName}"
- file "cargoproduct-categories.ftl" was added to english localization to localize categories of cargoProduct
- CargoConsoleMenu.xaml.cs got tweaks which prevent issues with strings comparisons
(cherry picked from commit 6e38b992cfc607e09178efc178b86f35152f0cde)
* Revert "Change keybindings for paper (#25853)"
This reverts commit 4b56996fcdbf88581d31d4c8aeb184f0c4c23309.
* Add a save button to the paper editing UI instead.
(cherry picked from commit d385c1bb2327da4fa6bf83d1813c44295eb8efdd)
* feat(inventory): Add secondary quick-remove star
* style: Fix end of file newline
* feat(inventory): Change secondary smart-equip star to silver star
* feat(inventory): Decrease secondary quick-equip star luminosity to better match the primary
(cherry picked from commit c8cc806a8fed7de92db48f4f066f63d5464502d1)
* fix: lobby music volume will be changed on options change without restart (also lobby music not looped anymore)
* refactor: now lobby music is part of ContentAudioSystem. Lobby playlist is used instead of single track. Client now selects next lobby soundtrack after previous finished.
* refactor: incapsulated info on current lobby track in simple record
* refactor: fixed inconsistent naming between song and soundtrack for lobbymusic
* refactor: xml-doc for LobbyPlaylistChangedEvent
* fix: inverted invalid _audio.PlayGlobal check to return only if lobby soundtrack play call failed
---------
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
(cherry picked from commit 4c87dcd3cb92855df1fa01dea52d2ddd09f2adce)
* Alert autoremove v0
* Code cleanup and timing
* comment
* Tritium, code compression
* not resolving manually
* reduced lookups, new comp
* fix-fix yes
* use RemCompDeferred, handle OnUnpaused
* missed a todo
* entitysystem resolve
* remove unnecessary component updates
* remove AlertState from comp, move EntityUnpausedEvent actions to AlertStateComponent's Timespan
* Code cleanup
* comments
* combines AutoRemove input into Clear
* minor logic adjustment that does not really change anything but is less ambiguous
(cherry picked from commit ecd2d5a644540c6ad28903ee4fb2af87876e3030)
* Using wrench on AME doesn't first try to put it in.
* Refactor AME to use ItemSlot for fuel.
* Apparently these names want to match.
(cherry picked from commit c47391011d0f7f56dfcba8e4db348f0dc0d58c09)
* Whisper bleed update v3
* missed a few
* Add bleeding message to health analyzer.
* Fix bleed notification not updating.
* Apparently this either doesnt exist
(cherry picked from commit ff65cb7b0caaeb9edd9461eff942bdc6f5eb7f50)
Validate that job and antag prototypes can actually be set in character profiles, rather than just checking if the prototype exists.
Make preferences system just call existing validation code when loading prototype from database, instead of some hacked-together stuff.
Also I made the character profile validation logic take dependencies in via parameter because fuck resolves.
(cherry picked from commit 8d244f7b76ba881253eb94611acaab31865c3920)