diff --git a/code/game/gamemodes/technomancer/spells/flame_tongue.dm b/code/game/gamemodes/technomancer/spells/flame_tongue.dm index 271240ad05..ffc12344e8 100644 --- a/code/game/gamemodes/technomancer/spells/flame_tongue.dm +++ b/code/game/gamemodes/technomancer/spells/flame_tongue.dm @@ -22,8 +22,7 @@ welder.setWelding(1) /obj/item/weapon/spell/flame_tongue/Destroy() - qdel(welder) - welder = null + qdel_null(welder) return ..() /obj/item/weapon/weldingtool/spell diff --git a/code/game/gamemodes/technomancer/spells/illusion.dm b/code/game/gamemodes/technomancer/spells/illusion.dm index e2afb8d120..5eac627728 100644 --- a/code/game/gamemodes/technomancer/spells/illusion.dm +++ b/code/game/gamemodes/technomancer/spells/illusion.dm @@ -62,8 +62,8 @@ illusion.emote(what_to_emote) /obj/item/weapon/spell/illusion/Destroy() - if(illusion) - qdel(illusion) + qdel_null(illusion) + copied = null return ..() // Makes a tiny overlay of the thing the player has copied, so they can easily tell what they currently have. diff --git a/code/game/gamemodes/technomancer/spells/phase_shift.dm b/code/game/gamemodes/technomancer/spells/phase_shift.dm index 5b06a7e704..336dbc4314 100644 --- a/code/game/gamemodes/technomancer/spells/phase_shift.dm +++ b/code/game/gamemodes/technomancer/spells/phase_shift.dm @@ -37,7 +37,7 @@ for(var/atom/movable/AM in contents) //Eject everything out. AM.forceMove(get_turf(src)) processing_objects -= src - ..() + return ..() /obj/effect/phase_shift/process() for(var/mob/living/L in contents) diff --git a/code/game/gamemodes/technomancer/spells/radiance.dm b/code/game/gamemodes/technomancer/spells/radiance.dm index 4d1fb551ee..fe7d83f713 100644 --- a/code/game/gamemodes/technomancer/spells/radiance.dm +++ b/code/game/gamemodes/technomancer/spells/radiance.dm @@ -25,7 +25,7 @@ /obj/item/weapon/spell/radiance/Destroy() processing_objects -= src log_and_message_admins("has stopped maintaining [src].") - ..() + return ..() /obj/item/weapon/spell/radiance/process() var/turf/T = get_turf(src) diff --git a/code/game/objects/items/antag_spawners.dm b/code/game/objects/items/antag_spawners.dm index ce358bc1ee..100c113994 100644 --- a/code/game/objects/items/antag_spawners.dm +++ b/code/game/objects/items/antag_spawners.dm @@ -12,7 +12,7 @@ sparks.attach(loc) /obj/item/weapon/antag_spawner/Destroy() - qdel(sparks) + qdel_null(sparks) return ..() /obj/item/weapon/antag_spawner/proc/spawn_antag(client/C, turf/T) diff --git a/code/game/objects/items/weapons/implants/implant.dm b/code/game/objects/items/weapons/implants/implant.dm index 3223e26649..1d515e863b 100644 --- a/code/game/objects/items/weapons/implants/implant.dm +++ b/code/game/objects/items/weapons/implants/implant.dm @@ -52,6 +52,7 @@ /obj/item/weapon/implant/Destroy() if(part) part.implants.Remove(src) + part = null return ..() /obj/item/weapon/implant/attackby(obj/item/I, mob/user) diff --git a/code/modules/integrated_electronics/core/assemblies.dm b/code/modules/integrated_electronics/core/assemblies.dm index b66c6b8b2d..6404e2a579 100644 --- a/code/modules/integrated_electronics/core/assemblies.dm +++ b/code/modules/integrated_electronics/core/assemblies.dm @@ -53,11 +53,9 @@ processing_objects |= src /obj/item/device/electronic_assembly/Destroy() - battery = null + battery = null // It will be qdel'd by ..() if still in our contents processing_objects -= src - for(var/atom/movable/AM in contents) - qdel(AM) - ..() + return ..() /obj/item/device/electronic_assembly/process() handle_idle_power() diff --git a/code/modules/integrated_electronics/subtypes/manipulation.dm b/code/modules/integrated_electronics/subtypes/manipulation.dm index 7d22bc49a4..3e53a069f3 100644 --- a/code/modules/integrated_electronics/subtypes/manipulation.dm +++ b/code/modules/integrated_electronics/subtypes/manipulation.dm @@ -25,8 +25,8 @@ power_draw_per_use = 50 // The targeting mechanism uses this. The actual gun uses its own cell for firing if it's an energy weapon. /obj/item/integrated_circuit/manipulation/weapon_firing/Destroy() - qdel(installed_gun) - ..() + installed_gun = null // It will be qdel'd by ..() if still in our contents + return ..() /obj/item/integrated_circuit/manipulation/weapon_firing/attackby(var/obj/O, var/mob/user) if(istype(O, /obj/item/weapon/gun)) diff --git a/code/modules/xenoarcheaology/tools/suspension_generator.dm b/code/modules/xenoarcheaology/tools/suspension_generator.dm index 6819531706..ac56f7de92 100644 --- a/code/modules/xenoarcheaology/tools/suspension_generator.dm +++ b/code/modules/xenoarcheaology/tools/suspension_generator.dm @@ -247,5 +247,5 @@ /obj/effect/suspension_field/Destroy() for(var/atom/movable/I in src) - I.loc = src.loc - ..() + I.dropInto(loc) + return ..()