From 56ed8c1a7e6902f11306c0ea74bc77481939bdaf Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Fri, 18 Sep 2015 21:15:08 -0400 Subject: [PATCH] Pass III --- code/_onclick/hud/screen_objects.dm | 3 +++ code/game/machinery/doors/alarmlock.dm | 6 ++++++ code/game/machinery/status_display.dm | 5 +++++ .../objects/items/weapons/grenades/smokebomb.dm | 4 ++++ code/modules/flufftext/Hallucination.dm | 7 ++++--- code/modules/power/port_gen.dm | 16 ++++++++-------- 6 files changed, 30 insertions(+), 11 deletions(-) diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index ebeeb392aac..14e5c7f06c0 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -14,6 +14,9 @@ var/obj/master = null //A reference to the object in the slot. Grabs or items, generally. var/gun_click_time = -100 //I'm lazy. +/obj/screen/Destroy() + master = null + return ..() /obj/screen/text icon = null diff --git a/code/game/machinery/doors/alarmlock.dm b/code/game/machinery/doors/alarmlock.dm index 46c6f6f8572..ba5497cdf60 100644 --- a/code/game/machinery/doors/alarmlock.dm +++ b/code/game/machinery/doors/alarmlock.dm @@ -13,6 +13,12 @@ ..() air_connection = new +/obj/machinery/door/airlock/alarmlock/Destroy() + if(radio_controller) + radio_controller.remove_object(src,air_frequency) + air_connection = null + return ..() + /obj/machinery/door/airlock/alarmlock/initialize() ..() radio_controller.remove_object(src, air_frequency) diff --git a/code/game/machinery/status_display.dm b/code/game/machinery/status_display.dm index ed070faeabc..0de5150dd31 100644 --- a/code/game/machinery/status_display.dm +++ b/code/game/machinery/status_display.dm @@ -47,6 +47,11 @@ var/const/STATUS_DISPLAY_TIME = 4 var/const/STATUS_DISPLAY_CUSTOM = 99 +/obj/machinery/status_display/Destroy() + if(radio_controller) + radio_controller.remove_object(src,frequency) + return ..() + // register for radio system /obj/machinery/status_display/initialize() ..() diff --git a/code/game/objects/items/weapons/grenades/smokebomb.dm b/code/game/objects/items/weapons/grenades/smokebomb.dm index 1a7df430726..2b7e7b7f854 100644 --- a/code/game/objects/items/weapons/grenades/smokebomb.dm +++ b/code/game/objects/items/weapons/grenades/smokebomb.dm @@ -13,6 +13,10 @@ src.smoke = new /datum/effect/effect/system/bad_smoke_spread src.smoke.attach(src) + Destroy() + qdel(smoke) + return ..() + prime() playsound(src.loc, 'sound/effects/smoke.ogg', 50, 1, -3) src.smoke.set_up(10, 0, usr.loc) diff --git a/code/modules/flufftext/Hallucination.dm b/code/modules/flufftext/Hallucination.dm index a0c9ddef418..a8045fdbd38 100644 --- a/code/modules/flufftext/Hallucination.dm +++ b/code/modules/flufftext/Hallucination.dm @@ -107,6 +107,7 @@ Gunshots/explosions/opening doors/less rare audio (done) /obj/effect/hallucination/simple/Destroy() if(target.client) target.client.images.Remove(current_image) active = 0 + return ..() #define FAKE_FLOOD_EXPAND_TIME 30 #define FAKE_FLOOD_MAX_RADIUS 7 @@ -156,11 +157,11 @@ Gunshots/explosions/opening doors/less rare audio (done) /obj/effect/hallucination/fake_flood/Destroy() processing_objects -= src - del(flood_turfs) + qdel(flood_turfs) if(target.client) target.client.images.Remove(flood_images) target = null - del(flood_images) - return + qdel(flood_images) + return ..() /obj/effect/hallucination/simple/xeno image_icon = 'icons/mob/alien.dmi' diff --git a/code/modules/power/port_gen.dm b/code/modules/power/port_gen.dm index 60116821a55..7feba62c14b 100644 --- a/code/modules/power/port_gen.dm +++ b/code/modules/power/port_gen.dm @@ -123,7 +123,7 @@ component_parts += new /obj/item/weapon/stock_parts/capacitor(null) component_parts += new board_path(null) RefreshParts() - + /obj/machinery/power/port_gen/pacman/upgraded/New() ..() component_parts = list() @@ -137,7 +137,7 @@ /obj/machinery/power/port_gen/pacman/Destroy() DropFuel() - ..() + return ..() /obj/machinery/power/port_gen/pacman/RefreshParts() var/temp_rating = 0 @@ -255,11 +255,11 @@ sheets = 0 sheet_left = 0 ..() - + /obj/machinery/power/port_gen/pacman/emag_act(var/remaining_charges, var/mob/user) if (active && prob(25)) explode() //if they're foolish enough to emag while it's running - + if (!emagged) emagged = 1 return 1 @@ -311,7 +311,7 @@ /obj/machinery/power/port_gen/pacman/attack_ai(var/mob/user as mob) src.add_hiddenprint(user) return src.attack_hand(user) - + /obj/machinery/power/port_gen/pacman/attack_ghost(var/mob/user) return src.attack_hand(user) @@ -370,7 +370,7 @@ if (href_list["action"] == "higher_power") if (power_output < max_power_output || (emagged && power_output < round(max_power_output*2.5))) power_output++ - + nanomanager.update_uis(src) /obj/machinery/power/port_gen/pacman/super @@ -381,7 +381,7 @@ sheet_name = "Uranium Sheets" time_per_sheet = 576 //same power output, but a 50 sheet stack will last 2 hours at max safe power board_path = /obj/item/weapon/circuitboard/pacman/super - + /obj/machinery/power/port_gen/pacman/super/upgraded/New() ..() component_parts = list() @@ -427,7 +427,7 @@ max_temperature = 800 temperature_gain = 90 board_path = /obj/item/weapon/circuitboard/pacman/mrs - + /obj/machinery/power/port_gen/pacman/mrs/upgraded/New() ..() component_parts = list()