* 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 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
* 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)
* Make department / job list sorting consistent.
This makes late join, crew manifest and character profile all apply consistent sorting for jobs and departments.
We use the already-defined weights for departments (so command, then sec, then station specific, then just sort by prototype ID). Jobs also use weight (so heads are always at the top) then prototype ID, then character name (for manifest).
Removed the crewmanifest.ordering CVar as doing it via prototype weight is just easier, and that CVar was already a mess anyways.
* Fix jittery job icons in lists.
They were set to KeepCentered in TextureRect. This has issues because the allocated space is actually an odd number of pixels, so it tries to position the draw at a half pixel offset.
Now, yes, fixing this in TextureRect would make much more sense, but get off my back. (Ok seriously we need better helper functions for doing that in the engine. Don't wanna deal with that right now and I already have this patch made.)
Instead I'm just gonna fix the issue by using VerticalAlignment in all these places instead which ends up doing exactly the same thing YIPPEE.
Also gave a margin next to the icon on the crew manifest. Margins people!
(cherry picked from commit 715794dd414c5d4b794cd6f2201983ecbc5d4f17)
* Save round information into the replay
* Add round end text too
* This is way better
* Get actual job
* oop
* OK THERE
* Fake line endings to make life easier
* I was told this yaml is legal
* I just realised this will make my life easier
* REVIEWS BABY IM A PROGRAMMER MOMMY
* Live pjb reaction
* Live pjb reaction 2
* Reviews 2
* Dont need this
* Please no more have mercy on my soul
* Oh frick
(cherry picked from commit cb999d23f4b15e1c182e1ae4bf2e414306822f89)
* It begins
* Delete error.txt
* Patch by Debug
* HIDING WINGS NOW WORKS
* Runs smoother from Shared
* Delete HarpyVisualsSystem.cs
* The entire clientside script is no longer needed, and the visuals now work correctly. Helmetbug is gone.
* Update HarpyVisualsSystem.cs
* First completed Harpy Hardsuit
* Captain and Atmos tech birdsuits
* Update hardsuit-helmets.yml
* And more content
* Adding new finch tail <3
* whoops
* guh
* I swear the tail works now, I just need the adhd meds to kick in
* birb juggsuit
* More stuff
* Nukie hardsuits
* fixing clipping issues on birb juggsuit
* Update meta.json
* aaaaaaaaa
* two more
* Ton of extra harpy sprites
* Create equipped-INNERCLOTHING-harpy.png
* Harpy Ultravision trait
TODO: Optional trait that disables it
* Trait that removes Ultravision
* Code optimizations
* Adding hueshift maps to all harpy markings
* No more jumpsuits
* 1984 the harpy jumpsuits, they are no longer needed
* last 2
* final QA pass
* shennanigans related to an earlier merge conflict
---------
Signed-off-by: VMSolidus <evilexecutive@gmail.com>
* Adds Visitor role and ShowInIdCardConsole property
* Add visitor to Agent ID card
* Fixes yaml test
* Fixes based on feedback
* Fixes based on feedback
(cherry picked from commit 1862f8aa1745f147fa54428179e568c9298a9fda)
* Update job priorities when job requirements are getting updated
* Sort jobs by weight and then by the name
* Sort departments too
(cherry picked from commit 4f307a49be5796eaa7b02f5988a83ea04db95535)
* add primary departments
* make command and station specific secondary
* add a unit test
* fixy
* compile
* webedit ops
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
(cherry picked from commit d1d11d09c7a2698fa723c11a910258f69c3d7b9e)
* Revert "Removes Prisoner selection from maps (#262)"
This reverts commit d73f485fa2.
* Fix alwaysUseSpawner, add DesiredSpawnPointType
Prisoners are now forced to spawn in the prison again.
* Updated map prototypes for prisoner
Yaaay, we love confinement!
* Update asterisk.yml
Add a drain to the cell area :trollface:
---------
Co-authored-by: Colin-Tel <113523727+Colin-Tel@users.noreply.github.com>
* Extended access system
Allows jobs to specify "extended" access levels, which will be granted if the round-start crew count is below a certain threshold.
* Extended accesses for jobs
* Spook
* Partial work on StationSystem refactor.
* WIP station jobs API.
* forgor to fire off grid events.
* Partial implementation of StationSpawningSystem
* whoops infinite loop.
* Spawners should work now.
* it compiles.
* tfw
* Vestigial code cleanup.
* fix station deletion.
* attempt to make tests go brr
* add latejoin spawnpoints to test maps.
* make sure the station still exists while destructing spawners.
* forgot an exists check.
* destruction order check.
* hopefully fix final test.
* fail-safe radstorm.
* Deep-clean job code further. This is bugged!!!!!
* Fix job bug. (init order moment)
* whooo cleanup
* New job selection algorithm that tries to distribute fairly across stations.
* small nitpicks
* Give the heads their weights to replace the head field.
* make overflow assign take a station list.
* moment
* Fixes and test #1 of many.
* please fix nullspace
* AssignJobs should no longer even consider showing up on a trace.
* add comment.
* Introduce station configs, praying i didn't miss something.
* in one small change stations are now fully serializable.
* Further doc comments.
* whoops.
* Solve bug where assignjobs didn't account for roundstart.
* Fix spawning, improve the API.
Caught an oversight in stationsystem that should've broke everything but didn't, whoops.
* Goodbye JobController.
* minor fix..
* fix test fail, remove debug logs.
* quick serialization fixes.
* fixes..
* sus
* partialing
* Update Content.Server/Station/Systems/StationJobsSystem.Roundstart.cs
Co-authored-by: Kara <lunarautomaton6@gmail.com>
* Use dirtying to avoid rebuilding the list 2,100 times.
* add a bajillion more lines of docs (mostly in AssignJobs so i don't ever forget how it works)
* Update Content.IntegrationTests/Tests/Station/StationJobsTest.cs
Co-authored-by: Kara <lunarautomaton6@gmail.com>
* Add the Mysteriously Missing Captain Check.
* Put maprender back the way it belongs.
* I love addressing reviews.
* Update Content.Server/Station/Systems/StationJobsSystem.cs
Co-authored-by: Kara <lunarautomaton6@gmail.com>
* doc cleanup.
* Fix bureaucratic error, add job slot tests.
* zero cost abstractions when
* cri
* saner error.
* Fix spawning failing certain tests due to gameticker not handling falliability correctly.
Can't fix this until I refactor the rest of spawning code.
* submodule gaming
* Packedenger.
* Documentation consistency.
Co-authored-by: Kara <lunarautomaton6@gmail.com>