mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-01-05 23:11:52 +00:00
Fixes issue 1097. Shaft Miners not getting pda
Fixes issue 1118. duplicating trashbags Fixes issue 1117. evidence bag issues Syndie shuttle can now travel to mining and the tcomms sat. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5152 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -153,8 +153,10 @@ obj/machinery/computer/forensic_scanning
|
||||
if(istype(I, /obj/item/weapon/evidencebag))
|
||||
scanning = I.contents[1]
|
||||
scanning.loc = src
|
||||
I.overlays -= scanning
|
||||
I.overlays = null
|
||||
I.w_class = 1
|
||||
I.icon_state = "evidenceobj"
|
||||
I.desc = "An empty evidence bag."
|
||||
else
|
||||
scanning = I
|
||||
M.drop_item()
|
||||
|
||||
@@ -5,63 +5,77 @@
|
||||
desc = "An empty evidence bag."
|
||||
icon = 'icons/obj/storage.dmi'
|
||||
icon_state = "evidenceobj"
|
||||
item_state = ""
|
||||
w_class = 1
|
||||
|
||||
/obj/item/weapon/evidencebag/afterattack(obj/item/O, mob/user as mob)
|
||||
if(!in_range(O,user))
|
||||
/obj/item/weapon/evidencebag/afterattack(obj/item/I, mob/user as mob)
|
||||
if(!in_range(I, user))
|
||||
return
|
||||
|
||||
if(istype(O, /obj/item/weapon/storage))
|
||||
if(!istype(I) || I.anchored == 1)
|
||||
return ..()
|
||||
|
||||
if(!istype(O) || O.anchored == 1)
|
||||
user << "<span class='notice'>You can't put that inside \the [src]!</span>"
|
||||
if(istype(I, /obj/item/weapon/storage))
|
||||
return ..()
|
||||
|
||||
if(istype(O, /obj/item/weapon/evidencebag))
|
||||
if(istype(I, /obj/item/weapon/evidencebag))
|
||||
user << "<span class='notice'>You find putting an evidence bag in another evidence bag to be slightly absurd.</span>"
|
||||
return
|
||||
|
||||
if(I.w_class > 3)
|
||||
user << "<span class='notice'>[I] won't fit in [src].</span>"
|
||||
return
|
||||
|
||||
if(contents.len)
|
||||
user << "<span class='notice'>\The [src] already has something inside it.</span>"
|
||||
user << "<span class='notice'>[src] already has something inside it.</span>"
|
||||
return ..()
|
||||
|
||||
if(!isturf(O.loc)) //If it isn't on the floor. Do some checks to see if it's in our hands or a box. Otherwise give up.
|
||||
if(istype(O.loc,/obj/item/weapon/storage)) //in a container.
|
||||
var/obj/item/weapon/storage/U = O.loc
|
||||
user.client.screen -= O
|
||||
U.contents.Remove(O)
|
||||
else if(user.l_hand == O) //in a hand
|
||||
if(!isturf(I.loc)) //If it isn't on the floor. Do some checks to see if it's in our hands or a box. Otherwise give up.
|
||||
if(istype(I.loc,/obj/item/weapon/storage)) //in a container.
|
||||
var/obj/item/weapon/storage/U = I.loc
|
||||
user.client.screen -= I
|
||||
U.contents.Remove(I)
|
||||
else if(user.l_hand == I) //in a hand
|
||||
user.drop_l_hand()
|
||||
else if(user.r_hand == O) //in a hand
|
||||
else if(user.r_hand == I) //in a hand
|
||||
user.drop_r_hand()
|
||||
else
|
||||
return
|
||||
|
||||
user.visible_message("\The [user] puts \a [O] into \a [src]", "You put \the [O] inside \the [src].",\
|
||||
user.visible_message("[user] puts [I] into [src]", "You put [I] inside [src].",\
|
||||
"You hear a rustle as someone puts something into a plastic bag.")
|
||||
|
||||
icon_state = "evidence"
|
||||
var/image/I = image("icon"=O, "layer"=FLOAT_LAYER) //take a snapshot. (necessary to stop the underlays appearing under our inventory-HUD slots ~Carn
|
||||
underlays += I
|
||||
desc = "An evidence bag containing \a [O]. [O.desc]"
|
||||
O.loc = src
|
||||
w_class = O.w_class
|
||||
|
||||
var/xx = I.pixel_x //save the offset of the item
|
||||
var/yy = I.pixel_y
|
||||
I.pixel_x = 0 //then remove it so it'll stay within the evidence bag
|
||||
I.pixel_y = 0
|
||||
var/image/img = image("icon"=I, "layer"=FLOAT_LAYER) //take a snapshot. (necessary to stop the underlays appearing under our inventory-HUD slots ~Carn
|
||||
I.pixel_x = xx //and then return it
|
||||
I.pixel_y = yy
|
||||
overlays += img
|
||||
overlays += "evidence" //should look nicer for transparent stuff. not really that important, but hey.
|
||||
|
||||
desc = "An evidence bag containing [I]. [I.desc]"
|
||||
I.loc = src
|
||||
w_class = I.w_class
|
||||
return
|
||||
|
||||
|
||||
/obj/item/weapon/evidencebag/attack_self(mob/user as mob)
|
||||
if (contents.len)
|
||||
if(contents.len)
|
||||
var/obj/item/I = contents[1]
|
||||
user.visible_message("\The [user] takes \a [I] out of \a [src]", "You take \the [I] out of \the [src].",\
|
||||
user.visible_message("[user] takes [I] out of [src]", "You take [I] out of [src].",\
|
||||
"You hear someone rustle around in a plastic bag, and remove something.")
|
||||
underlays = null //remove the underlays
|
||||
overlays = null //remove the overlays
|
||||
user.put_in_hands(I)
|
||||
w_class = 1
|
||||
icon_state = "evidenceobj"
|
||||
desc = "An empty evidence bag."
|
||||
|
||||
else
|
||||
user << "\The [src] is empty."
|
||||
user << "[src] is empty."
|
||||
icon_state = "evidenceobj"
|
||||
return
|
||||
|
||||
|
||||
@@ -89,11 +89,11 @@
|
||||
|
||||
|
||||
afterattack(var/obj/target as obj, mob/user as mob)
|
||||
if(!(istype(target, /obj))) //this really shouldn't be necessary (but it is). -Pete
|
||||
if(!istype(target)) //this really shouldn't be necessary (but it is). -Pete
|
||||
return
|
||||
if(istype(target, /obj/structure/table) || istype(target, /obj/structure/rack) \
|
||||
|| istype(target, /obj/item/smallDelivery) || istype(target,/obj/structure/bigDelivery) \
|
||||
|| istype(target, /obj/item/weapon/gift))
|
||||
|| istype(target, /obj/item/weapon/gift) || istype(target, /obj/item/weapon/evidencebag))
|
||||
return
|
||||
if(target.anchored)
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user