* Scope creep my ass
* why was this shit not pushed????
* gone...
* fix that
* review plus buildd
* asfsafsafsafsafas
* grug
* burber
* I'll fix this later
* shrimply die
* also this
* it's snerf or snuthin
* assaads
* round snend
* aaaa
* fix this shit for real
* actually, don't start GameRules until MapInit now that I think aboot it.
* forgot u
* don't actually need this part nullable
* Deffer comp removal
* one liner
* do that too
* chungus
* Honestly makes more sense here, plus WHY are we doing all that shit on "GameRuleAdded" rather than GameRuleStarted(?)
* deferred removal :V
* aaaaaaaaaaaaaaa
* whhop
* Whoop
* better
* landmine that I placed for myself then forgot about lmao
* cleanup
* FUCKING `!`
* gotovo
* amogus
* please don't check by metadata I beg
* waawsasfdfsasfa
* sfafsasfafsas
* fdsaasffsasfa
* code
* fix
* fasasffasfasfsad
* chungaas
* I may be stupid
* gra
* graaaaaaaaaaaaaaaaa
* comment
* gra
* clearing is not predicted and would require major refactors, so don't cache on client.
* lame shit :P
* last holes
* nukeopsfsafsasafsfafsa
* why was that shit public bruh
* bubrbgwahrghfaka
* dynamic
* revert change that did nothing lmao
* Make every EntitySystem partial
* Oobs thats for a diff PR
* Also oops on that one
* Test systems
* git are we fr
* Update file templates
* cleanup empty classes while we are here
* forgor
---------
Co-authored-by: AJCM-git <ajcm_mail@disroot.org>
* icon group prototype
* prototype v2
* agent id uses groups
* working UI using groups
* UI work, new header
* formatting and misc work
* fix some texture scaling
* aesthetics
* tabs, scrollbar, MinSize
* commit
* commit
* commit
* commit
* Revert "commit"
This reverts commit 8f29ae30c69670c6dc8d5fba3dd6bd98f574830d.
* we're back
* well enough
* Final visuals for the Id (for now)
* code cleaning
* minor cleanup
* self review
* id card system changes
* try index -> resolve
* DisposeAllChildren -> RemoveAllChildren
* fix the id cards
* all pretty
* unneeded
* merge
* Review by Fildrance
* Review by Pok
* fix
* cleanup
* refactor: revert icon setsize changes back to good old '32', made container button be resizable for localization reasons
* jobIconGroup
---------
Co-authored-by: iaada <iaada@users.noreply.github.com>
Co-authored-by: Pok245 <113675512+Pok27@users.noreply.github.com>
Co-authored-by: Fildrance <fildrance@gmail.com>
* Remove all IPrototypeManager instances
* Remove redundant IComponentFactory instances too
* Found some stragglers
* DestructibleSystem.PrototypeManager: no dependency
* not based
* Validate string lengths serverside
* Organize usings
* Remove clientside check
* Also remove the cvar caching in the UI
It's one dictionary call, Michael. What could it cost?
* Initial commit
* Include uncertain crew and make it work for AI
* Add new definition to Silicon Rules 8
* Update based on review
* Remove Cluwne from job list
* ProtoIdify
* Update and also make monkey/corgi show IDs
* Remove unnecessary property
* Remove redundant code
* Carrrrd
* cleanup
* Nicer code
* Update to fix the spawn bug + agent ID
* Fix new icons
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* add door control module
* some commentary
* can't eject stuff anymore
* make xenoborg door remote eletrify doors
* clean yml
* anchors and aliases
* not show stuff about id in xenoborg access config
* engi xenoborg can see eletrified doors
* Update DamageableSystem to modern standards
* DamageContainerId -> DamageContainerID with lint flag
* Replace strings with protoids
* Make CVar subscription declarations all consistently whitespaced
* ChangeDamage -> TryChangeDamage, cope with C# jank
* Revert event signature changes
* Restore a comment
* Re-add two queries
* Init the queries
* Use appearanceQuery in DamageChanged
* Use damageableQuery in TryChangeDamage
* Use damageableQuery in SetDamageModifierSetId
* Final cleanup, fix sandboxing
* Rectify ExplosionSystem:::ProcessEntity's call to TryChangeDamage
* Re-organize DamageableSystem
* first big fuck you breaking change.
* THATS A LOT OF DAMAGE!!!
* Fix test fails
* test fixes 2
* push it
---------
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
* move to shared
* entity effect to shared
* refactor: whitespaces+xml-doc typo fixups
* refactor: a little bit more of xml-doc typos fixups
---------
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
* Fix usages of TryIndex()
Most usages of TryIndex() were using it incorrectly. Checking whether prototype IDs specified in prototypes actually existed before using them. This is not appropriate as it's just hiding bugs that should be getting caught by the YAML linter and other tools. (#39115)
This then resulted in TryIndex() getting modified to log errors (94f98073b0), which is incorrect as it causes false-positive errors in proper uses of the API: external data validation. (#39098)
This commit goes through and checks every call site of TryIndex() to see whether they were correct. Most call sites were replaced with the new Resolve(), which is suitable for these "defensive programming" use cases.
Fixes#39115
Breaking change: while doing this I noticed IdCardComponent and related systems were erroneously using ProtoId<AccessLevelPrototype> for job prototypes. This has been corrected.
* fix tests
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Add the chameleon controller implant
* address the issues (Git please dont kill me)
* Address the review and fix some merge conflicts!
* Cleanup
* Add use delay
* Silly mistakes
* Making a PR at 2 am: Gone wrong
* Predict use delay and disable the buttons until you can choose another
* First phase custom clothing
* Better system, now relays to agent id and mindshield. Chameleon loadouts are a lot better to work with as well
* Address the review! No more evil goto
* Slams way is better I should have read more closely xD
* Some of the jobs
* Add to Cargo, CentComm, Service, Passenger, Ninja, Cluwne, Wizard + Minor changes to existing; Add chameleon to bandanas, medals, jugsuits and HUDs
* Add everything else
* Fix test
* Job name
* This looks better
* Add department organization
* Minor cleanup
* Added some mindshields
* Remove redudent comment and change funcion name to be clearer
* Fix cluwne outfit
* fix merge conflicts
---------
Co-authored-by: SlamBamActionman <slambamactionman@gmail.com>
* add a universal ID card to the universal access config
* make the admin access config have infinite range
* now checks for the BypassInteractionRange Tag instead
* Add suggested fix to the AccessOverrider system
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* remove other stuff I added
* another suggested change to avoid weird behaviour where you can use it from a distance
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Add id binding system
* Change so it activates when added too
* Add to eventhumanoid
* Add PDA binding, try to fix some things
* Still not fixed, PDA is working right
* Move to server, add on mind instead
* Implement suggestions
* Fix things
* Finish review stuff
* Messed up cluwne
* Remove after only changing id too
---------
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
* 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>
* 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 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>
* THE syndie microwave
* Always burn to explode microwave when copying
* Make it so copying ids stop when the microwave is goign to explode
* Made explosion destroy the board and spit out the machine parts
* Move logic is MicrowaveSystem, make metal cooking use the same logic
* Fix passing the wrong malfunction time
* Shuttle cannot escape aggressive branding
* Always make it explode with an id
* Forgot to invert bool, move it after fry chance