Commit Graph

5 Commits

Author SHA1 Message Date
SkyratBot
6267efa456 [MIRROR] Makes deadchat control's examine only shows up for ghosts (#4380)
* Makes deadchat control's examine only shows up for ghosts (#57926)

This PR early returns the on_examine proc for deadchat control if the examiner is not an observer.
So, only ghosts (deadchat) are allowed to see if something is under deadchat control. Humans don't need to know (or shouldn't know) if deadchat is expanding its reach into the physical realm.

* Makes deadchat control's examine only shows up for ghosts

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2021-03-24 23:36:00 +00:00
SkyratBot
679bff1671 [MIRROR] Adds more admin memery and deadchat_control options to immovable rods. (#3418)
* Adds more admin memery and deadchat_control options to immovable rods. (#56888)

Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>

* Adds more admin memery and deadchat_control options to immovable rods.

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2021-02-16 00:13:31 +00:00
SkyratBot
0efb064972 [MIRROR] Deadchat plays everything - A simple way for admins to let deadchat control things. (#2337)
* Deadchat plays everything - A simple way for admins to let deadchat control things. (#55314)

* Deadchat plays things

* Pocket lint

* View those variables

* Arr var

* Arrr save changes and don't code while drunk

* Loog dot exe

* Big ol' changes

* Deadchat plays everything - A simple way for admins to let deadchat control things.

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-12-26 23:47:28 +01:00
SkyratBot
e65a48e91f [MIRROR] Adds SIGNAL_HANDLER and SIGNAL_HANDLER_DOES_SLEEP to prevent signal callbacks from blocking (#430)
* Adds SIGNAL_HANDLER and SIGNAL_HANDLER_DOES_SLEEP to prevent signal callbacks from blocking (#52761)

Adds SIGNAL_HANDLER, a macro that sets SHOULD_NOT_SLEEP(TRUE). This should ideally be required on all new signal callbacks.

Adds BLOCKING_SIGNAL_HANDLER, a macro that does nothing except symbolize "this is an older signal that didn't necessitate a code rewrite". It should not be allowed for new work.

This comes from discussion around #52735, which yields by calling input, and (though it sets the return type beforehand) will not properly return the flag to prevent attack from slapping.

To fix 60% of the yielding cases, WrapAdminProcCall no longer waits for another admin's proc call to finish. I'm not an admin, so I don't know how many behinds this has saved, but if this is problematic for admins I can just make it so that it lets you do it anyway. I'm not sure what the point of this babysitting was anyway.

Requested by @optimumtact.
Changelog

cl
admin: Calling a proc while another admin is calling one will no longer wait for the first to finish. You will simply just have to call it again.
/cl

* Adds SIGNAL_HANDLER and SIGNAL_HANDLER_DOES_SLEEP to prevent signal callbacks from blocking

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2020-08-19 20:17:28 -04:00
TheChosenEvilOne
e0bcd2538f [Ready] Deadchat control component, also a chance for deadchat controlled birdboat. (#47110)
* Dead chat controlled singularity!
It just can't go wrong.

Signed-off-by: TheChosenEvilOne <tceo-email@protonmail.com>

* Renames the input_cooldown var to make more sense.

Signed-off-by: TheChosenEvilOne <tceo-email@protonmail.com>

* Begone ugly checks.

Signed-off-by: TheChosenEvilOne <tceo-email@protonmail.com>

* oh yeah, I can just do this.

Signed-off-by: TheChosenEvilOne <tceo-email@protonmail.com>

* Replaced the deadchat control with a component.

Signed-off-by: TheChosenEvilOne <tceo-email@protonmail.com>

* Autodoc

Signed-off-by: TheChosenEvilOne <tceo-email@protonmail.com>

* Removed the leftover global list.

Signed-off-by: TheChosenEvilOne <tceo-email@protonmail.com>

* Possessed goose, bye singularity.

Signed-off-by: TheChosenEvilOne <tceo-email@protonmail.com>

* vomit

Signed-off-by: TheChosenEvilOne <tceo-email@protonmail.com>

* Deadchat plays singularity

Signed-off-by: TheChosenEvilOne <tceo-email@protonmail.com>

* Removed global mode completely, also reviews.

Signed-off-by: TheChosenEvilOne <tceo-email@protonmail.com>

* Reviews.

Signed-off-by: TheChosenEvilOne <tceo-email@protonmail.com>

* alrighty then

Signed-off-by: TheChosenEvilOne <tceo-email@protonmail.com>
2019-10-23 22:00:22 +02:00