diff --git a/code/datums/status_effects/status_effect.dm b/code/datums/status_effects/status_effect.dm
index 896f4f999a9..74abf104465 100644
--- a/code/datums/status_effects/status_effect.dm
+++ b/code/datums/status_effects/status_effect.dm
@@ -41,6 +41,9 @@
LAZYREMOVE(owner.status_effects, src)
on_remove()
owner = null
+ if(linked_alert)
+ linked_alert.attached_effect = null
+ linked_alert = null
return ..()
/datum/status_effect/process()
@@ -85,6 +88,13 @@
desc = "You don't feel any different..."
var/datum/status_effect/attached_effect
+/obj/screen/alert/status_effect/Destroy()
+ if(attached_effect)
+ attached_effect.linked_alert = null
+ attached_effect = null
+ return ..()
+
+
//////////////////
// HELPER PROCS //
//////////////////
diff --git a/code/game/objects/items/devices/enginepicker.dm b/code/game/objects/items/devices/enginepicker.dm
index fe6bb7e8717..a2fa30a243b 100644
--- a/code/game/objects/items/devices/enginepicker.dm
+++ b/code/game/objects/items/devices/enginepicker.dm
@@ -14,8 +14,12 @@
var/list/list_enginebeacons = list()
var/isactive = FALSE
+/obj/item/enginepicker/Destroy()
+ list_enginebeacons.Cut()
+ return ..()
+
/obj/item/enginepicker/attack_self(mob/living/carbon/user)
- if(usr.stat || !usr.canmove || usr.restrained())
+ if(user.incapacitated())
return
if(!isactive)
diff --git a/code/game/objects/items/devices/radio/beacon.dm b/code/game/objects/items/devices/radio/beacon.dm
index 517f9f595c5..aa123930323 100644
--- a/code/game/objects/items/devices/radio/beacon.dm
+++ b/code/game/objects/items/devices/radio/beacon.dm
@@ -69,8 +69,8 @@
to_chat(user, "Locked In")
new /obj/machinery/power/singularity_beacon/syndicate( user.loc )
playsound(src, 'sound/effects/pop.ogg', 100, 1, 1)
+ user.drop_item()
qdel(src)
- return
/obj/item/radio/beacon/syndicate/bomb
name = "suspicious beacon"
@@ -82,16 +82,21 @@
to_chat(user, "Locked In")
new /obj/machinery/syndicatebomb( user.loc )
playsound(src, 'sound/effects/pop.ogg', 100, 1, 1)
+ user.drop_item()
qdel(src)
- return
/obj/item/radio/beacon/engine
desc = "A label on it reads: Warning: This device is used for transportation of high-density objects used for high-yield power generation. Stay away!."
anchored = 1 //Let's not move these around. Some folk might get the idea to use these for assassinations
var/list/enginetype = list()
-/obj/item/radio/beacon/engine/Initialize()
+/obj/item/radio/beacon/engine/Initialize(mapload)
LAZYADD(GLOB.engine_beacon_list, src)
+ return ..()
+
+/obj/item/radio/beacon/engine/Destroy()
+ GLOB.engine_beacon_list -= src
+ return ..()
/obj/item/radio/beacon/engine/tesling
name = "Engine Beacon for Tesla and Singularity"
diff --git a/code/modules/admin/admin_ranks.dm b/code/modules/admin/admin_ranks.dm
index 1986bd8f787..fdf3d0dc8d0 100644
--- a/code/modules/admin/admin_ranks.dm
+++ b/code/modules/admin/admin_ranks.dm
@@ -51,7 +51,7 @@ GLOBAL_PROTECT(admin_ranks) // this shit is being protected for obvious reasons
#ifdef TESTING
var/msg = "Permission Sets Built:\n"
- for(var/rank in admin_ranks)
+ for(var/rank in GLOB.admin_ranks)
msg += "\t[rank] - [GLOB.admin_ranks[rank]]\n"
testing(msg)
#endif
@@ -142,12 +142,12 @@ GLOBAL_PROTECT(admin_ranks) // this shit is being protected for obvious reasons
#ifdef TESTING
-/client/verb/changerank(newrank in admin_ranks)
+/client/verb/changerank(newrank in GLOB.admin_ranks)
if(holder)
holder.rank = newrank
- holder.rights = admin_ranks[newrank]
+ holder.rights = GLOB.admin_ranks[newrank]
else
- holder = new /datum/admins(newrank,admin_ranks[newrank],ckey)
+ holder = new /datum/admins(newrank,GLOB.admin_ranks[newrank],ckey)
remove_admin_verbs()
holder.associate(src)
diff --git a/code/modules/client/client defines.dm b/code/modules/client/client defines.dm
index 85615be1ee5..a063fafd736 100644
--- a/code/modules/client/client defines.dm
+++ b/code/modules/client/client defines.dm
@@ -28,13 +28,6 @@
var/adminhelped = 0
- // var/gc_destroyed //Time when this object was destroyed. [Inherits from datum]
-
-#ifdef TESTING
- var/running_find_references
- var/last_find_references = 0
-#endif
-
///////////////
//SOUND STUFF//
///////////////