TG: Fixed and further improved package wrapping. Added a sprite for wrapped closets.

Revision: r3302
Author: 	 petethegoat
This commit is contained in:
Ren Erthilo
2012-04-28 17:42:36 +01:00
parent b72e529a36
commit c2a1c149df
3 changed files with 15 additions and 15 deletions

View File

@@ -76,12 +76,13 @@
if (istype(W, /obj/item/device/detective_scanner))
for(var/mob/O in viewers(src, null))
if ((O.client && !( O.blinded )))
O << text("\red [src] has been scanned by [user] with the [W]")
O << "\red [src] has been scanned by [user] with the [W]"
else
if (!( istype(W, /obj/item/weapon/grab) ) && !(istype(W, /obj/item/weapon/plastique)) &&!(istype(W, /obj/item/weapon/cleaner)) &&!(istype(W, /obj/item/weapon/chemsprayer)) &&!(istype(W, /obj/item/weapon/pepperspray)) && !(istype(W, /obj/item/weapon/plantbgone)) )
for(var/mob/O in viewers(src, null))
if ((O.client && !( O.blinded )))
O << text("\red <B>[] has been hit by [] with []</B>", src, user, W)
O << "\red <B>[src] has been hit by [user] with [W]</B>"
return
/atom/proc/add_hiddenprint(mob/living/M as mob)

View File

@@ -154,6 +154,8 @@
if(W)
W.loc = src.loc
else if(istype(W, /obj/item/weapon/packageWrap))
return
else if(istype(W, /obj/item/weapon/weldingtool) && W:welding )
if(!W:remove_fuel(0,user))
user << "\blue You need more welding fuel to complete this task."
@@ -161,8 +163,6 @@
src.welded =! src.welded
for(var/mob/M in viewers(src))
M.show_message("\red [src] has been [welded?"welded shut":"unwelded"] by [user.name].", 3, "\red You hear welding.", 2)
else if(istype(W,/obj/item/weapon/packageWrap))
return
else
src.attack_hand(user)
return

View File

@@ -2,7 +2,7 @@
desc = "A big wrapped package."
name = "large parcel"
icon = 'storage.dmi'
icon_state = "deliverycrate"
icon_state = "deliverycloset"
var/tmp/obj/wrapped = null
density = 1
var/sortTag = null
@@ -18,10 +18,10 @@
return unwrap()
proc/unwrap()
if (src.wrapped) //sometimes items can disappear. For example, bombs. --rastaf0
src.wrapped.loc = (get_turf(src.loc))
if (istype(src.wrapped,/obj/structure/closet))
var/obj/structure/closet/O = src.wrapped
if(wrapped) //sometimes items can disappear. For example, bombs. --rastaf0
wrapped.loc = (get_turf(src.loc))
if(istype(wrapped, /obj/structure/closet))
var/obj/structure/closet/O = wrapped
O.welded = waswelded
del(src)
return
@@ -172,9 +172,9 @@
afterattack(var/obj/target as obj, mob/user as mob)
if(istype(target, /obj/structure/table) || istype(target, /obj/structure/rack) || istype(target,/obj/item/smallDelivery))
if(!(istype(target, /obj))) //this really shouldn't be necessary (but it is). -Pete
return
if(!istype(target,/obj))
if(istype(target, /obj/structure/table) || istype(target, /obj/structure/rack) || istype(target,/obj/item/smallDelivery))
return
if(target.anchored)
return
@@ -197,10 +197,11 @@
var/obj/structure/closet/crate/O = target
if (src.amount > 3 && !O.opened)
var/obj/structure/bigDelivery/P = new /obj/structure/bigDelivery(get_turf(O.loc))
P.icon_state = "deliverycrate"
P.wrapped = O
O.loc = P
src.amount -= 3
else if(src.amount > 3)
else if(src.amount < 3)
user << "\blue You need more paper."
else if (istype (target, /obj/structure/closet))
var/obj/structure/closet/O = target
@@ -208,17 +209,15 @@
var/obj/structure/bigDelivery/P = new /obj/structure/bigDelivery(get_turf(O.loc))
P.wrapped = O
P.waswelded = O.welded
O.opened = 0
O.welded = 1
O.loc = P
src.amount -= 3
else if(src.amount > 3)
else if(src.amount < 3)
user << "\blue You need more paper."
else
user << "\blue The object you are trying to wrap is unsuitable for the sorting machinery!"
if (src.amount <= 0)
new /obj/item/weapon/c_tube( src.loc )
//SN src = null
del(src)
return
return