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:
petethegoat@gmail.com
2012-11-21 17:17:00 +00:00
parent ab9c532ae8
commit 0c9195fbe4
12 changed files with 3174 additions and 3149 deletions
+1 -9
View File
@@ -14,15 +14,6 @@
desc = "It's useful for both carrying extra gear and proudly declaring your insanity."
icon_state = "cultpack"
/obj/item/weapon/storage/trashbag
name = "trash bag"
desc = "It's the heavy-duty black polymer kind. Time to take out the trash!"
icon_state = "trashbag"
item_state = "trashbag"
w_class = 4.0
storage_slots = 20
max_w_class = 1
max_combined_w_class = 20
/*
/obj/item/weapon/storage/lbe
name = "Load Bearing Equipment"
@@ -31,6 +22,7 @@
w_class = 2.0
max_combined_w_class = 17
*/
/obj/item/weapon/storage/pill_bottle
name = "pill bottle"
desc = "It's an airtight container for storing medication."
+29 -20
View File
@@ -426,41 +426,50 @@ proc/process_ghost_teleport_locs()
//ENEMY
//names are used
/area/syndicate_station
name = "\improper Syndicate Station"
icon_state = "yellow"
requires_power = 0
/area/syndicate_station/start
name = "\improper Syndicate Station Start"
name = "\improper Syndicate Forward Operating Base"
icon_state = "yellow"
/area/syndicate_station/one
name = "\improper Syndicate Station Location 1"
icon_state = "green"
/area/syndicate_station/southwest
name = "south-west of SS13"
icon_state = "southwest"
/area/syndicate_station/two
name = "\improper Syndicate Station Location 2"
icon_state = "green"
/area/syndicate_station/northwest
name = "north-west of SS13"
icon_state = "northwest"
/area/syndicate_station/three
name = "\improper Syndicate Station Location 3"
icon_state = "green"
/area/syndicate_station/northeast
name = "north-east of SS13"
icon_state = "northeast"
/area/syndicate_station/four
name = "\improper Syndicate Station Location 4"
icon_state = "green"
/area/syndicate_station/southeast
name = "south-east of SS13"
icon_state = "southeast"
/area/syndicate_station/five
name = "\improper Syndicate Station Location 5"
icon_state = "green"
/area/syndicate_station/north
name = "north of SS13"
icon_state = "north"
/area/syndicate_station/six
name = "\improper Syndicate Station Location 6"
icon_state = "green"
/area/syndicate_station/south
name = "south of SS13"
icon_state = "south"
/area/syndicate_station/commssat
name = "south of the communication satellite"
icon_state = "south"
/area/syndicate_station/mining
name = "north of the mining asteroid"
icon_state = "north"
/area/syndicate_station/transit
name = "\improper Syndicate Station Transit"
name = "hyperspace"
icon_state = "shuttle"
/area/wizard_station
+1 -1
View File
@@ -145,8 +145,8 @@
H.equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_mine (H), slot_ears)
if(H.backbag == 2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/industrial (H), slot_back)
if(H.backbag == 3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_eng(H), slot_back)
H.equip_to_slot_or_del(new /obj/item/device/pda/shaftminer(H), slot_belt)
H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/miner(H), slot_w_uniform)
H.equip_to_slot_or_del(new /obj/item/device/pda/shaftminer(H), slot_belt)
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(H), slot_shoes)
H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves)
if(H.backbag == 1)
@@ -60,6 +60,8 @@
<a href='?src=\ref[src];station_sw=1'>South West of SS13</a> |
<a href='?src=\ref[src];station_s=1'>South of SS13</a> |
<a href='?src=\ref[src];station_se=1'>South East of SS13</a><br>
<a href='?src=\ref[src];commssat=1'>South of the Communication Satellite"</a> |
<a href='?src=\ref[src];mining=1'>North of the Mining Asteroid</a><br>
<a href='?src=\ref[user];mach_close=computer'>Close</a>"}
user << browse(dat, "window=computer;size=575x450")
@@ -77,17 +79,21 @@
if(href_list["syndicate"])
syndicate_move_to(/area/syndicate_station/start)
else if(href_list["station_nw"])
syndicate_move_to(/area/syndicate_station/two)
syndicate_move_to(/area/syndicate_station/northwest)
else if(href_list["station_n"])
syndicate_move_to(/area/syndicate_station/five)
syndicate_move_to(/area/syndicate_station/north)
else if(href_list["station_ne"])
syndicate_move_to(/area/syndicate_station/three)
syndicate_move_to(/area/syndicate_station/northeast)
else if(href_list["station_sw"])
syndicate_move_to(/area/syndicate_station/one)
syndicate_move_to(/area/syndicate_station/southwest)
else if(href_list["station_s"])
syndicate_move_to(/area/syndicate_station/six)
syndicate_move_to(/area/syndicate_station/south)
else if(href_list["station_se"])
syndicate_move_to(/area/syndicate_station/four)
syndicate_move_to(/area/syndicate_station/southeast)
else if(href_list["commssat"])
syndicate_move_to(/area/syndicate_station/commssat)
else if(href_list["mining"])
syndicate_move_to(/area/syndicate_station/mining)
add_fingerprint(usr)
updateUsrDialog()
+11 -11
View File
@@ -1,14 +1,14 @@
/obj/item/weapon/trashbag
name = "trash bag"
desc = "A heavy-duty, no fun allowed trash bag."
desc = "It's the heavy-duty black polymer kind. Time to take out the trash!"
icon = 'icons/obj/trash.dmi'
icon_state = "trashbag0"
item_state = "trashbag"
flags = FPRINT | TABLEPASS
slot_flags = SLOT_BELT
w_class = 2.0
var/mode = 1; //0 = pick one at a time, 1 = pick all on tile
var/capacity = 25; //the number of trash it can carry.
w_class = 4
var/mode = 1 //0 = pick one at a time, 1 = pick all on tile
var/capacity = 25 //the amount of trash it can carry.
/obj/item/weapon/trashbag/update_icon()
if(contents.len == 0)
@@ -19,13 +19,13 @@
icon_state = "trashbag2"
else icon_state = "trashbag3"
/obj/item/weapon/trashbag/attackby(obj/item/W as obj, mob/living/user as mob)
/obj/item/weapon/trashbag/attackby(obj/item/I as obj, mob/user as mob)
..()
if(contents.len < capacity)
if(istype(W, /obj/item))
if(W.w_class <= 2)
var/obj/item/O = W
contents += O
if(istype(I, /obj/item))
if(I.w_class <= 2)
user.drop_item()
I.loc = src
else
user << "<span class='notice'>[src] is full!</span>"
@@ -36,7 +36,7 @@
update_icon()
user << "<span class='notice'>You empty [src] onto [user.loc].</span>"
/obj/item/weapon/trashbag/afterattack(atom/target as mob|obj|turf|area, mob/living/user as mob|obj, flag)
/obj/item/weapon/trashbag/afterattack(atom/target as mob|obj|turf|area, mob/user as mob|obj, flag)
if(istype(target, /obj/item))
var/obj/item/W = target
if(W.w_class <= 2)
@@ -47,7 +47,7 @@
if(istype(O, /obj/item/weapon/disk/nuclear)) continue //No nuke disks - Nodrak
if(contents.len < capacity)
if(O.w_class <= 2)
contents += O;
O.loc = src
else
user << "<span class='notice'>[src] is full!</span>"
break
+3 -1
View File
@@ -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()
+38 -24
View File
@@ -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
+2 -2
View File
@@ -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
Binary file not shown.

Before

Width:  |  Height:  |  Size: 53 KiB

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 20 KiB

+3077 -3074
View File
File diff suppressed because it is too large Load Diff
-1
View File
@@ -597,7 +597,6 @@
#include "code\game\vehicles\airtight\space.dm"
#include "code\game\verbs\atom_verbs.dm"
#include "code\game\verbs\ooc.dm"
#include "code\game\verbs\sound.dm"
#include "code\game\verbs\suicide.dm"
#include "code\game\verbs\who.dm"
#include "code\js\byjax.dm"