From f61b0e975e5558069a18e4930ea152edfc24b6b6 Mon Sep 17 00:00:00 2001 From: mozi_h Date: Fri, 26 Feb 2021 10:20:11 +0100 Subject: [PATCH] Fix paper carbon invisibility and duplication (#57172) --- code/modules/paperwork/carbonpaper.dm | 19 ++++++++----------- code/modules/paperwork/paperplane.dm | 2 ++ 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/code/modules/paperwork/carbonpaper.dm b/code/modules/paperwork/carbonpaper.dm index 8aaacfcd606..d3842155cb7 100644 --- a/code/modules/paperwork/carbonpaper.dm +++ b/code/modules/paperwork/carbonpaper.dm @@ -7,21 +7,20 @@ var/iscopy = FALSE /obj/item/paper/carbon/update_icon_state() - if(info) - icon_state = "[icon_state]_words" - return ..() if(iscopy) icon_state = "cpaper" - return ..() - if(copied) + else if(copied) icon_state = "paper" - return ..() - - icon_state = "paper_stack" + else + icon_state = "paper_stack" + if(info) + icon_state = "[icon_state]_words" return ..() /obj/item/paper/carbon/proc/removecopy(mob/living/user) - if(!copied) + if(copied || iscopy) + to_chat(user, "There are no more carbon copies attached to this paper!") + else var/obj/item/paper/carbon/C = src var/copycontents = C.info var/obj/item/paper/carbon/Copy = new /obj/item/paper/carbon(user.loc) @@ -38,8 +37,6 @@ Copy.update_icon_state() C.update_icon_state() user.put_in_hands(Copy) - else - to_chat(user, "There are no more carbon copies attached to this paper!") /obj/item/paper/carbon/attack_hand(mob/living/user, list/modifiers) if(loc == user && user.is_holding(src)) diff --git a/code/modules/paperwork/paperplane.dm b/code/modules/paperwork/paperplane.dm index c0392f80553..d8600939131 100644 --- a/code/modules/paperwork/paperplane.dm +++ b/code/modules/paperwork/paperplane.dm @@ -30,6 +30,8 @@ newPaper.forceMove(src) else internalPaper = new(src) + if(internalPaper.icon_state == "cpaper" || internalPaper.icon_state == "cpaper_words") + icon_state = "paperplane_carbon" // It's the purple carbon copy. Use the purple paper plane update_appearance() /obj/item/paperplane/Exited(atom/movable/AM, atom/newLoc)