* Added checks to not target AIs and people in containers
* made the change to use IsEntityInContainer. Much Better!
* returned old Mindquerry and removed wrong use of admin logger
* guard statment
* removed unnecessery refs and fixed position swap
* Minor change
---------
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
This code was a mess. Now it's less of a mess and user UserDbDataManager now.
Fixes the following bugs:
* If you connect to a server, restart your client, connect again in the same round, you role bans would not be visible in the client.
* If you role ban somebody who is not connected to the server, then they connect within the round, they will only have the recently-applied ban.
Likely fixes#24781, #27282
* Fix some rounds failing to end due to mind roles
Fixes#32791
This is caused by ShowRoundEndScoreboard running into a bug trying to display antags: some player is showing up as antag with MindIsAntagonist(), but has no antag roles listed in MindGetAllRoleInfo().
This was caused by one of the roles of the player having the Antag boolean set, but having no AntagPrototype set.
The responsible mind role appeared to be MindRoleSubvertedSilicon which is missing a set for the SubvertedSilicon antag prototype.
I also added resilience to the round-end code to make it so that an exception showing the scoreboard (and sending the Discord message) would not cause the round end logic to completely abort from an exception.
I am planning to add an integration test to cover this bug (no prototype in mind roles), but I'll leave that for not-the-immediate-hotfix.
* At least one maintainer approved this tiny PR without reading it, not naming names.
* 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>
* Make NameIdentifier Ids get refreshed after round restarts
Before this commit the existing values would just get shuffled.
This means that eventually the server would run out of ids to give to
new entities for different groups. As a result everything would get id 0
* Comply with what seemingly is the convention for sawmills
* Make it impossible to insert a bounty with a duplicate id
* Reduce duplication
* Remove unused sawmill
* Fix rustbrain and skill issue
* Aaaa
* Apply suggestions from code review
---------
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
* 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
* Fix error log when recycling something with small material counts.
MaterialStorageSystem.SpawnMultipleFromMaterial now doesn't call StackSystem.SpawnMultiple if it tries to spawn zero. This happens because the recycler calls SpawnMultipleFromMaterial for everything recycled, even if the amount it has stored is < the amount for one sheet.
* Update Content.Server/Materials/MaterialStorageSystem.cs
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* 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>
* 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>
* initial commit
* adds cartridge to cmo's locker
* tidies up yml, adds default scanner sound, makes it so the silent property silences the scanner sound too
* fixes ert medic pda not having it preinstalled
* adds attribution
* removes redundant dependencies
* fix agent pda
---------
Co-authored-by: archrbx <punk.gear5260@fastmail.com>
* Add Firebots
Had to add OnActivateInWorld to the spray system to get the bot to work. Checks for the flammable component and if the onFire boolean is true.
* Make SpraySystem actually use useDelay
got rid of that TODO
* Added firebot speech
Fire detected!
The comparison for doing gas exchange used current and not archived
moles. This could lead to update order-dependent gas spreading effects.
To fix this, convert TileAtmosphere's MolesArchived and
TemperatureArchived to a AirArchived, and use that in the comparison
method.
---------
Co-authored-by: PraxisMapper <praxismapper@gmail.com>
Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>
* 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 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