Redirects stamp attackby() on the clipboard to the topmost paper.

This commit is contained in:
Zuhayr
2015-01-09 10:29:15 +10:30
parent 530fed426d
commit b06a3c626b
+19 -10
View File
@@ -44,8 +44,17 @@
return
/obj/item/weapon/clipboard/attackby(obj/item/weapon/W as obj, mob/user as mob)
if(istype(W, /obj/item/weapon/paper) || istype(W, /obj/item/weapon/photo))
if(istype(W,/obj/item/weapon/stamp))
if(!toppaper || !user.loc)
return
toppaper.loc = user.loc
toppaper.attackby(W,user)
if(toppaper) // Better safe than runtimes.
toppaper.loc = src
return
else if(istype(W, /obj/item/weapon/paper) || istype(W, /obj/item/weapon/photo))
user.drop_item()
W.loc = src
if(istype(W, /obj/item/weapon/paper))
@@ -107,20 +116,20 @@
else if(href_list["write"])
var/obj/item/weapon/P = locate(href_list["write"])
if(P && (P.loc == src) && istype(P, /obj/item/weapon/paper) && (P == toppaper) )
var/obj/item/I = usr.get_active_hand()
if(istype(I, /obj/item/weapon/pen))
P.attackby(I, usr)
else if(href_list["remove"])
var/obj/item/P = locate(href_list["remove"])
if(P && (P.loc == src) && (istype(P, /obj/item/weapon/paper) || istype(P, /obj/item/weapon/photo)) )
P.loc = usr.loc
usr.put_in_hands(P)
if(P == toppaper)
@@ -133,9 +142,9 @@
else if(href_list["read"])
var/obj/item/weapon/paper/P = locate(href_list["read"])
if(P && (P.loc == src) && istype(P, /obj/item/weapon/paper) )
if(!(istype(usr, /mob/living/carbon/human) || istype(usr, /mob/dead/observer) || istype(usr, /mob/living/silicon)))
usr << browse("<HTML><HEAD><TITLE>[P.name]</TITLE></HEAD><BODY>[stars(P.info)][P.stamps]</BODY></HTML>", "window=[P.name]")
onclose(usr, "[P.name]")