From ad159dc4e01220ff66705977a9a96d3cc1a2911d Mon Sep 17 00:00:00 2001 From: Contrabang <91113370+Contrabang@users.noreply.github.com> Date: Sun, 24 Aug 2025 15:43:40 -0700 Subject: [PATCH] maybe (#30174) --- code/datums/mutable_appearance.dm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/code/datums/mutable_appearance.dm b/code/datums/mutable_appearance.dm index 038471ec365..8b0306c1608 100644 --- a/code/datums/mutable_appearance.dm +++ b/code/datums/mutable_appearance.dm @@ -2,12 +2,12 @@ // Basically use them instead of images for overlays/underlays and when changing an object's appearance if you're doing so with any regularity. // Unless you need the overlay/underlay to have a different direction than the base object. Then you have to use an image due to a bug. -// Mutable appearances are children of images, just so you know. - -/mutable_appearance/New() +// Mutable appearances erase template vars on new, because they accept an appearance to copy as an arg +// If we have nothin to copy, we set the float plane +/mutable_appearance/New(mutable_appearance/to_copy) ..() - plane = FLOAT_PLANE // No clue why this is 0 by default yet images are on FLOAT_PLANE - // And yes this does have to be in the constructor, BYOND ignores it if you set it as a normal var + if(!to_copy) + plane = FLOAT_PLANE // Helper similar to image() /proc/mutable_appearance(icon, icon_state = "", layer = FLOAT_LAYER, plane = FLOAT_PLANE, alpha = 255, appearance_flags = NONE, color)