* V1 commit
* Remove PDA name and unnecessary pda state
* Adds PDA to Chameleon backpack & thief toolbox
* Change to use AppearanceDataInit
* Add basic PDA state to ensure there's always a sprite before AppearanceData can be applied
* Revert PDA name (this will be changed to another way later)
* Update PDA name updating to new system
* Fix yaml, and fix Agent ID chameleon
* Updated based on review
* Mostly done, just needs some messaging added
Going to change the description for the unborgable brain and add a popup.
* Inspection says if brain has trait
* Comments
* Moved comment, removed body, localized, etc.
* move to shared, shitmed ready, add warning to health analyzer
* pro
* remove old component
* untroll brain system
* :trollface:
* :trollface:
* fix
---------
Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
refactor borg candy and move to shared _DV namespace
Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
* Refactored crew manifest
* Add Delta-V Comments, Move locale file to _DV scope.
* Missed adding comments to a file.
* Made the comments slightly more verbose to make it clear why the changes were made.
* Comments are love, comments are life.
---------
Co-authored-by: TGRCDev <tgrc@tgrc.dev>
* fix most sharp things not being usable in surgeries (#1381)
Co-authored-by: deltanedas <@deltanedas:kde.org>
* somewhat untroll harpy body parts
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* Remove discard functionality from the ChemMaster
This duplicates other methods of discarding chemicals, including
the drain conventionally given to chemistry labs.
Any problems it solves are miniscule compared to the severe UI error
that is having a destructive action without confirmation attached
to a mode, the most common source of user error.
* Improve animal cube interactions (#31668)
* Working on dehydrate recipes to renew animal cubes
* Added remaining cube dehydration recipes
* Add OnExamine to RehydratableSystem.cs, need to add functionality to check total volume vs current volume to determine if 'soaked' text needs to be displayed
* Added logic to append text to the description when the wrong reagent has been added to a compressed animal cube
* Re-adding deleted summary
* Update default SolutionName to be correct
* Remove cube recipes to prevent infinite nutrient generation
* Add OnMicrowaved event to RehydratableSystem.cs in order to clear solution of cube when microwaved. CURRENT ERROR REQUIRES REFACTOR OF MICROWAVECOMPONENT
* Subscribe to microwave event
* Refactor of MicrowaveComponent.cs to be in shared folder, accessible to RehydratableSystem.cs. Updated imports
* Modify cube to only dehydrate in microwave when cooked for at least 5 seconds
* now using event to check access to fingerprint
* Tweak - Reflective vest and Energy Katana should reflect only in correct slots (#31902)
* ReflectComponentLogicFix
Added bool InRightPlace and updated relevant system
* Using SlotFlags
* prevent friendly fire for dragon/carp (#32231)
* add NoFriendlyFire
* make zombies use NoFriendlyFire
* no friendly fire for dragon
* let dragon kill naughty fish and validhunting syndies
* add button to print logprobe logs (#32255)
* add EntityName at the bottom of LogProbe
* add button to print logprobe logs
* Add camera mod to diagnostic hud (#32254)
* ai-glass
* weh to protect against bad grammar
* transmutation into diagnostic hud
* Apply forensics when loading with an ammo box
* inaprovaline metabolizes slower
* :trollface:
---------
Co-authored-by: Janet Blackquill <uhhadd@gmail.com>
Co-authored-by: Preston Smith <Blackfoot03@outlook.com>
Co-authored-by: YourUsername <you@example.com>
Co-authored-by: BIGZi0348 <svalker0348@gmail.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: ArZarLordOfMango <arzarchannel@gmail.com>
Co-authored-by: themias <themias5@gmail.com>
Co-authored-by: Alzore <blackern5000@gmail.com>
* Discord Ahelp Reply System (#2283)
* First part of Remote Bwoinking
* This should technically work
* No Actoring
* Fixes Guid not sending over
* Making it work for the final.
* Fixes for api
* Moar Commants!
Just more Comments to mark Frontier changes.
* comment
* wops
* Fixes Naming Rules
* I Should also fix the naming in the actually code...
* Testing some new code
* Naming rule and dependency fix (hopefully)
* Serverside Webhook update on external sent ahelp messages
* Still get data from custom URL's, even if it dosent match a discord webhook
* Apply suggestions from code review (Part 1)
Co-authored-by: Whatstone <166147148+whatston3@users.noreply.github.com>
* Apply suggestions from code review (Part 2)
* Bwoink system suggsetions
* missing BwoinkSystem changes
* Change access on BwoinkSystem._messageQueues
* Updates the Regex to support other Discord Clients (beta, alpha)
* Merge Fixes
* BwoinkSystem: explicitly match "canary."/"ptb."
---------
Co-authored-by: Whatstone <166147148+whatston3@users.noreply.github.com>
Co-authored-by: Whatstone <whatston3@gmail.com>
* All the configuration
* CVar to use admin OOC color
* Fix description.
* Review changes
* Review changes
* Review changes
---------
Co-authored-by: Myzumi <34660019+Myzumi@users.noreply.github.com>
Co-authored-by: Whatstone <166147148+whatston3@users.noreply.github.com>
Co-authored-by: Whatstone <whatston3@gmail.com>
* Fixed de powered airlocks/doors not being able to be closed
Added new property "BeingPried" in Content.Shared.Doors.DoorComponent
Changed Content.Shared.Doors.Systems.SharedAirlockSystem OnBeforeDoorClosed() and CanChangeState() to check for BeingPried door flag
Changed Content.Shared.Doors.Systems.SharedDoorSystem OnAfterPry to set BeingPried to true when closing
Changed Content.Shared.Doors.Systems.SharedDoorSystem set BeingPried to false after CanClose is called
* Fixed Animation bug when closing doors
* Changed from DoorComponent.BeingPried property to DoorComponent.IsBeingPried
---------
Co-authored-by: Honys <69396539+zHonys@users.noreply.github.com>
* Clippy! (Broken)
* Tag to Comp
* Cat Meat
* Small Patches that lyndo was crying about
* Yaml Fix?
* Cat Emote Sounds and Stuff
* Another prototype fix
* Dvir001 fixes
* Hopefully last fix
* Dvir001 fixes part 2
* Move Mailman hat to DeltaV
* Yaml Fix
* clean up and refactor
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* make CrimeAssistPage use LocId and ProtoId instead of a test
* use an enum instead of le funny
* use enums in the prototypes
* rust
Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
* fix
* untroll engine
* actually fix spelling
* lovely language
---------
Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
* stock market refactor
* PlayEntity
* make client use int
* refactor and fix cartridge system
* fix
* deny sound if it fails
* reviews
* thank you ss14
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* refactor DeltaV/deltav resources to _DV
* change DeltaV namespaces to _DV
* add space before all DeltaV comments
* update xamls
* fix and move arena parallax to _DV
* more fix
* refactor even more stuff
* fix the grid fills
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* add mining voucher
* give salvs a mining voucher
* add custom UI for it
* predict redeeming properly
* remove the id card from kit and locale
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* full fucking send
* ope forgot to remove the EE scripts
* fix test
* fix shitcode fail
* DELTA THAT VALUE IS NULLABLE
* whoopsie daysie
* fixed???
* chat is this real
* bugfixes
* more bugfixes
* goobmed
* Savepoint
* fixed yet more crap
* ymlops
* tests
* shitcode
* Update duffelbag.yml
* shoes fixed???
* bruhhhhhhhhhhhhh
* full fucking send
* ope forgot to remove the EE scripts
* fix test
* fix shitcode fail
* DELTA THAT VALUE IS NULLABLE
* whoopsie daysie
* fixed???
* chat is this real
* bugfixes
* more bugfixes
* goobmed
* full fucking send
* ope forgot to remove the EE scripts
* fix test
* fix shitcode fail
* DELTA THAT VALUE IS NULLABLE
* whoopsie daysie
* fixed???
* chat is this real
* add breathing immunity and organ status effects
* they did surgery on a fish
* fix error for installing parts on non-humanoids
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* move MatchstickComponent to shared
* add Speed field to ISurgeryTool, add Tweezers and Tending tools
* add support for ghetto surgery tools
* use Tending and Tweezers for some steps
* GHETTO SURGERY!!!
* add qualities to fire axe
* fix popups
* :trollface:
* disable coil hemostat
* add examine verb for a tools uses
* work#
* round the speed to 2 decimal places
* remove .
* webedit ops
* shitcode
* undo breaking change
* fix
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* dont allow attaching invalid limbs
* add more surgeries for organs and limbs
* fix harpies being immune to surgery
* update organs and shit
* make a bunch of animals operatable
* malf ai
* fix slime
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
Mainly useful for medicalborg so you can get a looping sound and not footsteps playing over and over.
Didn't actually update medborg because footsteps need updating.
Not needed for AI.
* Initial commit
* AIs get a warning when trying to answer long distance calls
* Better handling of ending telephone calls
* Fixed issue with duplicated holopad window when an AI answers a summons
* Changed how ranges are handled, added the bluespace holopad
* Bug fixes
* More bug fixes
* More bug fixes
* Update Resources/Prototypes/Entities/Structures/Machines/holopad.yml
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Update Resources/Prototypes/Entities/Structures/Machines/holopad.yml
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Use class instead of out variables
* Show battery level in power monitoring console
* Better color contrast for battery level + localized string
* Add visualization to battery percentage
* Reverts random ChatSystem.cs whitespace change
* Address review
* Show BatteryLevel stats in child view when selecting devices
---------
Co-authored-by: Crotalus <crotalus@users.noreply.github.com>
* Check buckle.BuckledTo value before hugging interaction
* Make InteractHandEvent to be used by BuckleSystem before InteractionPopupSystem instead of after
* reduce network burden of the hunger system
* explicit start + last updated
* remove auto reformat changes to otherwise untouched code
add clamp helper
* imagine making breaking changes, documenting them, and then not thinking to check the yaml
* comments
* Remove unused net manager in hunger system
Remove lastAuthoritativeHungerValue from prototypes
* Initial resources commit
* Initial code commit
* Added additional resources
* Continuing to build holopad and telephone systems
* Added hologram shader
* Added hologram system and entity
* Holo calls now have a hologram of the user appear on them
* Initial implementation of holopads transmitting nearby chatter
* Added support for linking across multiple telephones/holopads/entities
* Fixed a bunch of bugs
* Tried simplifying holopad entity dependence, added support for mid-call user switching
* Replaced PVS expansion with manually networked sprite states
* Adjusted volume of ring tone
* Added machine board
* Minor features and tweaks
* Resolving merge conflict
* Recommit audio attributions
* Telephone chat adjustments
* Added support for AI interactions with holopads
* Building the holopad UI
* Holopad UI finished
* Further UI tweaks
* Station AI can hear local chatter when being projected from a holopad
* Minor bug fixes
* Added wire panels to holopads
* Basic broadcasting
* Start of emergency broadcasting code
* Fixing issues with broadcasting
* More work on emergency broadcasting
* Updated holopad visuals
* Added cooldown text to emergency broadcast and control lock out screen
* Code clean up
* Fixed issue with timing
* Broadcasting now requires command access
* Fixed some bugs
* Added multiple holopad prototypes with different ranges
* The AI no longer requires power to interact with holopads
* Fixed some additional issues
* Addressing more issues
* Added emote support for holograms
* Changed the broadcast lockout durations to their proper values
* Added AI vision wire to holopads
* Bug fixes
* AI vision and interaction wires can be added to the same wire panel
* Fixed error
* More bug fixes
* Fixed test fail
* Embellished the emergency call lock out window
* Holopads play borg sounds when speaking
* Borg and AI names are listed as the caller ID on the holopad
* Borg chassis can now be seen on holopad holograms
* Holopad returns to a machine frame when badly damaged
* Clarified some text
* Fix merge conflict
* Fixed merge conflict
* Fixing merge conflict
* Fixing merge conflict
* Fixing merge conflict
* Offset menu on open
* AI can alt click on holopads to activate the projector
* Bug fixes for intellicard interactions
* Fixed speech issue with intellicards
* The UI automatically opens for the AI when it alt-clicks on the holopad
* Simplified shader math
* Telephones will auto hang up 60 seconds after the last person on a call stops speaking
* Added better support for AI requests when multiple AI cores are on the station
* The call controls pop up for the AI when they accept a summons from a holopad
* Compatibility mode fix for the hologram shader
* Further shader fixes for compatibility mode
* File clean up
* More cleaning up
* Removed access requirements from quantum holopads so they can used by nukies
* The title of the holopad window now reflects the name of the device
* Linked telephones will lose their connection if both move out of range of each other
* Zombies keep their anomalies on zombification
* Refactor anombies to isolate anomalies and zombies
InnerBodyAnomalies now send an event when the host dies.
Zombies cancels this event if the host is turning into a zombie.
* Anomazombies: deprecate CancellableEntityEventArgs
CancellableEntityEventArgs is deprecated. Use structs
with bool Cancelled instead.
* Updated to latest master version
* Added gas pipe analyzer
* Completed prototype
* Playing with UI display
* Refinement of the main UI
* Renamed gas pipe analyzer to gas pipe sensor
* Added focus network highlighting and map icons for gas pipe sensors
* Added construction graph for gas pipe sensor
* Improved efficiency of atmos pipe and focus pipe network data storage
* Added gas pipe sensor variants
* Fixed gas pipe sensor nav map icon not highlighting on focus
* Rendered pipe lines now get merged together
* Set up appearance handling for the gas pipe sensor, but setting the layers is bugged
* Gas pipe sensor lights turn off when the device is unpowered
* Renamed console
* The gas pipe sensor is now a pipe. Redistributed components between it and its assembly
* AtmosMonitors can now optionally monitor their internal pipe network instead of the surrounding atmosphere
* Massive code clean up
* Added delta states to handle pipe net updates, fixed entity deletion handling
* Nav map blip data has been replaced with prototypes
* Nav map blip fixes
* Nav map colors are now set by the console component
* Made the nav map more responsive to changes in focus
* Updated nav map icons
* Reverted unnecessary namespace changes
* Code tidy up
* Updated sprites and construction graph for gas pipe sensor
* Updated localization files
* Misc bug fixes
* Added missing comment
* Fixed issue with the circuit board for the monitor
* Embellished the background of the console network entries
* Updated console to account for PR #32273
* Removed gas pipe sensor
* Fixing merge conflict
* Update
* Addressing reviews part 1
* Addressing review part 2
* Addressing reviews part 3
* Removed unnecessary references
* Side panel values will be grayed out if there is no gas present in the pipe network
* Declaring colors at the start of some files
* Added a colored stripe to the side of the atmos network entries
* Fixed an issue with pipe sensor blip coloration
* Fixed delay that occurs when toggling gas sensors on/off
* Makes admins not count towards the playercount cap
* Update Content.Shared/CCVar/CCVars.Admin.cs (thx Aeshus
Co-authored-by: Thomas <87614336+Aeshus@users.noreply.github.com>
* Actually fixes whitespace on the comments
Thanks VScode very good IDE
---------
Co-authored-by: Thomas <87614336+Aeshus@users.noreply.github.com>
* Changed comments to be more clear and uniform.
EggLayer uses NextGrowth instead of frame accumulation.
Egglayer uses much less energy to make eggs, and lay time is randomized for player and AI chicken.
* UdderComponent ReagentId can be changed now
UdderSystem and WoolySystem use SharedSolutionContainerSystem now
* Entities with udders can be examined to see a rough hunger level
udders and wooly stop reagent generation/extra nutrient usage once the solution container is full
* Moved stuff to Shared
AutoPausedField now
* Cleanup moving stuff to Shared
* Oops. Make UdderSystem sealed instead of abstract.
* Switch PopupEntity for PopupClient
* Didn't mean to delete Access
* new() instead of default! prototype
revert egglayer balance change
NextGrowth += timespan in egglayer
* forgot [Datafield] for NextGrowth
* forgot NetworkedComponent again...
* Renaming Shared Animal to Shared Animals to match Server
Hopefully also resolve merge conflicts.
* Fix incorrect filename
* Update with requested changes
Put UdderSystem dependencies in alphabetical order.
Initialise NextGrowth for Udder and Wooly components on MapInitEvent.
Clean-up EggLayerSystem a little.
Re-write OnExamine function for UdderSystem, improving clarity.
Add full stops to end of udder examine locales.
And more :)
* Add some additional descriptions for cow hunger levels.
* Add Udder and Wooly quantity to AutoNetworkedField
* Account for less than starving threshold.
---------
Co-authored-by: sirionaut <sirionaut@gmail.com>
Co-authored-by: Sirionaut <148076704+Sirionaut@users.noreply.github.com>
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
* working mind swap spell
* Removing unncessary spacing
Co-authored-by: Thomas <87614336+Aeshus@users.noreply.github.com>
* Changing mind swap speech
Co-authored-by: keronshb <54602815+keronshb@users.noreply.github.com>
* All requested changes in review
* Stores owned by mind instead of body
* Requested changes, traitor uplink fixed
* Revert "Requested changes, traitor uplink fixed"
This reverts commit 2ceac6733d6a28890f60d2ccef3dafa160a702fd.
* Revert "Stores owned by mind instead of body"
This reverts commit dfb72ab70ed66db50312617f2dce02d0a4e4dfce.
* Separate target and performer stun duration
---------
Co-authored-by: Thomas <87614336+Aeshus@users.noreply.github.com>
Co-authored-by: keronshb <54602815+keronshb@users.noreply.github.com>
* Rebalance HoS's Energy Shotgun
* SLIGHTLY Up the max charge so the gun properly recharges all of its charges, which matters a lot more with the self charge cooldown system.
* Prevent recharge cooldown if 0 power is used.
* Makes the clientside HUD actually update to reflect the changes in firecost and thus max/current charges.
* Properly fix that recharging to just under full issue instead of applying a budget fix to only the eshotgun.
* Clean up the client ammo UI fix.
* Update the self recharger component to comply with maintainer request.
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Remove code that was made redundant by a hotfix from another PR.
* Make the recharge pause on EMP, document things where needed, clean up code as per maintainer request, add a note to make the code better when power is moved to shared.
* Fix another internal issue
* Code cleanup + fix the rapid recharge verb to remove pause.
* cleanup
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
* Give silicons proper lobby/character editor previews
No more naked dummies, properly show a borg/AI sprite now.
This means taking the JobEntity into account when spawning the dummy. For AIs I had to add a "JobPreviewEntity" field because they'd look like a posibrain otherwise. AI therefore uses a custom dummy entity I defined.
Also I had to add some margins to the UI, because otherwise the 32x32 sprite of the AI would look bad.
* Update Content.Shared/Roles/JobPrototype.cs
* Update Content.Client/Lobby/LobbyUIController.cs
* Update Resources/Prototypes/Entities/Mobs/Player/silicon.yml
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* TESTING enable events for dev enviroment
* Add NextEventComponent
* Check for schedulers NextEventComponent
* Seperate gernateing event to its own method
* Add NextEventSystem and use in BasicStationEventSchedulerSystem
* TESTING: Override time and player restrictions
* Stash events in NextEventComponent (#1)
* Add NextEventComponent
* Check for schedulers NextEventComponent
* Seperate gernateing event to its own method
* Add NextEventSystem and use in BasicStationEventSchedulerSystem
* Format code
* Add nextEvent time perdiction
* Use RunTime instead of float minutes
* Bug fixes
* Add NextEvent to Ramping and Meteors
* Fix timing on BasticStationEvents
* initialize NextEventComponent when created
* Event scheduler caching (#2)
* Check for schedulers NextEventComponent
* Seperate gernateing event to its own method
* Add NextEventSystem and use in BasicStationEventSchedulerSystem
* Format code
* Add nextEvent time perdiction
* Use RunTime instead of float minutes
* Bug fixes
* Add NextEvent to Ramping and Meteors
* Fix timing on BasticStationEvents
* initialize NextEventComponent when created
---------
Signed-off-by: SolStar <44028047+ewokswagger@users.noreply.github.com>
* Revert "Event scheduler caching (#2)"
This reverts commit bf9cd26ed4.
* Revert "Merge branch 'seer' into stash-next-event"
This reverts commit 656ca26173, reversing
changes made to 36f45be10e.
* Revert "Caching next exent"
This reverts commit 9f1bee4131, reversing
changes made to 82678d9c18.
* Reapply "Event scheduler caching (#2)"
This reverts commit 82678d9c18.
* More merge conflict nonsence
* oops
* oops 2
* Oops 3
* Precognition Psionic ability (#3)
* Precognition ability added
* Precog get next event
* Get soonest event and display
* update prototypes with precog results
* Add random
* Use Timespan for UseDelay
* Damage breaks doafter
* typo
* fix localization
* fix do after
* Add effects durring do after
* Revert "TESTING enable events for dev enviroment"
This reverts commit 03453133bd.
* Revert testing changes
* add deltav comments
* Cleaning up!
* Move NextEvent to server space
* Fix NextEventId init value
* Reverted upstream file to block scoped namespace
* Add precognitnon result messages
* reverting testing changes for real
* Add admin alert for upcoming events
* Add sound effect
* make alert more subtule
* extended max window size
* fix message mixup
* yaml fixes
* more yaml fixes
* Delta Changes
* totaly a yaml error trust
* remove unsessesary weights
---------
Signed-off-by: SolStar <44028047+ewokswagger@users.noreply.github.com>
* Update hitscan.yml
* All the things
* Fixing the cold
* Fixed sprite and some formatting
* im dumb
* Revert "Fixed sprite and some formatting"
This reverts commit 2550f41240.
* Reapply "Fixed sprite and some formatting"
This reverts commit 3f4d5eaade.
* Revert "im dumb"
This reverts commit 9056ca3507.
* names
* Reviewed Changes
* Reviewed Changes
* Fixed for Milon
* delta changes
---------
Signed-off-by: Stop-Signs <stopsign221@gmail.com>
* Add struct for holding historical data on cargo bounties
* Add localisation strings for bounty history
* Add new XAML entry for display bounty history
* Expand cargo bounty menu to include tabs
* Ensure station databases hold historical bounty data
* Add to the bounty history when removing one from active
* Feed bounty history into cargo's bounty system
* add on textures for ore bags
* add code for toggling magnet and working in-hand
* update ore bag yml
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* remove evil file
* clean up fugi emag lines
* clean up barrel/keg yml and meta
* surface-level refactor of deep fryer component
* move carrying to shared and fully refactor
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* bug fixes and safty improvments
* remove unsued useings
* this is dumb but ok
* removed global annoucement
* why does my ide keep doing this shit
* remove unessesary stuff
* fix not being able to make catwalk over lava
* add planet prototypes
* StationSurface -> StationPlanetSpawner
* spawn lavaland for all stations
* remove reclaimer wrecks muahaha
* add mining shuttle
* add lavaland map
* convert glacier surface to a grid (still unusable)
* update glacier comment
* add docking shuttle/console systems
* fix test
* make glacier use a lavaland base reskin
* -m actually set the atmosphere
* :trollface:
* fix test
* address most reviews
* add no shuttle warning
* remove unnecessary usings
* 80C and higher pressure
* lock the shuttle docks to external access
* correct comment pressure
* add salvage access to the console
* lock supply room to salv, add a cooler
---------
Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: Milon <plmilonpl@gmail.com>
* Add events for player updating jobs
* Add NoCaptainComponent
* add and remove NoCaptainComponent logic
* Gernalized to CaptainStateComponent
* Generalized CaptainStateComponent
* Add requesting aco vote
* Add auto unlock aa
* Remove hardcodecd strings
* Add localization
* // DeltaV
* pro fix
* fax cc please
* move captain detection to CaptainStateSystem
* track spareidsafe with comp instead
* little bit of movement
* fix broken formating
Signed-off-by: SolStar <44028047+ewokswagger@users.noreply.github.com>
* pls
* Remove unused method
* subscribe captainstatecomponent for job events
* Cvars, Disabled AA on peri
* temp fix for intergration test bug
* :3
* format fix
* spelling ops
* nameing ops
* done final real this time (1) (1)
* remove has an out very nice
---------
Signed-off-by: SolStar <44028047+ewokswagger@users.noreply.github.com>
* Adds wand of locker and locker projectile
* Adds IsOpen method to check if storage is open
* Adds store on collide
* Adds Store On Collide to Wizard Locker
* Adds Lock API
* Adds locking support
* Adds resist override and custom visual layers
* Fixes decursed states, adds comment for a future visualizer
* adds locker wand visuals and descriptions
* shrinks locker radius, moves TODO for throw support
* Adds whitelist and moves storage and lock logic into their own methods
* Adds support to disable store on collide after the first open. Fixes prediction issues with disabling.
* Adds wand of locker to the grimoire
* Adds wizard access prototype
* Adds Wizard to universal access
* Moves Lock on collide to on collide method
* Comments
* Changes layer order
* Fixes prediction issues when locking.
* Adds Wiz access to universal ID
* 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
* adjust min blindness back to 0 when PermanentBlindnessComponent is removed
* mapinit changes
* remove OnRemove, move changes to OnShutdown
* goodbye event
* dependency removal
* final adjustment
---------
Co-authored-by: lunarcomets <luanrcomets2@gmail,com>
* Fix door animations mispredicting if closing is interrupted
On master it will flicker states a little bit partially due to it not being predicted.
Instead we'll just set it straight back to opening (no animation is ever played anyway).
* no log
* Fix admin ghosts not being able to see items in pouches or interact with them
* fix
* oops
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* mostly done but there's a bug with spawning
* RandomGlobalSpawnSpellEvent now actually works
* Summon Guns/Magic is working
* Added sound, cap gun, and auto pick up
* Added all requested changes/fixes from reviews
* Halving cooldowns
This should be the primary changes for the future-proof "Modern HWID" system implemented into Robust and the auth server.
HWIDs in the database have been given an additional column representing their version, legacy or modern. This is implemented via an EF Core owned entity. By manually setting the column name of the main value column, we can keep DB compatibility and the migration is just adding some type columns.
This new HWID type has to be plumbed through everywhere, resulting in some breaking changes for the DB layer and such.
New bans and player records are placed with the new modern HWID. Old bans are still checked against legacy HWIDs.
Modern HWIDs are presented with a "V2-" prefix to admins, to allow distinguishing them. This is also integrated into the parsing logic for placing new bans.
There's also some code cleanup to reduce copy pasting around the place from my changes.
Requires latest engine to support ImmutableArray<byte> in NetSerializer.
* Borg type switching.
This allows borgs (new spawn or constructed) to select their chassis type on creation, like in SS13. This removes the need for the many different chassis types, and means round-start borgs can actually play the game immediately instead of waiting for science to unlock everything.
New borgs have an additional action that allows them to select their type. This opens a nice window with basic information about the borgs and a select button. Once a type has been selected it is permanent for that borg chassis.
These borg types also immediately start the borg with specific modules, so they do not need to be printed. Additional modules can still be inserted for upgrades, though this is now less critical. The built-in modules cannot be removed, but are shown in the UI.
The modules that each borg type starts with:
* Generic: tools
* Engineering: advanced tools, construction, RCD, cable
* Salvage: Grappling gun, appraisal, mining
* Janitor: cleaning, light replacer
* Medical: treatment
* Service: music, service, clowning
Specialized borgs have 3 additional module slots available on top of the ones listed above, generic borgs have 5.
Borg types are specified in a new BorgTypePrototype. These prototypes specify all information about the borg type. It is assigned to the borg entity through a mix of client side, server, and shared code. Some of the involved components were made networked, others are just ensured they're set on both sides of the wire.
The most gnarly change is the inventory template prototype, which needs to change purely to modify the borg hat offset. I managed to bodge this in with an API that *probably* won't explode for specifically for this use case, but it's still not the most clean of API designs.
Parts for specific borg chassis have been removed (so much deleted YAML) and specialized borg modules that are in the base set of a type have been removed from the exosuit fab as there's no point to printing those.
The ability to "downgrade" a borg so it can select a new chassis, like in SS13, is something that would be nice, but was not high enough priority for me to block the feature on. I did keep it in mind with some of the code, so it may be possible in the future.
There is no fancy animation when selecting borg types like in SS13, because I didn't think it was high priority, and it would add a lot of complex code.
* Fix sandbox failure due to collection expression.
* Module tweak
Fix salvage borg modules still having research/lathe recipes
Engie borg has regular tool module, not advanced.
* Fix inventory system breakage
* Fix migrations
Some things were missing
* Guidebook rewordings & review
* MinWidth on confirm selection button
* Act
* Adds Jaunt ECS and related prototypes
* Adds jaunt sounds
* Adds enter and exit sound support to polymorphs
* Updates jaunt description
* Adds jaunt action sprite and changes jaunt polymorph to use it
* Adds Jaunt and upgrade to the wizard grimoire
* Makes base mob jaunt parent off of incorporeal and basemob, adds blue ghost sprite for ethereal jaunt
* Update Resources/Locale/en-US/store/spellbook-catalog.ftl
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Update Resources/Prototypes/Entities/Mobs/Player/jaunt_mobs.yml
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Update Resources/Prototypes/Entities/Mobs/Player/jaunt_mobs.yml
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Update Resources/Prototypes/Entities/Mobs/Player/jaunt_mobs.yml
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Update Content.Shared/Polymorph/PolymorphPrototype.cs
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Update Content.Shared/Polymorph/PolymorphPrototype.cs
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* removes meta changes
* removes other meta changes
* adds context menu and a description to basemobjaunt
* comments for jaunt component and adds on component shutdown method
* Update Content.Shared/Jaunt/JauntComponent.cs
* Update Content.Shared/Jaunt/JauntComponent.cs
* Update Content.Shared/Jaunt/JauntComponent.cs
* Update Resources/Prototypes/Catalog/spellbook_catalog.yml
---------
Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* cant disguise to thing in a container
* copy cigarette visualiser
* prevent aghost throwing an error
* make disguises die in space
* fuck it rewrite it to not use polymorph
* fix action troll
* oop
* add vebr
* add access to the components
* 2/3
* fix
* relay damage from disguise to user
* fix integrity
* :trollface:
* :trollface:
* m
* kill integrity
* fix a bug
* review
* remove them from component
* relay flash effect to the disguise
* fix icon being weird
* change method since multiple systems cant handle same network event
* :trollface:
* actually network Disguise real
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* Rework flaregun and add security shell gun
* Make flare gun twice as likely to appear in emergency lockers
* Security shell gun can now fire lethal shells like the flare gun used to be able to.
* Rebalance the sec shell gun material cost to primarily be steel instead of plastic
* Define the ShellShotgunLight tag in tags.yml
* Leave the no lethal shells for normal flareguns to a different PR.
* Move a comment to re-run checks.
* Bye bye lethal shells from plastic guns.
* Fix weird whitespace issue.
* Make the sec shell gun inherit the normal flare gun.
* Remove the rack verb and update the sec shell gun description
* Remove the ability to fire lethals from flare guns, pending blowing up the gun
---------
Co-authored-by: SlamBamActionman <slambamactionman@gmail.com>
* Silicon Law Sound cue refactor
- Added CueEntityMind to Silicon Law system to more uniformally
send sounds to minds
- Switch all previous MindPlaySound to instead call to the new method
* Change SiliconLawEui to cue the mind
* CR: TryGetComponent and Change the Documentation
- Remove GetComponentOrNull for _entityManager.TryGetComponent
- Change SiliconLawProviderComponent.LawUploadSound to be more general
rather than just referencing lawboards
* Update Content.Server/Silicons/Laws/SiliconLawEui.cs
* Update Content.Shared/Silicons/Laws/Components/SiliconLawProviderComponent.cs
* Silicon-law-cue-refactor - CR:
- Roll the cuing into NotifyLawsChanged via an optional variable for the
cue
- Modify "SetLaws" to take in an optional soundProvider for the cue
- modify Emagged, Ion, Eui and SetLaws to instead send the sound cue via
NotifyLawsChanged
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* disable interaction for telegnomes, add access for the components
* make client and server systems extend shared system
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* Fix multiplying colors of differing nullabilities (#32991)
* revert the temporary hack
* Make atmos alert computer colors private variables (#32992)
* Add flash reaction effect (#32377)
add flash reaction effect
* Automatic changelog update
* Fix loneop spawnrate by reverting it to not use the shuttle event system. (#32942)
Fix loneop spawnrate by reverting it to not use the custom shuttle event system.
* Automatic changelog update
* add atmosia to devmap (#32460)
change
* bowls now make drinking sounds (#32819)
* Automatic changelog update
* Add health analyzer unrevivability warning (#32636)
* Add health analyzer unrevivability warning
* Remove errornous comment
* Automatic changelog update
* Removed the name "Hujsak" (#32998)
removed hujsak
* fix pie throwing sound not playing (#33017)
* Automatic changelog update
* Fix TestSuicideByHeldItem and TestSuicideByHeldItemSpreadDamage (#33030)
* make ai speak robotically (#33025)
* Automatic changelog update
* Extends the minimum round time for meteor swarm events (#32876)
* adjusted minimum timers in meteorswarms.yml
* Updated timer minimum from 20 to 15 minutes
* Reduced minimum timer to 10 minutes as a result of other meteor changes
---------
Co-authored-by: august-sun <45527070+august.sun@users.noreply.github.com>
* Automatic changelog update
* add StartDelay bool to actions (#33026)
* add StartDelay bool to actions
* forgot summary
* Updated an incorrect sprite in the smite menu (#33043)
changed the synth sprite used in the icon for the instrumentify smite out for the more accurate supersynth sprite
* fix lava expeds (#33042)
Co-authored-by: deltanedas <@deltanedas:kde.org>
* Automatic changelog update
* Fix separated game screen bumping (#33046)
I don't really understand why RecordedSplitContainer exists but removing it looks identical and fixes the panel bumping occasionally.
* Automatic changelog update
* Fix: Make Plushie Damage Unexaminable (#33061)
Set hidden to true
* fix chameleon projector bot whitelist (#33055)
fix
* Various Vaugely Connected Sprite Updates™: Encryption Keys, Station Map, Brig Timer (#32786)
* various resprites (encryption keys + signal screens + station map)
* brig timer update
* fixes n shit
* Give proto-kinetic crushers, glaives, and daggers better inhands. Update the crusher and glaive icons. (#32212)
* inhands
* better inhands
* indent
* Automatic changelog update
* Make the security belt contain more useful items by default (#32291)
* replace tear gas and flashbang with holobarrier and sec radio
* holobarrier-belt-fix
* revert changes of 32291
* Automatic changelog update
* Add 3 bottle boxes to nanomed plus (#33018)
three bottle boxes in nanomed plus
* Automatic changelog update
* Nukie med bundle now costs 24 tc and contains a unique defibrillator (#32720)
* a-few-injectors
* comment
* defib-ops-when
* Automatic changelog update
* Pill Bottles can only store pills now (#33074)
* no longer absurd
* Update Resources/Prototypes/Entities/Objects/Specific/chemistry.yml
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Automatic changelog update
* Add a spare bible to PietyVend (#32363)
Update chapel.yml
* Automatic changelog update
* [#28722 fix] Add notification for dependent wearables being dropped (#33078)
* add notification for dependent wearables being dropped
* fix dropped item popup redundancy
- did a check to see if any item was dropped, instead of making a notification for each item being dropped.
* change popup to client-only variant
* fix redundant messages, add plural locale string
* fix conventions, fix locale input to be more intuitive
---------
Co-authored-by: Justin <justinbrick1@gmail.com>
* Automatic changelog update
* More pda space (#32601)
* Rebalance the max programs that a PDA can hold
* Give Caps PDA more programs too.
* Make the max programs a static 8
* I forgor sec and med
* CaseCase
* Empty commit to re-run checks
* The final change, I hope.
* Automatic changelog update
* Fixed spelling mistake in water blaster description. (#33087)
Fixed minor spelling mistake
* [#20285 fix] Carp Plush and Rehydratables can now be put into mop bucket (#33079)
* Make shark plush janitor-bucketable
* fix bucketed grey shark texture
* Make sprites less shiny and adapt copyright notice
* Made shark way way less shiny
* Allow carp plush and rehydratables in mop bucket.
* Remove old mop bucket shark sprites
* Fix post-merge bugs
* Fix errors
* Move ReactiveContainer stuff to shared
That should mean it is now predicted.
* Custom eject verb for the mop bucket
* Fixes OnSolutionChange, removes pop-up as there already is one.
* .ftl is not necessary as the custom pop-up was removed
* Review fixes
* Update Content.Shared/Chemistry/Components/ReactiveContainerComponent.cs
* Update Content.Shared/Chemistry/EntitySystems/ReactiveContainerSystem.cs
---------
Co-authored-by: Psychpsyo <psychpsyo@gmail.com>
Co-authored-by: Psychpsyo <60073468+Psychpsyo@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Automatic changelog update
* remove now duplicated nyano PlushieCarp tag
* Fixes tailthump breaking positional audio by making it mono (#33092)
* Automatic changelog update
* ExaminableDamage now puts its message at the bottom and in color (#32820)
* the examineableDamage component now puts its messages at the bottom, and in color
* god help us if something is priority -100 :godo:
* Automatic changelog update
* Lower in-round votekick requirements (#32953)
Initial commit
* Allow votekicks to be initiated in the lobby (#32528)
Initial commit
* Automatic changelog update
* Fixes bolt lights of previously unpowered bolted doors (#33063)
fix
* Automatic changelog update
* Muffins (#29318)
* Update meta.json
* Add files via upload
* Update misc.yml
* Update meal_recipes.yml
* Update meta.json
* Add files via upload
* Update plate.yml
* Update food_baked_single.yml
* Update dinnerware.yml
* Update cooking.yml
* Update misc.yml
* Add files via upload
* Delete Resources/Textures/Objects/Consumable/Food/Baked/misc.rsi/muffin-cherry.png
* Add files via upload
* Update meta.json
* Update misc.yml
* Update meal_recipes.yml
* Update meta.json
* Fix meta.json
* Fix meta.json again
* Update misc.yml
* Update misc.yml
* Update misc.yml
* Update misc.yml
* Update meta.json
* Update meta.json
* Update misc.yml
* Update meal_recipes.yml
* Update Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/misc.yml
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Update dinnerware.yml
* Delete cherry
* Add files via upload
* Delete banana
* Add banana
* Delete chocolate
* Add chocolate
* lathe recipe fix
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Automatic changelog update
* Borgs can no longer see mindshield + AI can no longer toggle off seeing job icons (#33069)
* :(
* Removed the sprite + updated RSI
* Automatic changelog update
* Add CanLoad for biomes (#33050)
CPUJob to come later.
* Remove CargoPallet component from the cargo pallet (#33022)
* Change cargo shuttle pallets to catwalks.
* Remove CargoPallet component from the cargo pallet.
* Undo cargo shuttle changes.
* Automatic changelog update
* Minor antagonist guidebook changes (#32824)
* took a two month nap. accidentally pushed too many buttons. let's try this again. added thieves to antagonists.xml
* even after that nap, i don't feel well-rested at all.
* please don't kill me for using webedit
* capitalization, typo
* Apply suggestions from code review (more period moving)
Thanks Evan, very cool
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* guess you could say im not pro-proper noun
* typo
* Update Resources/ServerInfo/Guidebook/Antagonist/Nuclear Operatives.xml
* ok
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
* Give Nukies a Hand Labeler (#33053)
* Add hand-labeler to nukie planet
* Rearrange nukie chem table
* Fix `ItemSlotSystem` popup Logic (#28856)
* move popup call out of `CanInsert` into `OnInteractUsing`
* im stupid and `reason` is completely unnecessary
Signed-off-by: Brandon Li <sirbrandonthenerd@gmail.com>
* return early when `itemSlots.Slots.Count == 0`
* tweak logic for triggering popups
* change popup logic again
* Consolidate whitelist check
* Get any popup message not just last failed slot
* Apply suggestions from code review
Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>
* yoink
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
---------
Signed-off-by: Brandon Li <sirbrandonthenerd@gmail.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>
* Add cvars to votekick to customize requirements for the initiator. (#32490)
* Automatic changelog update
* Add on-call functionality for adminning (#30443)
* Add on-call functionality for adminning
The first time an ahelp gets SOS it gets relayed to the specified channel with the specified ping. Every time after that it doesn't until it gets a non-SOS response received.
* Remove redundant name
Pretty sure this already gets chucked on the name of the msg itself I think it just didn't show in screenshot because they were subsequent.
* Update Content.Server/Administration/Systems/BwoinkSystem.cs
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
---------
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
Co-authored-by: deathride58 <deathride58@users.noreply.github.com>
* Automatic changelog update
* Pills are explosion resistant (partially reverts #15851) (#32458)
* idk how to revert a pr so I just deleted some lines
* pill destructible with explosion resistance
* comment for explosion resist
* "and" to "but"
---------
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
* Automatic changelog update
* Hasten handcraft gauze recipe & decrease techfab gauze cost (#32744)
* med lathe gauze price reduction
* gauze craft doafter time
* 3 second doafter craft
* Automatic changelog update
* Service workers antagonist fix. (#31359)
* add
* Revert "add"
This reverts commit 25da34b0fead5812fe5800c9bf5dd7b10ef48d7d.
* antagonism allowed™️
* Automatic changelog update
* Adds a new AME sound effect! (#33097)
* Changes the AME sound effect to not be the default MetalThud.
* Was told on discord to make a minor change to autorerun the tests due to the Build & Test Debug failing!
* Attribution and licensing, as requsted by deathride58
* Fixes the high-pitched squeak audible to some people!
* Audio file tweaked by SlamBamActionMan to eliminate a weird squeak they were still able to hear. Thanks!
* Automatic changelog update
* Allow for the ai's laws to be changed from its core and eye (#32461)
* Allow for the ai's laws to be changed from its core and eye
* Address reviews
* Automatic changelog update
* clean up tools lathe recipes (#31521)
* clean up tools lathe recipes
* add medical and cooking tools
* add result
* add result to others
* review
* engine
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* Automatic changelog update
* Intercoms and Radios both pick up proximate speech (#32737)
* Deduping of recent messages should consider the channel it's being sent to
* rerun actions
* Automatic changelog update
* Adds headphones to loadouts (#33067)
added headphones to trinkets
* Automatic changelog update
* Cardboard Box Capacity 4 -> 5 (#32743)
* capacity upgrade
* comment update
* remove our duplicate pill whitelist
* fix
* remove broken crew monitor from dev map, how did it even get there
---------
Signed-off-by: Brandon Li <sirbrandonthenerd@gmail.com>
Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com>
Co-authored-by: BramvanZijp <56019239+BramvanZijp@users.noreply.github.com>
Co-authored-by: Ilya246 <57039557+Ilya246@users.noreply.github.com>
Co-authored-by: Moomoobeef <62638182+Moomoobeef@users.noreply.github.com>
Co-authored-by: Saphire Lattice <lattice@saphi.re>
Co-authored-by: FluffMe <1780586+FluffMe@users.noreply.github.com>
Co-authored-by: Theodore Lukin <66275205+pheenty@users.noreply.github.com>
Co-authored-by: August Sun <45527070+august-sun@users.noreply.github.com>
Co-authored-by: august-sun <45527070+august.sun@users.noreply.github.com>
Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Preston Smith <92108534+thetolbean@users.noreply.github.com>
Co-authored-by: Milon <plmilonpl@gmail.com>
Co-authored-by: Flareguy <78941145+Flareguy@users.noreply.github.com>
Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com>
Co-authored-by: Boaz1111 <149967078+Boaz1111@users.noreply.github.com>
Co-authored-by: Jarmer123 <148848017+Jarmer123@users.noreply.github.com>
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
Co-authored-by: Justin <justinbrick1@gmail.com>
Co-authored-by: SpaceLizard <the.justice.league.of.canada@gmail.com>
Co-authored-by: Psychpsyo <psychpsyo@gmail.com>
Co-authored-by: Psychpsyo <60073468+Psychpsyo@users.noreply.github.com>
Co-authored-by: deathride58 <deathride58@users.noreply.github.com>
Co-authored-by: PopGamer46 <yt1popgamer@gmail.com>
Co-authored-by: RumiTiger <154005209+RumiTiger@users.noreply.github.com>
Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>
Co-authored-by: Minemoder5000 <minemoder50000@gmail.com>
Co-authored-by: UBlueberry <161545003+UBlueberry@users.noreply.github.com>
Co-authored-by: Brandon Li <48413902+aspiringLich@users.noreply.github.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
Co-authored-by: Vasilis <vasilis@pikachu.systems>
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
Co-authored-by: K-Dynamic <20566341+K-Dynamic@users.noreply.github.com>
Co-authored-by: Ubaser <134914314+UbaserB@users.noreply.github.com>
Co-authored-by: AftrLite <61218133+AftrLite@users.noreply.github.com>
Co-authored-by: nikthechampiongr <32041239+nikthechampiongr@users.noreply.github.com>
Co-authored-by: Centronias <me@centronias.com>
Co-authored-by: joshepvodka <86210200+joshepvodka@users.noreply.github.com>
Co-authored-by: Scribbles0 <91828755+Scribbles0@users.noreply.github.com>
* Add new speech trait: Hushed
* Hushed entities' local messages will now be whispers
* Sepeate Hushed check from prefix removal
* Move to Delta-v Namespace
* Minor refactoring
* Bug fixes
* Change to file scoped namespace
* Change comments more in line to DeltaV
* sort of works
* fix
* oh right
* admin abuse
* buy/sell events
* price history, better error handling
* joke
* buying and selling
* access handling
* IT'S FINALLY REAL
* fixes
* AAAAAAAAAAAAAAAAA
* i keep fucking forgetting things
* FUCKING
* move company structs out of the comp
* ok im going to sleep
* Revert "oh right"
This reverts commit 8681e5a07b.
* Revert "fix"
This reverts commit 3992ec99fd.
* address reviews
* OMG FINALLY FIXED THIS JANKY SHIT
* oh
* no structure, zero fucks given
* this also
* trolled
* shitcode v2
* FUCK
* what was i even fucking thinking???
* remove unused codeanalysis import
Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
---------
Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Fix Bug With Uppercase Radio Keys (#32997) (master) (#33031)
Co-authored-by: Vasilis <vasilis@pikachu.systems>
Co-authored-by: Thomas <87614336+Aeshus@users.noreply.github.com>
* Atmospheric alerts computer
* Moved components, restricted access to them
* Minor tweaks
* The screen will now turn off when the computer is not powered
* Bug fix
* Adjusted label
* Updated to latest master version
* Initial commit
* Tidy up
* Add firelocks to the nav map
* Add nav map regions to atmos alerts computer
* Added support for multiple region overlay sets per grid
* Fixed issue where console values were not updating correctly
* Fixing merge conflict
* Fixing merge conflicts
* Finished all major features
* Removed station map regions (to be re-added in a separate PR)
* Improved clarity
* Adjusted the color saturation of the regions displayed on the atmos alerts computer
* init
* im so confused
* clean
* sprite update
* :|
* further attempts
* be blessed for it works
* Very prestigious pAI
* cleaning up
* Intellicard in RD locker
* PAIn't
* .Clear()n't
* .Clear()n't for real this time
* Cleaning up
* Whoopsie Daisy
* Init testing
* copyright
* oops
* Tracking the embed entity uid
* testing stuff for gradual injection
* work
* weh
* god save me
* bleh
* Yippee!
* Again
* Mini syringe ammo
* cleaning up
* mini syringes have a texture for fill amount
* -3 cool points :(
* hitboxes
* init cleanup
* much needed fixes
* Fixes
You were already able to strip more items at once from somebody than you could hold, and they would drop to the floor. This matched the behavior in SS13.
Annoyingly, however, you were not allowed to *start* a stripping action if you're holding something. This just feels like an annoying paper cut, so this is no longer a thing.
* Implant the uplink if no PDA is found
* comments
* tidy up loose ends
* Whoops usually I start with the namespace, how did I forget it, shame shame
* Consistent data type for starting TC balance, misc changes
* Implant briefing, guidebook
* Update AutoTraitor, add uplink, codeword and briefing parameters to TraitorRuleComponent, no pda for reinforcements
* engine 5c0ce43
* pass pda to AddUplink
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* nicer string handling
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* case typo 1
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* case typo 2
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* case typo 3
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* minor layout changes
* removed redundant implant check
* minor cleanup
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Change the window titlebar to show the joined server
Requires https://github.com/space-wizards/RobustToolbox/pull/5475/
* Totally not a webedit
* Can you tell what cvar I copied?
* And this kids is why we don't webedit
* Reviews
---------
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
* Subversion Board Insertion Audio Notification
Add Subversion flag and SubversionSound to SiliconLawProviderComponent
Add new Method (OnSubversionInserted)
to SiliconLawSystem to handle a Subversive
SiliconLawProviderComponent and play it's SubversionSound
Add Check for Subversive law provider to OnUpdaterInsert that
calls OnSubversionInserted if the SiliconLawProviderComponent is
Subversive
* Fix subversion Sound
- Change out Weh sound used to test that subversion sounds can be
changed by prototype for a a not yet present Antimov subversion sound
* Make it not just subversive
- Remove OnSubversionInserted and move the MindPlaySound in the
OnUpdaterInsert so long as LawUploadSound exists
- Modify SubversionSound into LawUploadSound
- Remove the Subversion flag
- Just use emagged_borg.ogg until the better one is made
* Remove errant spaces and a errant namespace
* CR Fixes - Add generic Lawboard insert cue
- Combine the If statements per /pull/32625#discussion_r1786926400
inside OnUpdaterInsert
- Remove the ViewVariables(VVAccess.ReadWrite) per
pull/32625#discussion_r1786924433
- Add Cryo_warning.ogg from TGStation, the sound utilized for Law Upload
cue, Attribution.
* CR Add a placeholder Antimov notification sound
- Add a new sound kitbashed from the cryo_sound used for uploading
and the emagged noise
* Add self referential source attribution
- also fix an errant space
* Add more bespoke Sound by ps3moira + attributions
* Several small sfx tweaks
* fix small yml oopsie
* Redo the basin code to use events
* now uses an event for when the transfer is successful, not when there's just an attempt
* forgot to remove this
* Update Content.Server/Botany/Components/PlantHolderComponent.cs
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
* Update Content.Server/Botany/Systems/PlantHolderSystem.cs
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
* adds sound variations to shoes as well
* variations on honkbots and the H.O.N.K mech
* Update Content.Server/Botany/Systems/PlantHolderSystem.cs
* Update Content.Server/Botany/Systems/PlantHolderSystem.cs
* fix compile issue
* oops forgot to delete this
* cleanup
---------
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Format job requirements as hours and minutes
* Use TimeSpan.ToString for playtime instead of custom method
* wehflicts
---------
Co-authored-by: jmcb <joelsgp@protonmail.com>
What happened was that the new tech anomaly randomly triggered a signal sink on the portable generator, which is currently broken and throws an error if the that sink is activated.
The resolve needed logMissing = false because it does not expect the ActiveGeneratorRevvingComponent to exist.
* Make APC UI work correctly with multiple users
* Check access only on client, when constructing UI
* Do TODO (Thanks, Robust 236.1)
---------
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
* Mind Role Entities wip
* headrev count fix
* silicon stuff, cleanup
* exclusive antag config, cleanup
* jobroleadd overwerite
* logging stuff
* MindHasRole cleanup, admin log stuff
* last second cleanup
* ocd
* minor cleanup
* remove createdTime datafield
* now actually using the event replacement I made for role time tracking
* weh
* First commit
* I forgot silly me
* Actually added comments
* spellin
* fixes
* more blacklists
* Minor fixes
* Speech Verb also changes now
* Simple name stuff
* Other fixes
* remove one line of whitespace
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Fix borg hands showing up in stripping menu
Borgs can't drop their items anyways, and the amount of hands borgs have causes the UI to just bug out.
* Add more checks
* uncomment and update guidebook
* update loot pool to use entity table and dont hardcode bluespace
* add sacraficing to altars
* :trollface:
* :trollface:
* :trollface:
* 2 lines of sec
* rename files
* replace gamer loot with fake wizard outfit or a normality crystal
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* when tryInsertBlueprint is called it now also calls UpdateMaterialWhitelist on the ent so that it can accept new materials if needed.
* Changed the previous commit to now just have sharedMaterialStorageSystem subscribe to TechnologyDatabaseModifiedEvent which will call UpdateMaterialWhitelist.
* Empty-Commit
* Exec.System now uses IdentityManagement; added the where necessary
* Included attacker in check for Identity
---------
Co-authored-by: Celene <maurice_riepert94@web.de>
* Fix multiple door issues
- Doors should no longer cycle open-and-closed anymore (at least nowhere near as easily).
- Door sprites shouldn't flicker as much (needs my engine PRs to remove all but one of them).
* woops conversion
* 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
* Boom! Emergency access!
* Emergency access sound
* locale
* Updated sounds
* bleh
* Door electrify base
* feat: popups on attempt to activate AI action when wires cut
* refactor: use SharedApcPowerReceiverComponent to check if AI can interact with door
* refactor: added icon and sound for door overcharge
* meta.json should use tabs not spaces
* refactor: extracted sounds for airlock overcharge to static field in system
* refactor: cleanup, ScarKy0 mentions for resources
* refactor: removed unused textures
* feat: now notification is displayed when AI attempting to interact with door which have wire cut
* StationAiWhitelistComponent is properly gating BUI OnMessageAttempt, SharedPowerReceiverSystem.IsPowered is now used to check if device powered
* refactor: use PlayLocal to play electrify sound only for AI player
* refactor: SetBoltsDown now uses TrySetBoltDown, checks for power.
* bolts now check for power using SharedPowerReceiverSystem
* electrify localization and louder electrify sounds
* extracted ShowDeviceNotRespondingPopup, reverted airlocks not opening/closing when ai wire was cut
* refactor: cleanup
* New sprites and fixes
* Copyright
* even more sprite changes
* refactore: cleanup, rename overcharge => electrify
---------
Co-authored-by: ScarKy0 <scarky0@onet.eu>
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Fix airlock autoclose mispredict
It was hard to see this ingame due to animations masking it. The only way you'd notice currently is the light mispredicting.
* cudin
* fix contraband never getting added to vend inventory
* Revert "fix contraband never getting added to vend inventory"
This reverts commit e7fb3a60c3cb6fcbf41d7f015f13dbc7b1c1901d.
* readd setter method to system
* fix again without reparenting
* initial commit
* adds astronav cartridge to QM locker
* changes requested in review
* fix merge conflicts
* fixes the statuscontrol disappearing if you eject the cartridge but still have it installed
* fix notificationsenabled on salv pda proto
* fixes lingering statuscontrol on eject while held
---------
Co-authored-by: archrbx <punk.gear5260@fastmail.com>
* Don't add newlines (fixes#32357)
* Improve UI around max paper length (Fixes#32344)
* Display a "fill progress" indicator so users know how close they are to filling it
* Don't allow users to save a paper which went over the limit, to avoid them losing data they want to keep.
---------
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
* builds
* doesn't crash
* seems to work
* distance cap was dumb
* Requested changes
* can't find any issues from making the changes
* Check for anchor and minor optimisation
* Removed unnecessary usings
* Code less verbose and cleanup
* Move placeable check to PlaceableSurfaceSystem
This check stops entities from being inserted into a storage entity
when it has a PlaceableSurfaceComponent.
The entity is instead placed on top of the entity like a table.
* Move SetPlaceable to PlaceableSurfaceSystem
* Update to transform system and consolidate code
* Fix interaction with storage that has a placeable component
* deadlock
---------
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
* 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>
* Add mapping editor (#757)
* Remove mapping actions, never again
* Cleanup actions system
* Jarvis, remove all references to CM14
* Fix InventoryUIController crashing when an InventoryGui is not found
* Rename mapping1 to mapping
* Clean up context calls
* Add doc comments
* Add delegate for hiding decals in the mapping screen
* Jarvis mission failed
* a
* Add test
* Fix not flushing save stream in mapping manager
* change
* Fix verbs
* fixes
* localise
---------
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
* Localization of steal targets
* Correction of localization of theft objects
* The second correction of the localization of theft targets
* Update steal-target-groups.ftl
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
* Revision of the localization method
* Choosing a simple option for localization
* Fix TechnologyDisk name
* Corrections based on feedback received
* correction of declension
---------
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Instead of each mutation being a flag that gets checked at some unique point in BotanySystem somewhere, they're now EntityEffects that get applied when the mutation occurs and when produce is harvested. One new list was added to SeedData so that multiple other fields could be removed.
All the non-stat-change mutations that have been rolled are added to the Mutations list, and get applied to the plant when the mutation occurs or when a seed with the mutation is planted. Produce get mutations applied at harvest if they apply to the produce, and carry all of the plant's mutations over as a seed. This gets rid of the one-off checks for things like Slippery, Bioluminescent, Sentient, etc.
The base odds of a mutation applying should be equal to the odds of the original mutation check. It pretended to have 1 bit flip (on averge) per mutation power, and odds of each mutation was the odds of one of its bit being flipped (1 /275 * bits). The 'thermometer code' applied for numbers will be replaced with simple random rolls, as both average out to the middle value. The new checks are much easier to understand and don't obfuscate the actual changes of something happening behind 3 layers of math. The biggest player-facing change is that Potency will be able to get over 65 significantly more often than it did in the previous system, but it will be just as common to get low values as high ones.
Mutation definitions have been moved to a .yml file. These include the odds per tick per mutagen strength of that mutation applying that tick, the effect applied, if it applies to the plant and/or its produce. This makes mutations simpler to add and edit.
This PR is limited specifically to the mutation logic. Improving other aspects of the system will be done in other PRs per the design document. Mutations was chosen first because its got the largest amount of one-off checks scattered all over that could be consolidated. Once this is merged, mutations could be contributed to the codebase with minimal extra work for later botany refactor PRs.
* Localize RenameCommand and delegate most of the process to MetaDataSystem.SetEntityName()
* Make renaming rely on the EntityRenamedEvent. Fix issue where renaming would keep old Examine text
Requires engine change
* Fix localisation strings
* Make PDA search be based on a renamed entity's Uid instead of its old name
To do this the pda component now has an PdaOwner field which gets
assigned when it is given as a loadout to a player
* Fix bad merge???
huh
* Use AllEntityQuery
Joints were created with pivots at object origin, causing unintuitive behaviour when an object was not centered on the origin. Now puts the pivots at the COM.
Joint limits were set based on fractions of the union of the AABB of objects, which did not make geometric sense. Now uses the pivot length with an additional [arbitrary] length.
Joints were created with a very low spring stiffness, which had a negligible effect most of the time but caused very unintuitive behaviour when the pulled object had a low mass (#28028) - disable the spring limit, and just use the hard min/max limits.
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
* doesn't apply traits for borg or ai
* add some comment and summaries
* weh
weh
* well ok
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
---------
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
* 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
* Add reagent whitelist to Injector component and system
* Apply suggested Changes
* Remove LINQ function for performance
* Update Content.Server/Chemistry/EntitySystems/InjectorSystem.cs
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
---------
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
* Extend shuttle dock time if the shuttle doesn't dock at evac.
If the shuttle can't dock at evac for *some reason*, it will instead try to dock at another port on the station. And if that fails it goes somewhere random on the station.
Because of the chaos and confusion caused by this, many people will frequently not get to the shuttle in time under these circumstances. This sucks for everybody.
To alleviate this, the shuttle launch timer will now be extended if the station doesn't dock at its ideal spot. The default values (controlled via CVar) are 1.667x and 2x respectively for "wrong dock" and "no dock at all" scenarios.
The code around here was a mess, so I fixed that too. "CallEmergencyShuttle" has been renamed to "DockEmergencyShuttle", the overload that did the actual docking has been renamed to DockSingleEmergencyShuttle. Code has been split into separate dock -> announce methods so we can calculate shuttle delay in between the case of multiple stations.
Also made the "shuttle couldn't find a dock" text announce the time until it launches and fix the shuttle timers not triggering for it.
* Minor review
---------
* Returned functionality to industrial reagent grinders without un-nerfing recyclers
* Limited industrial reagent grinder to only extractable solutions
* Remove always false checks (#31708)
* Remove calls to FormattedMessage obsolete methods (#31706)
* Remove FormattedMessage obsolete methods
* Oops
* remove misinformation from tip 26 (#31705)
tip 26
* Automatic changelog update
* Replace obsolete code in AnomalySystem.Generator.cs (#31718)
* replace obsolete
* weh
* Added cursor indicator for space dragon fire breath ability (#31725)
space dragon breath cursor indicator
Co-authored-by: YourUsername <you@example.com>
* Automatic changelog update
* small yml cleanup (#31720)
* Updates descriptions of station specific jobs. (#31713)
done
* Remove unused IoC dependency references. (#31704)
Remove unused IoC dependencies
* cleanup filing cabinets yml (#31211)
* partmedia ahh kommit
* ahh
* everything should be fine now
* f
* now should be good
* Update Resources/Prototypes/Entities/Structures/Storage/filing_cabinets.yml
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* fix suffix
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Move IgnitionEvent to shared (#30985)
* Cleanup railings yml (#31618)
* Cleanup railings
* fix line
* real fix
* Roundstart Grappling Gun (#31737)
Roundstart grappling hook
* Automatic changelog update
* Added in-hand sprite for Smile the Slime (#31731)
added smile the slime in-hand texture
Co-authored-by: YourUsername <you@example.com>
* Lite Magnet Rebalancing (#31726)
magnet rebalancing ish
* unnerf fishops
* Devmap crew monitor fix (#31677)
* Automatic changelog update
* Add ERT time stats (#31629)
* add jobs for ghost roles
* add job to ToggleableGhostRole
* typo
---------
Co-authored-by: Mota <belochuc@gmail.com>
* Automatic changelog update
* Fix CS0642 - Possible mistaken empty statement (#31740)
* Throw the book at em! The space law book now does 1 blunt projectile damage (#31387)
* you can now throw the space law book for 1 blunt damage
* made book damage a feature of all books
* Replace instances of SolutionContainerSystem with SharedSolutionContainerSystem (#30084)
* Replace instances of SolutionContainerSystem with SharedSolutionContainerSystem
* guap
* More fixes
* Wait you can do that?
---------
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
* Add Donk Co. microwave board to Combat Bakery Kit (#31239)
* Add special microwave board to Combat Bakery Kit
* use event instead of trycomp
* make the board sus
* add instructions note
* embarrassing typo
* Add functionality to Donk Co. microwave instead
* update note
* Automatic changelog update
* Actions bar dynamic resizing (#31759)
* action bar dynamic resizing
* action bar dynamic resizing for separated style
* decreased indent for separated style
---------
Co-authored-by: YourUsername <you@example.com>
* Automatic changelog update
* Fix warnings related to non-exhaustive pattern matching. (#31763)
old man shakes fist at modern syntax
* ats update (#31766)
* ats update
* fix pipenet
* Ninja throwing star ability fix (#31684)
fixed ninja star not spawning
Co-authored-by: YourUsername <you@example.com>
* Automatic changelog update
* Remove duplicate using from FoodSystem (#31769)
* vox voices revamp (#31679)
vox voices v2
* fixed broken pipe sprites (#31773)
* Return Long2 and Long3 hairstyles (#30963)
* Sprites
* Prototype_&_Locale
* sorted_in_alphabetical_order
* Automatic changelog update
* Added many old ion lawsets for borgs and AI. (#31664)
* Added the Commandments, Paladin, LetLive, Station Efficiency, Robocop, Overlord, Dungeon Master, Artist, Antimov and Nutimov lawsets/
* Wording
* Anti-Antimov
* Fixed fun
* Add Snails (#30765)
* add snails
* scuffix
* migrate
* mo-grate
* oopsied the ftls
* Revert "oopsied the ftls"
This reverts commit 0d3c6c17f31ec904679d6a48799cea71e77c1f99.
* the curse of staging the wrong file, resolved.
* Snoth
* fix my dumbs
* reviews 1
* anti space technology
* salt hurty
* spelling
* Its a slotherhouse out here
* sequencing
* cooked snail
* volfix
* speed reversal
* Automatic changelog update
* Remove testbed command (#31793)
* feat: now when research is unlocked in console, approver of reasearch is radio-ed too (#31170)
* feat: now when research is unlocked in console, approver of reasearch is radio-ed too
* refactor: now most of events that require actor name to be radio-ed or logged use TryGetIdentityShortInfoEvent which is subscibed by id-card system and borg system (to work for both carbon and synthetic life-forms)
* refactor: moved TryGetIdentityShortInfoEvent on id card system to shared, fixed cargo cent-com-originated orders
* remove unused check
* refactor: decoupled systems from IdCardSystem (those that are not dependent on it anymore)
* refactor: removed unuseed usings
* feat: emagged cargo/research consoles wont radio messages on buy/research confirm anymore
---------
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
* Automatic changelog update
* New chemical based artifact nodes (#30873)
* Initial pH nodes, and description changes to indicate pH
* Psychoactive and stimulant nodes, Medical foundation, bioreactive hint
* Added medical reagents to medical node. Added norepinephric acid to acidic and made up a pH
* Added pyrotechnic chem node, and corresponding hint
* spelled psychedelic correctly
* Fixed capitalisation skill issue
* fixed indentation skill issue
* fixed a further indentation skill issue
* Removed extraneous whitespace
* Replaced bioreactive with theraputic and psychoactive. Also fixed typo skill issue.
* removed unnecessary comment
* Replaced heartbreaker with THC for psychadelic
* removed artifexium from acidic
* added tran acid to acidic
* added more medical chems
* removed pH values
* removed all but medical
* Automatic changelog update
* Add Red Neck Gaiter To Secdrobe (#30106)
* Red Neck Gaiter Added to SecDrobe
* Removes Gaiter From TheaterDrobe
* Automatic changelog update
* Fixed typos (#31811)
* Automatic changelog update
* Station AI has their name displayed in announcements now. (#31802)
* Station AI has their name displayed in announcements now.
* I'm so sorry
* Corrections
* part 2
* part 3 :|
* part 4
* Whitespace
* Fixing whitespace part 1
* No more whitespace
* PLEASE NO MORE WHITESPACE
* Automatic changelog update
* Add disabled station anchors version (#31794)
* Add disabled station anchors versions
* remove this
* add structural damage taken to a lot of prototypes (#30790)
* fix
* add structural damage taken to a lot of other things
* do requested changes
* how did this happen
* Automatic changelog update
* No Mr.Snail, I expect you to die! (fix sprite) (#31834)
* No Mr.Snail, I expect you to die!
* emoting
* Allow some mobs to walk slowly (#31360)
* Allow mice to walk slowly
* add more
* Automatic changelog update
* Delete nonsense solar assembly construction through the Construction window (#31425)
* Delete construction for solar assembly, it's the way to do it
* Fix description of solar tracker electronics
* Improvements to hand labeler UI (#31833)
Give line edit focus when window is opened
No longer require pressing enter to set the text
Give feedback when user hits the maximum label length
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
* make tesla brighter (#31357)
* make tesla brighter
* radius to 10
* Automatic changelog update
* CorrectContraband levels on each type of magboots (#30960)
* Added a ClothingShoesBootsMagBase, to allow the other versions of the magboots to have their own contraband settings
* Changed Science Boots to not be contraband
* Made ClothingShoesBootsMagBase abstract
* Removed Engineering Contraband from base magboots. Now only the CE's Advanced Magboots are contraband (Grand Theft Contraband). Blood Reds are Syndie Contraband.
* Automatic changelog update
* Morgue system refactor remove unused VVs and into Entity (#31835)
* Remove unused VVs params and usings
from entityUid, MorgueComponent into Entity<MorgueComponent> ent
* remove unnecesary VVs cuz datafields add em
* Make midround zombie outbreaks much rarer (#30266)
* Remove midround zombies
* super rare, like, 1/651 chance every few minutes.
* weight to 1
---------
Co-authored-by: Ubaser <134914314+UbaserB@users.noreply.github.com>
* Automatic changelog update
* Teleporting while pulling crash fix (#31787)
teleporting while pulling crash fix
Co-authored-by: YourUsername <you@example.com>
* Automatic changelog update
* quietify stealthbox (#30741)
* Automatic changelog update
* Atmospheric alerts computer (#25938)
* Atmospheric alerts computer
* Moved components, restricted access to them
* Minor tweaks
* The screen will now turn off when the computer is not powered
* Bug fix
* Adjusted label
* Updated to latest master version
* Automatic changelog update
* Day 0 bug fix for atmos alerts computer (#31858)
Initial commit
* Basically every electronic device can now be used by the AI. (#31730)
* Basically every electronic device can now be used by the AI.
* Removed stuff that didnt make sense
* oops
* Removed access from mailing and disposal units.
* Added AI wires to a couple machines.
* cool epic stuff
* Automatic changelog update
* Fix a typo in the 10 commandments (#31856)
* feat: #26107 uplink discounts for traitors (no nukies for now) (#26297)
* feat: #26107 uplink discounts for traitors and nukies
* refactor: #26107 extracted discount label from price of StoreListingControl
* refactor: minor renaming
* refactor: parametrized adding discounts to uplink store
* fix: #26107 prevent exception on empty discountOptions
* feat: uplink now have 'Discounted' category which contains all discounted items on this session.
* after merge fixups
* rename discount categories according to common sense
* refactor: DiscountOptions is now optional (nullable) on ListingData
* add nullability check ignore for already checked listingData.DiscountOptions
* fix after merge store menu ui
* remove unused using
* final fix after merge conflicts
* [refactor]: #26107 fix variables naming in UplinkSystem
* fix: #26107 fix after merge
* refactor: #26107 now supports discountDownUntil on ListingItem, instead of % of discount
* feat: #26107 support multiple currency discount in store on side of discount message label
* refactor: #26107 extracted discounts initialization to separate system. StoreDiscountData are spread as array and not list now
* refactor: #26107 move more code from storesystem to StoreDiscountComponent
* refactor: #26107 separated StoreSystem and StoreDiscountSystem using events
* fix: #26107 placed not-nullable variable initialization in ListingData for tests
* refactor: #26107 minor renaming, xml-docs
* fix: #26107 changed most of discounts to be down to half price for balance purposes
* ids used in with discounts are now ProtoIds, dicountCategories are now prototypes, code with weights simplified
* decoupled storesystem and store discount system
* xml-docs
* refactor: #26107 xml-doc for StoreDiscountSystem
* is now a thing (tmp)
* fix: compilation errors + StoreDiscountData.DiscountCategoryId
* refactor: rename ListingDataWithCostModifiers, fix all cost related code, enpittyfy performance, uglify uplink_catalog
* refactor: removed unused code, more StoreDiscountSystem docs, simplify code
* refactor: moved discount category logic to respective system, now creating ListingData c-tor clones all mutable fields as expected
* refactor: rename back (its not prototype)
* refactor: move ListingItemsInitializingEvent to file with handling logic
* refactor: comments for StoreBuyFinishedEvent handling, more logging
* refactor: moved StoreInitializedEvent, xml-doc
* refactor: simplify StoreDiscountSystem code (reduce nesting) + xml-doc
* refactor: restore old listing data cost field name
* refactor: fix linter in uplink_catalog.yml
* refactor: xml-doc for ListingDataWithCostModifiers
* refactor: limit usage of ListingData in favour of ListingDataWithCostModifiers
* refactor: purged linq, removed custom datafield names, minor cleanup
* refactor: removed double-allocation on getting available listings
* refactor: StoreSystem.OnBuyRequest now uses component.FullListingsCatalog as reference point (as it was in original code)
* fix: minor discount categories on uplink items changes following design overview
* refactor: StoreBuyListingMessage now uses protoId and not whole object
* refactor: store refund and discount integration test, RefreshAllListings now translates previous cost modifiers to refreshed list, if state previous to refresh had any listing items
---------
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
* Automatic changelog update
* Fixed AI Actions (#31823)
* Updated sprites for AI HUD
* Epic test fail
* Merged AGhost actions and AI actions together again.
* Seperate comms and bugfix. Fixed broadcast.
* Automatic changelog update
* add wireless net to evac shuttles
* Automatic changelog update
* A kit to help new botanists discover chemistry (#31738)
* Add a kit for botanists to do some limited chemistry to the NutriMax. Intended to help new botanists learn in-game about chemistry.
* remove exclamation marks from names
* naming fix
* Rejected trademark application for 'Farmers Helper'.
---------
Co-authored-by: PraxisMapper <praxismapper@gmail.com>
* Automatic changelog update
* Board for the AI upload console (#31867)
board
* Automatic changelog update
* Fix typo in agri-chem manual (#31869)
* Fix typo in agri-chem manual
* Unremove my added newline
* Cleanup books.yml (#31838)
* Cleanup books.yml
* yeah
* shame
* Vox sign/N2 locker update (#31845)
* Vox sign/N2 locker update
The "vox area" sign and N2 locker sprite were both taken from /vg/station. These sprites have bad racist connotations as discussed in https://github.com/space-wizards/space-station-14/issues/31840, and do not fit our server culture.
The new N2 locker is not a taped on piece of trash. It now also has a blue stripe to mimic the regular O2 locker and make it more distinct from fire safety closets.
The new "vox area" sign sprite follows the same style as other "area indicator" signs used throughout the blue and isn't an explicit warning sign anymore. It still has "No O2" on it to fill that role though.
* emogarbage adjustments
---------
Co-authored-by: EmoGarbage404 <retron404@gmail.com>
* Automatic changelog update
* Pizza boxes now have a chance to contain cotton pizza (#31883)
Pizza box now contains cotton pizza
Co-authored-by: Ekkosangen <9094006+XyyxShard@users.noreply.github.com>
* Automatic changelog update
* Tech Anomaly (#31764)
* A
* B
* C
* D
* Update TechAnomalySystem.cs
* idle anim
* Update meta.json
* new animation
* Automatic changelog update
* Fixed throngler name inconsistencies (#31889)
changed throngler names
* I have spent more time today cleaning up garbage than coding new shit, and I am mad (#31246)
* Fix logging of GetWebhook errors
Yeah let's just not log the error only stack trace.
* I have spent more time today cleaning up garbage than coding new shit, and I am mad
Cleans up the custom vote Discord webhook code because I *happened* to lay my eyes on how completely terrible it was and immediately found an obvious bug with it.
Also did basic QA because jesus christ: it more clearly reports pending votes, properly indicates cancelled votes, improves footer formatting, better error logging, all the usual shit.
Requires https://github.com/space-wizards/RobustToolbox/pull/5375 to avoid test failures
* Mineral Scanner (#31390)
* Mineral Scanner
* doink
* review
* sunday funday
* review and fix bugs i think?
* Update MiningOverlay.cs
* Automatic changelog update
* Fix ai upload console itemslot whitelist (#31900)
* Fix ai upload console itemslot whitelist
* aw man
* Automatic changelog update
* improved vox laugh (#31798)
vox laugh not underwater
* fix pump shotgun wielded sprite (#31885)
* fix shotgun sprite
* fix take 2
* fix: Snail event wasnt tabled (#31884)
pest events reorganized and snails spawn
* Automatic changelog update
* Force stop pulling when fall asleep (#31893)
* break pull at sleep
* TryStopPull without user
---------
Co-authored-by: YourUsername <you@example.com>
* Automatic changelog update
* Energy Shotgun Change 2 - Narrow Nerf + instances from NoSpawn --> categories: [ HideSpawnMenu ] + self recharge removed + 1 more shot + normal recharge speed (#31235)
* narrow nerf
* last instance of nospawn gone
* removes self recharge
* 8 shots, less recharge time
* Automatic changelog update
* Add justice helm (#31905)
* Add justice helm
* backslash moment
* spinny light
* remove power cell from recipe
* Automatic changelog update
* Quiver Crafting Recipe (#27198)
* Update quiver.yml
* Create quiver.yml
* Update clothing.yml
* Update pneumatic_cannon.yml
* Update pneumatic_cannon.yml
* Update pneumatic_cannon.yml
* Update pneumatic_cannon.yml
* Delete RDs binary encryption key (#31909)
Deleting binary key
Silicon supremacy!
* undelete rd key
* Automatic changelog update
* split temperature protection into heating and cooling (#30662)
* split temperature protection into heating and cooling
* fugg
* weh
* update TemperatureProtection for stuff
* Automatic changelog update
* makes the maple wing marking have a primary and a secondary color (#31691)
bogos binted
* Automatic changelog update
* Remake bottles and syringes names to use labels (#29956)
* Remake bottles and syringes names to use labels
* vial
* fix and add stuff
* Automatic changelog update
* guide on agrichem and botanicals guidebook update (#31896)
* Automatic changelog update
* Automatic changelog update
* Lost evac pod thing tiny fan (#31915)
* disaster evacpod tinyfan
* real
* :trollface:
* untroll
* Ghostrole rule updates (#29249)
* First batch of ghostrole rule updates
* Second pass
* Re-word free agent
* Apply review comments
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
* You heard it here first folks
God rules are weird to write.
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
* Honkbot -> Free Agent
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
* Mimebot -> Free Agent
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
* Jonkbot -> Free Agent
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
* Softer blue
---------
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
* :trollface:
* :trollface:
* :trollface:
* pro
---------
Co-authored-by: Winkarst <74284083+Winkarst-cpu@users.noreply.github.com>
Co-authored-by: Ilya246 <57039557+Ilya246@users.noreply.github.com>
Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com>
Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com>
Co-authored-by: godisdeadLOL <169250097+godisdeadLOL@users.noreply.github.com>
Co-authored-by: YourUsername <you@example.com>
Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
Co-authored-by: Boaz1111 <149967078+Boaz1111@users.noreply.github.com>
Co-authored-by: Mervill <mervills.email@gmail.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: DrSmugleaf <10968691+DrSmugleaf@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: poeMota <142114334+poeMota@users.noreply.github.com>
Co-authored-by: Mota <belochuc@gmail.com>
Co-authored-by: Moomoobeef <62638182+Moomoobeef@users.noreply.github.com>
Co-authored-by: Cojoke <83733158+Cojoke-dot@users.noreply.github.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
Co-authored-by: themias <89101928+themias@users.noreply.github.com>
Co-authored-by: Emisse <99158783+Emisse@users.noreply.github.com>
Co-authored-by: Арт <123451459+JustArt1m@users.noreply.github.com>
Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>
Co-authored-by: IProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Fildrance <fildrance@gmail.com>
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
Co-authored-by: Lye <128915833+Lyroth001@users.noreply.github.com>
Co-authored-by: DieselMohawk <gavin.drinka@gmail.com>
Co-authored-by: Hreno <hrenor@gmail.com>
Co-authored-by: eoineoineoin <github@eoinrul.es>
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
Co-authored-by: qwerltaz <69696513+qwerltaz@users.noreply.github.com>
Co-authored-by: Ty Ashley <42426760+TyAshley@users.noreply.github.com>
Co-authored-by: Token <esil.bektay@yandex.com>
Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com>
Co-authored-by: Ubaser <134914314+UbaserB@users.noreply.github.com>
Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>
Co-authored-by: Psychpsyo <60073468+Psychpsyo@users.noreply.github.com>
Co-authored-by: drakewill-CRL <46307022+drakewill-CRL@users.noreply.github.com>
Co-authored-by: PraxisMapper <praxismapper@gmail.com>
Co-authored-by: Nim <128169402+Nimfar11@users.noreply.github.com>
Co-authored-by: Perry Fraser <perryprog@users.noreply.github.com>
Co-authored-by: EmoGarbage404 <retron404@gmail.com>
Co-authored-by: Ekkosangen <9094006+Ekkosangen@users.noreply.github.com>
Co-authored-by: Ekkosangen <9094006+XyyxShard@users.noreply.github.com>
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: Chubbicous <100180479+Chubbicous@users.noreply.github.com>
Co-authored-by: Ps3Moira <113228053+ps3moira@users.noreply.github.com>
Co-authored-by: FungiFellow <151778459+FungiFellow@users.noreply.github.com>
Co-authored-by: Futuristic-OK <141568243+Futuristic-OK@users.noreply.github.com>
Co-authored-by: Ian <ignaz.k@live.de>
Co-authored-by: TsjipTsjip <19798667+TsjipTsjip@users.noreply.github.com>
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
* add: basic rodent species
* add: rodentia base sprites
* add: basic rodent hand/foot markings
* add: ears i got em
* add: tail markings
* add: big ears
by request
* tweak: default markings, coloration
everything uses skin color by default when added except for these new "default" markings which use tattoo
* add: the rest of the basic body part markings
* add: snout textures
* add: pattern markings
* add: cheek detail
* add: sex variations for chest marking
* add: give rodentia the generic markings
* add: rodentia names
* add: damage, voice, mass, emotes to rodentia
* add: rummager ability for rodentia
* remove: temperature protection from rodentia
* add: some makeup markings for rodentia
* add: include rodentia in misc pools
* add: rodentia guidebook entries
* tweak: adjust rodentia marking points
* add: rodentia pie sprite
* tweak desc
* tweak: change rodentia name scheme
* tweak: adjust damage modifiers for rodentia
* add: rodentia always trigger mouse traps
* tweak: rodentia have unique speech verbs
* tweak: change rodentia inventory shape
* tweak: rodentia take more phys dmg overall
* tweak: made rodentia hungry
* add: mouth storage component on rodents
* add: server mouthstoragesystem
* add: force-dump mouth storage on trip
hmm the networking on this is a little ehh. but watever
* add: rodentia drop mouth items on damage
* add: blocked interactions if mouth is full
* fix: corrected accent oops
* tweak: tense
* fuck this import in particular
* tweak: spit damage threshold
* fix: no redundant open actions
* refactor: move this action into the types file
* add: rodentia get ability to hide under tables etc.
* tweak: change rodentia action icons
* refactor: im renaming this component and system lol
* refactor: rename this event too
i was gonna refactor the whole system to be more like climbing, but the climbing system is convoluted so im just gonna do this and put it aside
* tweak: fix the mouth storage icon
the number covers it
* tweak: check if colliding with table before un-sneaking
* fix: crawl action cooldown and popup text
* add: slowdown to sneak ability
* refactor: fix this namespace
* tweak: rummageable objects now use a cooldown
* fix: newlines
* Apply suggestions from code review
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: portfiend <109661617+portfiend@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: portfiend <109661617+portfiend@users.noreply.github.com>
* fix: collision group variavbles
* add: proper "full body" sprite
* add: move blaze to head folder, "round face" marking
* add: whisker markings
* tweal: rodentia are 50% -> 33% hungrier
1.5x seemed excessive
* refactor(mouthStorage): move OnExamined from server to shared
* refactor(mousetrap): use HasComp
* refactor(mouthStorage): use a public api instead of event here
* refactor(yml): KILL REPETITION
* refactor(parts/rodentia): KILL REPETITION
---------
Signed-off-by: portfiend <109661617+portfiend@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
* Work on abstracting out chargeup functionality/ui from grav gen
* Work on station anchor
* Finish implementing station anchors
* uhh yeah
* ok.
* fix tests
* whoops
* Get the last extraneous yaml fail
* PJB review
* beast mode... ACTIVATE!
---------
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: EmoGarbage404 <retron404@gmail.com>
* Re-add improved random sentience event
* Make randomly sentient PDA more likely
* Make vending machine sentience less likely
* Make requested changes
* Make randomly sentient captain's gear more likely
* Sentient captain sabre has pirate accent
* Tweak new random sentient object a bit more
* Sentient PDA improvements
* Apply recommended fixes
* Add requested changes
* Fix merge conflict
* add inheritance to lathe recipes and make result an override
* add GetResult method to lathe system
* make other parts of the code use GetResult
* clean up the stock parts yml
* remove unused apu boards from dynamic recipes
* make inverse dictionary public so test doesnt have to copy paste
* revert result override stuff
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* Station AI overlay
* implement
* Bunch of ports
* Fix a heap of bugs and basic scouting
* helldivers
* Shuffle interactions a bit
* navmap stuff
* Revert "navmap stuff"
This reverts commit d1f89dd4be83233e22cf5dd062b2581f3c6da062.
* AI wires implemented
* Fix examines
* Optimise the overlay significantly
* Back to old static
* BUI radial working
* lots of work
* Saving work
* thanks fork
* alright
* pc
* AI upload console
* AI upload
* stuff
* Fix copy-paste shitcode
* AI actions
* navmap work
* Fixes
* first impressions
* a
* reh
* Revert "navmap work"
This reverts commit 6f63fea6e9245e189f368f97be3e32e9b210580e.
* OD
* radar
* weh
* Fix examines
* scoop mine eyes
* fixes
* reh
* Optimise
* Final round of optimisations
* Fixes
* fixes
* Beginnings of making the breadmemes jobs easier
* stuff
* stuff pt. 2
* Stuff pt.3
* Stuff I forgot last time
* Basic whitelist
Only people that are added to the whitelist with the addwhitelist command will be able to join. I call this the "legacy" whitelist
* Remove always deny condition in favor of just breaking if playtime check fails
* Change default whitelist
Default whitelist is now the "legacy" whitelist.
* localization
* Admin check
* minor spelling change
* Fix build
* Whitelist message
* Fix vars not being datafield and spelling mistakes
* Minor spelling mistake
* Change config for salamander
* Reviews and stuff
* Add summaries
* Fix whitelists
* Forgot to add a datafield
* Fixing stuff I guess
* Reuse admin remarks to reduce load when connecting.
* Update log messages to be verbose instead of debug
* Reviews
* whoops
* Explain a bit more how whitelist checking works
* Apply CE's review
* Append Membership to Blacklist and Whitelist conditions
* Fix review comments
* Uncapitalize playerConnectionWhitelist, add to ignored client prototypes
* Make note count field work
* Fix cvar for thingy
---------
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
* make JobPrototype.Whitelisted respect blanket whitelist, make jobs use it
* add jobwhitelists command and ui
* add job whitelist button to player panel
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* Action stuff
- Cleanup some event stuff
- Avoid dirtying entity unnecessarily
- Add ActionGrant as an easy way to apply / remove actions via compregistry.
* Fix merge
* ItemToggle + slots stuff
- Add component for itemslot locks to match LockComponent (surprised this didn't exist).
- Add thing for pointlight to match itemtoggle. In future should be used for PDAs and stuff but need to fix some other stuff first.
* Also this
* grill
* Power stuff
- Add shared IsPowered
- Add shared ResolveApc
- Move PowerChangedEvent to shared for now
- Add SlimPoweredLight that actually functions how you'd expect a PoweredLight to function it id didn't have a bunch of bloat on it.
* big update
* boing
* remove ItemToggle from PowerCellDraw query
* add EntityQuery for resolves, make them all optional
* move integration to ToggleCellDraw
* add ToggleCellDraw to almost every PowerCellDraw prototype
* :trollface:
* :trollface:
* :trollface:
* let it disable on mapinit
* set update time on mapinit, make borg power logic consistent now
* :trollface:
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
Applies EntProtoId changes upon insertion / removal from container. Can also be useful for borgs / mechs / vehicles in future but atm I just used it for AI.
* Remove client state from server AirAlarmComponent
Send information for all connected devices, not just the ones for the
current tab, as attempting to limit this breaks multiple users viewing
the same UI.
Fixes#12842
* Send device data as a list, rather than a dictionary
---------
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
* Added codeword highlighting
* Updated to support more codeword roles, color is set serverside
* Review feedback
* Change to a Component-based system using SessionSpecific
* Tidied up CanGetState, set Access restrictions on component
* Clean-up
* Makes the injection ignore brackets, restore some codewords, remove "Taste/Touch" from adjectives
* uncomment grappling gun
* Remove rest of Geras files (#30912)
remove remaining geras stuff
* tweak(AgeRequirement): Make the requiredAge more sensible (#30913)
* chrore(ageRequirement): fix grammar. atleast -> at least (#30914)
* Minor sprite fix to inhand med hardsuits and HoS turtleneck jumpsuit (#30918)
* Fixes inhand hardsuit cross color from https://github.com/space-wizards/space-station-14/issues/26516#issue-2213917971
* Fixed HoS Turtle not covering all butt pixels
---------
Co-authored-by: Zachary Yona <magicalusf@gmail.com>
* Add execution component to all energy sword weapons (#30909)
Co-authored-by: plykiya <plykiya@protonmail.com>
* Automatic changelog update
* chore(grammar): correct some mistakes (#30916)
* Add diamond mining drills, buff regular mining drills (#30814)
* why do I have to change so much just to add drills
* diamon
* Automatic changelog update
* give trash a reusable entity table (#30921)
* Contraband marking & examining (#28688)
* System & loc strings
* pass over syndie contraband
* fixes
* grand theft pass
* contrabandexamine -> contraband
* examine text generation update
* all composition parents necessary
* bring back minor contra so it has a less confusing message
* minor
* weapon pass
* jumpsuit pass
* feet pass
* AUUUUUUUUUGHHHHHHHHHHHHHHHHHH
* head
* AUUUUGH
* ear
* belt
* back
* fix
* bro
* rename for more clarity
* do da review
* add cvar for contraband examine
---------
Co-authored-by: EmoGarbage404 <retron404@gmail.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
* Automatic changelog update
* Automatic changelog update
* Removes variant cube migration (#30934)
add
* First Review Pass Contraband Fixes (#30930)
* First pass contra fix
* bam
* More
* Security crates are now marked as security restricted
* Syndicate raid suit is contra
* damn I forgot gatfruit
* Add conducting gloves to the maintenance loot table (#30904)
* add
* lower weight
* Fix DoDrop to DropNextTo in container cases (#30911)
* Fix DoDrop to DropNextTo in container cases
DoDrop is too heavy to calculation. In any other case we should use alternatives, for example DropNextTo helper method
* codestyle change
* Fix Reagent Fire Stacks (#30766)
* Fix Reagent Fire Stacks
* Comments on code
* little nicer wording?
* Lines 88 and 89, updated 'narsie' and 'ratvar' to 'Nar'Sie' and Ratva… (#30954)
Lines 88 and 89, updated 'narsie' and 'ratvar' to 'Nar'Sie' and Ratvar, per issue #30719.
* Automatic changelog update
* Fix permission check for whitelists in player panel (#30948)
* Automatic changelog update
* Grey mantle in winterdrobe (#29774)
* add the mantle
* fix a few things
* fix merge conflict stuff, remove from winterdrobe and lathe.
* Add mantle to loadouts (20 hour requirement)
* Automatic changelog update
* Sliceable doAfter (#30824)
* init
* wtf git
* Automatic changelog update
* Add capfruit, a gatfruit mutation. (#30850)
* add base
* add fake suffix and flavor fix
* address some reviews
* parent it
* fix test fail
* add FoodSequence support and address small review
* Automatic changelog update
* Fixes the grey mantle (#30971)
add the thing i missed
* Add keybinds for rotating and flipping objects (#30540)
* add keybinds for rotating and flipping objects
* no popup for verbs
* Automatic changelog update
* tweak(Shuttle_honki): Remove DeviceQuantumSpinInverter from honki shuttle. (#30618)
* Make the Borgs Names Appear When they Make an Announcement (#30107)
* Make the Borgs Names Appear When they Make an Announcement
* bwomp
* re-order
* Use Name instead of metadata
* goiup
* Automatic changelog update
* disable contraband examine
* rename our SliceFoodEvent
* Throngler Plushie Sprite (#30969)
Throngonkler Plush sprite
* Fix bug with rotating shelves (#30978)
* Main
* Update shelfs.yml
* Little bug fix
* No weather on concrete tiles (#30952)
* concrete weather
* miss
* development build ghostrole lottery changes (#30980)
debug ghostrole lottery changes
* Automatic changelog update
* Add a saline syringe to the combat medical kit (#29954)
saline
* Automatic changelog update
* fix the admin verbs trying to kill players by filling their lungs with plasma (#30991)
fix the admin tools trying to kill players by filling their lungs with plasma
* Custom Taco & Kebabs - FoodSequence 2 (#30905)
* control layer ordering
* sprite update
* taco!
* taco naming gen
* fix separator naming
* some proto fixes
* default naming separation
* fix taco naming
* rat update
* hamsterburger
* organs taco
* remove from spawners
* fixes
* fix separators and lemons
* Update food-sequence.ftl
* randomization offset
* fix
* kebabs refactor
* fix
* skewer weapon
* Update food_single.yml
* Update migration.yml
* suppermatter
* hamlet centered
* hamsburger
* Update dead-0.png
* 20 -> 4 burger layers max
* Update burger.yml
* canReact: false
* capfruit update
* Update burger.yml
* Update burger.yml
* Update produce.yml
* some fixes
* Update Resources/Textures/Objects/Consumable/Food/taco.rsi/meta.json
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Update Content.Shared/Nutrition/Components/FoodSequenceStartPointComponent.cs
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Update Content.Shared/Nutrition/Components/FoodSequenceStartPointComponent.cs
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* chicken
* Update food-sequence.ftl
* documentation
* fixes
* Update meat.yml
* Update meat.yml
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Automatic changelog update
* Fix popups not working properly with an eye offset (#30990)
* Adds a random smokable spawner (#30870)
* Textures to make lamps mappable to East/West.
* Adds a random smokable spawner
* remove double derma
* Increase chance for just basic cig
* Update to enitity tables
* Tweak values
* Remove space
---------
Co-authored-by: Jeff <velcroboy333@hotmail.com>
* Fix lizards being unable to eat custom burgers (#31005)
* Fix lizards being unable to eat custom burgers
* ensure tag comp
* Automatic changelog update
* Sedin (#27110)
* Sedin
* almost forgot this.
* what
* Did a few fixes, tried to readd popup
* Fix popup, ready for merge
* minor change
* Generalize seed removal/destruction system, add popups in general.
* fix
* fix (again)
* deadcode is no more
* Sedin buff (nerfing the recipe soon)
* godont
* webedit moment
ok listen I had to nuke my setup because my computer was being Dumb As Shit so let me do this ONE webedit
* CRIKEY
* Revert "CRIKEY"
This reverts commit 1c6959ffd9ba8bb1e97ccf2eb0b37b3ff4ec82ee.
I was not supposed to commit that >:/
* Alright, it should be good now but I havent tested it
* ready for merge/review
* prob -> probability
* Requested changes nodoc
* Review nodoc
* documento
* thumb up emoji
* Automatic changelog update
* Adds a Dinky Star Sticker for security officers (#29767)
* Sec-Star-TASTIC
* fix license
* now counts as trash
* Sticks to people + wearable
* no more sticky
* no more sticky
* mystery-space
* Update Loadout Yaml
* Automatic changelog update
* tweak(hospital): Reduce diamond stack from 30 to 1 (#31027)
* tweak(experiment): Reduce diamond stack from 30 to 1 (#31025)
* replace mapped diamond stacks with single
* Figurine voicelines (#30865)
* initial commit
* tweaks to the new voice lines
capitalizations of I's and the Y on hos 3 voice lines
also changed the captain figuring voice line 2 to something completely different
* capitalized one letter
man i really suck at capitalization
* more capitalization
i never thought this pr would need so many changes
* changed one comma to a dot
* Update Resources/Locale/en-US/datasets/figurines.ftl
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Automatic changelog update
* Adding shock collar and electropack (#30529)
* Adding shock collar with the new ShockOnTrigger
* Cleaning and updating the shock collar
* Add StripDelay datafield to ClothingComponent
* Adding SelfUnremovableClothingComponent
* ShockCollar Update
* Correction of the shock collar
* Correction of the shock collar 2
* Renaming the DamageSpecifier DataField to Damage
* Fixing the damage field in ShockCollar
* Cleaning the ShockCollar
* Renaming ShockCollar to ClothingNeckShockCollar
* Adding ClothingNeckShockCollar as a stealTarget to a thief
* Fixing a typo of the sprite path in ClothingNeckShockCollar
* Cleaning the ShockOnTriggerComponent
* Revision of SelfUnremovableClothing
* Adding a ClothingBackpackElectropack
* Sprite fix
* Code review
* Shock Collar sprite update
* add commit hash
---------
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
* Automatic changelog update
* Greatly improve the usability of the Gas Analyzer. (#30763)
* greatly improve how the gas analyzer behaves
* don't close the analyzer when the object goes out of range
* cleanup
* always switch to the device tab when a new device is analyzed
* modern api part one
* modern api part 2
* modern api part three
* file scope namespace
* Automatic changelog update
* Fix false and true in player-panel.ftl (#31043)
Fix false and true in player-panel
Add a new True string
* Contra Review Passs - Round 2 (#30942)
* Contra pass round two
* command too
* Stamps
* oopsied a bracket
* Namespace cleanup around Mind Roles (#30965)
* namespaces
* Comment does not need a semicolon
---------
Co-authored-by: Vasilis <vascreeper@yahoo.com>
* Contraband Review Pass - The Threequel (#30970)
Contraband pass number three
* Golden toilet (#31049)
* golden toilet
* Destructible
* sprite
* fix
* copyright
* Automatic changelog update
* Salvage Spawners (#31020)
* treasure entities and spawners
* no more smiles
* remove nyano shock collar code
* Event scheduler setting tweaks (#31018)
tweaks
* Automatic changelog update
* remove meteor swarms rule for a moment
* Revamped Meteor Swarm (#28974)
* meteor code and balanced values
* Meteor Swarms
* Update meteors.yml
* Update meteors.yml
* HOO! (fix overkill bug and buff space dust)
* undo BloodstreamComponent.cs changes
* DamageDistribution -> DamageTypes
* part 2.
* Missing meteor presets (#29044)
* add meteors into missing game presets
* changes for real
* implement code
* this too
* Meteors now leave behind a bit of ore (#30419)
* Meteors that leave behind asteroid ore
* bigger offset
* Bit more generic
* Better defaults
* hrm?
* I HATE CUSTOM SERIALIZERS
* More comments
* renamed a variable
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
* refactor event schedulers to use explicit game rules (#29320)
* works, still has testing values, im sure I did stupid shit.
* shitvent crapfactor
* snap extra word out of existence
* shit I died of old
* remove useless inaccurate design comments
* Oopsie, handle requirement params in RandomRuleSystem too
* I'm a slash slinging hasher
* Address reviews, add admin alerts I forgor
* EntityMan saves the day
* address reviews 1
* eh, I actually don't care about the cargo gifts thing.
* started
* Do reviews
* you actually meant 1.2 lmao
* dependency inheritance is a fickle bitch
* I have no idea.
* Threads are for sheets not computers.
* fix traitor rule test
* fix round type tattling
* break things
* It worky
* Toolshed makes we want to drink depresso.
* Finished?
* remove debug values
* timings
* use defaults
* alphabetize
* bobby drop tables
* Float required fr fr
* continue
* more continence
* uno mas
* obsolution
* cleanup and documentations
* Yell at self
* use the right value defaults
* housekeeping
* Event scheduler setting tweaks (#31018)
tweaks
* Automatic changelog update
* remove(NukeopsRuleComponent): Remove a trap from the component file (#31029)
ah
* Fix bug with holding objects (#31009)
Main
* Automatic changelog update
* Replace obsolete map functions in IconSmoothSystem (#30958)
* first part
* second part
* Automatic changelog update
* Fix reagents with ReagentData being duplicated (#30983)
Initial commit
* :trollface:
* :trollface:
* actually untroll
* a
* 50 burger
* add back old meteor code
* fix
* use some live config options in dev
* remove old shock collar icon
* make ammo more consistent and work more
* clean up lathes diff to upstream
* a
* move rubber bullets to deltav folder
* a
* untroll
* more untrolls
* more untrolls
* untroll
* :trollface:
* a
* b
* remove it for real
* add missing lathe recipes
* replace cvars with component field
* remove taco from roboisseur
* migrate cardboard box with smg mags
* remove kebabs
* a
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: Killerqu00 <47712032+Killerqu00@users.noreply.github.com>
Co-authored-by: Brandon Hu <103440971+Brandon-Huu@users.noreply.github.com>
Co-authored-by: Zachary Yona <58833995+Magicalus@users.noreply.github.com>
Co-authored-by: Zachary Yona <magicalusf@gmail.com>
Co-authored-by: Plykiya <58439124+Plykiya@users.noreply.github.com>
Co-authored-by: plykiya <plykiya@protonmail.com>
Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com>
Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
Co-authored-by: Kara <lunarautomaton6@gmail.com>
Co-authored-by: EmoGarbage404 <retron404@gmail.com>
Co-authored-by: Ubaser <134914314+UbaserB@users.noreply.github.com>
Co-authored-by: Token <esil.bektay@yandex.com>
Co-authored-by: Cojoke <83733158+Cojoke-dot@users.noreply.github.com>
Co-authored-by: LeoSantich <108027402+LeoSantich@users.noreply.github.com>
Co-authored-by: nikthechampiongr <32041239+nikthechampiongr@users.noreply.github.com>
Co-authored-by: pigeonpeas <147350443+pigeonpeas@users.noreply.github.com>
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: PoorMansDreams <150595537+PoorMansDreams@users.noreply.github.com>
Co-authored-by: IgorAnt028 <118114530+IgorAnt028@users.noreply.github.com>
Co-authored-by: NotSoDamn <75203942+NotSoDana@users.noreply.github.com>
Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com>
Co-authored-by: DrSmugleaf <10968691+DrSmugleaf@users.noreply.github.com>
Co-authored-by: Velcroboy <107660393+IamVelcroboy@users.noreply.github.com>
Co-authored-by: Jeff <velcroboy333@hotmail.com>
Co-authored-by: themias <89101928+themias@users.noreply.github.com>
Co-authored-by: Eris <eris@erisws.com>
Co-authored-by: FATFSAAM2 <saamboroujerdi@gmail.com>
Co-authored-by: to4no_fix <156101927+chavonadelal@users.noreply.github.com>
Co-authored-by: Mervill <mervills.email@gmail.com>
Co-authored-by: Vasilis <vascreeper@yahoo.com>
Co-authored-by: Nim <128169402+Nimfar11@users.noreply.github.com>
Co-authored-by: IProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com>
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
* make mindshields removable
* use new logic stolen from upstream pr
* a
* remove unused mafia trollage
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* add MailMetricsCartridge prototype
using the CrimeAssist UI until i make the courier performance ui
* add sprite for mail courier cartridge
* Add MailMetricUI
YAYYYYY IT WORKS
UI Contents pending
* Mail earnings live update mailmetrics
* LO can have mailmetrics too
* Add rest of mail metrics
Also removes some loggers
* Add additional metrics to MailMetric
Also fixes some bugs related to stat counting
* MailMetric updates on mail added
* change sprite credit name
decided id rather be credited as Portfiend
* display all mail numbers now
* remove comment
* style mailmetrics, add heading
* mailmetric UI polish
* fixed unopened mail counting bug oopsie
* wtf is this import
get out of here
* move StationLogisticStats to BaseStationMail
* FOUR SPACES
sirry
* fix: newlines
* address reviews
* address reviews
SORRYYYY this is unexpectedly big
* wtf
* semicolon
---------
Co-authored-by: byte <50130120+huckleton@users.noreply.github.com>
Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
* basic AAC tablet prototype
using station map as a base
* set up aac component/system
* quick phrase prototype
will probably touch this up later
* basic example phrases
just so i have data to work with
* get AACWindow to iterate over quick phrases
* add the rest of the job phrases
* fix this one job name
* actually fix prison guard name
* buttons for aac window
* fix phrase inheritance
* add tabs to aac contaner
* fix column spacing and add button padding
* aac tablet button colors
* AAC tablet sends messages now
* add aac tablet voice sound yay
* add a 1 second cooldown between phrases
* subjects for most departments
* location phrases
* more phrases
* cleanup + sort buttons alphabetically
* fix these phrases
* even more departmental subject phrases
* common phrases
* cleanup imports
* show name of player that pressed button
* aac tablet can be used by multipel people
after all it does not rely on state changes and also multiple people can press buttons on a tablet at once
* capitalize aac
its an acronym
* you know what it is its more phrases!!!!
* SAFETY PHRASES
* last second phrases
* redundant phrase
* and one more hazard phrase for the road
* change voice of aac tablet from borg to alto
just sounds nicer
* localize ALL Phrases
i love utility scripting to automate tedious tasks
* add AAC tablet to loadout
* add AAC tablet to medfab
* tweak: use multiple parents instead of whatever this is
* add: justice department phrases
* add: time quantity phrases
* add: ores and kitchen appliance phrases
* fix: resolve duplicate phrases
* add: aac tablet sprites
* add: justice button style
* fix: misplaced this line oops
* add: justice dept locations
* remove: redundant phrase
* re-run tests
* fix: move aac tablet loadout format
* fix: use Identity instead of Name for aac tablet sender
* fix: return on send phrase if id is invalid
* fix: remove redundant line
* fix: use LocId instead of String for phrase text type
* add: new phrases bc upstream updates
* fix: newlines
* tweak: add end comments to these style comments
* fix: this phrase was broken lol
---------
Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
* melee executions
* fix damage bug
* cleanup
* address reviews hopefully
* resistance bypass mechanic
* component changes
* self executions (not finished yet)
* self execs part two
* ok i fixed things (still not finished)
* finish everything
* review stuff
* nuke if (kind = special)
* more review stuffs
* Make suicide system much less hardcoded and make much more use of events
* Fix a dumb bug I introduced
* self execution popups
* Integration tests
* Why did they even take 0.5 blunt damage?
* More consistent integration tests
* Destructive equals true
* Allow it to dirty-dispose
* IS THIS WHAT YOU WANT?
* FRESH AND CLEAN
* modifier to multiplier
* don't jinx the integration tests
* no file-scoped namespace
* Move the rest of execution to shared, create SuicideGhostEvent
* handled
* Get rid of unused code and add a comment
* ghost before suicide
* stop cat suicides
* popup fix + small suicide change
* make it a bit better
---------
Co-authored-by: Plykiya <58439124+Plykiya@users.noreply.github.com>
* Insert when held item has no interaction with stored item
* Decouple inserting on failure
* Add component that stores the used entity when no interaction happened
* Add prediction
* move MinMax to shared
* cleanup MinMax
* move other ticking components to shared just because
* remove unused prototype file
* update everything to use shared components
* test
* test 2
* test 3
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* Add access to gun components
Found from an rmc14 PR.
* Admin verbs proving why access needs to exist
* Someone is probably going to post this pr to le reddit and complain about self-merges.
* add tooltips to agentid job icons
* forgot to stage this
* make StatusIconPrototype abstract
* minor visual improvements
* cleanup
* use currentculture to sort job names
* review
* add(FaxComponent): Allows for setting defaults in the component.
This wires up the Fax component to allow the default paper and office
paper to be set. The defaults are what they were before, and it's an
optional option. Now Fax machines can be set to print different paper
when using Print File or other cases where the default paper style is
used.
* Requested change to EntProtoId.
* Fix build failure.
* Basic structure for the player panel ui
* Ensure basic functionality
Player panel now receives and displays basic info
* Make whitelistcommands accept user ids
* Make PlayerPanel use GUIDs where possible
* Add functionality to most playerpanel buttons
* Implement remaining playerpanel features
* Localize everything
* Finish up
* Put command arguments in quotes
I am not sure if it's even possible to have something like a space in
them considering they are guids and usernames but sure why not
* Make playerpanel a verb
* Add Logs button to player panel
* Change Notesbutton text and make whitelistbutton a confirmtion button
* Add freeze button that does not mute the player
* Add sharedconnections counter to playerpanel
* Make the playetime format clearer
* Allow for copying of the a player's username
* Do minor cleanup
* Rearrange buttons
* Fix unfreeze button not updating
* Fix wrong localisation text
* "Fix" the same role ban counting multiple times
The way rolebans are stored is horrible.
As such if you ban someone from a departmenrt or something
role bans are individually placed for every role.
The only way I found to distinguish them is the bantime.
This is horrible but I do not want to rewrite how all the bans are
stored right now.
* Add Delete and Rejuvenate buttons to player panel
By popular demand
* Marginally improve ui
* Add logs
* review update
* Fix verb
* Fix double notes
---------
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
* Everything but the submodule
* stuff I forgot
* heat
* missed lights
* behonky
* LocId
* I guess it was a skill issue?
* predicted audio
* It works with lights now
* Borg equality
* Gorilla gauntlet grants protection from anomaly returned damage when attacking it
* woops, there we go
* NONE
* Use DamageModifierSets, remove Behonker damage
* Reviews dealt with
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
* Added the ability for blood to track DNA using ReagentData; Forensic Scanner now accounts for solution DNA, non-DNA holders have "Unknown DNA"
* Removes touch DNA for puddles, adds DNA to vomit
* DNA now leaves traces in containers and those marked without don't show DNA on scan (except for puddles), gibbed parts have DNA
* Fix stupid metamorphic glass bug grrr
* Removed SpillableComponent since DnaSubstanceTraceComponent is used instead
* Removes data field from maps, adds DNA tracking for some missed items
* Give default value, fix missing values.
* Fixes recipe bug
* Review changes
* Make the Data list into a nullable type
* Revert map changes
* Move gibbed unknown DNA to forensicssystem
* Add BreakOnDropItem, update do afters, remove unnecessary declarations
* bola
* Changed my mind about the nuke
* gennies too
* Make the comments more clear.
* Sorry for the trailing commas
* Revert "Sorry for the trailing commas"
This reverts commit e60fd9a30977393df3344948e6d5c0ce035723cd.
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
* add verbose examine text to gas miners so their behaviour can be understood
* no need for these to be properties
* use an enum instead of two booleans for the miner state
* require the gas miner to be anchored in order to not be disabled
* xmldoc
* pr feedback
* file-scope namespace
* it's to late to hide my transgressions in a rebase
* turns out the normal examine distance is totally fine for this
* LoadoutSystem change, deathsquad species loadout
* survival gear loadouts for disaster victims
* skrek
* centcom
* syndicate agent
* cburn
* ERT
* syndicates
* Is it ever gonna be enough?
* Take what you can
* Move startingGearEquippedEvent after Loadouts are spawned
* skreee
* even more formatting
* Unbreak auto internals activation
* undo AddAllRoleLoadouts change
* syndicate reinforcement survival loadouts
* re-enable vox ghostroles
* Deploy foldable
* Add NetworkedComponent and access to the component
* Add handled to afterinteract
* Use drop target location instead of setcoordinates
* Put back in hand after failed deploy
This prevents dropping the bed when clicking while inside a locker.
* Created BaseDeployFoldable for folding chairs, body bags, and rollerbeds
* Add dragdrop to fold rollerbed to hand
* GET WORLD POSITON, ROTATION
* Missing parentheses
* ui system depndency
* the issue
* Unused
* Let the function do the transform
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
* fix(jugs): Make max and minimum transfer amounts make sense
* fix name
* Better
* Implement bounds checks
* large beaker too
* More logical solution
* Bleh
* remove
* Doesn't make sense yet
WAS MISTAKEN AAAAAAAAAAAAAAD@ @!
* TemperatureSpeed component
* temperature slowdown prediction (done right)
* remove unnecessary changes
* that too
* get in line
* make it readonly
* auto pause
* De-duplicate loadout gear
Needs supporting code, probably with an interface with StartingGearPrototype which would also use it, but I regexed the yaml.
* Code updates
* Remaining yaml
* Fix automatic naming
* raiseEvent
* Don't code when tired kids
* Fix paper system late localization
* IS THIS WHAT YOU WANT
* well I guess this is happening now
* fix the BUI
* did that even do anything before?
* again with the escapeformatting...
* Dirtying
* Move dirty to function
* Rename PaperSystem to PaperVisualizerSystem
* Fix namespace
* how many namespace changes must I suffer through
* SetContent is for Setting Content
* minor shuffling
* review
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
* Moves spread data to new component
* Refactors shotgun spread code
* Makes shotgun cartridges and projectiles use new component
* Attempts to fix nullable build error
* Fixes hitscan weapons that I broke :(
* Saviour commit?
---------
Co-authored-by: EmoGarbage404 <retron404@gmail.com>
* allow ai to understand if its handcuffed.
* rerun tests they worky on local
* Contained here in, a string of expletives about flaky tests.
* on retrospect, default true is probably smorter.
* do reviews
* I forgor xml
* more xml
* Deploy foldable
* Add NetworkedComponent and access to the component
* Add handled to afterinteract
* Use drop target location instead of setcoordinates
* Put back in hand after failed deploy
This prevents dropping the bed when clicking while inside a locker.
* Created BaseDeployFoldable for folding chairs, body bags, and rollerbeds
The issue is it plays the "you hug xyz" to everyone in range as well as the target client so they overlap. IDK if anything else is broken by this but this control flow is pretty bad so I wouldn't be surprised.
* Update MoverController.cs
* Update a bunch of movement code to use Entity<T>
* Last errors
* wow, there were more errors
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
* Grappling gun ReelRate can be changed
Moves ReelRate constant from SharedGrapplingGunSystem to GrapplingGunComponent, so it's Reel speed can be changed.
* Add coment + remove redudant
* Clear search criteria on loading aHelp window
* Pinning technology.
* Relay to aHelp window and discord if a user disconnect/reconnect
* Fix pinning localization
* Log disconnect, reconnects, bans to relay and admin in aHelp
* Drop to 5min to hold active conversations
* Update Content.Server/Administration/Systems/BwoinkSystem.cs
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
* discord text styling if diconnect,reconnect,banned message.
* Pin icons instead of text
* Better Icons
* space
* Move button generation in to its own XAML
* List entry control
* Fix spaces
* Remove from active conversations on banned
* Discord if else block cleanup
* Better pin icons
* Move icons to stylesheet styleclass
* Better field order.
* PR review fixes
* fixes
---------
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
* Make magic mirror do-after longer, add popups to notify the target
* Turns out I do have access to the user
* More detailed popups
* Helmets protecc
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
Specifically if a grid splits under the cvar size it doesn't get a label. This also stops stuff like shuttles splitting in half creating new entries for the new grids. Splitting code leaves the largest grid as the existing one so this will always prefer to keep it large (but if there's multiple splits it won't adjust).
* Update vomit organ smite to not use Component.owner
* is this what you want...?
* am I winning, dad?
* update the comment
* we love entity<t>
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
* prevent borgs from using locks
* e
* bru
* a
* blacklist borgs and robotics console
* frogro
* add IsAllowed to EntityWhitelistSystem
* use IsAllowed
* move thing to new LockingWhitelistSystem
* :trollface:
* review
* use renamed CheckBoth in locking whitelist
* remove unused stuff and add more to doc
* Use target entity instead to remove self check
* Rename to _whitelistSystem
* Add deny lock toggle popup
* Prevent duplicate checks and popups
* Fix wrong entity in popup when toggling another borg
* Make new event
* Update comment to user for new event
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
* split logic into own system
* add support for different size displacement maps
* some clothes may not use displacement maps
* displacement maps spport hand sprites
* Update DisplacementMapSystem.cs
* rename things
* fuck stencilmask
* fix bugs
* no masks
* Update jumpsuits.yml
* fix species specific sprites
* Update ClothingSystem.cs
* shoes + ears displacement, some bugfix
* Update DisplacementMapSystem.cs
* Make delay incurred by transfer amount modifiable
* No unintentional negative delay please
* Use more fixedpoint, hope I didn't break anything
* merge review suggestion
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
---------
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
* Syndicate thief, spy, medic
* Fixes description for nukies
* update description for uplink
* Implement the radial menu
* forgot these were necessary to push lol
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
* randomize iconSmoothing
* Revert "randomize iconSmoothing"
This reverts commit 094356f975737c0af24ce39d849aec7852b9af6e.
* try 2
* trying work with client-server communication
* still dont work
* Tayrtahn good suggestion
* remove outdated code
* Fix!
* move data to Appearance
* Update RandomIconSmoothComponent.cs
* Replace EntityCoordiates.InRange() with TransformSystem.InRange()
* nullspace
* I figured it out
* man I have no clue how client side sutff works
* please have mercy
* remove RadiationPulseOverlay changes
* nullspace
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
* The death of try20
* Add integration test for traitor gamerule
* Fix max difficulty being overshot
* Check at least one objective is assigned
* EntProtoId
* Items droped in containers will end up in containers
* Adds integration test for dropping entity while inside container
* comment
* comment
* trim the diff
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
* item toggle refactoring and some new systems
* add ToggleClothing component/system
* unhardcode magboots gravity logic
* make magboots and speedboots use ItemToggle and stuff
* remove now useless clothing components
* update client/server magboots systems
* add note to use ItemToggledEvent in ToggleActionEvent doc
* refactor PowerCellDraw to use ItemToggle for ui open/close control
* add TryUseCharges, refactor charges system
* update magboot trigger code
* make borg use ItemToggle, network SelectedModule instead of now removed Activated
* add AccessToggle for borg
* the giga ninja refactor
* update ninja yml
* update ItemToggle usage for some stuff
* fix activatableui requires power
* random fixing
* yaml fixing
* nuke ItemToggleDisarmMalus
* make defib use ItemToggle
* make things that use power not turn on if missing use charge
* pro
* fix sound prediction
* bruh
* proximity detector use ItemToggle
* oop
* big idiot syndrome
* fix ninja spawn rule and make it generic
* fix ninja spawn rule yml
* move loading profiles into AntagLoadProfileRule
* more ninja refactor
* ninja yml fixes
* the dreaded copy paste ops
* remove useless NinjaRuleComponent and ue AntagSelection for greeting
* fix invisibility
* move IsCompleted to SharedObjectivesSystem
* ability fixes
* oop fix powercell instantly draining itself
* sentient speedboots gaming
* make reflect use ItemToggle
* fix other test
* loadprofilerule moved into its own pr
* remove conflict with dragon refactor
* remove all GenericAntag code from ninja
* )
* probably
* remove old enabled
* great language bravo vince
* GREAT LANGUAGE
* who made this language
* because it stinks
* reparent blood-red magboots to magboots probbbly works
* most of the review stuff
* hasGrav doesnt mean what i thought it did
* make health analyzer use itemtoggle, not fail test
* fix mag/speed boots being wacky
* UNTROLL
* add ItemToggle to the random health analyzers
* a
* remove unused obsolete borg func
* untrolling
* :trollface:
* fix test
* fix
* g
* untroll
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* Fix the ability to shoot out of crates
* Makes it check what inventory the player is in
* use IsEntityOrParentInContainer
* Fix Issues Github had
* gaahhh... Prevents lasers from being shot out of crates
* gaahhh... Prevents lasers from being shot out of crates
* Fix laser?
* hmmm... this is better looking I think?
* Uncook indentation
* Rerun tests?
* First commit
* Removed pause stuff
* Make the event better
* Forgot to add the comment
* Proto id stuff
* cool comments
* serializer
* Added the time stuff
* Shaking and Stirring
* Remove shake message
* Switch if order a bit
* Add doafter supprot for reactionmixer
* Fix nullability
* Timespan zero
* Forgot to remove loc string
* Reorganize usings
* Remove unneeded usings, fix b52 needing to be shaken
* Fixes pull rotation logic
* cleaner condition
* even less code
* I CHANGED MY MIND
* first one
* second one
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
* Dungeon spawn support for grid spawns
* Recursive dungeons working
* Mask approach working
* zack
* More work
* Fix recursive dungeons
* Heap of work
* weh
* the cud
* rar
* Job
* weh
* weh
* weh
* Master merges
* orch
* weh
* vgroid most of the work
* Tweaks
* Tweaks
* weh
* do do do do do do
* Basic layout
* Ore spawning working
* Big breaking changes
* Mob gen working
* weh
* Finalising
* emo
* More finalising
* reverty
* Reduce distance
* Add slowdown to dragging Items that slow when held
* Heh, fancy
* Heh, fancy
* rename SetMovementSpeedModifiers to GetHeldMovementSpeedModifiers because it was not setting anything
* Fix ItemMapper whitelist mispredict when inserting or removing items
Makes the ItemMapper MapLayerData available on client so that the client
can predict whether an inserted/removed item changes the visibility of
a sprite layer.
* review
---------
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
* Oh the possibilities
* Merge fixes
* Forgot to remote LavaSystem oops
* Changed EntityEffectArgs to EntityEffectBaseArgs and EntityEffectReagentArgs
* Throw exception for unimplemented effectargs
* Remove Json and overrideable datafields
* Fix test issues
* Actually fix the compiling issue
* Fix comments and remove EntityEffectArgs (no longer used, replaced with EntityEffectBaseArgs)
* Ensure trait groups get validated
The only validation being done was on the UI. I also made the "Default" group match the PascalCase naming schema so might be a slight breaking change but the original PR only got merged a few days ago.
* overwatch
* add textures
* add SealingCabinet system
* add StoreUnlocker/ObjectiveUnlock system
* add plutonium core and nuke core container
* make nuke deconstructable
* add steal core objective
* add core extraction toolbox to new category
* typo ops wrench fuel
* use queries and resolve, have it resolve instead of using Comp
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
This feature should never have been merged, it can be trivially abused to break the entire server.
It's behind a CVar because honestly that's the easiest way to 1984 the feature.
* Ghosts can now always see examine details
This means they bypass range and occlusion checks for getting extra detail, like the charge on an SMES.
* EntityQuery
* Spawn dummy entities on client for vending machine UI
* Asked sloth, and we kinda need this pr
---------
Co-authored-by: Vasilis <vasilis@pikachu.systems>
* add LoggingDisabled to AccessReader
* add LogWireAction
* -m give everything besides high-security door a log wire
* make LogAccess public and support string arg
* add log when pulsing
* m
* l
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* 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.
* cleanup prototypes with `PryingComponent` & fix jaws of life prying speed
* Minor cleanup for tools and prying systems
Remove some obsolete methods.
* Fix doafter continues when not held & log
* Modifiy delays for floor prying
* Fix test fail
* You can now pry multiple tiles at once
* More advanced do after duplicate checking.
Instead of just saying "lol tile prying can raise duplicates", we now have a system so tile prying can properly distinguish events on 2 different tiles. This is achieved with a virtual function on DoAfterEvent.
* partial buckling refactor
* git mv test
* change test namespace
* git mv test
* Update test namespace
* Add pulling test
* Network BuckleTime
* Add two more tests
* smelly
* Fix conveyor mispredicts
Instead of tracking active conveyors we instead track the conveyed entities. This also handles things like stacking conveyors more gracely.
* Fix ActiveConveyor
* Fix lerping
* FactionClothing
* swtich carp to the Dragon faction
* add carp hardsuit
* add carp hardsuit to uplink
* fixes
* webedit ops 1
* why did i name it that wtf
* among
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* Well i tried this way
* New approach (start)
* Did it
* makes spacelaw available, put it under sec
(cherry picked from commit accf8adf972ec28da489c4dfc5cfa89453d88f03)
* Give jobs & antags prototypes a guide field
* A
* space
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
* Add todo
* Fix merge errors
---------
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
(cherry picked from commit e7f2ae52ab24dddc8f3c94cb84b751482700e3da)
* add SignAttemptEvent and minor signature refactor
* add recruiter pen
* add the recruiter ship
* add recruiter antag and event
* fixes
* real
* bad popup spam
* more fix
* fix blood visual maybe
* fix greentext
* more fixy
* fix fill state not being coloured
* give btamp instead of paper in pocket 2
* f
* brighter filled state
* fix greentext
* fix error on spawn
* pro
* prevent using a syringe to inject anything into the pen
* update stuff after upstream merge
---------
Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
* Don't use invalid defaults for loadouts
At the time it made more sense but now with species specific stuff it's better to have nothing.
* Loadout SetDefault only applies valid loadouts
* SS-28662 Add cvar to force spawn everyone at departures
This cvar means everyone must spawn at departures. This
could be handy for an admin event? But mostly it's so the
tutorial departures terminal can be seen by all newbies on
gateway servers.
* Small fix to ArrivalsSystem flow
* Remove incorrect todo
* Add godmode arrivals cvar
Adds a check during wielding to see if the code is running clientside, and if so skip the part responsible for creating the virtual items.
This is necessary because TrySpawnVirtualItem is blocked from running clientside, so trying to spawn the virtual items for wielding causes the client to always believe the wield has failed. This erroneous failure leads to the display of incorrect feedback until the server's successful wield attempt makes it to the client. The added check prevents wielding from failing in this way and therefore allows the client to behave as expected.
* Maybe fix invalid loadout prototypes
So if we have existing data SetDefault is not normally called iirc. So what I think is happening is that if we have old loadout groups that get saved to DB and loaded these get dropped entirely and nothing is used to replace the group unless the person specifically looks at their loadout.
Need someone affected to send me their loadout to confirm it's fixed.
* Better fix
* Add "Subpoenaed" to the SecHud and Criminal Records Computer
* Update Content.Server/CriminalRecords/Systems/CriminalRecordsConsoleSystem.cs
Co-authored-by: Colin-Tel <113523727+Colin-Tel@users.noreply.github.com>
Signed-off-by: Bellwether <157836624+BellwetherLogic@users.noreply.github.com>
* Update Resources/Locale/en-US/criminal-records/criminal-records.ftl
Co-authored-by: Colin-Tel <113523727+Colin-Tel@users.noreply.github.com>
Signed-off-by: Bellwether <157836624+BellwetherLogic@users.noreply.github.com>
* Moved and commented files as requested, redesigned icon due to avoid Syndicate lookalike
* moved some .ftl business so it's properly commented
* Attempting to slay a rogue byte order mark
* necromancy upon falsely slain byte order mark
* Moving things into DeltaV namespace
---------
Signed-off-by: Bellwether <157836624+BellwetherLogic@users.noreply.github.com>
Co-authored-by: Bellwether <null>
Co-authored-by: Colin-Tel <113523727+Colin-Tel@users.noreply.github.com>
* add sacrafice/drain sound
* refactor glimmer event yml + uncomment wisp + make mites scale at lower glimmer
* remove glimmer wisp rule and make GlimmerMobRule much more flexible + better
* add LifeDrainer code that wisp uses
* add ai primitives and compounds
* add glimmer wisp
* a
* fixes
* add wisp texture
* desc
* add sounds
* buff so you cant literally 2 shot it with bible
* make it harder to kill but drop more ectoplasm
* make it work properly
* let it use zap in combat i hope
* add glimmer creatures guidebook
* test
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* legal departmant
* god i wish i knew what i was doing
* minor rsi fixes
* i forgor the legal radio frequency
* Minor fixes to radio, stamp, PDA, etc...
* add department
hehe
* Edits from Velcroboy
* Add trial timer
* add department signs
* Changes all references of legal -> justice and adds prosecutor access
* Missed one
* Adjust lawyer
* update lawyer icon
* temp to fix
* revert to fix
* add airlock texture
adds justice department airlock texture. Still need to do the yaml part of it but the texture's there.
* fix bureaucracy meta
* More meta fixes
* Connect airlocks to yaml
* Fixes, tweaks, and last reference of "legal" maybe
* Add justice to airlock groups
* add prosc. drip and fix prosecutor typos
adds prosecutor badge and suit, as well as fixes the spelling of "prosecuter" to "prosecutor"
* Changes prosecutor's supervisor to CJ
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Attorney <- Lawyer locale edit
* Removed modified shoukou file
* Added antag objective and touched up yaml
Fixed Clerk PDA and CJ jumpsuit error. Additionally moved notary stamp from paper.yml to rubber-stamp.yml, and fixed some indentation in the meta.json of the pda.rsi file
* Attorney <- Lawyer, now including the PDA
Forgot this last commit
* Fixed typo in Clerk Vest ID
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Added Chief Justice locker, all of its contents, and a prosecutor PDA (sprite pending)
* lockers 2, electric boogaloo. Committing files I forgot to commit
* Added CJ stamp and put it into CJ locker. Fixed notary stamp and put the sprites in the correct RSI
* Attempt to resolve merge conflicts
* Remove conflict markers
* Added stamp sprite, implemented CJ cloak
* Implemented Gavel Prototype and added to CJ locker
* Removed justice access from attorney as it will be used to secure Clerk's locker. Disabled antag for all justice besides attorney.
* Added Clerk locker and placed Notary Stamp into it. Uncommented gavel in CJ locker
* Added lawyer's stamp to lawdrobe
* Added Prosecutor PDA, icon, and ID sprite
* Added gavel block and made gavel tap when clicking on it
* Add component, EmitSoundOnInteractUsing onto the gavel block
* Added sprites for CJ and Clerk locker
* Spell-checked and edited job descriptions slightly
* Fixing missing type entity access.yml
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Adjusted rsi paths for gavel and gavel block to use forward slash
* Fixed a variety of invalid rsi references, and door remote yaml issue
* Added Lawyer access to Justice access group, fixed door_remote.yml access
* Remove antagadvantage from chief justice
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Apply suggestions from code review
line at the end for readability & matching current standards... line at the end for readability & matching current standards...
Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Hopefully remove shoukou.yml from the changed files
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Once again attempt to remove shoukou.yml from changed files
* Attempt once more to remove shoukou.yml from changed files
* Fixed justice pda box description
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Please go home, shoukou. We don't want you here
* Fixing prototype references pt1
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Renamed headsets/legal.rsi to headsets/justice.rsi
* Added hyphen to chief justice localizations
* Ordered justice accesses alphabetically
* Added prison key to justice headset
* Various yaml fixes from review
* Apply suggestions from code review
Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Localized changes to pdas and jobs
* Removed indents in locale
* Fixed reference to chief justice stamp
* Apply suggestions from code review
Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Renamed Lawyer to Attorney in locale, added deltav marker
* Lawyer to Attorney, Warrant Document in Clerk and CJ locker
* Apply suggestions from code review
Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Replaced legal with justice in job-description.ftl
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Moved job-name-lawyer to DeltaV locale
* Remove added space in accesses.ftl
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Removed unneeded deletion of unneeded spaces in headsets.yml
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Changed Lawyer ID name to Attorney ID
* Updated copyrights in all of the meta.json files affected
* Added formal and white variants of CJ jumpsuit to locker
* Updated to use upstream's EmitSoundOnInteractUsing
* Removing old component stuff
* Gave Prosecutor Filled Lawyer Backpack
* Deleted old component
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Removed old comments
* Updated doors to electronics system, fixed courier spawner that I botched
* Fixed door_access indentation
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Adding a little bit of loadouts
* Add loadouts for justice
* Removed accessreader from windoors
* Added job spawner icons
* Fixed spawner sprite layering
* Added missing parent in ID cards
* Removed redundant laceup shoes loadout
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Added lawyer windoor, fixed spawner names, fixed locker names
* Added station beacons
* Softened justice dept palette
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
* Added justice key to telecomms
* Added deltaV comments to telecomms
---------
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
Co-authored-by: Jeff <velcroboy333@hotmail.com>
Co-authored-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
Co-authored-by: Timemaster99 <elijahrobot@gmail.com>
Co-authored-by: luckywill339@gmail.com <luckywill339@gmail.com>
Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Co-authored-by: Azzy <azzydev@icloud.com>
* Replace obsolete whitelist is valid with whitelist system
* Consistency
* Fix logic
* Bork
* I figured out how to get whitelists on the client lol
* test fail
* woops
* HELP ME FUNCTIONS
* Fix errors
* simplify
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
* Makes machine parts stacks, removes unused field in stack prototypes
* forgor
* Fix tests
* Fixes lathe construction. Yes. This sucks but there's no better way that doesnt involve refactoring machine parts completely
* detail
* a
* make jugg not atmos hardsuit reable lmao
* re machine yaml refactor
* use the enum name to localize re results
* move a lot of code to shared and refactor
* clientside rework
* add test for missing recipes
* untroll
* make exped board recipe yml consistent with upstream
* fix unearthed sneaky bugs + generic does nothing so remove
* add mass media console board, remove roundstart boards from dynamic recipes
* remove roundstart stuff, add rcd ammo to protolathe
* dont dupe because of access electronics prototypes
* fix final fails
* final untroll
* final untroll 2
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: Null <56081759+NullWanderer@users.noreply.github.com>
* Change BanExemption command to AdminFlags.Ban permissions
* Change LOOC to check for Moderator permission
* Change ListVerbs from Admin to Debug AdminFlags
* Change RunVerbAs from Admin to Fun AdminFlags
* More permission changes
* Change GhostKick to Moderator perm
* Clean up command perms
* fuck
---------
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
* Try syncing powered state to client
For some reason the client is not receiving the ApcPowerReceiverComponentState, so it's not working.
* Fix powered state not syncing to client
The client PowerReceiverSystem was abstract, which prevented it from
running initialize.
* Flip check so that it runs bigger checks first
PowerDisabled skips the others.
NeedsPower skips the receiving check.
* Disallow changing Powered manually
* Move Powered update to PowerReceiverSystem
* Move appearance to event subscription
* Move metadata component to AllEntityQuery
* Cleanup
* Move Powered update back to PowerNetSystem
It's easier to use the EntityQueries and it dosen't need to be updated
anywhere else.
* Put appearance updating back
* Move IsPowered to shared
* Simplify IsPowered
* Cleanup
* Remove duplicate PowerChangedEvent
PowerChangedEvent on ProviderChanged doesn't seem to be needed
PowerChangedEvent gets raised by in update if the power state changes
after a new provider is connected
I am leaving the issues open and have updated #26547 with more info on what we should do long-term. This is just to bandaid the short-term complaining.
* Fix firelock prediction issues with periodic pulses of closing lights
For some reason this function was setting a time for the next state
which was triggering the door system to try to close the firelock.
This does not happen serverside because the function only fires from an
event called clientside apparently.
It appears to be an attempt to stop firelocks from closing instantly
that did not function properly, and I cannot discern any other purpose.
As such I have removed it.
* Remove redundant serverside check
This became redundant with commit 439a87f2
* Prioritize empty item slots when inserting
* Revert "Prioritize empty item slots when inserting"
This reverts commit 4272a65cba5fc18df801812b0af20123aec08409.
* Prioritize empty item slots when inserting
* Try drop
* Check for any can insert before dropping
* Change prying system and pryunpoweredcomp to allow for custom time modifiers
This will be useful if I go the route of making firelocks pryable when
unpowered instead of just being able to open and close instantly when
unpowered.
* Make firelocks properly predicted
Shared system made. Since atmos checks can only be done on the server we
just have it set relevant bools on the component and then dirty it.
Ditched atmos checks on trying to open, they now only happen whenever
firelocks are updated.
* Make firelocks pryable without a crowbar
While this usually would only allow you to do this when a door is
unpowered, firelocks do not have the airlock component which actually
does that check. As such firelocks will always allow you to pry them
open/closed by hand.
* Clean up System. Change update interval to be based on ticks. Move as much as possible to shared
* Make firelocks unable to emergency close for 2 seconds after being pried open
* Clean up
* More cleanup
* Reorganize SharedFirelockSystem methods to match Initialize order
---------
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
* draft one of plant metabolism guidebook
* loc fix?
* add attributes loc
* fix loc syntax
* improved appearance
* last commit was undercooked, my bad
* last commit was still undercooked, my worse
* last commit was even still undercooked, my worst
* Addressed comments?
* Fix newlines
* Hopefully this works
* Cleanup, I think
* 2xs
* Make wielding automatically drop the item on your other hand
* Fix docs
* Remove redundant parameter
* Fix not deleting virtuals on fail
* Make count freeable hands method
* Add popup when dropping item
* Check for flavor text equality in profile.
* Fix some characters being deleted from flavor text
Sometimes the last few characters of the flavor text would get deleted. This fixes this issue.
* Add radio implants
* Syndie radio implant: add to uplink, formatting pass
* Syndie radio implant: fix doc string
* Syndie radio implants: add inheritdoc to systems
* Syndie radio implants: Change wording on uplink
Signed-off-by: no <165581243+pissdemon@users.noreply.github.com>
* Syndicate radio implants: More wording changes
Signed-off-by: no <165581243+pissdemon@users.noreply.github.com>
* Syndicate radio implants: fix review code problems
* syndicate radio implants: remove OpenRadioImplantEvent event and reuse storageimplant stuff
* Syndicate radio implants: prevent implanting borgs with generic radio (syndicate radio is still possible)
* syndie radio implants. extremely graphic non-null matching action and establishment of extreme non-virtual privacy
---------
Signed-off-by: no <165581243+pissdemon@users.noreply.github.com>
Roslyn now compiles char + string with string.Concat(ROS<char>). This means doing ref char -> ROS<char> which is not sandbox safe. Actually fixing this in the sandboxer is difficult so I'm gonna just pass on that for now.
* reagent dispenser: fancy window
* reagent dispenser: dispense button grid
* reagent dispenser: rearrange containers & info
* reagent dispenser: remove `reagent-dispenser-window-container-label`
* reagent dispenser: add `Scrollcontainer` on right side
* reagent dispenser: get rid of pointless actions
* reagent dispenser: cleanup actions and `inventory` field on bound ui state
* reagent dispenser: cool reagent cards & finishing touches
* reagent dispenser: final cleanup and formatting
* reagent dispenser: `ButtonGrid` and `ReagentDispenserSetDispenseAmountMessage` refactor
* reagent dispenser: cleanup code & address minor concerns
* reagent dispenser: text in reagent cards no longer clips
* reagent dispenser: oh wait i forgot to change this and thats why the builds keep failing probably
* reagent dispenser mayybe this
* reagent dispenser: remove `using FastAccessors;`
* delete unused classes
* disable reagent button when container is empty
* Make things a bit bigger
* remove obsolete text color override
* Allow for Station Records interface for aghosts to delete records
* Fix record consoles not working when there are more than 2 crew members.
HOW DID NOONE NOTICE THIS SOONER???
* Stop being unconventional
* Vox stuff
* Species loadouts and lobby refactor
The control flow for lobby is all over the shop so I pulled it all up from the individual controls so now they handle the bare minimum required and LobbyUIController handles the rest.
* a
* Bulk changes
* a
* weh
* Character import / export
* finalise
* woops this stuff too
* Also datafield exporting
* comments
* Review
* Brings over changes from the original magic refactor PR
* Adds Master Spellbook, spellbook categories, WizCoin currency, and locale
* Wiz€oin™
* Adds currency whitelist to Spellbook preset, grants contained actions on action added.
* Adds grant contained action and remove provided action.
* adds a way for actions to be upgraded to the store
* Adds Fireball 3 and fixes action upgrade logic so that it checks if the action can level or if the action can upgrade separately
* Fixes upgrade logic in ActionUpgradeSystem to allow for level ups without an actual upgrade. Fixed action upgrade logic in store system as well
* Removes current action entity from the bought entities list and adds new or old action entity
* Removes Current Entity
* Removes old comments, fixes TransferAllActionsWithNewAttached
* Removes TODO
* Removes Product Action Upgrade Event
* reverts changes to immovablerodrule
* Removes stale event reference
* fixes mind action grant logic
* reverts shared gun system change to projectile anomaly system
* forgor to remove the using
* Reverts unintended changes to action container
* Adds refund button to the store
* Refreshes store back to origin.
* Refund with correct currency
* Init refund
* Check for terminating and update interface
* Disables refund button
* Removes preset allow refund
* dont refund if map changed
* adds refunds to stores
* Adds method to check for starting map
* comments, datafields, some requested changes
* turns event into ref event
* Adds datafields
* Switches to entity terminating event
* Changes store entity to be nullable and checks if store is terminating to remove reference.
* Tryadd instead of containskey
* Adds a refund disable method, disables refund on bought ent container changes if not an action
* Removes duplicate refundcomp
* Removes unintended merges
* Removed another unintended change from merge
* removes extra using statement
* readds using statement
* might as well just remove both usings since it won't leave the PR
* Fixes Action upgrades from stores
* Changes to non obsolete method uses
* Shares spawn code between instant and world
* Adds action entity to action event, adds beforecastspellevent, adds spell requirements to magic component
* puts prereq check in spell methods, sets up template code for before cast event
* checks for required wizard clothes
* Networks Magic Comp and Wizard Clothes Comp. Renames MagicSpawnData to MagicInstantSpawnData.
* Removes posdata from projectiles
* Speech > RequiresSpeech
* Fixes ActionOnInteract
* checks for muted
* popup for missing reqs
* Validate click loc for blink spell
* Checks if doors are in range and not obstructed before opening
* Check ents by map coords
* Adds speak event
* Comments spellbooks
* Removes comments
* Unobsoletes smite spell
* Invert if
* Requirements loc
* Fixes spell reqs
* Inverts an if
* Comment updates
* Starts doafter work
* Removes doafter references
* Balances fireball upgrades to be more reasonable
* Enables refund on master spellbooks
* Spells to do
* update spellbook doafter
* knock toggles bolts
* Touch Spell comments
* Comments for pending spells
* more comments
* adds spider polymorph to spellbook
* TODOs for spells
* reorganizes spellbook categories and adds wands
* fixes spacing and adds limited conditions
* commented owner only for future store PR
* reenables owner only for the grimoire
* fixes grimoire sprite
* Adds wizard rod polymorph
* summon ghosts event
* Moves rod form to offensive category
* Adds charge spell and loc for rod polymorph
* Oops forgor the actual chages
* Item Recall comment
* Fixes UI
* removes extra field for wizard rod
* Cleanup
* New Condition (INCOMPLETE)
* Fix linter
* Fix linter (for real)
* fixed some descriptions
* adds regions to magic
* Adds a non-refund wizard grimoire, fixes blink to deselect after teleporting, reduces force wall despawn time to 12 seconds
* removes limited upgrade condition
---------
Co-authored-by: AJCM <AJCM@tutanota.com>
* Adds wielding assets
* Modifies meta.json files and adds artist credit
* Adds wieldable component to a bunch of weapons
* Moves shotgun inhands and wield inhands to their own folders (because its the only way the sprites would work)
* Removes the wieldable component from some guns
* Adds wielding sprites for wieldable guns that didnt have them
* Adds gun wielding bonuses and base innaccuracy to wieldable guns.
* Corrects wielded accuracy to be default accuracy instead of perfect
* Makes the drozd smg and bulldog shotgun wieldable
* Makes nukie c20r wieldable and adds sprites
* Adds BaseGunWieldable
* Makes all the newly wieldable gun use the base inheritable
* Adds accuracy to smgs to resolve inheritance conflict
* Makes all wieldable shotguns require wielding to fire because of a bug involving spread innacuracy
* Adds wield bonus message on examine
* initial commit
* blindness trait now uses minDamage as suggested by deathride
* made fixes for review for shortsightedness
* review appeasal
* removed PermanentPoorVision & merged its functionality into PermanentBlindness
* add FireProtection system and event
* minor optimisation + make flammable use fire protection event
* add fire protection values to some things, nerf firesuit heat resistance
* bruh
* unrevert laser nerfs, make elite hardsuit fully fireproof
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* make storage close on lock
* formatting and comments
* Update Content.Shared/Storage/EntitySystems/SharedStorageSystem.cs
Co-authored-by: ShadowCommander <shadowjjt@gmail.com>
* Apply suggestions from code review
Co-authored-by: ShadowCommander <shadowjjt@gmail.com>
* Swap to foreach instead of for
Co-authored-by: Kara <lunarautomaton6@gmail.com>
---------
Co-authored-by: ShadowCommander <shadowjjt@gmail.com>
Co-authored-by: Kara <lunarautomaton6@gmail.com>
* create devicenet frequencies
* create borg transponder and give it to all nt borgs
* add robotics console
* actually implement battery charge display + some fix
* tab
* real explosion
* little safer
* disable destroy button clientside too when on cooldown
* m
* how do i do this when i review things...
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* webedit ops
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
* ui updates
* oracle java
* do a thing
* update ui when a borg times out
* maybe fix test
* add IsLocked to LockSystem
* make destroying gib the chassis again, so emagging isnt sus
* use locking
* require using alt click to unlock so normal click is open ui
* the
* use LogType.Action
* take this L
* pocket lint?
* sharer
* pro ops
* robor pushmarkup
* m
* update and make it not use prototype anymore
* frame0
* update yaml
* untroll
* bad
* h
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
* Weapon Reflection Movement Mechanic
Adds a movement mechanic to deflection.
Standing still gives you your best chance of deflecting a shot.
Moving lowers this to 2/3rds. Sprinting to 1/3rd.
This allows for robust players to express better and provides
counterplay to someone finding a goober-strong deflection
weapon, giving more design space.
As part of this PR I've also touched the numbers of a few swords,
shields, etc. and modified some descriptions to make them read
better. The balance numbers are not remotely final, but as intent:
1. All the sidearm swords (katana, cutlass, captain's sabre) have the same damage. There's no good reason the "ceremonial" blade the captain has doing more damage than a katana.
2. The Captain's Sabre has a 30% reflect chance, dropping to 20% when moving and 10% when sprinting. This one is controversial due to the recent nerf, I suspect: This could easily be 15->10->5?
3. The Energy Katana has a flat 30% reflect chance.
4. The meme Throngler has a 30% reflect chance, dropping to 20% when moving and 10% when sprinting.
5. The E-Sword has a 30% reflect chance, dropping to 20% when moving and 10% when sprinting.
6. The Double E-Sword has a mighty 75% reflect chance, dropping to 50% and then 25%.
7. Both reflective shields - Mirror and Energy - have a 95% deflect chance, dropping to 63% then 31%.
* Resolve PR comments.
* Weh?
* Reign in double esword a tad
* Shield nerfs no longer real
* Improve Mirror Cult desc
* Simple alert for deflection! No art yet.
* Added a new icon for deflecting
* Mega Antag Refactor
* last minute delta save
* more workshopping
* more shit
* ok tested this for once
* okkkkk sure
* generic delays for starting rules
* well darn
* nukies partially
* ouagh
* ballin' faded and smonkin wed
* obliterated the diff
* Spread my arms and soak up congratulations
* I've got plenty of love, but nothing to show for it
* but there’s too much sunlight
Shining on my laptop monitor, so I
Can’t see anything with any amount of clarity
* ok this junk
* OOK!
* fubar
* most of sloth's review
* oh boy
* eek
* hell yea!
* ASDFJASDJFvsakcvjkzjnhhhyh
* add shipyard code
* add shipyard preferred dock
* shipyard locale
* add the computer itself
* add all the pre rebase shuttles
* name the shuttle
* tweak all shuttle maps + fix test
* add some categories for future use
* rename nanotrasen to civilian
* update for new ui system and move remaining yaml into deltav folder
* good
* write tests
* wow
* helix price hike
* fix dirty dispose
* use deltav cvar file
* s
Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
---------
Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: Null <56081759+NullWanderer@users.noreply.github.com>
* Strip UI can now check for Thieving Component to see hidden items
* Admin Observers can now see hidden items in strip menu
* Felinid pickpocketing buffs
* Revert "Felinid pickpocketing buffs"
This reverts commit cfc6d80719.
* Revert "Admin Observers can now see hidden items in strip menu"
This reverts commit 496188729f.
* Removed mysterious line of code
* Response to review
* Removed more stuff unrelated to topic
* Responded to review regarding syntax
* Added IgnoreStripHidden to Felinids and Admin Observers
* Reimplement strip time multiplier with correct syntax
* Added strip time multiplier to Felinid and Admin Observer
* Added warning to tryGetSolution, moved SolutionContainer code to shared
- Added an optional warning (false by default) to print an error if a solution is missing when using tryGetSolution methods
- Moved ensuring solution containers to shared, left the old method stubs for compatability and marked them as obsolete.
* Update SharedSolutionContainerSystem.cs
* Update SharedSolutionContainerSystem.cs
* Update SolutionContainerSystem.cs
* Update SharedSolutionContainerSystem.cs
* Fixing ensuring chem solutions always returning false on client
- ensuring chem solutions will only return false on the client if it is waiting for a server solutionEntity to be synced
* Added concentration helpers
* fix whitespace
Using static Regex functions that take in a pattern is bad because the pattern constantly needs to be re-parsed. With https://github.com/space-wizards/RobustToolbox/pull/5107, the engine has an analyzer to warn for this practice now.
This commit brings most of content up to snuff already, though some of the tricker code I left for somebody else.
* Geras bug fixes
* oops
* its as shrimple as that
toggled transferName in the polymorph yml instead of using the system to manually change it
* its as shrimple as that (2.0)
fixed reviews for zombies having a dummy action, instead - properly implemented removal of action
* its as shrimple as that (3.0)
fixed tests by removing nameidentifier from slime (its already inherited, anyway)
* Optimise navmaps significantly
- Reduce the delta state size significantly.
- Remove AirtightChangedEvent because this will spam them out constantly.
* weh
* review
---------
Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
* Moved GasMixture to shared
* Temp Fix for sandbox violation, idk why Array.Resize isn't working properly. It's already sandboxed.
* The most powerful webedit in history
* Size based whitelisting
* namespace and misc refactor
* modern datafields, what will they think of next
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
* the future is now
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
* Update TagSystem to work with ProtoId lists
* I guess someone might run into these too, one day
* copypaste moment
* update to sawmill
* Okay, but what if it just worked
---------
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
* Basic emote radial menu
* Move out from corvax
* Move to UI controller & add to top menu bar and key bind
* Make emote play
* Add name localization for emotes
* Localize chat messages
* Fix emote menu
* Add categories localization
* Fixes
* Fix
* Add emotes entity blacklist
* Fix entity whitelist required all logic
* Remove unused wagging emote
* Revert sprite
* Set default texture for emote icon
* Update Resources/keybinds.yml
---------
Co-authored-by: Kara <lunarautomaton6@gmail.com>
* Tippy is BACK
* Clean up clippy from aprils fools
* Changed names from clippy to tippy, added localization, removed local_clippy command, made it easier to target a specific player
* Rename clippy.yml to tippy.yml
---------
Co-authored-by: Kara <lunarautomaton6@gmail.com>
* Hardsuits and softsuits count as having shoes for step triggers
* Add softsuit tag prototype
* Change to suitEVA tag
* Get rid of softsuit tag, found suitEVA tag
* Full pass of ShoesRequiredStepTriggerImmune
* Adds check to outerClothing for ShoesRequiredStepTriggerImmune
* return
* fuck Dionas
* Convert to comp, space dragons immune as well
* Merge conflict
* Merge conflict
* fix leftover tags
* empty spaces
* turns out the dragon didn't need it
* minor optimization
* Add access for system, add comp to baseShoes, check slotflags for every slot besides pockets
* fix
* fuck it we ball
---------
Co-authored-by: Plykiya <plykiya@protonmail.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
* feat(fax): Client fax file-print parses and stores label
* feat(fax): Fax machines print, copy, and send paper labels
* style(Fax): Comments and formatting
* feat(fax): Make fax admin logging more consistent and clear
* refactor(fax): Replace ternary with a simpler null coalescing
* refactor(fax): Make FaxSystem Send method signature consistent with Copy, PrintFile
* refactor(fax): Read entire file and process later instead of peeking first
* refactor(fax): Remove local variables only used for style
* style(fax): Fix some nearby style errors
* fix(fax): Undo an inaccurate change to admin log formatting
* refactor(fax): Separate `firstLine` variable
* fix(fax): Use Environment.NewLine
* bienvenidos
---------
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
* Added localization of groups and types: damage, metabolism (displayed in the guide book). The text for the health analyzer, weapon damage inspection is now taken from damage prototypes
* fix damage tests
* fix damage test yml
* fix damage test prototypes
* Update Content.Shared/Damage/Prototypes/DamageGroupPrototype.cs
* Update Content.Shared/Damage/Prototypes/DamageTypePrototype.cs
---------
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Fix handlabeler/utility belt misprediction
* Partly moved HandLabelerSystem to shared
And cleaned up HandLabelerComponent
* WIP format the files so later commits look clearer
Doesn't change individual code lines, but may move
functions to another file
* WIP some more code movement
* Hand Labeler is now mostly predicted
Only the UI isn't
* WIP: Formatting and moved stuff
* Using componentstates for prediction correction
* review
* Update label on label change
* Don't overwrite label while editing
---------
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
* Fix dropping carried entity when walking to a different grid and accidental escape from carrying
* Fix offset carrying
Better fix#1
* Add cancel escape action
* Add a popup shown when you're getting picked up
* Ported bag-carrying stuff (taking someone out of a bag makes you carry them, also allows to insert the carried person into a bag)
* Add sleeping inside bags
* Fix carrying mass contest
* Add the missing file
---------
Co-authored-by: Azzy <azzydev@icloud.com>
* Rodents can be Faxecuted (executed via Fax machine)
* use brute instead of new group.
* fax visuals now use tags for mouse and hamster instead of comps
* fix for ubuntu, damn ubuntu bane of my life
* cant copy hamlet, can now faxecute mothroaches.
* fix
* fix
* fixes
* removed ifs now using switch, removed hastag now using string.
* fixes and no more switch
* cleanup
* more cleanup
* fix
* cleanup
* moved damage out of faxmachine and into own system and component.
* changes
* fixes and done i think.
* tidy
* Fixes
---------
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
* Optimise navmaps significantly
- Reduce the delta state size significantly.
- Remove AirtightChangedEvent because this will spam them out constantly.
* weh
* review
---------
Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
Signed-off-by: null <56081759+NullWanderer@users.noreply.github.com>
It would try to pry the door and fail to resolve a prying component on the entity trying to open the door.
(cherry picked from commit 6eb681958be3bec1bf7798866237c0f2f79d98d2)
Requires https://github.com/space-wizards/RobustToolbox/pull/5023
This uses the new engine features (above) to add a displacement map shader. This allows deforming a sprite based on another sprite.
Primary use case is automatically adapting human clothing sprites to different species, something we want to make species like Vox a reality.
A basic example of wiring this up with Vox has been added. The system is however incredibly simple and **will** need more work by a content developer to select and toggle displacement maps when appropriate. I am leaving that to somebody else. For example right now the displacement map is applied even if a species already has custom-fit sprites for a piece of clothing, such as the grey jumpsuit for Vox.
Basic Aseprite plugins to help with authoring displacement maps have also been made.
(cherry picked from commit 2f7d0dedbded99a8f3f538c887c3c17aaa667501)
* Added keybind for scoreboard, starting work
* Fixed the window appearing
* Added loc text
* Updated namespace for ScoreboardUIController.cs
* Switched to UISystemDependency
"- UIControllers can use [Dependency] as normal for IoC services and other controllers, but must use [UISystemDependency] for entity systems, which may be null as controllers exist before entity systems do." Jezithyr — 10/12/2022 1:20 PM
* Reverted back to functional state
* Replace with UISystemDependency
* Move RoundEndSummaryWindow to ScoreboardUIController
* Convert to EntitySystem
* Clean up command bind
* Move to RoundEnd directory
* Remove Nukeops rule when no nukies
* Cleanup
* Change to toggle hotkey
* Cleanup
* Revert "Remove Nukeops rule when no nukies"
This reverts commit 5d4bbca09f45110b24a674d59b505be87b602b67.
* Cleanup
* Make the Toggle hotkey work in lobby
* Fix error
---------
Co-authored-by: SlamBamActionman <slambamactionman@gmail.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
(cherry picked from commit 8febdc5fc4851f44802bc675d90d3412bd0d4da6)
* Add UnwieldOverride variable that overrides unwielding inhand to enable other interactions
* Give LMGs UnwieldOverride
* logically inverted UnwieldOverride to UnwieldOnUse
* fixed typo
(cherry picked from commit 498109a833047d933a5f72edf87961542c516f58)
* Fix network configurator memory leaking
Doesn't dispose this window.
* Fix the other part
(cherry picked from commit 13c65378425e2d8254e8ed4e68061643b1245308)
* Move job info changing methods for id cards to shared
* Revert "Move job info changing methods for id cards to shared"
This reverts commit 95cbc46b2d1934fa7bf5c72d7d3de9f9168992a1.
* Reapply changes
(cherry picked from commit c122fdf183a8228ccba69cb747a86626ca9b5391)
* Fix UseDelay issues
- Fix it not predicting properly by deep-copying the classes (realistically they should be structs).
- Fix the `z` path not applying UseDelay similarly to the `e` path.
* click
(cherry picked from commit d745a788ea33616f06f5301f780e5c7dba3ae6c6)
* Upgraded UseDelay to support multiple delays per entity
* Implement secondary delay for bibles.
Also some improvements to make it work nicely.
* Documentation is good
* Reserve the previous change; now Storage uses the special ID and Bible uses the default.
* .0
* Added VV support to UseDelayInfo
* Serialize better
* No register, just setlength
(cherry picked from commit b292905216948e0c85b04e8ef65a5291dd868eee)
* Added selectable power level to radio jammer
* Cleaned up OnGetVerb
* Settings are now stored in the .yml file. Simplified stuff a lot!
* Minor fixes!
* Small little baby fix :)
* Added the power level switch to the examine menu and also removed the ftl file as it was in the incorrect location.
* Minor code cleanup
* Changed byte -> int
* Update sprite
* Fixed licence
* Added power LED that changes if the jammer is on low power.
* Removed tabs
* Changed github link to the commit
* Changed all the RemComp to RemComDeferred
* Moved NetworkedComponent to shared
* Changed radio jammer textures back with minor edits
* Added a space because it was annoying me
* Jammer now updates range for suit sensors properly! Thanks nikthechampiongr :)
* Removed useless comment
* Cleaned up code that updates the range of tracking devices.
* Fixed client namespace and removed newline
* Cleaned up ChangeLEDState and ChangeChargeLevel.
* Added comments
* Read only
* Fixed another comment
* Locked in
* Made server inherit shared
* Update Content.Shared/Radio/EntitySystems/SharedJammerSystem.cs
* Update Content.Shared/Radio/EntitySystems/SharedJammerSystem.cs
* review fixes
---------
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit d3b1178428e9e0e714e51523558335589078a76c)
* Always display item status panel fully
Initial feedback from the UI changes seems to be that a lot of people go "why is there empty space" so let's fix that.
* Fix item status middle hand being on the wrong side
I think I switched this around when fixing the left/right being inverted in the UI code.
* Minor status panel UI tweaks
Bottom-align contents now that the panel itself doesn't dynamically expand, prevent weird gaps.
Clip contents for panel
* Fix clipping on implanters and network configurators.
Made them take less space. For implanters the name has to be cut off, which I did by adding a new ClipControl to achieve that in rich text.
* Update visibility of item status panels based on whether you have hands at all.
This avoids UI for borgs looking silly.
Added a new "HandUILocation" enum that doesn't have middle hands to avoid confusion in UI code.
* Use BulletRender for laser guns too.
Provides all the benefits like fixing layout overflow and allowing multi-line stuff. Looks great now.
This involved generalizing BulletRender a bit so it can be used for not-just-bullets.
* Fix geiger word wrapping if you're really fucked
(cherry picked from commit 7b90c08a2c7315b2c5a6cb17dfd82a5ac9863a53)
* Properly network ClumsyComponent
* Fix being able to climb and bonk at the same time.
Also properly subscribe to AttemptClimbEvent by-ref.
* Update Content.Shared/Interaction/Components/ClumsyComponent.cs
(cherry picked from commit 480d26aba64865f1460c4ca82b8d341d98268670)
* Add NukeOps Test
* Update EvacShuttleTest to also check mapinit
* Update RuleMaxTimeRestartTest
* Fix cvar cleanup
* A
* Revert some changes
* comments
* Add MappingTests
* Finally fix the test
* A
* General slime improvements
* Finish morphing
* oops 2x2 not 3x3
* actually lets ball - 2x3 inventory
* Last two things on the todo list
* .\RobustToolbox\
* JUST COMPILE
* fix tests 2.0
* fix tests 3.0
* Do reviews
* minor change
* guideboob
* more
---------
Co-authored-by: Kara <lunarautomaton6@gmail.com>
(cherry picked from commit fd0ca42c58315b4c4f91fe9364c3dc3d88ba5624)
* Escape markup for in-game chat, and labeler
* different way
* remove a using
---------
Co-authored-by: wrexbe <wrexbe@protonmail.com>
(cherry picked from commit c93052c7553e5a495f70cffe435febc6157ab8b3)
* cant disguise to thing in a container
* copy cigarette visualiser
* prevent aghost throwing an error
* make disguises die in space
* fuck it rewrite it to not use polymorph
* fix action troll
* oop
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* LobbyUI fixes
I have no idea which were bugs prior but anyway fix stuff.
* More fixes
* Test moment
(cherry picked from commit fcd6c25242c195266c3b4c4aa2ed78922683567c)
Signed-off-by: NullWanderer <56081759+NullWanderer@users.noreply.github.com>
* SS14-26480 Roll Traversal Distorter into regular Artifact Analyzers
Bit of a grab-bag of cleanup of Xenoarchaeology prompted by #26480.
1. Traversal distortion biases are now "up" and "down" instead of "in" and "out".
2. Node generation has been tidied up to make it a little clearer how it works.
3. Traversal Distorters have been removed from the game along with their board.
4. Traversal distortion is now done by the artifact analyzers by default.
5. Some loc strings have been made clearer.
6. The Abnormal Artifact Manipulation tech has been made slightly cheaper.
7. The aformentioned tech is now localized as Artifact Recycling, given all it does is unlock the crusher.
8. The Xenoarchaeology guidebook entry has been given a bit of a rewrite, putting all information into
one page and making sure to cover the basics that otherwise would require someone typing "Liltenhead
artifact tutorial" into Youtube.
* Fix references to deleted guidebook entry
* Add fancy button to console because @EmoGarbage404 asked me to
* migration comprete
* Fixed a goober comment
* maint fails to resolve conflicts: more at 11
* Resolve PR comments
* Make UI nice
---------
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
(cherry picked from commit f059714a75601c73c0b7b917d0faac35c99f96fe)
* Added ClothingGotEquipped/ClothingGotUnequipped events
* Better version
* Implemented in a few places
* More implementations
* Add ClothingDidEquipped/ClothingDidUnequipped events
(cherry picked from commit 50631f430d62fc413bc8757f8d1e1c4523417816)
* THE RETURN OF ITEM STATUS
Item status is now inline with the hands again. You can now see item status for both hands at once.
If you have more than 2 hands, the last active hand of that side is displayed in the respective item status.
The item status for the active hand is also highlighted.
Item status has been given a new look so it looks unique and matches every UI theme.
* Shrink item status to 125px
This is going to require fixing the existing controls. Do that later.
* New bullet item status rendering
sex
* Make gun item status look just a little bit nicer.
Avoid only one or two bullets ending up on a single row of an item status.
* Delete Eris theme files
* More improvements
Fixed the fact that left/right were flipped around when assigning status panel locations. Involved renaming all the UI textures.
Redid how content margins are set from the theme. Less complex and cleaner now.
Made the item name always left-aligned, just looks better since other UI elements don't adapt anyways.
* Compact down item status text
Now it fits 3 lines of text on one line. Yay.
This is achieved by compacting RichTextLabels by reducing their line height and giving them a negative bottom margin.
* Add item status sprites for Ashen theme.
* Add status control to show beaker/bucket/jug solution/transfer volumes
Also PollingItemStatusControl I'll be using that more.
* Fix welder item status, clean up welder code
The item status control implementation was ancient and bad. That's why it was buggy.
Removed all the complex dated networking stuff for welders, we just sync the solution contents now anyways so none of that is needed anymore. This moves a buncha stuff to shared and just removes code.
Cleanup. The code was doing some really dumb stuff.
* Spray bottles show contents in item status.
* cowtools
* Fix plasmafire and clockwork themes.
Actual git gaslighting wtf.
---------
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 58f025ba8043bcf5c32204b08eec8ae9e5d2bd41)
* Make banpanel respect CCVars. Add CCVars for default ip/hwid/use last
details checkboxes.
* Move severity handling for server/role ban to another function
* Save sawmill
* Line goofyness
---------
Co-authored-by: Vasilis <vasilis@pikachu.systems>
(cherry picked from commit f96f92f54fe169d2e3a21356e07dfa50eca8b5d9)
* Adds the option to fit your viewport to your vertical screenspace
* fixes documentation
* Removes commented-out leftover
* Hides the viewport width slider and also we dont know if the viewport width causing stretching/squishing was a bug present before but we fixed that while we were at it
* Removes commented out leftovers
(cherry picked from commit 396c6133664de50f8d85133b3680292fa1b95be0)
Fixes crates masks not allowing them to go under plastic flaps + crates no longer can go trough windoors.
(cherry picked from commit 812abd33a0616aeedd9bea2952e4f0fb7bd31697)
* Made more things blessable
* Removed junk
* Remove whatever that was
* Make bowls blessable
* New mixablesolution component, converted everything to work with it
* Fix minor mishaps
* Fix extra spaces in bottle yml
* Fix last extra space, fix bottle havign the wrong solution name
* Remvoe unneeded event(I think), fix alcohol bottles not being mixable
* I missed cans
* add dirty calls to mask system
* among
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit 350843d2c02a77338f2be420e047477f0bc57d9d)
* fixes it
* Snout fix
* Partway commit
* Partway commit
* Update masks and helmets to use the new system
(cherry picked from commit 7aa4beede60cfe838e9d51e44c39872f7d035379)
* Chatfactor: Chat Repository, Admin Commands, Chat Created Events
This addition-only PR covers a repository that stores chat messages.
This PR defines what chat messages can be stored, what can be done
with those stored messages, and what events occur when the repository
does things.
This PR also includes to admin commands that show how the repository
will be used for administration purposes at first. Because all chat
messages will be uniquely identified per round (and, as rounds are
uniquely identified, are essentially a GUID) we can delete, amend
or nuke messages.
Note there's no "amend" command right now. The original chatfactor PR
didn't include one, and I'm avoiding further feature bloat with these
chatfactor PRs...
* Remove an event that shouldn't be in this PR
* Resolve PR comments.
* Resolve peak goober moment
* Also make sure we tell the user why if their delete command fails
* Supply a reason if the nukeuserids command is malformed
* Tidy messages
* Some more docstring tidyup
* Imagine tests handling IOC correctly chat
* Imagine tests handling IOC correctly chat
* Resolve PR comments
* Fix goobering with needing to use ToolshedCommand
* In which we bikeshed toolshed
* loud metal pipe sound effect
* One must imagine funny boulder pushing man happy
* Move commands to new folder
* Mald, seethe, cope.
* I hate toolshed I hate toolshed I hate toolshed
* Fix command ftls
* Bit of tidy-up and a YAGNI removal of a get we don't need yet
* Whelp lmao
* UserIDs are in a weird fucky state I didn't anticipate, so I've removed the remove-by-userID command for the time being.
* Rename ChatRepository to ChatRepositorySystem.
* Resolve PR review comments
---------
Co-authored-by: Your Name <you@example.com>
(cherry picked from commit b1136c98d7fde8cf26965817536324b58f192b11)
* Implemented Shakeable
* Prevent shaking open Openables
* Prevent shaking empty drinks. Moved part of DrinkSystem to Shared.
* DrinkSystem can have a little more prediction, as a treat
* Cleanup
* Overhauled PressurizedDrink
* Make soda cans/bottles and champagne shakeable. The drink shaker too, for fun.
* We do a little refactoring.
PressurizedDrink is now PressurizedSolution, and fizziness now only works on solutions containing a reagent marked as fizzy.
* Documentation, cleanup, and tweaks.
* Changed fizziness calculation to use a cubic-out easing curve.
* Removed broken YAML that has avoid the linter's wrath for far too long
* Changed reagent fizzy bool to fizziness float.
Solution fizzability now scales with reagent proportion.
* Rename file to match changed class name
* DoAfter improvements. Cancel if the user moves away; block if no hands.
* Match these filenames too
* And this one
* guh
* Updated to use Shared puddle methods
* Various fixes and improvements.
* Made AttemptShakeEvent a struct
* AttemptAddFizzinessEvent too
(cherry picked from commit cfa94be4c2044146298d07c703f3b71bc377ca63)
* texture appropriation
* add code for projector
* add chameleon projector yml
* damage and actions
* prevent small props being killed round removing you (700 damage from a single shot)
* tweak default
* oop
* do appearance properly, need engine update
* fix bugs, blacklist pda
* remove status icons
* amou
* sus
* fix test + make props fast
* amouuuung
* remove funny log
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit 395c33024cb9d4e80078e3ab3c70c1e92e7fd5bc)
* Optimized the drawing of lines and tracked entities
* Optimized nav map updating and added thin wall support
* Added support for thin doors
* Removed floor tile seams, more line drawing optimizations
* Fixed split grids not updating correctly
* Cleaned up NavMapControl code
* Fix nav map header
* Converted nav map updates from system network messages to delta-states
* Addressed review comments
* Fixed timing issue where NavMapSystem would update before AirtightSystem did
(cherry picked from commit 009d06d97833b7700bcfaa534b20575fdbbd7db5)
The gas analyzer now shows the volume of pipes, tanks, canisters and the environment.
Adjust gas analyzers so that the volume and number of moles shown corresponds to only the scanned element, e.g. a canister or single pipe in a pipenet.
(cherry picked from commit 5a5efa11cf1d68708a70d48a286cb97fde96afdf)
* Initial commit. No evil hidden files this time :)
* Added newline because I forgot :(
* We <3 tags :)
* Fixed! Works now
* Update Content.Shared/Weapons/Melee/MeleeWeaponComponent.cs
---------
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit afcdc8b8668a0504fd0392eaa1b6dcd36b4f1108)
* Added Jukebox, along with music for jukebox
* Fixed Jukebox meta.json copyright
* Removed songs I couldn't find a license for.
* Renamed files to solve check failures from spaces
* Added missing attributions.yml
* Fixed lack of description in Jukebox
* Jukebox is now constructable.
* Change Jukebox menu to FancyWindow
* Moved Jukebox messages out of jukebox component
* Removed Jukebox OnValueChanged.
* JukeboxComp now uses AutoGenerateComponentState
* Removed state code, since it's auto generated
* Fixed various Jukebox code to match conventions.
* Updated Standard.yml to match changed song list.
* fixes
* Jukebox workin
* Fix
* Polishing
* Finalising
* Revert
* bad
* jukey
* Reviews
* name
* Update submodule to 218.2.0
---------
Co-authored-by: iNVERTED <alextjorgensen@gmail.com>
(cherry picked from commit 2db374988c91c6ce5f932b9cee1ba251cbfb22e5)
* Fix some TryGetMind overrides relying on player data
* A
* Rider has bamboozled me
* Update `data.Mind` before attaching to entity.
(cherry picked from commit 229caa10bf3417858d2cbd7c1290af12dcad4acc)
* Clown shoes make you waddle, as God intended
* OOPS
* Toned down, client system name fix
* Tidy namespacing for @deltanedas
* Refactor to handle prediction better, etc.
* Resolve PR comments.
(cherry picked from commit ef42fb38061b29d7202eb6d65f1b658aecc43452)
* Reapply "Game server api" (#26871)
This reverts commit 3aee19792391cbfb06edb65d6f16f77da0f36f13.
* Rewrite 75% of the code it's good now
(cherry picked from commit 9d0dfcf2b9fa1b6ba54b3aa26a3f41982b945323)
* Implement changes on not-cooked branch
* Made it work
* Fix update appearance calls
* Fix extra indents, clean-up code, fix tests hopefully
* Fix hammy cagecrate
* Fix messing up the yml, add artifact crate specific labels back in
* Visual Studio hates yml, sad
* Seperate the colors for cargonia
* sorry json
* make label move with artifact door
* Apply suggestion changes
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
* Fix remaining crate offsets, add a few for livestock and graves (why are you labeling graves) and coffin label sprites (why are you labeling coffins??)
---------
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
(cherry picked from commit 96ad9002f1d6390bf666c74ddfd871a45a8fe1df)
Fix pulling when already pulling
The TryStopPull were failing due to wrong arguments provided.
Replacing the virtual item in hand with a different pull was failing due to the hand not being cleared.
Fix stop pulling checks that had the wrong variables provided.
VirtualItems are already queue deleted at the end of HandleEntityRemoved.
(cherry picked from commit 037a7d7d3d53a623f70a07908299e8fc4df1b4a5)
* Fixed mixed deconstruction times for tiles and lattice
* Lattice and power cables can be deconstructed instantly
(cherry picked from commit fc5a90be0da4801aa7ff1fbc996c2f55f8cb7ae7)
Revert "Game server api (#24015)"
This reverts commit 297853929b7b3859760dcdda95e21888672ce8e1.
(cherry picked from commit 3aee19792391cbfb06edb65d6f16f77da0f36f13)
* 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)
Fix tray scanner not updating it's range on change.
Add range value to the tray scanner state.to synchronize it between
client and server.
(cherry picked from commit 3d6d7820d641450ca6c6903edd20e85af311a8b6)
* 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>
- If the client tries to call ShowAlert while applying gamestates (e.g. initialising an entity) then this will cause problems. I need to double-check the initial PR before I'd be comfortable with this being merged.
(cherry picked from commit dd03612d8032050e4d60b8ac7fffae4d5911d422)
* 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)
* Fix rotation of dropped items
* combined world position rotation function for dumpable
* scuffed implementation?
* less scuffed?
* even less scuffed... I guess
* capital D
---------
Co-authored-by: Plykiya <plykiya@protonmail.com>
(cherry picked from commit 5aadb17be79f487f7b665035489dbe6f9fd6fdea)
* Make the advanced treatment modules beakers explosion-proof.
* undo changes
* Epic rename fail
* Explosion recursion data field
* Logic for data field
(cherry picked from commit 307a1c534dd132c8ce90b6fed79135452601a0b3)
* 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)
* 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)
Admins bypass doafters. As such, the code that runs on doafter
completion is ran before the sound is actually created. This then leads
to the sound never being stopped, and as such it would infinitely play.
This commit gets around the issue by manually stopping the sound should
the doafter fail to start. If we could be sure that the doafter would
never fail, then we could just move the call to StartDigging above
starting the doafter but this is currently not possible.
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 83374935262265679e554780bcd42017238f059a)
* stealthy hypo
* ExaminableSolution hand check when in covert implement.
ExaminableSolution now has 'hidden' datafield to enable chemical inspection only in hand.
* cleaning code
* more cleaning
* Hidden datafield renamed to HeldOnly
* review
---------
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 4e618e9387ffe9696e1241f6073aaa03e126832d)
* Block access to solutions in equipped spillables.
* Stop Drink verb appearing if the solution can't be accessed.
(cherry picked from commit 1b94e0156311c918d17c7de4b79fedd328e04efc)
* 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)
* Adds new Component: EmitSoundOnInteractUsing
* Missed an import
* File-scoping
* Replace ID check with Prototype check
* Moved component and system to shared. Set prediction to true.
* Removed impoper imports and changed namespace of component to reflect changed folder.
* Following function naming theme
* All this code is basically deltanedas's, but it was a learning experience for me
* Update Content.Shared/Sound/Components/EmitSoundOnInteractUsingComponent.cs
* Update Content.Shared/Sound/Components/EmitSoundOnInteractUsingComponent.cs
---------
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit daaa7c6de0d21c5b8d9c0b659eb62878a0410d3d)
* 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)
This increases the probability for the following effects caused by Ion Storms:
Chance to affect a Station Borg: 50% -> 80%
Chance to replace a Law: 10% -> 20%
Chance to remove a Law: 10% -> 20%
Chance to shuffle Laws: 10% -> 20%
(cherry picked from commit 649af483e486e99785e9a1517fa3263c0723034e)
* combine same-tile explosions in the same tick
* !
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit 355d00a0f2529a5beac6426837fad129d45a41a6)
* polymorph changes
Adds poly proto ids to polymorph action event and checks for proto id when performing
* nullable proto id
* Replaces instances of Polymorph prototype with a proto id and tryindex
* birdup
---------
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 06b14f30cd9267abcb135e6031a273905cf1ba40)
* 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)
* 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)
* Give 'em something to talk about
* Wire panel visuals
* Wire graphics tweak
* More ads and thanks
* More ads for a noisy arcade
* New screen for space villain machines
* Implement EmitSoundIntervalComponent and a bunch of arcade noises
* Require power for sounds
* Allow earlier startup intervals
* Orange glow
* Audio attributions
* Include the PR link
* Replace EmitSoundInterval with expanded SpamEmitSound
* Remove pacman-themed arcade sounds
* Documentation good.
* Updated methods to use Entity<T>
* Refactored SpamEmitSound to get rid of accumulator and chance.
* Fixed prewarm logic
* Moved stuff to Shared
* Fix outdated YAML
* Better prediction, auto pause handling
* Make enable/disable reset the timer instead of trying to save it.
(cherry picked from commit b1ba6b5bb615615cc58f255dc9fe84c5ffe8822b)
* Removed inconsistent broadcast cooldown whenever the "Announce" button is pressed on the communications terminal.
* Revert "Removed inconsistent broadcast cooldown whenever the "Announce" button is pressed on the communications terminal."
This reverts commit c730d6499b6908f6ae7c52e21d5338fa3b7eb80e.
* Reapply "Removed inconsistent broadcast cooldown whenever the "Announce" button is pressed on the communications terminal."
This reverts commit 3c2d66af865a11ca55eb0e98db58a955c0d70c00.
* -Removed cooldown entirely
(cherry picked from commit 578f7e4f2c1cde38e1c66fa2b5fbbb2903576dec)
* Fix test
* Kill float accumulators
* Use entity proxy methods
* DataField auto name generation where possible
* Kill comp properties
* Clean up server comps
* Make events record structs
* Clean up shared body code
* Clean up server body code
* Rename organ events to be same names as in med refactor
(cherry picked from commit 37b8d78dac047122fe77038bafb8e682132db3cd)
* Fix cuffs breaking after they stop being pulled
* Do proper interaction check for UncuffAttempt
* Minor cleanup
Take as much out as possible from _net.IsServer() if blocks.
Misc cleanup
(cherry picked from commit 4630e94c661f7af35610e24b7bd337bc30ef9fd5)
* Make mind shield implants unable to be implanted more than once
* Default AllowMultipleImplants to false and update implanters.yml
* Use TryComp instead of TryGetComponent
* Deny multiple implants for fun implants too.
* Make comment more precise
(cherry picked from commit 771390bb6741074935e5f24c0aa9c87bc7b5ad09)
* SS14-17313 Chat Censorship Systems
Adds some systems to manage chat censorship:
1. No-op: does nothing
2. SimpleCensor: a regex-free censor with a variety of rules to use
3. RegexCensor: a censor that uses regex.
This exposes a singleton backed by a builder pattern (ChatCensor) that
is set up, probably during the code init phase, and then globally available
for your censorship needs.
* Migrate to Shared
* Add a reset function to the builder.
* Resolve PJB's feedback; add unit tests
(cherry picked from commit bf98a6a8bb2a57fb149459d6b053eaaf6abc8cd7)
* Add DeviceNetworkJammerComponent & System
Allows for entities to "jam" DeviceNetwork packets.
Whenever a device attempts to send a packet, the
DeviceNetworkJammerSystem listens for the BeforePacketSentEvent.
From there if any entity with the jammer component is within range of
either the sender or receiver of the packet the event will be cancelled.
Additionally jammers can only block packets in certain networks. If a
packet is not being transmitted in one of the networks it can block then
even if the jammer is in range the event will not be cancelled.
The range is stored in the jammer component along with the networks it
can jam.
Jammable network ids are stored as strings which seems to be how custom
networks are stored (E.g. network ids for suit sensors).
To allow for all of this, the BeforePacketSentEvent was modified to
provide the NetworkId.
* Make JammerSystem for the radio jammer use the DeviceNetworkJammer. Remove redundant event.
* Replace calls to TryDistance with InRange
(cherry picked from commit 266cc85f57c883b3a604a66da91d94bb1e18ec5d)
* make landmine work on stepping off
* update methods naming
* made both step modes possible
* updated stepoff event raise to not interfere with game physics internals
* added comments
* figuring out how audiosystem works
* added beep sound effect, updated how stepoff trigger works to make it more consistent
* updated source in attributions.yml
* made stepoff working every time
* introduced suggested changes
* updated janitor's WetSignMine to have audio
* made cleaner events and bashing my head at OnEndCollide event raise
* inverted conditional where applicable
* review
---------
Co-authored-by: Yurii Kis <yurii.kis@smartteksas.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 54dd273f660d6d8d523d0771bb8d8437373b082e)
* haunted dungeon
* Initial work
Still needs prefab gen work to make it interesting.
* ime a worm
* weh
* Work
* Slight tweaks
---------
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 952b7f4c4e8e957c0c3765f7b20f2745c9297e27)
* Remove second shove check.
* Change when popups and sounds are created.
Reduces phantom shoves that feel bad.
* why didn't i think of this i saw it earlier...
* Replaced Is fields with prefix
* remove some dependencies to fix tests???
(cherry picked from commit 5a2c74499889f80393a90335b182632cfbe8e2fb)
* Fix bypassing bonking with verb
* Revert "Fix bypassing bonking with verb"
This reverts commit efa0f0f5777b893bcee5a852994cfa1e3fda3e71.
* Properly refactored BonkSystem.
* Oh hey, this is redundant now
* Better solution
* Reduced default bonk chance from 75% to 50%
* Also do a little grammar fix
* Moved BonkChance from BonkableComponent to ClumsyComponent.
* Revert "Moved BonkChance from BonkableComponent to ClumsyComponent."
This reverts commit 0acbd9273f20ec478692603781adf15e06e5ed41.
* Another little grammar fix
* Matched default bonk doAfter length to default climb doAfter length
* Fixed duplicate popups
* Check CanVault with verb use too. Add granularity to ClimbingComponent and remove Leg/Foot requirement.
* Don't show verb if you can't climb
* Removed CanForceClimb
* byref record struct
(cherry picked from commit 225bc3c5aeffbef6286b607b02cd24a8ad75a437)
Fix puller not being improperly unset on PullableComponent while being unpulled.
When unpulled, the pullableComp has its puller field set to null after the message signifying the pulling has stopped
has been sent. Since the component has a field to determine whether its owner is being pulled which is determined by
the puller field, systems listening on the event would think that the owner of the component was still being pulled.
(cherry picked from commit a6c018d755ee4f35fb8e3ab597fa90c7592fe920)
* 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)
* Merge BreakOnWeightlessMove and BreakOnMove. Provide different theshold for weightless movement.
* Adjust WeightlessMovementThresholds. Put a thing I forgot to put in the doafterargs.
* Make DoAfterArgs only use OnMove to determine whether to check for
movement and MoveThreshold to determine the threshold regardless of
weightlessness. Gave DistanceThreshold a default value which will always
be checked now.
* Fix issue introduced by merge.
* Use interaction system for determining whether a distance is within range
* Fix incorrect doafter args introduced by previous merge.
Forgor to commit these.
* Exorcise ghost.
The execution system should have been deleted when I merged previously.
For a reason I cannot comprehend it came back, but only the execution
system.
* Exorcise ghost Pt. 2
* Allow for movement check to be overriden in zero g and adjust doafter args where needed.
You can now override checking for movement in zero g with the BreakOnWeightlessMove bool. By default it will check.
The following doafters were made to ignore the movement check in zero g:
- Healing yourself with healing items,
- Removing embedded projectiles,
- Using tools like welders and crowbars
* Adjust distance for cuffing/uncuffing to work. Make injections not break on weightless movement.
* Fix evil incorrect and uneeded comments
(cherry picked from commit 362d56981fd7654f6ebec36f16cc8fabdd04b6a7)
* 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)
* Removes items from containers in reclaimers
* Made it into an event instead
* Sloth review comment
* Fix indentation and rename field
(cherry picked from commit d7484ae9f57477a5ec5c575e3077aa94c0564db6)
* 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)