From b9db8ce854fdb47eabbdb834eb183cdde1c955d2 Mon Sep 17 00:00:00 2001 From: xxalpha Date: Thu, 27 Aug 2015 13:15:41 +0100 Subject: [PATCH 1/9] A few qdel fixes. --- code/game/machinery/doors/door.dm | 3 +-- .../effects/effect_system/effect_system.dm | 2 +- code/game/objects/effects/landmarks.dm | 14 ++++++++------ code/game/objects/structures/girders.dm | 17 ++--------------- code/game/objects/structures/lattice.dm | 2 +- code/modules/assembly/igniter.dm | 5 +++++ code/modules/mining/mine_turfs.dm | 11 +++++++++++ 7 files changed, 29 insertions(+), 25 deletions(-) diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm index 129d03039b9..3d197f1e186 100644 --- a/code/game/machinery/doors/door.dm +++ b/code/game/machinery/doors/door.dm @@ -37,8 +37,7 @@ air_update_turf(1) update_freelook_sight() airlocks -= src - ..() - return + return ..() //process() //return diff --git a/code/game/objects/effects/effect_system/effect_system.dm b/code/game/objects/effects/effect_system/effect_system.dm index 8953cc09c7a..ea4ec6d60fd 100644 --- a/code/game/objects/effects/effect_system/effect_system.dm +++ b/code/game/objects/effects/effect_system/effect_system.dm @@ -38,7 +38,7 @@ would spawn and follow the beaker, even if it is carried or thrown. /datum/effect/effect/system/Destroy() holder = null location = null - ..() + return ..() /datum/effect/effect/system/proc/set_up(n = 3, c = 0, turf/loc) if(n > 10) diff --git a/code/game/objects/effects/landmarks.dm b/code/game/objects/effects/landmarks.dm index 7224805e689..61dbc90fc88 100644 --- a/code/game/objects/effects/landmarks.dm +++ b/code/game/objects/effects/landmarks.dm @@ -6,7 +6,6 @@ unacidable = 1 /obj/effect/landmark/New() - ..() tag = text("landmark*[]", name) invisibility = 101 @@ -63,12 +62,11 @@ xeno_spawn += loc qdel(src) return - return 1 /obj/effect/landmark/Destroy() landmarks_list -= src - ..() + return ..() /obj/effect/landmark/start name = "start" @@ -81,11 +79,11 @@ tag = "start*[name]" invisibility = 101 start_landmarks_list += src - return 1 + /obj/effect/landmark/start/Destroy() - ..() start_landmarks_list -= src + return ..() //Costume spawner landmarks @@ -242,7 +240,11 @@ /obj/effect/landmark/start/depsec/New() ..() - department_security_spawns |= src + department_security_spawns += src + +/obj/effect/landmark/start/depsec/Destroy() + department_security_spawns -= src + return ..() /obj/effect/landmark/start/depsec/supply name = "supply_sec" diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm index 355938166f5..bc8c29c31cf 100644 --- a/code/game/objects/structures/girders.dm +++ b/code/game/objects/structures/girders.dm @@ -231,20 +231,16 @@ switch(severity) if(1.0) qdel(src) - return if(2.0) if (prob(70)) var/remains = pick(/obj/item/stack/rods,/obj/item/stack/sheet/metal) new remains(loc) qdel(src) - return if(3.0) if (prob(15)) var/remains = pick(/obj/item/stack/rods,/obj/item/stack/sheet/metal) new remains(loc) qdel(src) - return - return /obj/structure/girder/displaced name = "displaced girder" @@ -264,20 +260,16 @@ switch(severity) if(1.0) qdel(src) - return if(2.0) if (prob(30)) var/remains = pick(/obj/item/stack/rods,/obj/item/stack/sheet/metal) new remains(loc) qdel(src) - return if(3.0) if (prob(5)) var/remains = pick(/obj/item/stack/rods,/obj/item/stack/sheet/metal) new remains(loc) qdel(src) - return - return //////////////////////////////////////////// cult girder ////////////////////////////////////////////// @@ -330,16 +322,11 @@ switch(severity) if(1.0) qdel(src) - return if(2.0) - if (prob(30)) + if(prob(30)) new /obj/effect/decal/remains/human(loc) qdel(src) - return if(3.0) - if (prob(5)) + if(prob(5)) new /obj/effect/decal/remains/human(loc) qdel(src) - return - else - return diff --git a/code/game/objects/structures/lattice.dm b/code/game/objects/structures/lattice.dm index d325cf514fb..c530eda3f80 100644 --- a/code/game/objects/structures/lattice.dm +++ b/code/game/objects/structures/lattice.dm @@ -31,7 +31,7 @@ if(locate(/obj/structure/lattice, get_step(src, dir))) L = locate(/obj/structure/lattice, get_step(src, dir)) L.updateOverlays(src.loc) - ..() + return ..() /obj/structure/lattice/blob_act() qdel(src) diff --git a/code/modules/assembly/igniter.dm b/code/modules/assembly/igniter.dm index 2fad7c26a58..fbda7e852a4 100644 --- a/code/modules/assembly/igniter.dm +++ b/code/modules/assembly/igniter.dm @@ -12,6 +12,11 @@ sparks.set_up(2, 0, src) sparks.attach(src) +/obj/item/device/assembly/igniter/Destroy() + qdel(sparks) + sparks = null + return ..() + /obj/item/device/assembly/igniter/activate() if(!..()) return 0//Cooldown check diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index 955d80d3f0e..91bff3cb8e5 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -602,6 +602,17 @@ var/global/list/rockTurfEdgeCache icon_state = "asteroid_dug" return +/turf/simulated/floor/plating/asteroid/singularity_pull(S, current_size) + if(current_size == STAGE_THREE) + if(prob(30)) + gets_dug() + else if(current_size == STAGE_FOUR) + if(prob(50)) + gets_dug() + else if(current_size >= STAGE_FIVE) + if(prob(90)) + gets_dug() + /turf/proc/updateMineralOverlays() src.overlays.Cut() From 3379cb814539d7452b2a3e5ad27d23261278f3c7 Mon Sep 17 00:00:00 2001 From: xxalpha Date: Sat, 29 Aug 2015 19:24:36 +0100 Subject: [PATCH 2/9] Fixed cyborg modules, cyborg parts and cyborgs not qdelling properly. --- code/game/objects/items/weapons/RPD.dm | 5 +++++ code/modules/mob/living/silicon/robot/robot.dm | 6 +++++- code/modules/mob/living/silicon/robot/robot_modules.dm | 6 ++++++ code/modules/mob/living/silicon/silicon.dm | 5 +++++ 4 files changed, 21 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/weapons/RPD.dm b/code/game/objects/items/weapons/RPD.dm index ea570f4257e..c747d60f4b8 100644 --- a/code/game/objects/items/weapons/RPD.dm +++ b/code/game/objects/items/weapons/RPD.dm @@ -160,6 +160,11 @@ var/global/list/RPD_recipes=list( spark_system.set_up(5, 0, src) spark_system.attach(src) +/obj/item/weapon/pipe_dispenser/Destroy() + qdel(spark_system) + spark_system = null + return ..() + /obj/item/weapon/pipe_dispenser/attack_self(mob/user) show_menu(user) diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index f5a452c3ac3..b9d8e0c3c9a 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -138,7 +138,11 @@ mmi = null if(connected_ai) connected_ai.connected_robots -= src - ..() + qdel(module) + module = null + camera = null + cell = null + return ..() /mob/living/silicon/robot/proc/pick_module() diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index c594fbfdfbb..3efbcc3baed 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -10,6 +10,12 @@ var/obj/item/emag = null var/list/storages = list() +/obj/item/weapon/robot_module/Destroy() + modules.Cut() + emag = null + storages.Cut() + return ..() + /obj/item/weapon/robot_module/emp_act(severity) if(modules) for(var/obj/O in modules) diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm index 83b20b450cb..1e8e7fdfd27 100644 --- a/code/modules/mob/living/silicon/silicon.dm +++ b/code/modules/mob/living/silicon/silicon.dm @@ -28,6 +28,11 @@ var/law_change_counter = 0 +/mob/living/silicon/Destroy() + radio = null + aicamera = null + return ..() + /mob/living/silicon/contents_explosion(severity, target) return From c4a1b0ebdbf365afe4341e6891fabab66e6e8636 Mon Sep 17 00:00:00 2001 From: Cheridan Date: Sat, 29 Aug 2015 17:47:42 -0500 Subject: [PATCH 3/9] Recycler Tweak Port --- code/datums/material_container.dm | 4 +-- code/game/machinery/recycler.dm | 59 +++++++++---------------------- config/admins.txt | 2 +- 3 files changed, 20 insertions(+), 45 deletions(-) diff --git a/code/datums/material_container.dm b/code/datums/material_container.dm index 6a7708ef46a..af57efd66a7 100644 --- a/code/datums/material_container.dm +++ b/code/datums/material_container.dm @@ -67,7 +67,7 @@ S.use(amt) return amt -/datum/material_container/proc/insert_item(obj/item/I) +/datum/material_container/proc/insert_item(obj/item/I, multiplier = 1) if(!I) return 0 if(istype(I,/obj/item/stack)) @@ -77,7 +77,7 @@ if(!material_amount || !has_space(material_amount)) return 0 - insert_materials(I) + insert_materials(I, multiplier) return material_amount /datum/material_container/proc/insert_materials(obj/item/I, multiplier = 1) //for internal usage only diff --git a/code/game/machinery/recycler.dm b/code/game/machinery/recycler.dm index 9e4b3da49d0..60e6cd9f6ed 100644 --- a/code/game/machinery/recycler.dm +++ b/code/game/machinery/recycler.dm @@ -14,9 +14,7 @@ var/const/SAFETY_COOLDOWN = 100 var/blood = 0 var/eat_dir = WEST var/amount_produced = 1 - var/probability_mod = 1 - var/extra_materials = 0 - var/list/blacklist = list(/obj/item/pipe, /obj/item/pipe_meter, /obj/structure/disposalconstruct, /obj/item/weapon/reagent_containers, /obj/item/weapon/paper, /obj/item/stack/, /obj/item/weapon/pen, /obj/item/weapon/storage/, /obj/item/clothing/mask/cigarette) // Don't allow us to grind things we can poop out at 200 a second for free. + var/datum/material_container/materials /obj/machinery/recycler/New() // On us @@ -25,25 +23,20 @@ var/const/SAFETY_COOLDOWN = 100 component_parts += new /obj/item/weapon/circuitboard/recycler(null) component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) component_parts += new /obj/item/weapon/stock_parts/manipulator(null) + materials = new /datum/material_container(src, list(MAT_METAL=1, MAT_GLASS=1, MAT_SILVER=1, MAT_GOLD=1, MAT_DIAMOND=1, MAT_URANIUM=1, MAT_BANANIUM=1)) RefreshParts() update_icon() /obj/machinery/recycler/RefreshParts() var/amt_made = 0 - var/prob_mod = 0 + var/mat_mod = 0 for(var/obj/item/weapon/stock_parts/matter_bin/B in component_parts) - amt_made = 1 * B.rating + mat_mod = 2 * B.rating + mat_mod *= 50000 for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts) - if(M.rating > 1) - prob_mod = 2 * M.rating - else - prob_mod = 1 * M.rating - if(M.rating >= 3) - extra_materials = 1 - else - extra_materials = 0 - probability_mod = prob_mod - amount_produced = amt_made + amt_made = 25 * M.rating //% of materials salvaged + materials.max_amount = mat_mod + amount_produced = min(100, amt_made) /obj/machinery/recycler/examine(mob/user) ..() @@ -121,36 +114,18 @@ var/const/SAFETY_COOLDOWN = 100 /obj/machinery/recycler/proc/recycle(obj/item/I, sound = 1) I.loc = src.loc - if(is_type_in_list(I, blacklist)) - qdel(I) - if(sound) - playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) + if(!istype(I)) return - qdel(I) - if(prob(15 + probability_mod)) - var/obj/item/stack/sheet/metal/M = new /obj/item/stack/sheet/metal(loc) - M.amount = amount_produced - if(prob(10 + probability_mod)) - var/obj/item/stack/sheet/glass/G = new /obj/item/stack/sheet/glass(loc) - G.amount = amount_produced - if(prob(2 + probability_mod)) - var/obj/item/stack/sheet/plasteel/P = new /obj/item/stack/sheet/plasteel(loc) - P.amount = amount_produced - if(prob(1 + probability_mod)) - var/obj/item/stack/sheet/rglass/R = new /obj/item/stack/sheet/rglass(loc) - R.amount = amount_produced - if(extra_materials) - if(prob(3 + probability_mod)) - var/obj/item/stack/sheet/mineral/gold/GS = new /obj/item/stack/sheet/mineral/gold(loc) - GS.amount = amount_produced - if(prob(2 + probability_mod)) - var/obj/item/stack/sheet/mineral/silver/S = new /obj/item/stack/sheet/mineral/silver(loc) - S.amount = amount_produced - if(prob(1 + probability_mod)) - var/obj/item/stack/sheet/mineral/bananium/B = new /obj/item/stack/sheet/mineral/bananium(loc) - B.amount = amount_produced + if(sound) playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) + var/material_amount = materials.can_insert(I) + if(!material_amount) + qdel(I) + return + materials.insert_item(I, multiplier = (amount_produced / 100)) + qdel(I) + materials.retrieve_all() /obj/machinery/recycler/proc/stop(mob/living/L) diff --git a/config/admins.txt b/config/admins.txt index 789c36cc02d..852f58e02b9 100644 --- a/config/admins.txt +++ b/config/admins.txt @@ -32,7 +32,7 @@ korphaeron = Game Master nodrak = Game Master carnwennan = Game Master ikarrus = Game Master -cheridan = Admin Observer +cheridan = Game Master giacomand = Game Master rockdtben = Game Master sieve = Game Master From 537c823fa8eb326a6abbaf473f61e9f5b996bf0e Mon Sep 17 00:00:00 2001 From: Aranclanos Date: Sat, 29 Aug 2015 22:48:20 -0300 Subject: [PATCH 4/9] Removes an incorrect type path, mob/living/carbon/larva, unused. It was just a typo. --- code/modules/mob/living/carbon/alien/larva/update_icons.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/alien/larva/update_icons.dm b/code/modules/mob/living/carbon/alien/larva/update_icons.dm index dba2774866a..b12a2b766b6 100644 --- a/code/modules/mob/living/carbon/alien/larva/update_icons.dm +++ b/code/modules/mob/living/carbon/alien/larva/update_icons.dm @@ -24,5 +24,5 @@ /mob/living/carbon/alien/larva/update_transform() //All this is handled in update_icons() return update_icons() -/mob/living/carbon/larva/update_inv_handcuffed() +/mob/living/carbon/alien/larva/update_inv_handcuffed() return \ No newline at end of file From 35e09dab2a887308eb11ed105feea35bef6a277d Mon Sep 17 00:00:00 2001 From: Maarten van den Berg Date: Sun, 30 Aug 2015 18:17:27 +0200 Subject: [PATCH 5/9] Fixes yelling runtime --- code/modules/mob/say.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/say.dm b/code/modules/mob/say.dm index 95ac2edf15f..75dc59fea34 100644 --- a/code/modules/mob/say.dm +++ b/code/modules/mob/say.dm @@ -39,7 +39,8 @@ if(name != real_name) alt_name = " (died as [real_name])" - message = src.say_quote(message) + var/spans = list() + message = src.say_quote(message, spans) var/rendered = "DEAD: [name][alt_name] [message]" for(var/mob/M in player_list) From 71cb5627c3cf8fddb140803add28d0ed9302c8f7 Mon Sep 17 00:00:00 2001 From: Maarten van den Berg Date: Sun, 30 Aug 2015 18:55:58 +0200 Subject: [PATCH 6/9] no wait that's dumb --- code/game/say.dm | 2 +- code/modules/mob/say.dm | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/code/game/say.dm b/code/game/say.dm index 18565d25950..cd52c422ba2 100644 --- a/code/game/say.dm +++ b/code/game/say.dm @@ -62,7 +62,7 @@ var/list/freqtospan = list( /atom/movable/proc/compose_job(atom/movable/speaker, message_langs, raw_message, radio_freq) return "" -/atom/movable/proc/say_quote(input, list/spans) +/atom/movable/proc/say_quote(input, list/spans=list()) if(!input) return "says, \"...\"" //not the best solution, but it will stop a large number of runtimes. The cause is somewhere in the Tcomms code var/ending = copytext(input, length(input)) diff --git a/code/modules/mob/say.dm b/code/modules/mob/say.dm index 75dc59fea34..95ac2edf15f 100644 --- a/code/modules/mob/say.dm +++ b/code/modules/mob/say.dm @@ -39,8 +39,7 @@ if(name != real_name) alt_name = " (died as [real_name])" - var/spans = list() - message = src.say_quote(message, spans) + message = src.say_quote(message) var/rendered = "DEAD: [name][alt_name] [message]" for(var/mob/M in player_list) From 1abeb952a4a7cd03115609de96e67cace02a149a Mon Sep 17 00:00:00 2001 From: Aranclanos Date: Sun, 30 Aug 2015 19:43:27 -0300 Subject: [PATCH 7/9] Fixes an infinite loop with camera bugs. --- code/game/objects/items/devices/camera_bug.dm | 3 --- 1 file changed, 3 deletions(-) diff --git a/code/game/objects/items/devices/camera_bug.dm b/code/game/objects/items/devices/camera_bug.dm index 59780eb60f0..9986ff1ab8c 100644 --- a/code/game/objects/items/devices/camera_bug.dm +++ b/code/game/objects/items/devices/camera_bug.dm @@ -48,9 +48,6 @@ if(expansion) qdel(expansion) expansion = null - qdel(src) -//Easier to just call del() than this nonsense -// ya no, del() takes 0.8ds to run on avg. this takes less than 0.01 get_cameras() for(var/cam_tag in bugged_cameras) var/obj/machinery/camera/camera = bugged_cameras[cam_tag] From 72c6daef8bf1648f54f749d2a1129968cc0f51a3 Mon Sep 17 00:00:00 2001 From: c0 Date: Mon, 31 Aug 2015 10:16:34 +0300 Subject: [PATCH 8/9] Fastfix --- code/modules/assembly/assembly.dm | 2 +- icons/obj/assemblies.dmi | Bin 27559 -> 28858 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/assembly/assembly.dm b/code/modules/assembly/assembly.dm index a13dd4471d4..424dae8ee85 100644 --- a/code/modules/assembly/assembly.dm +++ b/code/modules/assembly/assembly.dm @@ -58,7 +58,7 @@ //Called when another assembly acts on this one, var/radio will determine where it came from for wire calcs /obj/item/device/assembly/proc/pulsed(radio = 0) - if(holder && (wires & WIRE_RECEIVE)) + if(wires & WIRE_RECEIVE) spawn(0) activate() if(radio && (wires & WIRE_RADIO_RECEIVE)) diff --git a/icons/obj/assemblies.dmi b/icons/obj/assemblies.dmi index b2bbe321a2fcfc750b2a0d23abb6e3fbd91f0f12..38e14d414c97c58a943bff94ea3dfbd54f16cf41 100644 GIT binary patch literal 28858 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 literal 27559 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 From ec8aeb53bcbfeedc0fae4db9c700d85e62783a11 Mon Sep 17 00:00:00 2001 From: Aranclanos Date: Mon, 31 Aug 2015 07:12:20 -0300 Subject: [PATCH 9/9] Fixes tank transfer bombs clogging the MC and multiple infinite loops with assembly deletion. --- code/modules/assembly/assembly.dm | 7 ------- 1 file changed, 7 deletions(-) diff --git a/code/modules/assembly/assembly.dm b/code/modules/assembly/assembly.dm index 424dae8ee85..7e5916f80f3 100644 --- a/code/modules/assembly/assembly.dm +++ b/code/modules/assembly/assembly.dm @@ -25,13 +25,6 @@ var/const/WIRE_RADIO_RECEIVE = 8 //Allows Pulsed(1) to call Activate() var/const/WIRE_RADIO_PULSE = 16 //Allows Pulse(1) to send a radio message -/obj/item/device/assembly/Destroy() - qdel(connected) - connected = null - qdel(holder) - holder = null - return ..() - /obj/item/device/assembly/proc/holder_movement() //Called when the holder is moved return