diff --git a/code/modules/paperwork/folders.dm b/code/modules/paperwork/folders.dm index 0f1b612e930..868fac30539 100644 --- a/code/modules/paperwork/folders.dm +++ b/code/modules/paperwork/folders.dm @@ -59,34 +59,34 @@ if((usr.stat || usr.restrained())) return - if(usr.contents.Find(src)) + if(src.loc == usr) if(href_list["remove"]) var/obj/item/P = locate(href_list["remove"]) - if(P && P.loc == src) + if(P && (P.loc == src) && istype(P)) P.loc = usr.loc usr.put_in_hands(P) - if(href_list["read"]) + else if(href_list["read"]) var/obj/item/weapon/paper/P = locate(href_list["read"]) - if(P) + if(P && (P.loc == src) && istype(P)) if(!(istype(usr, /mob/living/carbon/human) || istype(usr, /mob/dead/observer) || istype(usr, /mob/living/silicon))) usr << browse("[P.name][stars(P.info)][P.stamps]", "window=[P.name]") onclose(usr, "[P.name]") else usr << browse("[P.name][P.info][P.stamps]", "window=[P.name]") onclose(usr, "[P.name]") - if(href_list["look"]) + else if(href_list["look"]) var/obj/item/weapon/photo/P = locate(href_list["look"]) - if(P) + if(P && (P.loc == src) && istype(P)) P.show(usr) - if(href_list["browse"]) + else if(href_list["browse"]) var/obj/item/weapon/paper_bundle/P = locate(href_list["browse"]) - if(P) + if(P && (P.loc == src) && istype(P)) P.attack_self(usr) onclose(usr, "[P.name]") //Update everything attack_self(usr) update_icon() - return \ No newline at end of file + return