mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-01-17 20:44:33 +00:00
This affects clipboards, hand labelers, paper, paper bins, pens, photocopiers, and stamps. Everything (that I've changed significantly) should be BETTER. NO paths have been changed. All of the above have been added to the paperwork module (pending rename to bureaucracy, which is COOLER). SPRITES for most of the above (except photocopiers) are now in bureaucracy.dmi. Clipboards in particular are MASSIVELY IMPROVED. Hand labelers can now be turned ON AND OFF, to make it simpler to avoid labelling tables. This includes work in progress FOLDERS, which currently do NOTHING. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3253 316c924e-a436-60f5-8080-3fe189b3f50e
231 lines
5.7 KiB
Plaintext
231 lines
5.7 KiB
Plaintext
/*
|
|
CONTAINS:
|
|
WRAPPING PAPER
|
|
GIFTS
|
|
BEDSHEET BIN
|
|
PHOTOGRAPHS
|
|
|
|
*/
|
|
// WRAPPING PAPER
|
|
|
|
/obj/item/weapon/wrapping_paper/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
|
..()
|
|
if (!( locate(/obj/structure/table, src.loc) ))
|
|
user << "\blue You MUST put the paper on a table!"
|
|
if (W.w_class < 4)
|
|
if ((istype(user.l_hand, /obj/item/weapon/wirecutters) || istype(user.r_hand, /obj/item/weapon/wirecutters)))
|
|
var/a_used = 2 ** (src.w_class - 1)
|
|
if (src.amount < a_used)
|
|
user << "\blue You need more paper!"
|
|
return
|
|
else
|
|
src.amount -= a_used
|
|
user.drop_item()
|
|
var/obj/item/weapon/gift/G = new /obj/item/weapon/gift( src.loc )
|
|
G.size = W.w_class
|
|
G.w_class = G.size + 1
|
|
G.icon_state = text("gift[]", G.size)
|
|
G.gift = W
|
|
W.loc = G
|
|
G.add_fingerprint(user)
|
|
W.add_fingerprint(user)
|
|
src.add_fingerprint(user)
|
|
if (src.amount <= 0)
|
|
new /obj/item/weapon/c_tube( src.loc )
|
|
//SN src = null
|
|
del(src)
|
|
return
|
|
else
|
|
user << "\blue You need scissors!"
|
|
else
|
|
user << "\blue The object is FAR too large!"
|
|
return
|
|
|
|
|
|
/obj/item/weapon/wrapping_paper/examine()
|
|
set src in oview(1)
|
|
|
|
..()
|
|
usr << text("There is about [] square units of paper left!", src.amount)
|
|
return
|
|
|
|
/obj/item/weapon/wrapping_paper/attack(mob/target as mob, mob/user as mob)
|
|
if (!istype(target, /mob/living/carbon/human)) return
|
|
if (istype(target:wear_suit, /obj/item/clothing/suit/straight_jacket) || target:stat)
|
|
if (src.amount > 2)
|
|
var/obj/effect/spresent/present = new /obj/effect/spresent (target:loc)
|
|
src.amount -= 2
|
|
|
|
if (target:client)
|
|
target:client:perspective = EYE_PERSPECTIVE
|
|
target:client:eye = present
|
|
|
|
target:loc = present
|
|
target.attack_log += text("\[[time_stamp()]\] <font color='orange'>Has been wrapped with [src.name] by [user.name] ([user.ckey])</font>")
|
|
user.attack_log += text("\[[time_stamp()]\] <font color='red'>Used the [src.name] to wrap [target.name] ([target.ckey])</font>")
|
|
|
|
log_attack("<font color='red'>[user.name] ([user.ckey]) used the [src.name] to wrap [target.name] ([target.ckey])</font>")
|
|
|
|
else
|
|
user << "/blue You need more paper."
|
|
else
|
|
user << "Theyre moving around too much. a Straitjacket would help."
|
|
|
|
|
|
|
|
|
|
|
|
// GIFTS
|
|
|
|
/obj/item/weapon/gift/attack_self(mob/user as mob)
|
|
if(!src.gift)
|
|
user << "\blue The gift was empty!"
|
|
del(src)
|
|
src.gift.loc = user
|
|
if (user.hand)
|
|
user.l_hand = src.gift
|
|
else
|
|
user.r_hand = src.gift
|
|
src.gift.layer = 20
|
|
src.gift.add_fingerprint(user)
|
|
del(src)
|
|
return
|
|
|
|
/obj/item/weapon/a_gift/ex_act()
|
|
del(src)
|
|
return
|
|
|
|
|
|
/obj/effect/spresent/relaymove(mob/user as mob)
|
|
if (user.stat)
|
|
return
|
|
user << "\blue You cant move."
|
|
|
|
/obj/effect/spresent/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
|
..()
|
|
|
|
if (!istype(W, /obj/item/weapon/wirecutters))
|
|
user << "/blue I need wirecutters for that."
|
|
return
|
|
|
|
user << "\blue You cut open the present."
|
|
|
|
for(var/mob/M in src) //Should only be one but whatever.
|
|
M.loc = src.loc
|
|
if (M.client)
|
|
M.client.eye = M.client.mob
|
|
M.client.perspective = MOB_PERSPECTIVE
|
|
|
|
del(src)
|
|
|
|
|
|
/obj/item/weapon/a_gift/attack_self(mob/M as mob)
|
|
switch(pick("flash", "t_gun", "l_gun", "shield", "sword", "axe"))
|
|
if("flash")
|
|
var/obj/item/device/flash/W = new /obj/item/device/flash( M )
|
|
if (M.hand)
|
|
M.l_hand = W
|
|
else
|
|
M.r_hand = W
|
|
W.layer = 20
|
|
W.add_fingerprint(M)
|
|
//SN src = null
|
|
del(src)
|
|
return
|
|
if("l_gun")
|
|
var/obj/item/weapon/gun/energy/laser/W = new /obj/item/weapon/gun/energy/laser( M )
|
|
if (M.hand)
|
|
M.l_hand = W
|
|
else
|
|
M.r_hand = W
|
|
W.layer = 20
|
|
W.add_fingerprint(M)
|
|
//SN src = null
|
|
del(src)
|
|
return
|
|
if("t_gun")
|
|
var/obj/item/weapon/gun/energy/taser/W = new /obj/item/weapon/gun/energy/taser( M )
|
|
if (M.hand)
|
|
M.l_hand = W
|
|
else
|
|
M.r_hand = W
|
|
W.layer = 20
|
|
W.add_fingerprint(M)
|
|
//SN src = null
|
|
del(src)
|
|
return
|
|
if("sword")
|
|
var/obj/item/weapon/melee/energy/sword/W = new /obj/item/weapon/melee/energy/sword( M )
|
|
if (M.hand)
|
|
M.l_hand = W
|
|
else
|
|
M.r_hand = W
|
|
W.layer = 20
|
|
W.add_fingerprint(M)
|
|
//SN src = null
|
|
del(src)
|
|
return
|
|
if("axe")
|
|
var/obj/item/weapon/melee/energy/axe/W = new /obj/item/weapon/melee/energy/axe( M )
|
|
if (M.hand)
|
|
M.l_hand = W
|
|
else
|
|
M.r_hand = W
|
|
W.layer = 20
|
|
W.add_fingerprint(M)
|
|
//SN src = null
|
|
del(src)
|
|
return
|
|
else
|
|
return
|
|
|
|
// BEDSHEET BIN
|
|
|
|
/obj/structure/bedsheetbin/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
|
if (istype(W, /obj/item/weapon/bedsheet))
|
|
//W = null
|
|
del(W)
|
|
src.amount++
|
|
return
|
|
|
|
/obj/structure/bedsheetbin/attack_paw(mob/user as mob)
|
|
return src.attack_hand(user)
|
|
|
|
/obj/structure/bedsheetbin/attack_hand(mob/user as mob)
|
|
if (src.amount >= 1)
|
|
src.amount--
|
|
new /obj/item/weapon/bedsheet( src.loc )
|
|
add_fingerprint(user)
|
|
|
|
/obj/structure/bedsheetbin/examine()
|
|
set src in oview(1)
|
|
|
|
src.amount = round(src.amount)
|
|
if (src.amount <= 0)
|
|
src.amount = 0
|
|
usr << "There are no bed sheets in the bin."
|
|
else
|
|
if (src.amount == 1)
|
|
usr << "There is one bed sheet in the bin."
|
|
else
|
|
usr << text("There are [] bed sheets in the bin.", src.amount)
|
|
return
|
|
|
|
// PHOTOGRAPH
|
|
|
|
/obj/item/weapon/paper/photograph/New()
|
|
|
|
..()
|
|
src.pixel_y = 0
|
|
src.pixel_x = 0
|
|
return
|
|
|
|
/obj/item/weapon/paper/photograph/attack_self(mob/user as mob)
|
|
|
|
var/n_name = input(user, "What would you like to label the photo?", "Paper Labelling", null) as text
|
|
n_name = copytext(n_name, 1, 32)
|
|
if ((src.loc == user && user.stat == 0))
|
|
src.name = text("photo[]", (n_name ? text("- '[]'", n_name) : null))
|
|
src.add_fingerprint(user)
|
|
return
|