Self-Surgery (#7671)

* Allows organics to self-surgery after standing still for 5 seconds. It follows the same rules as normal surgery.

* Confirm-by-delay for self-surgery steps.

* Verb to toggle self-surgery.

* Add log.
This commit is contained in:
Mechoid
2020-11-18 13:55:33 -08:00
committed by GitHub
parent 499c248712
commit b411c75a19
6 changed files with 38 additions and 8 deletions

View File

@@ -52,6 +52,8 @@
dna.real_name = real_name
sync_organ_dna()
verbs |= /mob/living/proc/toggle_selfsurgery
/mob/living/carbon/human/Destroy()
human_mob_list -= src
for(var/organ in organs)

View File

@@ -70,4 +70,7 @@
var/makes_dirt = TRUE //FALSE if the mob shouldn't be making dirt on the ground when it walks
var/looking_elsewhere = FALSE //If the mob's view has been relocated to somewhere else, like via a camera or with binocs
var/image/selected_image = null // Used for buildmode AI control stuff.
var/allow_self_surgery = FALSE // Used to determine if the mob can perform surgery on itself.

View File

@@ -15,3 +15,13 @@
layer = HIDING_LAYER //Just above cables with their 2.44
plane = OBJ_PLANE
to_chat(src,"<span class='notice'>You are now hiding.</span>")
/mob/living/proc/toggle_selfsurgery()
set name = "Allow Self Surgery"
set desc = "Toggles the 'safeties' on self-surgery, allowing you to do so."
set category = "Object"
allow_self_surgery = !allow_self_surgery
to_chat(usr, "<span class='notice'>You will [allow_self_surgery ? "now" : "no longer"] attempt to operate upon yourself.</span>")
log_admin("DEBUG \[[world.timeofday]\]: [src.ckey ? "[src.name]:([src.ckey])" : "[src.name]"] has [allow_self_surgery ? "Enabled" : "Disabled"] self surgery.")