From 490702aaa09a10c5d7efb1a2b8ccfb63a962074a Mon Sep 17 00:00:00 2001 From: ShizCalev Date: Fri, 16 Nov 2018 06:39:18 -0500 Subject: [PATCH] Fixes some contents of some holodeck things not always getting the HOLOGRAM flag (#41487) --- code/modules/holodeck/area_copy.dm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/code/modules/holodeck/area_copy.dm b/code/modules/holodeck/area_copy.dm index efe7418e44b..a1b64588763 100644 --- a/code/modules/holodeck/area_copy.dm +++ b/code/modules/holodeck/area_copy.dm @@ -4,7 +4,7 @@ GLOBAL_LIST_INIT(duplicate_forbidden_vars,list( "power_supply", "contents", "reagents", "stat", "x", "y", "z", "group", "atmos_adjacent_turfs", "comp_lookup" )) -/proc/DuplicateObject(atom/original, perfectcopy = TRUE, sameloc = FALSE, atom/newloc = null, nerf = FALSE, holoitem=FALSE) +/proc/DuplicateObject(atom/original, perfectcopy = TRUE, sameloc, atom/newloc = null, nerf, holoitem) if(!original) return var/atom/O @@ -40,6 +40,14 @@ GLOBAL_LIST_INIT(duplicate_forbidden_vars,list( if(holoitem) O.flags_1 |= HOLOGRAM_1 + for(var/atom/thing in O) + thing.flags_1 |= HOLOGRAM_1 + if(ismachinery(O)) + var/obj/machinery/M = O + for(var/atom/contained_atom in M.component_parts) + contained_atom.flags_1 |= HOLOGRAM_1 + if(M.circuit) + M.circuit.flags_1 |= HOLOGRAM_1 return O