diff --git a/code/game/objects/items/weapons/cameras.dm b/code/game/objects/items/weapons/cameras.dm index 69c48c6795e..b3cca864862 100644 --- a/code/game/objects/items/weapons/cameras.dm +++ b/code/game/objects/items/weapons/cameras.dm @@ -81,7 +81,7 @@ scribble = txt ..() - +z /obj/item/weapon/photo/examine() set src in oview(2) ..() @@ -103,7 +103,8 @@ var/n_name = input(usr, "What would you like to label the photo?", "Photo Labelling", src.name) as text n_name = copytext(n_name, 1, 32) - if ((loc == usr && usr.stat == 0)) + //loc.loc check is for making possible renaming photos in clipboards + if (( (src.loc == usr || (src.loc.loc && src.loc.loc == usr)) && usr.stat == 0)) name = "photo[(n_name ? text("- '[n_name]'") : null)]" add_fingerprint(usr) return diff --git a/code/game/objects/items/weapons/papers_bins.dm b/code/game/objects/items/weapons/papers_bins.dm index 5d02bc0ae39..6979ab75d05 100644 --- a/code/game/objects/items/weapons/papers_bins.dm +++ b/code/game/objects/items/weapons/papers_bins.dm @@ -101,7 +101,8 @@ NOTEBOOK return var/n_name = input(usr, "What would you like to label the paper?", "Paper Labelling", null) as text n_name = copytext(n_name, 1, 32) - if ((src.loc == usr && usr.stat == 0)) + //loc.loc check is for making possible renaming papers in clipboards + if ((src.loc == usr || (src.loc.loc && src.loc.loc == usr) && usr.stat == 0)) src.name = n_name && n_name != "" ? n_name : "Untitled paper" src.add_fingerprint(usr) return @@ -633,8 +634,24 @@ NOTEBOOK var/dat = "Clipboard
" if (src.pen) dat += text("Remove Pen

", src) - for(var/obj/item/weapon/paper/P in src) - dat += text("[] Write Remove
", src, P, P.name, src, P, src, P) + dat += "" + for(var/obj/item/weapon/W in src) + dat += "" + if (istype(W, /obj/item/weapon/paper)) + var/obj/item/weapon/paper/P = W + dat += text("", \ + src, P, P.name, src, P, src, P, src, P) + if (istype(W, /obj/item/weapon/photo)) + var/obj/item/weapon/photo/P = W + dat += text("" \ + , src, P, P.name, src, P, src, P) + dat += "" + dat += "
[] \ + Write \ + Rename \ + Remove
[] \ + Rename \ + Remove
" user << browse(dat, "window=clipboard") onclose(user, "clipboard") return @@ -679,6 +696,16 @@ NOTEBOOK usr.update_clothing() P.add_fingerprint(usr) src.add_fingerprint(usr) + if (href_list["rname"]) + var/obj/item/I = locate(href_list["rname"]) + if ((I && I.loc == src)) + if (istype(I, /obj/item/weapon/paper)) + var/obj/item/weapon/paper/P = I + P.rename() + if (istype(I, /obj/item/weapon/photo)) + var/obj/item/weapon/photo/P = I + P.rename() + src.add_fingerprint(usr) if (href_list["write"]) var/obj/item/P = locate(href_list["write"]) if ((P && P.loc == src)) @@ -692,13 +719,25 @@ NOTEBOOK P.attackby(src.pen, usr) src.add_fingerprint(usr) if (href_list["read"]) - var/obj/item/weapon/paper/P = locate(href_list["read"]) - if ((P && P.loc == src)) - if (!( istype(usr, /mob/living/carbon/human) )) - usr << browse(text("[][]", P.name, stars(P.info)), text("window=[]", P.name)) - onclose(usr, "[P.name]") - else - usr << browse(text("[][]", P.name, P.info), text("window=[]", P.name)) + var/obj/item/I = locate(href_list["read"]) + if ((I && I.loc == src)) + if (istype(I, /obj/item/weapon/paper)) + var/obj/item/weapon/paper/P = I + if (!( istype(usr, /mob/living/carbon/human) )) + usr << browse(text("[][]", P.name, stars(P.info)), text("window=[]", P.name)) + onclose(usr, "[P.name]") + else + var/t = dd_replacetext(P.info, "\n", "
") + usr << browse(text("[][]", P.name, t), text("window=[]", P.name)) + onclose(usr, "[P.name]") + if (istype(I, /obj/item/weapon/photo)) + var/obj/item/weapon/photo/P = I + usr << browse_rsc(P.img, "tmp_photo.png") + usr << browse("Photo" \ + + "" \ + + "
Writings on the back:
[P.scribble]" : ]"\ + + "", "window=book;size=200x[P.scribble ? 400 : 200]") onclose(usr, "[P.name]") if (ismob(src.loc)) var/mob/M = src.loc @@ -733,7 +772,7 @@ NOTEBOOK /obj/item/weapon/clipboard/attackby(obj/item/weapon/P as obj, mob/user as mob) ..() - if (istype(P, /obj/item/weapon/paper)) + if (istype(P, /obj/item/weapon/paper) || istype(P, /obj/item/weapon/photo)) if (src.contents.len < 15) user.drop_item() P.loc = src