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