You can now interact with belts that are not on your belt slot.
Added Security Belts, 4 slot belt that can carry basic sec gear. The security shuttle control can now be emag'd. Removed the old take off and stabilize verbs for the pshuttle. Cleaned up some computer defines. The detective's cabinet is now a secure cabinet. Most of the secure closets cleaned up a bit. The captain no longer spawns with an ID box in his backpack. RD's locker got its flash back. Added the blob node sprites. Removed the 2% laser resist that normal jumpsuits gave. Normal clothing should not be blocking lasers. Left the 10% special block on each department. Riot suit slowdown lowered to 1 from 2.5 Repiped the right side of sec and tidied up the powerlines. Loyalty Implanter moved into the outer rec room checkpoint. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2277 316c924e-a436-60f5-8080-3fe189b3f50e
@@ -26,13 +26,6 @@
|
||||
icon_closed = "cabinet_closed"
|
||||
icon_opened = "cabinet_open"
|
||||
|
||||
/obj/closet/cabinet2
|
||||
desc = "Old will forever be in fashion."
|
||||
name = "Cabinet"
|
||||
icon_state = "cabinetdet_closed"
|
||||
icon_closed = "cabinetdet_closed"
|
||||
icon_opened = "cabinetdet_open"
|
||||
|
||||
/obj/spresent
|
||||
desc = "It's a ... present?"
|
||||
name = "strange present"
|
||||
@@ -363,7 +356,7 @@
|
||||
icon_closed = "extinguisher10"
|
||||
opened = 1
|
||||
var/localopened = 1
|
||||
desc = "Sure was nice of CentCom to install these everywhere. Foam in them would have been nicer."
|
||||
desc = "A small wall mounted cabinet designed to hold a fire extinguisher."
|
||||
anchored = 1
|
||||
|
||||
open()
|
||||
@@ -373,8 +366,6 @@
|
||||
return
|
||||
|
||||
attackby(var/obj/item/O as obj, var/mob/user as mob)
|
||||
//..() don't want it to behave like a normal closet.
|
||||
|
||||
if (isrobot(usr))
|
||||
return
|
||||
if (istype(O, /obj/item/weapon/extinguisher))
|
||||
@@ -466,8 +457,6 @@
|
||||
icon_opened = "syndicate1open"
|
||||
desc = "Tacticool Gear Closet"
|
||||
|
||||
// Ending of my edit. ~Sillazi
|
||||
|
||||
/obj/closet/thunderdome
|
||||
desc = "Everything you need!"
|
||||
icon_state = "syndicate"
|
||||
@@ -504,98 +493,90 @@
|
||||
|
||||
/obj/closet/wardrobe/black
|
||||
name = "Black Wardrobe"
|
||||
desc = "This contains clothes which appears to be black."
|
||||
desc = "Contains black jumpsuits."
|
||||
icon_state = "black"
|
||||
icon_closed = "black"
|
||||
|
||||
/obj/closet/wardrobe/chaplain_black
|
||||
name = "Chaplain Wardrobe"
|
||||
desc = "Closet of chaplain clothes. Looks meh."
|
||||
desc = "Closet of basic chaplain clothes."
|
||||
icon_state = "black"
|
||||
icon_closed = "black"
|
||||
|
||||
/obj/closet/wardrobe/green
|
||||
name = "Green Wardrobe"
|
||||
desc = "Green is the new green."
|
||||
desc = "Contains green jumpsuits."
|
||||
icon_state = "green"
|
||||
icon_closed = "green"
|
||||
|
||||
/obj/closet/wardrobe/mixed
|
||||
name = "Mixed Wardrobe"
|
||||
desc = "This appears to contain two different sets of clothing."
|
||||
desc = "This appears to contain several different sets of clothing."
|
||||
icon_state = "mixed"
|
||||
icon_closed = "mixed"
|
||||
|
||||
/obj/closet/wardrobe/orange
|
||||
name = "Prisoners Wardrobe"
|
||||
desc = "Prisoners now wear orange. The Security Officers kept thinking the Mime was an escapee."
|
||||
desc = "Contains orange jumpsuits."
|
||||
icon_state = "orange"
|
||||
icon_closed = "orange"
|
||||
|
||||
/obj/closet/wardrobe/pink
|
||||
name = "Pink Wardrobe"
|
||||
desc = "Closet of of soft clothing."
|
||||
desc = "Contains pink jumpsuits."
|
||||
icon_state = "pink"
|
||||
icon_closed = "pink"
|
||||
|
||||
/obj/closet/wardrobe/red
|
||||
name = "Red Wardrobe"
|
||||
desc = "This closer appears to contain clothing which are red."
|
||||
desc = "Contains red jumpsuits."
|
||||
icon_state = "red"
|
||||
icon_closed = "red"
|
||||
|
||||
/obj/closet/wardrobe/forensics_red
|
||||
name = "Forensics Wardrobe"
|
||||
desc = "Used by your local Forensics."
|
||||
icon_state = "red"
|
||||
icon_closed = "red"
|
||||
|
||||
|
||||
/obj/closet/wardrobe/white
|
||||
name = "White Wardrobe"
|
||||
desc = "Basic plain white clothing. Boring..."
|
||||
desc = "Contains white jumpsuits."
|
||||
icon_state = "white"
|
||||
icon_closed = "white"
|
||||
|
||||
/obj/closet/wardrobe/toxins_white
|
||||
name = "Toxins Wardrobe"
|
||||
desc = "Clothes for toxins."
|
||||
desc = "Contains toxins jumpsuits."
|
||||
icon_state = "white"
|
||||
icon_closed = "white"
|
||||
|
||||
/obj/closet/wardrobe/genetics_white
|
||||
name = "Genetics Wardrobe"
|
||||
desc = "Clothes for genetics. They will need this when they are human."
|
||||
desc = "Contains genetics jumpsuits."
|
||||
icon_state = "white"
|
||||
icon_closed = "white"
|
||||
|
||||
|
||||
/obj/closet/wardrobe/yellow
|
||||
name = "Yellow Wardrobe"
|
||||
desc = "Basic yellow clothing."
|
||||
desc = "Contains yellow jumpsuits."
|
||||
icon_state = "wardrobe-y"
|
||||
icon_closed = "wardrobe-y"
|
||||
|
||||
/obj/closet/wardrobe/engineering_yellow
|
||||
name = "Engineering Wardrobe"
|
||||
desc = "The yellow Engineers loves."
|
||||
desc = "Contains engineering jumpsuits."
|
||||
icon_state = "yellow"
|
||||
icon_closed = "yellow"
|
||||
|
||||
/obj/closet/wardrobe/atmospherics_yellow
|
||||
name = "Atmospherics Wardrobe"
|
||||
desc = "Clothing for the most dangerous job."
|
||||
desc = "Contains atmospheric jumpsuits."
|
||||
icon_state = "yellow"
|
||||
icon_closed = "yellow"
|
||||
|
||||
|
||||
/obj/closet/wardrobe/grey
|
||||
name = "Grey Wardrobe"
|
||||
desc = "This contains the clothing of the Grey Shirts."
|
||||
desc = "Contains grey jumpsuits."
|
||||
icon_state = "grey"
|
||||
icon_closed = "grey"
|
||||
|
||||
|
||||
|
||||
/obj/secure_closet
|
||||
desc = "An immobile card-locked storage closet."
|
||||
name = "Security Locker"
|
||||
@@ -614,72 +595,6 @@
|
||||
var/wall_mounted = 0 //never solid (You can always pass over it)
|
||||
var/health = 300
|
||||
|
||||
/obj/secure_closet/courtroom
|
||||
name = "Courtroom Locker"
|
||||
req_access = list(access_court)
|
||||
|
||||
/obj/secure_closet/animal
|
||||
name = "Animal Control"
|
||||
req_access = list(access_medical)
|
||||
|
||||
/obj/secure_closet/brig
|
||||
name = "Brig Locker"
|
||||
req_access = list(access_brig)
|
||||
var/id = null
|
||||
|
||||
/obj/secure_closet/highsec
|
||||
name = "Head of Personnel"
|
||||
req_access = list(access_hop)
|
||||
|
||||
/obj/secure_closet/hos
|
||||
name = "Head Of Security"
|
||||
req_access = list(access_hos)
|
||||
|
||||
/obj/secure_closet/injection
|
||||
name = "Lethal Injections"
|
||||
req_access = list(access_hos)
|
||||
|
||||
/obj/secure_closet/captains
|
||||
name = "Captain's Closet"
|
||||
req_access = list(access_captain)
|
||||
|
||||
/obj/secure_closet/medical1
|
||||
name = "Medicine Closet"
|
||||
desc = "Filled with medical junk."
|
||||
icon_state = "medical1"
|
||||
icon_closed = "medical"
|
||||
icon_locked = "medical1"
|
||||
icon_opened = "medicalopen"
|
||||
icon_broken = "medicalbroken"
|
||||
icon_off = "medical1"
|
||||
req_access = list(access_medical)
|
||||
|
||||
/obj/secure_closet/chemical
|
||||
name = "Chemical Closet"
|
||||
desc = "Store dangerous chemicals in here. This closet is full of cobwebs."
|
||||
icon_state = "medical1"
|
||||
icon_closed = "medical"
|
||||
icon_locked = "medical1"
|
||||
icon_opened = "medicalopen"
|
||||
icon_broken = "medicalbroken"
|
||||
icon_off = "medical1"
|
||||
req_access = list(access_medical)
|
||||
|
||||
/obj/secure_closet/medical2
|
||||
name = "Anesthetic"
|
||||
desc = "Used to knock people out, but who uses this trash?"
|
||||
icon_state = "medical1"
|
||||
icon_closed = "medical"
|
||||
icon_locked = "medical1"
|
||||
icon_opened = "medicalopen"
|
||||
icon_broken = "medicalbroken"
|
||||
icon_off = "medical1"
|
||||
req_access = list(access_medical)
|
||||
|
||||
/obj/secure_closet/medical3
|
||||
name = "Medical Doctor's Locker"
|
||||
req_access = list(access_medical)
|
||||
|
||||
/obj/secure_closet/medical_wall
|
||||
anchored = 1
|
||||
name = "First Aid Closet"
|
||||
@@ -693,14 +608,6 @@
|
||||
req_access = list(access_medical)
|
||||
wall_mounted = 1
|
||||
|
||||
/obj/secure_closet/RD
|
||||
name = "Research Director"
|
||||
req_access = list(access_rd)
|
||||
|
||||
/obj/secure_closet/CMO
|
||||
name = "Chief Medical Officer"
|
||||
req_access = list(access_cmo)
|
||||
|
||||
/obj/secure_closet/personal
|
||||
desc = "The first card swiped gains control."
|
||||
name = "Personal Closet"
|
||||
@@ -708,26 +615,6 @@
|
||||
/obj/secure_closet/personal/patient
|
||||
name = "Patient's closet"
|
||||
|
||||
/obj/secure_closet/security1
|
||||
name = "Security Equipment"
|
||||
req_access = list(access_security)
|
||||
|
||||
/obj/secure_closet/security2
|
||||
name = "Forensics Locker"
|
||||
req_access = list(access_forensics_lockers)
|
||||
|
||||
/obj/secure_closet/scientist
|
||||
name = "Scientist Locker"
|
||||
|
||||
req_access = list(access_tox_storage)
|
||||
/obj/secure_closet/chemtoxin
|
||||
name = "Chemistry Locker"
|
||||
|
||||
req_access = list(access_medical)
|
||||
/obj/secure_closet/bar
|
||||
name = "Booze"
|
||||
req_access = list(access_bar)
|
||||
|
||||
/obj/secure_closet/kitchen
|
||||
name = "Kitchen Cabinet"
|
||||
req_access = list(access_kitchen)
|
||||
@@ -763,22 +650,6 @@
|
||||
icon_off = "fridge1"
|
||||
req_access = list(access_heads_vault)
|
||||
|
||||
/obj/secure_closet/engineering_chief
|
||||
name = "Chief Engineer's Locker"
|
||||
req_access = list(access_ce)
|
||||
|
||||
/obj/secure_closet/engineering_electrical
|
||||
name = "Electrical Supplies"
|
||||
req_access = list(access_engine)
|
||||
|
||||
/obj/secure_closet/engineering_welding
|
||||
name = "Welding Supplies"
|
||||
req_access = list(access_engine)
|
||||
|
||||
/obj/secure_closet/engineering_personal
|
||||
name = "Engineer's Locker"
|
||||
req_access = list(access_engine)
|
||||
|
||||
/obj/secure_closet/wall
|
||||
name = "wall locker"
|
||||
req_access = list(access_security)
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
3 = Report location
|
||||
*/
|
||||
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 0, rad = 0)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 0, rad = 0)
|
||||
|
||||
// Colors
|
||||
|
||||
@@ -91,7 +91,7 @@
|
||||
item_state = "w_suit"
|
||||
color = "white"
|
||||
permeability_coefficient = 0.50
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 10, rad = 0)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 10, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/color/yellow
|
||||
name = "Yellow Jumpsuit"
|
||||
@@ -129,7 +129,7 @@
|
||||
icon_state = "engine"
|
||||
item_state = "y_suit"
|
||||
color = "engine"
|
||||
armor = list(melee = 0, bullet = 0, laser = 10, taser = 2, bomb = 0, bio = 0, rad = 10)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 0, rad = 10)
|
||||
|
||||
/obj/item/clothing/under/rank/forensic_technician
|
||||
desc = "It has a Forensics rank stripe on it."
|
||||
@@ -144,7 +144,7 @@
|
||||
icon_state = "darkred"
|
||||
item_state = "r_suit"
|
||||
color = "darkred"
|
||||
armor = list(melee = 10, bullet = 5, laser = 5, taser = 5, bomb = 5, bio = 0, rad = 0)
|
||||
armor = list(melee = 10, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 0, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/rank/security
|
||||
name = "Security Jumpsuit"
|
||||
@@ -152,7 +152,7 @@
|
||||
icon_state = "red"
|
||||
item_state = "r_suit"
|
||||
color = "red"
|
||||
armor = list(melee = 10, bullet = 5, laser = 5, taser = 5, bomb = 5, bio = 0, rad = 0)
|
||||
armor = list(melee = 10, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 0, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/rank/vice
|
||||
name = "Vice officer Jumpsuit"
|
||||
@@ -160,7 +160,7 @@
|
||||
icon_state = "vice"
|
||||
item_state = "gy_suit"
|
||||
color = "vice"
|
||||
armor = list(melee = 10, bullet = 5, laser = 5, taser = 5, bomb = 5, bio = 0, rad = 0)
|
||||
armor = list(melee = 10, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 0, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/rank/geneticist
|
||||
desc = "Made of a special fiber that gives special protection against biohazards. Has a genetics rank stripe on it."
|
||||
@@ -169,7 +169,7 @@
|
||||
item_state = "w_suit"
|
||||
color = "geneticswhite"
|
||||
permeability_coefficient = 0.50
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 10, rad = 0)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 10, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/rank/chemist
|
||||
desc = "Made of a special fiber that gives special protection against biohazards. Has a chemist rank stripe on it."
|
||||
@@ -178,7 +178,7 @@
|
||||
item_state = "w_suit"
|
||||
color = "geneticswhite"
|
||||
permeability_coefficient = 0.50
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 10, rad = 0)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 10, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/rank/head_of_personnel
|
||||
desc = "It has a Head of Personnel rank stripe on it."
|
||||
@@ -221,7 +221,7 @@
|
||||
icon_state = "hos"
|
||||
item_state = "r_suit"
|
||||
color = "hosred"
|
||||
armor = list(melee = 10, bullet = 5, laser = 5, taser = 5, bomb = 5, bio = 0, rad = 0)
|
||||
armor = list(melee = 10, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 0, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/rank/chief_engineer
|
||||
desc = "It has a Chief Engineer rank stripe on it."
|
||||
@@ -229,7 +229,7 @@
|
||||
icon_state = "chiefengineer"
|
||||
item_state = "g_suit"
|
||||
color = "chief"
|
||||
armor = list(melee = 0, bullet = 0, laser = 10, taser = 2, bomb = 0, bio = 0, rad = 10)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 0, rad = 10)
|
||||
|
||||
/obj/item/clothing/under/rank/research_director
|
||||
desc = "It has a Research Director rank stripe on it."
|
||||
@@ -237,14 +237,14 @@
|
||||
icon_state = "director"
|
||||
item_state = "g_suit"
|
||||
color = "director"
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 10, rad = 10)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 10, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/rank/janitor
|
||||
desc = "Official clothing of the station's poopscooper. It has a janitor rank stripe on it"
|
||||
name = "Janitor's Jumpsuit"
|
||||
icon_state = "janitor"
|
||||
color = "janitor"
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 10, rad = 0)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 10, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/rank/scientist
|
||||
desc = "Made of a special fiber that gives special protection against biohazards. Has a toxins rank stripe on it."
|
||||
@@ -253,7 +253,7 @@
|
||||
item_state = "w_suit"
|
||||
color = "toxinswhite"
|
||||
permeability_coefficient = 0.50
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 10, bio = 10, rad = 0)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 10, bio = 0, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/rank/medical
|
||||
desc = "Made of a special fiber that gives special protection against biohazards. It has a medical rank stripe on it."
|
||||
@@ -262,7 +262,7 @@
|
||||
item_state = "w_suit"
|
||||
color = "medical"
|
||||
permeability_coefficient = 0.50
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 10, rad = 0)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 10, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/rank/chief_medical_officer
|
||||
desc = "Made of a special fiber that gives special protection against biohazards. Has a Chief Medical Officer rank stripe on it."
|
||||
@@ -280,7 +280,7 @@
|
||||
item_state = "g_suit"
|
||||
color = "hydroponics"
|
||||
permeability_coefficient = 0.50
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 10, rad = 0)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 10, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/rank/cargo
|
||||
name = "Quartermaster's Jumpsuit"
|
||||
@@ -337,7 +337,7 @@
|
||||
item_state = "w_suit"
|
||||
color = "genetics_new"
|
||||
permeability_coefficient = 0.50
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 10, rad = 0)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 10, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/rank/chemist_new
|
||||
desc = "Made of a special fiber that gives special protection against biohazards."
|
||||
@@ -346,7 +346,7 @@
|
||||
item_state = "w_suit"
|
||||
color = "chemist_new"
|
||||
permeability_coefficient = 0.50
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 10, rad = 0)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 10, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/rank/scientist_new
|
||||
desc = "Made of a special fiber that gives special protection against biohazards and small explosions."
|
||||
@@ -355,7 +355,7 @@
|
||||
item_state = "w_suit"
|
||||
color = "scientist_new"
|
||||
permeability_coefficient = 0.50
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 10, bio = 10, rad = 0)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 10, bio = 0, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/rank/virologist_new
|
||||
desc = "Made of a special fiber that gives increased protection against biohazards."
|
||||
@@ -364,7 +364,7 @@
|
||||
item_state = "w_suit"
|
||||
color = "virologist_new"
|
||||
permeability_coefficient = 0.50
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 15, rad = 0)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 10, rad = 0)
|
||||
|
||||
|
||||
// OTHER NONRANKED STATION JOBS
|
||||
@@ -374,7 +374,7 @@
|
||||
icon_state = "detective"
|
||||
item_state = "det"
|
||||
color = "detective"
|
||||
armor = list(melee = 10, bullet = 5, laser = 5, taser = 5, bomb = 5, bio = 0, rad = 0)
|
||||
armor = list(melee = 10, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 0, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/scratch
|
||||
name = "White Suit"
|
||||
@@ -398,7 +398,7 @@
|
||||
item_state = "bl_suit"
|
||||
color = "syndicate"
|
||||
has_sensor = 0
|
||||
armor = list(melee = 10, bullet = 5, laser = 5, taser = 5, bomb = 5, bio = 0, rad = 0)
|
||||
armor = list(melee = 10, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 0, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/syndicate/tacticool
|
||||
name = "Tacticool Turtleneck"
|
||||
@@ -406,7 +406,7 @@
|
||||
icon_state = "tactifool"
|
||||
item_state = "bl_suit"
|
||||
color = "tactifool"
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 0, rad = 0)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 0, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/syndicate/combat
|
||||
name = "Combat Turtleneck"
|
||||
@@ -489,7 +489,7 @@
|
||||
item_state = "nursesuit"
|
||||
color = "nursesuit"
|
||||
permeability_coefficient = 0.50
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 10, rad = 0)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 10, rad = 0)
|
||||
|
||||
/obj/item/clothing/under/acj
|
||||
name = "Administrative Cybernetic Jumpsuit"
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
var/fire_resist = T0C+100
|
||||
flags = FPRINT | TABLEPASS
|
||||
var/list/allowed = list(/obj/item/weapon/tank/emergency_oxygen)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 2, bomb = 0, bio = 0, rad = 0)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 0, rad = 0)
|
||||
|
||||
/obj/item/clothing/suit/bomb_suit
|
||||
name = "bomb suit"
|
||||
@@ -39,7 +39,7 @@
|
||||
heat_transfer_coefficient = 0.30
|
||||
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
|
||||
slowdown = 1.3
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 100, rad = 20)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 100, rad = 20)
|
||||
|
||||
/obj/item/clothing/suit/bio_suit/general
|
||||
icon_state = "bio_general"
|
||||
@@ -96,7 +96,7 @@
|
||||
flags = FPRINT | TABLEPASS | ONESIZEFITSALL
|
||||
body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
|
||||
allowed = list(/obj/item/device/analyzer,/obj/item/stack/medical,/obj/item/weapon/dnainjector,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/hypospray,/obj/item/device/healthanalyzer,/obj/item/device/flashlight/pen)
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 50, rad = 5)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 50, rad = 5)
|
||||
|
||||
/obj/item/clothing/suit/labcoat/cmo
|
||||
name = "chief medical officer's labcoat"
|
||||
@@ -104,7 +104,7 @@
|
||||
allowed = list(/obj/item/weapon/tank/emergency_oxygen,/obj/item/device/analyzer,/obj/item/stack/medical,/obj/item/weapon/dnainjector,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/hypospray,/obj/item/device/healthanalyzer,/obj/item/device/flashlight/pen)
|
||||
icon_state = "labcoat_cmo_open"
|
||||
item_state = "labcoat_cmo"
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 55, rad = 5)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 55, rad = 5)
|
||||
|
||||
/obj/item/clothing/suit/labcoat/mad
|
||||
name = "The Mad's labcoat"
|
||||
@@ -130,7 +130,7 @@
|
||||
desc = "A suit that protects against minor chemical spills. Offers slightly more protection against biohazards than the standard model. Has a green stripe on the shoulder."
|
||||
allowed = list(/obj/item/weapon/tank/emergency_oxygen,/obj/item/device/analyzer,/obj/item/stack/medical,/obj/item/weapon/dnainjector,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/hypospray,/obj/item/device/healthanalyzer,/obj/item/device/flashlight/pen)
|
||||
icon_state = "labcoat_vir_open"
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 55, rad = 5)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 55, rad = 5)
|
||||
|
||||
/obj/item/clothing/suit/labcoat/science
|
||||
name = "Scientist Labcoat"
|
||||
@@ -212,7 +212,7 @@
|
||||
icon_state = "wizard-fake"
|
||||
item_state = "wizrobe"
|
||||
body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS //It's not magic, shit is reasonable. --NEO
|
||||
armor = list(melee = 5, bullet = 0, laser = 5, taser = 5, bomb = 5, bio = 5, rad = 5)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 0, rad = 0)
|
||||
|
||||
/obj/item/clothing/suit/wizrobe/marisa
|
||||
name = "Witch Robe"
|
||||
@@ -362,8 +362,8 @@
|
||||
icon_state = "riot"
|
||||
item_state = "swat_suit"
|
||||
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
|
||||
slowdown = 2.5
|
||||
armor = list(melee = 82, bullet = 5, laser = 2, taser = 2, bomb = 5, bio = 0, rad = 0)
|
||||
slowdown = 1
|
||||
armor = list(melee = 80, bullet = 5, laser = 5, taser = 0, bomb = 5, bio = 0, rad = 0)
|
||||
|
||||
/obj/item/clothing/suit/armor/bulletproof
|
||||
name = "Bulletproof Vest"
|
||||
@@ -415,7 +415,7 @@
|
||||
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
|
||||
allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency_oxygen)
|
||||
slowdown = 1.3
|
||||
armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 60, rad = 100)
|
||||
armor = list(melee = 0, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 60, rad = 100)
|
||||
|
||||
/obj/item/clothing/suit/fire/heavy
|
||||
name = "firesuit"
|
||||
@@ -477,7 +477,7 @@
|
||||
icon_state = "chickensuit"
|
||||
item_state = "chickensuit"
|
||||
body_parts_covered = UPPER_TORSO|ARMS|LOWER_TORSO|LEGS|FEET|HEAD
|
||||
armor = list(melee = 5, bullet = 2, laser = 2, taser = 2, bomb = 0, bio = 0, rad = 0)
|
||||
armor = list(melee = 5, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 0, rad = 0)
|
||||
|
||||
/obj/item/clothing/suit/monkeysuit
|
||||
name = "Monkey Suit"
|
||||
@@ -485,7 +485,7 @@
|
||||
icon_state = "monkeysuit"
|
||||
item_state = "monkeysuit"
|
||||
body_parts_covered = UPPER_TORSO|ARMS|LOWER_TORSO|LEGS|FEET|HANDS
|
||||
armor = list(melee = 5, bullet = 2, laser = 2, taser = 2, bomb = 0, bio = 0, rad = 0)
|
||||
armor = list(melee = 5, bullet = 0, laser = 0, taser = 0, bomb = 0, bio = 0, rad = 0)
|
||||
|
||||
/obj/item/clothing/suit/holidaypriest
|
||||
name = "Holiday Priest"
|
||||
|
||||
@@ -5,12 +5,6 @@
|
||||
anchored = 1.0
|
||||
var/obj/item/weapon/circuitboard/circuit = null //if circuit==null, computer can't disassemble
|
||||
|
||||
/*
|
||||
/obj/machinery/computer/airtunnel
|
||||
name = "Air Tunnel Control"
|
||||
icon = 'airtunnelcomputer.dmi'
|
||||
icon_state = "console00"
|
||||
*/
|
||||
|
||||
/obj/machinery/computer/operating
|
||||
name = "Operating Computer"
|
||||
@@ -18,15 +12,10 @@
|
||||
anchored = 1.0
|
||||
icon_state = "operating"
|
||||
circuit = "/obj/item/weapon/circuitboard/operating"
|
||||
|
||||
var/mob/living/carbon/human/victim = null
|
||||
|
||||
var/obj/machinery/optable/table = null
|
||||
var/id = 0.0
|
||||
|
||||
/*
|
||||
* Arcade -- An arcade cabinet.
|
||||
*/
|
||||
|
||||
/obj/machinery/computer/arcade
|
||||
name = "arcade machine"
|
||||
@@ -43,41 +32,46 @@
|
||||
var/gameover = 0
|
||||
var/blocked = 0 //Player cannot attack/heal while set
|
||||
|
||||
|
||||
/obj/machinery/computer/aiupload
|
||||
name = "AI Upload"
|
||||
desc = "It is said that you can upload silly laws to AI's with this."
|
||||
desc = "Used to upload laws to the AI."
|
||||
icon_state = "command"
|
||||
circuit = "/obj/item/weapon/circuitboard/aiupload"
|
||||
var/mob/living/silicon/ai/current = null
|
||||
var/opened = 0
|
||||
|
||||
|
||||
/obj/machinery/computer/borgupload
|
||||
name = "Cyborg Upload"
|
||||
desc = "Used for uploading responsible laws to Cyborg. Right..."
|
||||
desc = "Used to upload laws to Cyborgs."
|
||||
icon_state = "command"
|
||||
circuit = "/obj/item/weapon/circuitboard/borgupload"
|
||||
var/mob/living/silicon/robot/current = null
|
||||
|
||||
/obj/machinery/computer/atmosphere
|
||||
name = "atmos"
|
||||
desc = "A computer for Atmospherics."
|
||||
|
||||
/obj/machinery/computer/station_alert
|
||||
name = "Station Alert Computer"
|
||||
desc = "Alert. Alert. ALERT!!!"
|
||||
desc = "Used to access the station's automated alert system."
|
||||
icon_state = "alert:0"
|
||||
circuit = "/obj/item/weapon/circuitboard/stationalert"
|
||||
var/alarms = list("Fire"=list(), "Atmosphere"=list(), "Power"=list())
|
||||
|
||||
|
||||
/obj/machinery/computer/atmos_alert
|
||||
name = "Atmospheric Alert Computer"
|
||||
desc = "Used to detect where they messed up this time."
|
||||
desc = "Used to access the station's atmospheric sensors."
|
||||
icon_state = "alert:0"
|
||||
var/list/priority_alarms = list()
|
||||
var/list/minor_alarms = list()
|
||||
var/receive_frequency = 1437
|
||||
|
||||
|
||||
/obj/machinery/computer/atmosphere
|
||||
name = "atmos"
|
||||
desc = "A computer for Atmospherics."
|
||||
|
||||
|
||||
/obj/machinery/computer/atmosphere/siphonswitch
|
||||
name = "Area Air Control"
|
||||
desc = "Nanotrasen provided this, barely."
|
||||
@@ -85,12 +79,14 @@
|
||||
var/otherarea
|
||||
var/area/area
|
||||
|
||||
|
||||
/obj/machinery/computer/atmosphere/siphonswitch/mastersiphonswitch
|
||||
name = "Master Air Control"
|
||||
|
||||
|
||||
/obj/machinery/computer/card
|
||||
name = "Identification Computer"
|
||||
desc = "You can use this to change ID's. YOU ARE GOD!"
|
||||
desc = "You can use this to change ID's."
|
||||
icon_state = "id"
|
||||
circuit = "/obj/item/weapon/circuitboard/card"
|
||||
var/obj/item/weapon/card/id/scan = null
|
||||
@@ -100,29 +96,13 @@
|
||||
var/printing = null
|
||||
req_access = list(access_change_ids)
|
||||
|
||||
//ID changing computer for CentCom.
|
||||
|
||||
/obj/machinery/computer/card/centcom
|
||||
name = "CentCom Identification Computer"
|
||||
desc = "You are the Gods's God."
|
||||
circuit = "/obj/item/weapon/circuitboard/card/centcom"
|
||||
req_access = list(access_cent_captain)
|
||||
|
||||
|
||||
/obj/machinery/computer/data
|
||||
name = "data"
|
||||
icon_state = "aiupload"
|
||||
|
||||
var/list/topics = list( )
|
||||
|
||||
/obj/machinery/computer/data/weapon
|
||||
name = "weapon"
|
||||
|
||||
/obj/machinery/computer/data/weapon/info
|
||||
name = "Research Computer"
|
||||
|
||||
/obj/machinery/computer/data/weapon/log
|
||||
name = "Log Computer"
|
||||
|
||||
/obj/machinery/computer/dna
|
||||
name = "DNA operations computer"
|
||||
desc = "A Computer used to advanced DNA stuff."
|
||||
@@ -133,6 +113,7 @@
|
||||
var/mode = null
|
||||
var/temp = null
|
||||
|
||||
|
||||
/obj/machinery/computer/hologram_comp
|
||||
name = "Hologram Computer"
|
||||
desc = "Rumoured to control holograms."
|
||||
@@ -145,6 +126,7 @@
|
||||
var/h_g = 245.0
|
||||
var/h_b = 245.0
|
||||
|
||||
|
||||
/obj/machinery/computer/med_data
|
||||
name = "Medical Records"
|
||||
desc = "This can be used to check medical records."
|
||||
@@ -161,11 +143,13 @@
|
||||
var/temp = null
|
||||
var/printing = null
|
||||
|
||||
|
||||
/obj/machinery/computer/med_data/laptop
|
||||
name = "Medical Laptop"
|
||||
desc = "Cheap Nanotrasen Laptop."
|
||||
icon_state = "medlaptop"
|
||||
|
||||
|
||||
/obj/machinery/computer/pod
|
||||
name = "Pod Launch Control"
|
||||
desc = "A controll for launching pods. Some people prefer firing Mechas."
|
||||
@@ -175,19 +159,108 @@
|
||||
var/timing = 0.0
|
||||
var/time = 30.0
|
||||
|
||||
|
||||
/obj/machinery/computer/pod/old
|
||||
icon_state = "old"
|
||||
name = "DoorMex Control Computer"
|
||||
|
||||
|
||||
/obj/machinery/computer/pod/old/syndicate
|
||||
name = "ProComp Executive IIc"
|
||||
desc = "The Syndicate operate on a tight budget. Operates external airlocks."
|
||||
|
||||
|
||||
/obj/machinery/computer/pod/old/swf
|
||||
name = "Magix System IV"
|
||||
desc = "An arcane artifact that holds much magic. Running E-Knock 2.2: Sorceror's Edition"
|
||||
|
||||
/*/obj/machinery/computer/scan_consolenew //Coming Soon
|
||||
|
||||
/obj/machinery/computer/secure_data
|
||||
name = "Security Records"
|
||||
desc = "Used to view and edit personnel's security records"
|
||||
icon_state = "security"
|
||||
req_access = list(access_security)
|
||||
circuit = "/obj/item/weapon/circuitboard/secure_data"
|
||||
var/obj/item/weapon/card/id/scan = null
|
||||
var/authenticated = null
|
||||
var/rank = null
|
||||
var/screen = null
|
||||
var/datum/data/record/active1 = null
|
||||
var/datum/data/record/active2 = null
|
||||
var/a_id = null
|
||||
var/temp = null
|
||||
var/printing = null
|
||||
var/can_change_id = 0
|
||||
|
||||
|
||||
/obj/machinery/computer/secure_data/detective_computer
|
||||
icon = 'computer.dmi'
|
||||
icon_state = "messyfiles"
|
||||
|
||||
|
||||
/obj/machinery/computer/security
|
||||
name = "Security Cameras"
|
||||
desc = "Used to access the various cameras on the station."
|
||||
icon_state = "cameras"
|
||||
circuit = "/obj/item/weapon/circuitboard/security"
|
||||
var/obj/machinery/camera/current = null
|
||||
var/last_pic = 1.0
|
||||
var/network = "SS13"
|
||||
var/maplevel = 1
|
||||
|
||||
|
||||
/obj/machinery/computer/security/telescreen
|
||||
name = "Telescreen"
|
||||
desc = "Used for watching an empty arena."
|
||||
icon = 'stationobjs.dmi'
|
||||
icon_state = "telescreen"
|
||||
network = "thunder"
|
||||
density = 0
|
||||
circuit = null
|
||||
|
||||
|
||||
/obj/machinery/computer/security/wooden_tv
|
||||
name = "Security Cameras"
|
||||
desc = "An old TV hooked into the stations camera network."
|
||||
icon_state = "security_det"
|
||||
|
||||
|
||||
/obj/machinery/computer/security/mining
|
||||
name = "Outpost Cameras"
|
||||
desc = "Used to access the various cameras on the outpost."
|
||||
icon_state = "miningcameras"
|
||||
network = "MINE"
|
||||
circuit = "/obj/item/weapon/circuitboard/mining"
|
||||
|
||||
|
||||
/obj/machinery/computer/crew
|
||||
name = "Crew monitoring computer"
|
||||
desc = "Used to monitor active health sensors built into most of the crew's uniforms."
|
||||
icon_state = "crew"
|
||||
use_power = 1
|
||||
idle_power_usage = 250
|
||||
active_power_usage = 500
|
||||
circuit = "/obj/item/weapon/circuitboard/crew"
|
||||
var/list/tracked = list( )
|
||||
|
||||
|
||||
/obj/machinery/computer/robotics
|
||||
name = "Robotics Control"
|
||||
desc = "Used to remotely lockdown or detonate linked Cyborgs."
|
||||
icon = 'computer.dmi'
|
||||
icon_state = "robot"
|
||||
req_access = list(access_robotics)
|
||||
circuit = "/obj/item/weapon/circuitboard/robotics"
|
||||
|
||||
var/id = 0.0
|
||||
var/temp = null
|
||||
var/status = 0
|
||||
var/timeleft = 60
|
||||
var/stop = 0.0
|
||||
var/screen = 0 // 0 - Main Menu, 1 - Cyborg Status, 2 - Kill 'em All! -- In text
|
||||
|
||||
|
||||
/*/obj/machinery/computer/scan_consolenew //Coming Soon, I highly doubt this but Ill leave it here anyways
|
||||
name = "DNA Modifier Access Console"
|
||||
desc = "Scand DNA."
|
||||
icon = 'computer.dmi'
|
||||
@@ -224,101 +297,3 @@
|
||||
use_power = 1
|
||||
idle_power_usage = 10
|
||||
active_power_usage = 400 */
|
||||
|
||||
/obj/machinery/computer/secure_data
|
||||
name = "Security Records"
|
||||
desc = "Beepsky. ARREST!!!"
|
||||
icon_state = "security"
|
||||
req_access = list(access_security)
|
||||
circuit = "/obj/item/weapon/circuitboard/secure_data"
|
||||
var/obj/item/weapon/card/id/scan = null
|
||||
var/authenticated = null
|
||||
var/rank = null
|
||||
var/screen = null
|
||||
var/datum/data/record/active1 = null
|
||||
var/datum/data/record/active2 = null
|
||||
var/a_id = null
|
||||
var/temp = null
|
||||
var/printing = null
|
||||
var/can_change_id = 0
|
||||
|
||||
/obj/machinery/computer/secure_data/detective_computer
|
||||
icon = 'computer.dmi'
|
||||
icon_state = "messyfiles"
|
||||
|
||||
/obj/machinery/computer/security
|
||||
name = "Security Cameras"
|
||||
desc = "Better than Television."
|
||||
icon_state = "cameras"
|
||||
circuit = "/obj/item/weapon/circuitboard/security"
|
||||
var/obj/machinery/camera/current = null
|
||||
var/last_pic = 1.0
|
||||
var/network = "SS13"
|
||||
var/maplevel = 1
|
||||
|
||||
/obj/machinery/computer/security/telescreen
|
||||
name = "Telescreen"
|
||||
desc = "Used for watching an empty arena."
|
||||
icon = 'stationobjs.dmi'
|
||||
icon_state = "telescreen"
|
||||
network = "thunder"
|
||||
density = 0
|
||||
circuit = null
|
||||
|
||||
/obj/machinery/computer/security/wooden_tv
|
||||
name = "Security Cameras"
|
||||
desc = "Nanotrasen gave the detective this for Noir feeling."
|
||||
icon_state = "security_det"
|
||||
|
||||
/obj/machinery/computer/security/mining
|
||||
name = "Outpost Status Display"
|
||||
desc = "It's better than reality TV."
|
||||
icon_state = "miningcameras"
|
||||
network = "MINE"
|
||||
circuit = "/obj/item/weapon/circuitboard/mining"
|
||||
|
||||
/obj/machinery/computer/shuttle
|
||||
name = "Shuttle"
|
||||
desc = "For shuttle controll."
|
||||
icon_state = "shuttle"
|
||||
var/auth_need = 3.0
|
||||
var/list/authorized = list( )
|
||||
|
||||
/obj/machinery/computer/teleporter
|
||||
name = "Teleporter"
|
||||
desc = "Use this to set your destination...hopefully..."
|
||||
icon_state = "teleport"
|
||||
circuit = "/obj/item/weapon/circuitboard/teleporter"
|
||||
var/obj/item/locked = null
|
||||
var/id = null
|
||||
|
||||
/obj/machinery/computer/teleporter/security
|
||||
name = "Teleporter"
|
||||
desc = "Use this to set your destination...hopefully..."
|
||||
icon_state = "teleport"
|
||||
locked = null
|
||||
id = null
|
||||
|
||||
/obj/machinery/computer/crew
|
||||
name = "Crew monitoring computer"
|
||||
icon_state = "crew"
|
||||
use_power = 1
|
||||
idle_power_usage = 250
|
||||
active_power_usage = 500
|
||||
circuit = "/obj/item/weapon/circuitboard/crew"
|
||||
var/list/tracked = list( )
|
||||
|
||||
/obj/machinery/computer/robotics
|
||||
name = "Robotics Control"
|
||||
icon = 'computer.dmi'
|
||||
icon_state = "robot"
|
||||
req_access = list(access_robotics)
|
||||
circuit = "/obj/item/weapon/circuitboard/robotics"
|
||||
|
||||
var/id = 0.0
|
||||
var/temp = null
|
||||
var/status = 0
|
||||
var/timeleft = 60
|
||||
var/stop = 0.0
|
||||
var/screen = 0 // 0 - Main Menu, 1 - Cyborg Status, 2 - Kill 'em All! -- In text
|
||||
|
||||
|
||||
@@ -1,54 +1,3 @@
|
||||
/obj/item/weapon/storage/utilitybelt
|
||||
name = "utility belt"
|
||||
desc = "Can hold various tools."
|
||||
icon = 'belts.dmi'
|
||||
icon_state = "utilitybelt"
|
||||
item_state = "utility"
|
||||
can_hold = list(
|
||||
"/obj/item/weapon/crowbar",
|
||||
"/obj/item/weapon/screwdriver",
|
||||
"/obj/item/weapon/weldingtool",
|
||||
"/obj/item/weapon/wirecutters",
|
||||
"/obj/item/weapon/wrench",
|
||||
"/obj/item/device/multitool",
|
||||
"/obj/item/device/flashlight",
|
||||
"/obj/item/weapon/cable_coil",
|
||||
"/obj/item/device/t_scanner",
|
||||
"/obj/item/device/analyzer")
|
||||
flags = FPRINT | TABLEPASS | ONBELT
|
||||
|
||||
/obj/item/weapon/storage/utilitybelt/full/New()
|
||||
..()
|
||||
new /obj/item/weapon/screwdriver(src)
|
||||
new /obj/item/weapon/wrench(src)
|
||||
new /obj/item/weapon/weldingtool(src)
|
||||
new /obj/item/weapon/crowbar(src)
|
||||
new /obj/item/weapon/wirecutters(src)
|
||||
new /obj/item/weapon/cable_coil(src,30,pick("red","yellow"))
|
||||
|
||||
|
||||
/obj/item/weapon/storage/utilitybelt/medical
|
||||
name = "medical belt"
|
||||
desc = "Can hold various medical equipment."
|
||||
icon_state = "medicalbelt"
|
||||
item_state = "medical"
|
||||
can_hold = list(
|
||||
"/obj/item/device/healthanalyzer",
|
||||
"/obj/item/weapon/dnainjector",
|
||||
"/obj/item/weapon/reagent_containers/dropper",
|
||||
"/obj/item/weapon/reagent_containers/glass/beaker",
|
||||
"/obj/item/weapon/reagent_containers/glass/bottle",
|
||||
"/obj/item/weapon/reagent_containers/pill",
|
||||
"/obj/item/weapon/reagent_containers/syringe",
|
||||
"/obj/item/weapon/reagent_containers/glass/dispenser",
|
||||
"/obj/item/weapon/zippo",
|
||||
"/obj/item/weapon/cigpacket",
|
||||
"/obj/item/weapon/storage/pill_bottle",
|
||||
"/obj/item/stack/medical",
|
||||
"/obj/item/device/flashlight/pen"
|
||||
)
|
||||
flags = FPRINT | TABLEPASS | ONBELT
|
||||
|
||||
/obj/item/weapon/storage/backpack
|
||||
name = "backpack"
|
||||
desc = "You wear this on your back and put items into it."
|
||||
|
||||
@@ -300,9 +300,9 @@
|
||||
|
||||
/datum/supply_packs/mechanical
|
||||
name = "Mechanical maintenance crate"
|
||||
contains = list("/obj/item/weapon/storage/utilitybelt/full",
|
||||
"/obj/item/weapon/storage/utilitybelt/full",
|
||||
"/obj/item/weapon/storage/utilitybelt/full",
|
||||
contains = list("/obj/item/weapon/storage/belt/utility/full",
|
||||
"/obj/item/weapon/storage/belt/utility/full",
|
||||
"/obj/item/weapon/storage/belt/utility/full",
|
||||
"/obj/item/clothing/suit/hazardvest",
|
||||
"/obj/item/clothing/suit/hazardvest",
|
||||
"/obj/item/clothing/suit/hazardvest",
|
||||
|
||||
@@ -319,9 +319,10 @@
|
||||
temp_apc.overload_lighting()
|
||||
for (var/obj/machinery/computer/prison_shuttle/temp_shuttle in world)
|
||||
temp_shuttle.prison_break()
|
||||
for (var/obj/secure_closet/security1/temp_closet in world)
|
||||
for (var/obj/secure_closet/security/temp_closet in world)
|
||||
if(istype(get_area(temp_closet), /area/prison))
|
||||
temp_closet.prison_break()
|
||||
temp_closet.locked = 0
|
||||
temp_closet.icon_state = temp_closet.icon_closed
|
||||
for (var/obj/machinery/door/airlock/security/temp_airlock in world)
|
||||
if(istype(get_area(temp_airlock), /area/prison))
|
||||
temp_airlock.prison_open()
|
||||
|
||||
@@ -338,8 +338,7 @@
|
||||
src.equip_if_possible(new /obj/item/device/pda/engineering(src), slot_belt)
|
||||
src.equip_if_possible(new /obj/item/clothing/shoes/orange(src), slot_shoes)
|
||||
src.equip_if_possible(new /obj/item/clothing/head/helmet/hardhat(src), slot_head)
|
||||
src.equip_if_possible(new /obj/item/weapon/storage/utilitybelt/full(src), slot_l_hand) //currently spawns in hand due to traitor assignment requiring a PDA to be on the belt. --Errorage
|
||||
//src.equip_if_possible(new /obj/item/clothing/gloves/yellow(src), slot_gloves) removed as part of Dangercon 2011, approved by Urist_McDorf --Errorage
|
||||
src.equip_if_possible(new /obj/item/weapon/storage/belt/utility/full(src), slot_l_hand)
|
||||
src.equip_if_possible(new /obj/item/device/t_scanner(src), slot_r_store)
|
||||
|
||||
if ("Shaft Miner")
|
||||
@@ -559,14 +558,13 @@
|
||||
src.equip_if_possible(new /obj/item/weapon/storage/backpack/industrial (src), slot_back)
|
||||
src.equip_if_possible(new /obj/item/weapon/storage/box/engineer(src.back), slot_in_backpack)
|
||||
src.equip_if_possible(new /obj/item/device/radio/headset/heads/ce (src), slot_ears)
|
||||
src.equip_if_possible(new /obj/item/clothing/gloves/black(src), slot_gloves) //changed to black as part of dangercon 2011, approved by Urist_McDorf --Errorage
|
||||
src.equip_if_possible(new /obj/item/clothing/gloves/black(src), slot_gloves)
|
||||
src.equip_if_possible(new /obj/item/clothing/shoes/brown(src), slot_shoes)
|
||||
src.equip_if_possible(new /obj/item/clothing/head/helmet/hardhat/white(src), slot_head)
|
||||
src.equip_if_possible(new /obj/item/weapon/storage/utilitybelt/full(src), slot_l_hand) //currently spawns in hand due to traitor assignment requiring a PDA to be on the belt. --Errorage
|
||||
src.equip_if_possible(new /obj/item/weapon/storage/belt/utility/full(src), slot_l_hand)
|
||||
var/obj/item/clothing/mask/cigarette/CIG = new /obj/item/clothing/mask/cigarette(src)
|
||||
CIG.light("")
|
||||
src.equip_if_possible(CIG, slot_wear_mask) // sorry, no more cigar
|
||||
//src.equip_if_possible(new /obj/item/clothing/glasses/meson(src), slot_glasses) Removed as part of DangerCon 2011, approved by Urist_McDorf, --Errorage
|
||||
src.equip_if_possible(CIG, slot_wear_mask)
|
||||
src.equip_if_possible(new /obj/item/clothing/under/rank/chief_engineer(src), slot_w_uniform)
|
||||
src.equip_if_possible(new /obj/item/device/pda/heads/ce(src), slot_belt)
|
||||
|
||||
|
||||
@@ -177,7 +177,7 @@ proc/setup_jobs()
|
||||
JOB.equipment_shoes = list(/obj/item/clothing/shoes/orange,/obj/item/clothing/shoes/brown,/obj/item/clothing/shoes/black)
|
||||
JOB.equipment_suit = list(/obj/item/clothing/suit/hazardvest)
|
||||
JOB.equipment_under = list(/obj/item/clothing/under/rank/engineer,/obj/item/clothing/under/color/yellow)
|
||||
JOB.equipment_belt = list(/obj/item/weapon/storage/utilitybelt/full)
|
||||
JOB.equipment_belt = list(/obj/item/weapon/storage/belt/utility/full)
|
||||
JOB.equipment_back = list(/obj/item/weapon/storage/backpack/industrial,/obj/item/weapon/storage/backpack)
|
||||
JOB.equipment_pda = /obj/item/device/pda/engineering
|
||||
JOB.equipment_id = /obj/item/weapon/card/id
|
||||
|
||||
@@ -1,191 +1,64 @@
|
||||
/obj/machinery/computer/shuttle/attackby(var/obj/item/weapon/card/W as obj, var/mob/user as mob)
|
||||
if(stat & (BROKEN|NOPOWER))
|
||||
return
|
||||
if ((!( istype(W, /obj/item/weapon/card) ) || !( ticker ) || emergency_shuttle.location != 1 || !( user )))
|
||||
return
|
||||
/obj/machinery/computer/shuttle
|
||||
name = "Shuttle"
|
||||
desc = "For shuttle control."
|
||||
icon_state = "shuttle"
|
||||
var/auth_need = 3.0
|
||||
var/list/authorized = list( )
|
||||
|
||||
|
||||
if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
|
||||
if (istype(W, /obj/item/device/pda))
|
||||
var/obj/item/device/pda/pda = W
|
||||
W = pda.id
|
||||
if (!W:access) //no access
|
||||
user << "The access level of [W:registered]\'s card is not high enough. "
|
||||
return
|
||||
|
||||
var/list/cardaccess = W:access
|
||||
if(!istype(cardaccess, /list) || !cardaccess.len) //no access
|
||||
user << "The access level of [W:registered]\'s card is not high enough. "
|
||||
return
|
||||
|
||||
if(!(access_heads in W:access)) //doesn't have this access
|
||||
user << "The access level of [W:registered]\'s card is not high enough. "
|
||||
return 0
|
||||
|
||||
var/choice = alert(user, text("Would you like to (un)authorize a shortened launch time? [] authorization\s are still needed. Use abort to cancel all authorizations.", src.auth_need - src.authorized.len), "Shuttle Launch", "Authorize", "Repeal", "Abort")
|
||||
switch(choice)
|
||||
if("Authorize")
|
||||
src.authorized -= W:registered
|
||||
src.authorized += W:registered
|
||||
if (src.auth_need - src.authorized.len > 0)
|
||||
message_admins("[key_name_admin(user)] has authorized early shuttle launch")
|
||||
log_game("[user.ckey] has authorized early shuttle launch")
|
||||
world << text("\blue <B>Alert: [] authorizations needed until shuttle is launched early</B>", src.auth_need - src.authorized.len)
|
||||
else
|
||||
message_admins("[key_name_admin(user)] has launched the shuttle")
|
||||
log_game("[user.ckey] has launched the shuttle early")
|
||||
world << "\blue <B>Alert: Shuttle launch time shortened to 10 seconds!</B>"
|
||||
emergency_shuttle.settimeleft(10)
|
||||
//src.authorized = null
|
||||
del(src.authorized)
|
||||
src.authorized = list( )
|
||||
|
||||
if("Repeal")
|
||||
src.authorized -= W:registered
|
||||
world << text("\blue <B>Alert: [] authorizations needed until shuttle is launched early</B>", src.auth_need - src.authorized.len)
|
||||
|
||||
if("Abort")
|
||||
world << "\blue <B>All authorizations to shorting time for shuttle launch have been revoked!</B>"
|
||||
src.authorized.len = 0
|
||||
src.authorized = list( )
|
||||
|
||||
else if (istype(W, /obj/item/weapon/card/emag))
|
||||
var/choice = alert(user, "Would you like to launch the shuttle?","Shuttle control", "Launch", "Cancel")
|
||||
switch(choice)
|
||||
if("Launch")
|
||||
world << "\blue <B>Alert: Shuttle launch time shortened to 10 seconds!</B>"
|
||||
emergency_shuttle.settimeleft( 10 )
|
||||
if("Cancel")
|
||||
attackby(var/obj/item/weapon/card/W as obj, var/mob/user as mob)
|
||||
if(stat & (BROKEN|NOPOWER)) return
|
||||
if ((!( istype(W, /obj/item/weapon/card) ) || !( ticker ) || emergency_shuttle.location != 1 || !( user ))) return
|
||||
if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
|
||||
if (istype(W, /obj/item/device/pda))
|
||||
var/obj/item/device/pda/pda = W
|
||||
W = pda.id
|
||||
if (!W:access) //no access
|
||||
user << "The access level of [W:registered]\'s card is not high enough. "
|
||||
return
|
||||
|
||||
return
|
||||
var/list/cardaccess = W:access
|
||||
if(!istype(cardaccess, /list) || !cardaccess.len) //no access
|
||||
user << "The access level of [W:registered]\'s card is not high enough. "
|
||||
return
|
||||
|
||||
/*
|
||||
/obj/shut_controller/proc/rotate(direct)
|
||||
if(!(access_heads in W:access)) //doesn't have this access
|
||||
user << "The access level of [W:registered]\'s card is not high enough. "
|
||||
return 0
|
||||
|
||||
var/SE_X = 1
|
||||
var/SE_Y = 1
|
||||
var/SW_X = 1
|
||||
var/SW_Y = 1
|
||||
var/NE_X = 1
|
||||
var/NE_Y = 1
|
||||
var/NW_X = 1
|
||||
var/NW_Y = 1
|
||||
for(var/obj/move/M in src.parts)
|
||||
if (M.x < SW_X)
|
||||
SW_X = M.x
|
||||
if (M.x > SE_X)
|
||||
SE_X = M.x
|
||||
if (M.y < SW_Y)
|
||||
SW_Y = M.y
|
||||
if (M.y > NW_Y)
|
||||
NW_Y = M.y
|
||||
if (M.y > NE_Y)
|
||||
NE_Y = M.y
|
||||
if (M.y < SE_Y)
|
||||
SE_Y = M.y
|
||||
if (M.x > NE_X)
|
||||
NE_X = M.x
|
||||
if (M.x < NW_X)
|
||||
NW_X = M.y
|
||||
var/length = abs(NE_X - NW_X)
|
||||
var/width = abs(NE_Y - SE_Y)
|
||||
var/obj/random = pick(src.parts)
|
||||
var/s_direct = null
|
||||
switch(s_direct)
|
||||
if(1.0)
|
||||
switch(direct)
|
||||
if(90.0)
|
||||
var/tx = SE_X
|
||||
var/ty = SE_Y
|
||||
var/t_z = random.z
|
||||
for(var/obj/move/M in src.parts)
|
||||
M.ty = -M.x - tx
|
||||
M.tx = -M.y - ty
|
||||
var/T = locate(M.x, M.y, 11)
|
||||
M.relocate(T)
|
||||
M.ty = -M.ty
|
||||
M.tx += length
|
||||
//Foreach goto(374)
|
||||
for(var/obj/move/M in src.parts)
|
||||
M.tx += tx
|
||||
M.ty += ty
|
||||
var/T = locate(M.tx, M.ty, t_z)
|
||||
M.relocate(T, 90)
|
||||
//Foreach goto(468)
|
||||
if(-90.0)
|
||||
var/tx = SE_X
|
||||
var/ty = SE_Y
|
||||
var/t_z = random.z
|
||||
for(var/obj/move/M in src.parts)
|
||||
M.ty = M.x - tx
|
||||
M.tx = M.y - ty
|
||||
var/T = locate(M.x, M.y, 11)
|
||||
M.relocate(T)
|
||||
M.ty = -M.ty
|
||||
M.ty += width
|
||||
//Foreach goto(571)
|
||||
for(var/obj/move/M in src.parts)
|
||||
M.tx += tx
|
||||
M.ty += ty
|
||||
var/T = locate(M.tx, M.ty, t_z)
|
||||
M.relocate(T, -90.0)
|
||||
//Foreach goto(663)
|
||||
else
|
||||
else
|
||||
return
|
||||
*/
|
||||
var/choice = alert(user, text("Would you like to (un)authorize a shortened launch time? [] authorization\s are still needed. Use abort to cancel all authorizations.", src.auth_need - src.authorized.len), "Shuttle Launch", "Authorize", "Repeal", "Abort")
|
||||
switch(choice)
|
||||
if("Authorize")
|
||||
src.authorized -= W:registered
|
||||
src.authorized += W:registered
|
||||
if (src.auth_need - src.authorized.len > 0)
|
||||
message_admins("[key_name_admin(user)] has authorized early shuttle launch")
|
||||
log_game("[user.ckey] has authorized early shuttle launch")
|
||||
world << text("\blue <B>Alert: [] authorizations needed until shuttle is launched early</B>", src.auth_need - src.authorized.len)
|
||||
else
|
||||
message_admins("[key_name_admin(user)] has launched the shuttle")
|
||||
log_game("[user.ckey] has launched the shuttle early")
|
||||
world << "\blue <B>Alert: Shuttle launch time shortened to 10 seconds!</B>"
|
||||
emergency_shuttle.settimeleft(10)
|
||||
//src.authorized = null
|
||||
del(src.authorized)
|
||||
src.authorized = list( )
|
||||
|
||||
/obj/machinery/computer/prison_shuttle/verb/take_off()
|
||||
set category = "Object"
|
||||
set name = "Launch Prison Shuttle"
|
||||
set src in oview(1)
|
||||
if("Repeal")
|
||||
src.authorized -= W:registered
|
||||
world << text("\blue <B>Alert: [] authorizations needed until shuttle is launched early</B>", src.auth_need - src.authorized.len)
|
||||
|
||||
if (usr.stat || usr.restrained())
|
||||
if("Abort")
|
||||
world << "\blue <B>All authorizations to shorting time for shuttle launch have been revoked!</B>"
|
||||
src.authorized.len = 0
|
||||
src.authorized = list( )
|
||||
|
||||
else if (istype(W, /obj/item/weapon/card/emag))
|
||||
var/choice = alert(user, "Would you like to launch the shuttle?","Shuttle control", "Launch", "Cancel")
|
||||
switch(choice)
|
||||
if("Launch")
|
||||
world << "\blue <B>Alert: Shuttle launch time shortened to 10 seconds!</B>"
|
||||
emergency_shuttle.settimeleft( 10 )
|
||||
if("Cancel")
|
||||
return
|
||||
return
|
||||
|
||||
src.add_fingerprint(usr)
|
||||
if(!src.allowedtocall)
|
||||
usr << "\red The console seems irreparably damaged!"
|
||||
return
|
||||
if(src.z == 3)
|
||||
usr << "\red Already in transit! Please wait!"
|
||||
return
|
||||
|
||||
var/A = locate(/area/shuttle/prison/)
|
||||
for(var/mob/M in A)
|
||||
M.show_message("\red Launch sequence initiated!")
|
||||
spawn(0) shake_camera(M, 10, 1)
|
||||
sleep(10)
|
||||
|
||||
if(src.z == 2) //This is the laziest proc ever
|
||||
for(var/atom/movable/AM as mob|obj in A)
|
||||
AM.z = 3
|
||||
AM.Move()
|
||||
sleep(rand(600,1800))
|
||||
for(var/atom/movable/AM as mob|obj in A)
|
||||
AM.z = 1
|
||||
AM.Move()
|
||||
else
|
||||
for(var/atom/movable/AM as mob|obj in A)
|
||||
AM.z = 3
|
||||
AM.Move()
|
||||
sleep(rand(600,1800))
|
||||
for(var/atom/movable/AM as mob|obj in A)
|
||||
AM.z = 2
|
||||
AM.Move()
|
||||
for(var/mob/M in A)
|
||||
M.show_message("\red Prison shuttle has arrived at destination!")
|
||||
spawn(0) shake_camera(M, 2, 1)
|
||||
return
|
||||
|
||||
/obj/machinery/computer/prison_shuttle/verb/restabalize()
|
||||
set category = "Object"
|
||||
set name = "Restabilize Prison Shuttle"
|
||||
set src in oview(1)
|
||||
|
||||
src.add_fingerprint(usr)
|
||||
|
||||
var/A = locate(/area/shuttle/prison/)
|
||||
for(var/mob/M in A)
|
||||
M.show_message("\red <B>Restabilizing prison shuttle atmosphere!</B>")
|
||||
@@ -1,3 +1,11 @@
|
||||
/obj/machinery/computer/teleporter
|
||||
name = "Teleporter"
|
||||
desc = "Used to control a linked teleportation Hub and Station."
|
||||
icon_state = "teleport"
|
||||
circuit = "/obj/item/weapon/circuitboard/teleporter"
|
||||
var/obj/item/locked = null
|
||||
var/id = null
|
||||
|
||||
/obj/machinery/computer/teleporter/New()
|
||||
src.id = text("[]", rand(1000, 9999))
|
||||
..()
|
||||
@@ -304,77 +312,3 @@
|
||||
|
||||
/atom/proc/laserhit(L as obj)
|
||||
return 1
|
||||
|
||||
/obj/machinery/computer/data/weapon/log/New()
|
||||
..()
|
||||
src.topics["Super-heater"] = "This turns a can of semi-liquid plasma into a super-heated ball of plasma."
|
||||
src.topics["Amplifier"] = "This increases the intensity of a laser."
|
||||
src.topics["Class 11 Laser"] = "This creates a very slow laser that is capable of penetrating most objects."
|
||||
src.topics["Plasma Energizer"] = "This combines super-heated plasma with a laser beam."
|
||||
src.topics["Generator"] = "This controls the entire power grid."
|
||||
src.topics["Mirror"] = "this can reflect LOW power lasers. HIGH power goes through it!"
|
||||
src.topics["Targetting Prism"] = "This focuses a laser coming from any direction forward."
|
||||
return
|
||||
|
||||
/obj/machinery/computer/data/weapon/log/display()
|
||||
set src in oview(1)
|
||||
|
||||
usr << "<B>Research Log:</B>"
|
||||
..()
|
||||
return
|
||||
|
||||
/obj/machinery/computer/data/weapon/info/New()
|
||||
..()
|
||||
src.topics["LOG(001)"] = "System: Deployment successful"
|
||||
src.topics["LOG(002)"] = "System: Safe orbit at inclination .003 established"
|
||||
src.topics["LOG(003)"] = "CenCom: Attempting test fire...ALERT(001)"
|
||||
src.topics["ALERT(001)"] = "System: Cannot attempt test fire"
|
||||
src.topics["LOG(004)"] = "System: Airlock accessed..."
|
||||
src.topics["LOG(005)"] = "System: System successfully reset...Generator engaged"
|
||||
src.topics["LOG(006)"] = "Physical: Super-heater (W005) added to power grid"
|
||||
src.topics["LOG(007)"] = "Physical: Amplifier (W007) added to power grid"
|
||||
src.topics["LOG(008)"] = "Physical: Plasma Energizer (W006) added to power grid"
|
||||
src.topics["LOG(009)"] = "Physical: Laser (W004) added to power grid"
|
||||
src.topics["LOG(010)"] = "Physical: Laser test firing"
|
||||
src.topics["LOG(011)"] = "Physical: Plasma added to Super-heater"
|
||||
src.topics["LOG(012)"] = "Physical: Orient N12.525,E22.124"
|
||||
src.topics["LOG(013)"] = "System: Location N12.525,E22.124"
|
||||
src.topics["LOG(014)"] = "Physical: Test fire...successful"
|
||||
src.topics["LOG(015)"] = "Physical: Airlock accessed..."
|
||||
src.topics["LOG(016)"] = "******: Disable locater systems"
|
||||
src.topics["LOG(017)"] = "System: Locater Beacon-Disengaged,CenCom link-Cut...ALERT(002)"
|
||||
src.topics["ALERT(002)"] = "System: Cannot seem to establish contact with Central Command"
|
||||
src.topics["LOG(018)"] = "******: Shutting down all systems...ALERT(003)"
|
||||
src.topics["ALERT(003)"] = "System: Power grid failure-Activating back-up power...ALERT(004)"
|
||||
src.topics["ALERT(004)"] = "System: Engine failure...All systems deactivated."
|
||||
return
|
||||
|
||||
/obj/machinery/computer/data/weapon/info/display()
|
||||
set src in oview(1)
|
||||
|
||||
usr << "<B>Research Information:</B>"
|
||||
..()
|
||||
return
|
||||
|
||||
/obj/machinery/computer/data/verb/display()
|
||||
set name = "Display"
|
||||
set category = "Object"
|
||||
set src in oview(1)
|
||||
|
||||
for(var/x in src.topics)
|
||||
usr << text("[], \...", x)
|
||||
usr << ""
|
||||
src.add_fingerprint(usr)
|
||||
return
|
||||
|
||||
/obj/machinery/computer/data/verb/read(topic as text)
|
||||
set name = "Read"
|
||||
set category = "Object"
|
||||
set src in oview(1)
|
||||
|
||||
if (src.topics[text("[]", topic)])
|
||||
usr << text("<B>[]</B>\n\t []", topic, src.topics[text("[]", topic)])
|
||||
else
|
||||
usr << text("Unable to find- []", topic)
|
||||
src.add_fingerprint(usr)
|
||||
return
|
||||
@@ -58,7 +58,7 @@
|
||||
if(prob(70))
|
||||
new /obj/item/device/t_scanner(src)
|
||||
if(prob(20))
|
||||
new /obj/item/weapon/storage/utilitybelt(src)
|
||||
new /obj/item/weapon/storage/belt/utility(src)
|
||||
if(prob(30))
|
||||
new /obj/item/weapon/cable_coil(src)
|
||||
if(prob(30))
|
||||
|
||||
@@ -1,7 +1,3 @@
|
||||
/obj/closet/gimmick/New()
|
||||
..()
|
||||
sleep(2)
|
||||
|
||||
/obj/closet/gimmick/russian/New()
|
||||
..()
|
||||
sleep(2)
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
/obj/secure_closet/animal/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/device/radio/signaler( src )
|
||||
new /obj/item/device/radio/electropack( src )
|
||||
new /obj/item/device/radio/electropack( src )
|
||||
new /obj/item/device/radio/electropack( src )
|
||||
new /obj/item/device/radio/electropack( src )
|
||||
new /obj/item/device/radio/electropack( src )
|
||||
return
|
||||
@@ -1,14 +1,19 @@
|
||||
/obj/secure_closet/bar/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
return
|
||||
/obj/secure_closet/bar
|
||||
name = "Booze"
|
||||
req_access = list(access_bar)
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/beer( src )
|
||||
return
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
/obj/secure_closet/brig/New()
|
||||
new /obj/item/clothing/under/color/orange( src )
|
||||
new /obj/item/clothing/under/color/orange( src )
|
||||
new /obj/item/clothing/shoes/orange( src )
|
||||
new /obj/item/clothing/shoes/orange( src )
|
||||
return
|
||||
@@ -1,16 +0,0 @@
|
||||
/obj/secure_closet/captains/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/flask(src)
|
||||
new /obj/item/device/radio/headset/heads/captain( src )
|
||||
new /obj/item/weapon/gun/energy( src )
|
||||
new /obj/item/weapon/storage/id_kit( src )
|
||||
new /obj/item/clothing/under/rank/captain( src )
|
||||
new /obj/item/clothing/shoes/brown( src )
|
||||
new /obj/item/clothing/glasses/sunglasses( src )
|
||||
new /obj/item/clothing/suit/armor/vest( src )
|
||||
new /obj/item/clothing/head/helmet/swat( src )
|
||||
new /obj/item/clothing/suit/captunic( src )
|
||||
new /obj/item/clothing/head/helmet/cap( src )
|
||||
new /obj/item/clothing/gloves/captain( src )
|
||||
return
|
||||
@@ -1,6 +0,0 @@
|
||||
/obj/secure_closet/chemtoxin/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/storage/pillbottlebox(src)
|
||||
new /obj/item/weapon/storage/pillbottlebox(src)
|
||||
return
|
||||
@@ -1,15 +0,0 @@
|
||||
/obj/secure_closet/courtroom/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/shoes/brown(src)
|
||||
new /obj/item/weapon/paper/Court (src)
|
||||
new /obj/item/weapon/paper/Court (src)
|
||||
new /obj/item/weapon/paper/Court (src)
|
||||
new /obj/item/weapon/pen (src)
|
||||
new /obj/item/clothing/suit/judgerobe (src)
|
||||
new /obj/item/clothing/head/powdered_wig (src)
|
||||
new /obj/item/clothing/under/lawyer/red(src)
|
||||
new /obj/item/clothing/under/lawyer/blue(src)
|
||||
new /obj/item/clothing/under/lawyer/black(src)
|
||||
new /obj/item/weapon/storage/briefcase(src)
|
||||
return
|
||||
@@ -1,59 +1,78 @@
|
||||
/obj/secure_closet/engineering_chief/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/blueprints( src )
|
||||
new /obj/item/device/radio/headset/heads/ce( src )
|
||||
new /obj/item/clothing/under/rank/chief_engineer( src )
|
||||
new /obj/item/clothing/gloves/yellow( src )
|
||||
new /obj/item/clothing/shoes/brown( src )
|
||||
new /obj/item/weapon/storage/toolbox/mechanical( src )
|
||||
//new /obj/item/clothing/shoes/magboots( src ) Moved to RIG suit rack --errorage
|
||||
//new /obj/item/clothing/ears/earmuffs( src ) useless --errorage
|
||||
//new /obj/item/clothing/glasses/meson( src ) Moved to his desk --errorage
|
||||
//new /obj/item/clothing/suit/fire/firefighter( src )
|
||||
new /obj/item/clothing/suit/hazardvest( src )
|
||||
new /obj/item/clothing/mask/gas( src )
|
||||
new /obj/item/clothing/head/helmet/welding( src )
|
||||
new /obj/item/clothing/head/helmet/hardhat/white( src )
|
||||
new /obj/item/device/multitool( src )
|
||||
new /obj/item/device/flash( src )
|
||||
return
|
||||
/obj/secure_closet/engineering_chief
|
||||
name = "Chief Engineer's Locker"
|
||||
req_access = list(access_ce)
|
||||
|
||||
/obj/secure_closet/engineering_electrical/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/gloves/yellow( src )
|
||||
new /obj/item/clothing/gloves/yellow( src )
|
||||
//new /obj/item/clothing/gloves/yellow( src ) --Part of DangerCon 2011, approved by Urist_McDorf, --Errorage
|
||||
new /obj/item/weapon/storage/toolbox/electrical( src )
|
||||
new /obj/item/weapon/storage/toolbox/electrical( src )
|
||||
new /obj/item/weapon/storage/toolbox/electrical( src )
|
||||
new /obj/item/device/multitool( src )
|
||||
new /obj/item/device/multitool( src )
|
||||
new /obj/item/device/multitool( src )
|
||||
return
|
||||
|
||||
/obj/secure_closet/engineering_welding/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/head/helmet/welding( src )
|
||||
new /obj/item/clothing/head/helmet/welding( src )
|
||||
new /obj/item/clothing/head/helmet/welding( src )
|
||||
new /obj/item/weapon/weldingtool/largetank( src )
|
||||
new /obj/item/weapon/weldingtool/largetank( src )
|
||||
new /obj/item/weapon/weldingtool/largetank( src )
|
||||
return
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/blueprints(src)
|
||||
new /obj/item/clothing/under/rank/chief_engineer(src)
|
||||
new /obj/item/clothing/suit/hazardvest(src)
|
||||
new /obj/item/clothing/head/helmet/hardhat/white(src)
|
||||
new /obj/item/clothing/head/helmet/welding(src)
|
||||
new /obj/item/clothing/gloves/yellow(src)
|
||||
new /obj/item/clothing/shoes/brown(src)
|
||||
new /obj/item/device/radio/headset/heads/ce(src)
|
||||
new /obj/item/weapon/storage/toolbox/mechanical(src)
|
||||
new /obj/item/clothing/mask/gas(src)
|
||||
new /obj/item/device/multitool(src)
|
||||
new /obj/item/device/flash(src)
|
||||
return
|
||||
|
||||
/obj/secure_closet/engineering_personal/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/storage/toolbox/mechanical( src )
|
||||
new /obj/item/device/radio/headset/headset_eng( src )
|
||||
new /obj/item/clothing/under/rank/engineer( src )
|
||||
new /obj/item/clothing/shoes/orange( src )
|
||||
new /obj/item/clothing/suit/hazardvest( src )
|
||||
new /obj/item/clothing/mask/gas( src )
|
||||
//new /obj/item/clothing/head/helmet/hardhat( src ) engineers now spawn with them --Errorage
|
||||
//new /obj/item/clothing/ears/earmuffs( src ) useless --Errorage
|
||||
new /obj/item/clothing/glasses/meson( src )
|
||||
return
|
||||
|
||||
|
||||
/obj/secure_closet/engineering_electrical
|
||||
name = "Electrical Supplies"
|
||||
req_access = list(access_engine)
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/gloves/yellow(src)
|
||||
new /obj/item/clothing/gloves/yellow(src)
|
||||
new /obj/item/weapon/storage/toolbox/electrical(src)
|
||||
new /obj/item/weapon/storage/toolbox/electrical(src)
|
||||
new /obj/item/weapon/storage/toolbox/electrical(src)
|
||||
new /obj/item/device/multitool(src)
|
||||
new /obj/item/device/multitool(src)
|
||||
new /obj/item/device/multitool(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
/obj/secure_closet/engineering_welding
|
||||
name = "Welding Supplies"
|
||||
req_access = list(access_engine)
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/head/helmet/welding(src)
|
||||
new /obj/item/clothing/head/helmet/welding(src)
|
||||
new /obj/item/clothing/head/helmet/welding(src)
|
||||
new /obj/item/weapon/weldingtool/largetank(src)
|
||||
new /obj/item/weapon/weldingtool/largetank(src)
|
||||
new /obj/item/weapon/weldingtool/largetank(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
/obj/secure_closet/engineering_personal
|
||||
name = "Engineer's Locker"
|
||||
req_access = list(access_engine)
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/engineer(src)
|
||||
new /obj/item/clothing/suit/hazardvest(src)
|
||||
new /obj/item/clothing/shoes/orange(src)
|
||||
new /obj/item/device/radio/headset/headset_eng(src)
|
||||
new /obj/item/weapon/storage/toolbox/mechanical(src)
|
||||
new /obj/item/clothing/mask/gas(src)
|
||||
new /obj/item/clothing/glasses/meson(src)
|
||||
return
|
||||
|
||||
@@ -1,61 +1,126 @@
|
||||
/obj/secure_closet/medical1/New()
|
||||
..()
|
||||
sleep(2)
|
||||
//new /obj/item/weapon/storage/gl_kit( src )
|
||||
//new /obj/item/weapon/reagent_containers/glass/bottle/antitoxin( src )
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/antitoxin( src )
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/antitoxin( src )
|
||||
//new /obj/item/weapon/reagent_containers/glass/bottle/inaprovaline( src )
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/inaprovaline( src )
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/inaprovaline( src )
|
||||
//new /obj/item/weapon/reagent_containers/glass/bottle/stoxin( src )
|
||||
//new /obj/item/weapon/reagent_containers/glass/bottle/stoxin( src )
|
||||
//new /obj/item/weapon/reagent_containers/glass/bottle/toxin( src )
|
||||
new /obj/item/weapon/storage/syringes( src )
|
||||
new /obj/item/weapon/reagent_containers/dropper( src )
|
||||
new /obj/item/weapon/reagent_containers/dropper( src )
|
||||
new /obj/item/weapon/reagent_containers/glass/beaker( src )
|
||||
new /obj/item/weapon/reagent_containers/glass/beaker( src )
|
||||
return
|
||||
/obj/secure_closet/medical1
|
||||
name = "Medicine Closet"
|
||||
desc = "Filled with medical junk."
|
||||
icon_state = "medical1"
|
||||
icon_closed = "medical"
|
||||
icon_locked = "medical1"
|
||||
icon_opened = "medicalopen"
|
||||
icon_broken = "medicalbroken"
|
||||
icon_off = "medical1"
|
||||
req_access = list(access_medical)
|
||||
|
||||
/obj/secure_closet/medical2/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/tank/anesthetic( src )
|
||||
new /obj/item/weapon/tank/anesthetic( src )
|
||||
new /obj/item/weapon/tank/anesthetic( src )
|
||||
new /obj/item/clothing/mask/medical( src )
|
||||
new /obj/item/clothing/mask/medical( src )
|
||||
new /obj/item/clothing/mask/medical( src )
|
||||
return
|
||||
|
||||
/obj/secure_closet/medical3/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/medical( src )
|
||||
new /obj/item/clothing/suit/labcoat( src )
|
||||
new /obj/item/clothing/shoes/white( src )
|
||||
new /obj/item/weapon/storage/backpack/medic( src )
|
||||
new /obj/item/clothing/mask/breath( src )
|
||||
new /obj/item/weapon/cartridge/medical( src )
|
||||
new /obj/item/device/radio/headset/headset_med( src )
|
||||
new /obj/item/weapon/storage/utilitybelt/medical( src )
|
||||
new /obj/item/clothing/under/rank/nursesuit ( src )
|
||||
new /obj/item/clothing/head/nursehat ( src )
|
||||
return
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/storage/syringes(src)
|
||||
new /obj/item/weapon/reagent_containers/dropper(src)
|
||||
new /obj/item/weapon/reagent_containers/dropper(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/beaker(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/beaker(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/antitoxin(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/antitoxin(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/inaprovaline(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/inaprovaline(src)
|
||||
return
|
||||
|
||||
/obj/secure_closet/CMO/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/suit/labcoat/cmo( src )
|
||||
new /obj/item/clothing/under/rank/chief_medical_officer( src )
|
||||
new /obj/item/clothing/suit/bio_suit/cmo( src )
|
||||
new /obj/item/clothing/shoes/brown ( src )
|
||||
new /obj/item/clothing/gloves/latex( src )
|
||||
new /obj/item/clothing/head/bio_hood/general( src )
|
||||
new /obj/item/clothing/suit/labcoat(src)
|
||||
new /obj/item/clothing/mask/gas( src )
|
||||
new /obj/item/device/radio/headset/heads/cmo( src )
|
||||
new /obj/item/clothing/under/rank/nursesuit ( src )
|
||||
new /obj/item/clothing/head/nursehat ( src )
|
||||
return
|
||||
|
||||
|
||||
/obj/secure_closet/medical2
|
||||
name = "Anesthetic"
|
||||
desc = "Used to knock people out."
|
||||
icon_state = "medical1"
|
||||
icon_closed = "medical"
|
||||
icon_locked = "medical1"
|
||||
icon_opened = "medicalopen"
|
||||
icon_broken = "medicalbroken"
|
||||
icon_off = "medical1"
|
||||
req_access = list(access_medical)
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/tank/anesthetic(src)
|
||||
new /obj/item/weapon/tank/anesthetic(src)
|
||||
new /obj/item/weapon/tank/anesthetic(src)
|
||||
new /obj/item/clothing/mask/medical(src)
|
||||
new /obj/item/clothing/mask/medical(src)
|
||||
new /obj/item/clothing/mask/medical(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
/obj/secure_closet/medical3
|
||||
name = "Medical Doctor's Locker"
|
||||
req_access = list(access_medical)
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/storage/backpack/medic(src)
|
||||
new /obj/item/clothing/under/rank/nursesuit (src)
|
||||
new /obj/item/clothing/head/nursehat (src)
|
||||
new /obj/item/clothing/under/rank/medical(src)
|
||||
new /obj/item/clothing/suit/labcoat(src)
|
||||
new /obj/item/clothing/shoes/white(src)
|
||||
new /obj/item/device/radio/headset/headset_med(src)
|
||||
new /obj/item/weapon/storage/belt/medical(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
/obj/secure_closet/CMO
|
||||
name = "Chief Medical Officer"
|
||||
req_access = list(access_cmo)
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/suit/bio_suit/cmo(src)
|
||||
new /obj/item/clothing/head/bio_hood/general(src)
|
||||
new /obj/item/clothing/under/rank/chief_medical_officer(src)
|
||||
new /obj/item/clothing/suit/labcoat/cmo(src)
|
||||
new /obj/item/clothing/gloves/latex(src)
|
||||
new /obj/item/clothing/shoes/brown (src)
|
||||
new /obj/item/device/radio/headset/heads/cmo(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
/obj/secure_closet/animal
|
||||
name = "Animal Control"
|
||||
req_access = list(access_medical)
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/device/radio/signaler(src)
|
||||
new /obj/item/device/radio/electropack(src)
|
||||
new /obj/item/device/radio/electropack(src)
|
||||
new /obj/item/device/radio/electropack(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
/obj/secure_closet/chemical
|
||||
name = "Chemical Closet"
|
||||
desc = "Store dangerous chemicals in here."
|
||||
icon_state = "medical1"
|
||||
icon_closed = "medical"
|
||||
icon_locked = "medical1"
|
||||
icon_opened = "medicalopen"
|
||||
icon_broken = "medicalbroken"
|
||||
icon_off = "medical1"
|
||||
req_access = list(access_medical)
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/storage/pillbottlebox(src)
|
||||
new /obj/item/weapon/storage/pillbottlebox(src)
|
||||
return
|
||||
@@ -1,27 +1,37 @@
|
||||
/obj/secure_closet/scientist/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/device/radio/headset/headset_sci( src )
|
||||
new /obj/item/weapon/tank/air( src )
|
||||
new /obj/item/clothing/mask/gas( src )
|
||||
new /obj/item/clothing/suit/bio_suit/general( src )
|
||||
new /obj/item/clothing/under/rank/scientist( src )
|
||||
new /obj/item/clothing/shoes/white( src )
|
||||
new /obj/item/clothing/gloves/latex( src )
|
||||
new /obj/item/clothing/head/bio_hood/general( src )
|
||||
new /obj/item/clothing/suit/labcoat(src)
|
||||
return
|
||||
/obj/secure_closet/scientist
|
||||
name = "Scientist Locker"
|
||||
req_access = list(access_tox_storage)
|
||||
|
||||
/obj/secure_closet/RD/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/device/radio/headset/heads/rd( src )
|
||||
new /obj/item/clothing/under/rank/research_director( src )
|
||||
new /obj/item/weapon/tank/air( src )
|
||||
new /obj/item/clothing/mask/gas( src )
|
||||
new /obj/item/clothing/suit/bio_suit/scientist( src )
|
||||
new /obj/item/clothing/shoes/white( src )
|
||||
new /obj/item/clothing/gloves/latex( src )
|
||||
new /obj/item/clothing/head/bio_hood/scientist( src )
|
||||
new /obj/item/clothing/suit/labcoat(src)
|
||||
return
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/scientist(src)
|
||||
new /obj/item/clothing/suit/labcoat(src)
|
||||
new /obj/item/clothing/shoes/white(src)
|
||||
new /obj/item/device/radio/headset/headset_sci(src)
|
||||
new /obj/item/weapon/tank/air(src)
|
||||
new /obj/item/clothing/mask/gas(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
/obj/secure_closet/RD
|
||||
name = "Research Director"
|
||||
req_access = list(access_rd)
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/suit/bio_suit/scientist(src)
|
||||
new /obj/item/clothing/head/bio_hood/scientist(src)
|
||||
new /obj/item/clothing/under/rank/research_director(src)
|
||||
new /obj/item/clothing/suit/labcoat(src)
|
||||
new /obj/item/clothing/shoes/white(src)
|
||||
new /obj/item/clothing/gloves/latex(src)
|
||||
new /obj/item/device/radio/headset/heads/rd(src)
|
||||
new /obj/item/weapon/tank/air(src)
|
||||
new /obj/item/clothing/mask/gas(src)
|
||||
new /obj/item/device/flash(src)
|
||||
return
|
||||
@@ -1,73 +1,181 @@
|
||||
/obj/secure_closet/security1/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/device/radio/headset/headset_sec(src)
|
||||
new /obj/item/weapon/flashbang(src)
|
||||
new /obj/item/weapon/handcuffs(src)
|
||||
new /obj/item/weapon/gun/energy/taser(src)
|
||||
new /obj/item/device/flash(src)
|
||||
new /obj/item/clothing/suit/armor/vest(src)
|
||||
new /obj/item/clothing/head/helmet(src)
|
||||
new /obj/item/clothing/glasses/sunglasses/sechud(src)
|
||||
new /obj/item/weapon/melee/baton(src)
|
||||
return
|
||||
|
||||
/obj/secure_closet/security1/proc/prison_break()
|
||||
src.locked = 0
|
||||
src.icon_state = src.icon_closed
|
||||
/obj/secure_closet/captains
|
||||
name = "Captain's Closet"
|
||||
req_access = list(access_captain)
|
||||
|
||||
|
||||
/obj/secure_closet/security2/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/device/radio/headset/headset_sec(src)
|
||||
new /obj/item/clothing/under/det( src )
|
||||
new /obj/item/clothing/shoes/brown( src )
|
||||
new /obj/item/clothing/head/det_hat( src )
|
||||
new /obj/item/clothing/suit/det_suit( src )
|
||||
new /obj/item/clothing/suit/det_suit/armor( src )
|
||||
new /obj/item/weapon/storage/fcard_kit( src )
|
||||
new /obj/item/clothing/gloves/black( src )
|
||||
new /obj/item/weapon/storage/lglo_kit( src )
|
||||
new /obj/item/weapon/fcardholder( src )
|
||||
new /obj/item/weapon/clipboard( src )
|
||||
new /obj/item/device/detective_scanner( src )
|
||||
return
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/suit/captunic( src )
|
||||
new /obj/item/clothing/head/helmet/cap( src )
|
||||
new /obj/item/clothing/under/rank/captain( src )
|
||||
new /obj/item/clothing/suit/armor/vest( src )
|
||||
new /obj/item/clothing/gloves/captain( src )
|
||||
new /obj/item/clothing/head/helmet/swat( src )
|
||||
new /obj/item/clothing/shoes/brown( src )
|
||||
new /obj/item/device/radio/headset/heads/captain( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/flask(src)
|
||||
new /obj/item/weapon/gun/energy( src )
|
||||
return
|
||||
|
||||
/obj/secure_closet/highsec/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/device/radio/headset/heads/hop( src )
|
||||
new /obj/item/weapon/gun/energy( src )
|
||||
new /obj/item/device/flash( src )
|
||||
new /obj/item/weapon/storage/id_kit( src )
|
||||
new /obj/item/clothing/under/rank/head_of_personnel( src )
|
||||
new /obj/item/clothing/shoes/brown( src )
|
||||
new /obj/item/clothing/glasses/sunglasses( src )
|
||||
new /obj/item/clothing/suit/armor/vest( src )
|
||||
new /obj/item/clothing/head/helmet( src )
|
||||
return
|
||||
|
||||
/obj/secure_closet/hos/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/device/radio/headset/heads/hos(src)
|
||||
new /obj/item/weapon/shield/riot(src)
|
||||
new /obj/item/weapon/gun/energy( src )
|
||||
new /obj/item/device/flash( src )
|
||||
new /obj/item/clothing/under/rank/head_of_security( src )
|
||||
new /obj/item/clothing/shoes/brown( src )
|
||||
new /obj/item/clothing/glasses/sunglasses/sechud( src )
|
||||
new /obj/item/clothing/suit/armor/hos( src )
|
||||
new /obj/item/clothing/head/helmet( src )
|
||||
new /obj/item/weapon/storage/flashbang_kit(src)
|
||||
new /obj/item/weapon/handcuffs(src)
|
||||
new /obj/item/weapon/melee/baton(src)
|
||||
return
|
||||
|
||||
/obj/secure_closet/injection/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/reagent_containers/ld50_syringe/choral ( src )
|
||||
new /obj/item/weapon/reagent_containers/ld50_syringe/choral ( src )
|
||||
return
|
||||
/obj/secure_closet/hop
|
||||
name = "Head of Personnel"
|
||||
req_access = list(access_hop)
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/head_of_personnel(src)
|
||||
new /obj/item/clothing/suit/armor/vest(src)
|
||||
new /obj/item/clothing/head/helmet(src)
|
||||
new /obj/item/device/radio/headset/heads/hop(src)
|
||||
new /obj/item/clothing/shoes/brown(src)
|
||||
new /obj/item/weapon/storage/id_kit(src)
|
||||
new /obj/item/weapon/storage/id_kit( src )
|
||||
new /obj/item/weapon/gun/energy(src)
|
||||
new /obj/item/device/flash(src)
|
||||
new /obj/item/clothing/glasses/sunglasses(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
/obj/secure_closet/hos
|
||||
name = "Head Of Security"
|
||||
req_access = list(access_hos)
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/head_of_security(src)
|
||||
new /obj/item/clothing/suit/armor/hos(src)
|
||||
new /obj/item/clothing/head/helmet(src)
|
||||
new /obj/item/device/radio/headset/heads/hos(src)
|
||||
new /obj/item/weapon/shield/riot(src)
|
||||
new /obj/item/weapon/gun/energy(src)
|
||||
new /obj/item/device/flash(src)
|
||||
new /obj/item/clothing/glasses/sunglasses/sechud(src)
|
||||
new /obj/item/weapon/storage/flashbang_kit(src)
|
||||
new /obj/item/weapon/melee/baton(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
/obj/secure_closet/warden
|
||||
name = "Warden's Locker"
|
||||
req_access = list(access_armory)
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/warden(src)
|
||||
new /obj/item/clothing/suit/armor/vest(src)
|
||||
new /obj/item/clothing/head/helmet/warden(src)
|
||||
new /obj/item/device/radio/headset/headset_sec(src)
|
||||
new /obj/item/weapon/storage/belt/security(src)
|
||||
new /obj/item/weapon/storage/flashbang_kit(src)
|
||||
new /obj/item/weapon/melee/baton(src)
|
||||
new /obj/item/weapon/gun/energy/taser(src)
|
||||
new /obj/item/clothing/glasses/sunglasses/sechud(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
/obj/secure_closet/security
|
||||
name = "Security Locker"
|
||||
req_access = list(access_security)
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/suit/armor/vest(src)
|
||||
new /obj/item/clothing/head/helmet(src)
|
||||
new /obj/item/device/radio/headset/headset_sec(src)
|
||||
new /obj/item/weapon/storage/belt/security(src)
|
||||
new /obj/item/weapon/flashbang(src)
|
||||
new /obj/item/device/flash(src)
|
||||
new /obj/item/weapon/melee/baton(src)
|
||||
new /obj/item/weapon/gun/energy/taser(src)
|
||||
new /obj/item/clothing/glasses/sunglasses/sechud(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
/obj/secure_closet/detective
|
||||
name = "Detective"
|
||||
req_access = list(access_forensics_lockers)
|
||||
icon_state = "cabinetdetective"
|
||||
icon_closed = "cabinetdetective"
|
||||
icon_locked = "cabinetdetective_locked"
|
||||
icon_opened = "cabinetdetective_open"
|
||||
icon_broken = "cabinetdetective_broken"
|
||||
icon_off = "cabinetdetective_broken"
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/det(src)
|
||||
new /obj/item/clothing/suit/det_suit/armor(src)
|
||||
new /obj/item/clothing/suit/det_suit(src)
|
||||
new /obj/item/clothing/gloves/black(src)
|
||||
new /obj/item/clothing/head/det_hat(src)
|
||||
new /obj/item/clothing/shoes/brown(src)
|
||||
new /obj/item/device/radio/headset/headset_sec(src)
|
||||
new /obj/item/weapon/storage/fcard_kit(src)
|
||||
new /obj/item/weapon/fcardholder(src)
|
||||
new /obj/item/weapon/clipboard(src)
|
||||
new /obj/item/device/detective_scanner(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
/obj/secure_closet/injection
|
||||
name = "Lethal Injections"
|
||||
req_access = list(access_hos)
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/reagent_containers/ld50_syringe/choral(src)
|
||||
new /obj/item/weapon/reagent_containers/ld50_syringe/choral(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
/obj/secure_closet/brig
|
||||
name = "Brig Locker"
|
||||
req_access = list(access_brig)
|
||||
var/id = null
|
||||
|
||||
New()
|
||||
new /obj/item/clothing/under/color/orange( src )
|
||||
new /obj/item/clothing/under/color/orange( src )
|
||||
new /obj/item/clothing/shoes/orange( src )
|
||||
new /obj/item/clothing/shoes/orange( src )
|
||||
return
|
||||
|
||||
|
||||
|
||||
/obj/secure_closet/courtroom
|
||||
name = "Courtroom Locker"
|
||||
req_access = list(access_court)
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/shoes/brown(src)
|
||||
new /obj/item/weapon/paper/Court (src)
|
||||
new /obj/item/weapon/paper/Court (src)
|
||||
new /obj/item/weapon/paper/Court (src)
|
||||
new /obj/item/weapon/pen (src)
|
||||
new /obj/item/clothing/suit/judgerobe (src)
|
||||
new /obj/item/clothing/head/powdered_wig (src)
|
||||
new /obj/item/weapon/storage/briefcase(src)
|
||||
return
|
||||
|
||||
@@ -168,20 +168,3 @@
|
||||
new /obj/item/clothing/suit/lawyer/purpjacket(src)
|
||||
new /obj/item/clothing/shoes/brown(src)
|
||||
new /obj/item/clothing/shoes/black(src)
|
||||
|
||||
/obj/closet/cabinet/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/device/radio/headset/headset_sec(src)
|
||||
new /obj/item/clothing/under/det( src )
|
||||
new /obj/item/clothing/shoes/brown( src )
|
||||
new /obj/item/clothing/head/det_hat( src )
|
||||
new /obj/item/clothing/suit/det_suit( src )
|
||||
new /obj/item/clothing/suit/det_suit/armor( src )
|
||||
new /obj/item/weapon/storage/fcard_kit( src )
|
||||
new /obj/item/clothing/gloves/black( src )
|
||||
new /obj/item/weapon/storage/lglo_kit( src )
|
||||
new /obj/item/weapon/fcardholder( src )
|
||||
new /obj/item/weapon/clipboard( src )
|
||||
new /obj/item/device/detective_scanner( src )
|
||||
return
|
||||
@@ -109,15 +109,7 @@
|
||||
//..()
|
||||
if (usr.stat)
|
||||
return
|
||||
if (\
|
||||
!(\
|
||||
issilicon(usr) || \
|
||||
(\
|
||||
usr.contents.Find(src) || \
|
||||
( in_range(src, usr) && istype(loc, /turf) )\
|
||||
)\
|
||||
)\
|
||||
)
|
||||
if (!(issilicon(usr) || (usr.contents.Find(src) || ( in_range(src, usr) && istype(loc, /turf) ))))
|
||||
usr << browse(null, "window=radio")
|
||||
return
|
||||
usr.machine = src
|
||||
@@ -186,7 +178,7 @@
|
||||
add_fingerprint(usr)
|
||||
|
||||
/obj/item/device/radio/talk_into(mob/M as mob, message, channel)
|
||||
var/datum/radio_frequency/connection = null // Code shared by Mport2004 for Security Headsets -- TLE
|
||||
var/datum/radio_frequency/connection = null
|
||||
if(channel && channels && channels.len > 0)
|
||||
if (channel == "department")
|
||||
//world << "DEBUG: channel=\"[channel]\" switching to \"[channels[1]]\""
|
||||
|
||||
115
code/game/objects/storage/belt.dm
Normal file
@@ -0,0 +1,115 @@
|
||||
/obj/item/weapon/storage/belt
|
||||
name = "belt"
|
||||
desc = "Can hold various things."
|
||||
icon = 'belts.dmi'
|
||||
icon_state = "utilitybelt"
|
||||
item_state = "utility"
|
||||
flags = FPRINT | TABLEPASS | ONBELT
|
||||
|
||||
|
||||
proc/can_use()
|
||||
if(!ismob(loc)) return 0
|
||||
var/mob/M = loc
|
||||
if(src in M.get_equipped_items())
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
|
||||
|
||||
MouseDrop(obj/over_object as obj, src_location, over_location)
|
||||
var/mob/M = usr
|
||||
if(!istype(over_object, /obj/screen))
|
||||
return ..()
|
||||
playsound(src.loc, "rustle", 50, 1, -5)
|
||||
if (!M.restrained() && !M.stat && can_use())
|
||||
if (over_object.name == "r_hand")
|
||||
if (!( M.r_hand ))
|
||||
M.u_equip(src)
|
||||
M.r_hand = src
|
||||
else
|
||||
if (over_object.name == "l_hand")
|
||||
if (!( M.l_hand ))
|
||||
M.u_equip(src)
|
||||
M.l_hand = src
|
||||
M.update_clothing()
|
||||
src.add_fingerprint(usr)
|
||||
return
|
||||
|
||||
|
||||
attack_hand(mob/user as mob)
|
||||
src.add_fingerprint(user)
|
||||
if(src.loc == user)
|
||||
playsound(src.loc, "rustle", 50, 1, -5)
|
||||
if (user.s_active)
|
||||
user.s_active.close(user)
|
||||
src.show_to(user)
|
||||
else
|
||||
return ..()
|
||||
|
||||
|
||||
|
||||
/obj/item/weapon/storage/belt/utility
|
||||
name = "utility belt"
|
||||
desc = "Can hold various tools."
|
||||
icon_state = "utilitybelt"
|
||||
item_state = "utility"
|
||||
can_hold = list(
|
||||
"/obj/item/weapon/crowbar",
|
||||
"/obj/item/weapon/screwdriver",
|
||||
"/obj/item/weapon/weldingtool",
|
||||
"/obj/item/weapon/wirecutters",
|
||||
"/obj/item/weapon/wrench",
|
||||
"/obj/item/device/multitool",
|
||||
"/obj/item/device/flashlight",
|
||||
"/obj/item/weapon/cable_coil",
|
||||
"/obj/item/device/t_scanner",
|
||||
"/obj/item/device/analyzer")
|
||||
|
||||
|
||||
/obj/item/weapon/storage/belt/utility/full/New()
|
||||
..()
|
||||
new /obj/item/weapon/screwdriver(src)
|
||||
new /obj/item/weapon/wrench(src)
|
||||
new /obj/item/weapon/weldingtool(src)
|
||||
new /obj/item/weapon/crowbar(src)
|
||||
new /obj/item/weapon/wirecutters(src)
|
||||
new /obj/item/weapon/cable_coil(src,30,pick("red","yellow"))
|
||||
|
||||
|
||||
|
||||
/obj/item/weapon/storage/belt/medical
|
||||
name = "medical belt"
|
||||
desc = "Can hold various medical equipment."
|
||||
icon_state = "medicalbelt"
|
||||
item_state = "medical"
|
||||
can_hold = list(
|
||||
"/obj/item/device/healthanalyzer",
|
||||
"/obj/item/weapon/dnainjector",
|
||||
"/obj/item/weapon/reagent_containers/dropper",
|
||||
"/obj/item/weapon/reagent_containers/glass/beaker",
|
||||
"/obj/item/weapon/reagent_containers/glass/bottle",
|
||||
"/obj/item/weapon/reagent_containers/pill",
|
||||
"/obj/item/weapon/reagent_containers/syringe",
|
||||
"/obj/item/weapon/reagent_containers/glass/dispenser",
|
||||
"/obj/item/weapon/zippo",
|
||||
"/obj/item/weapon/cigpacket",
|
||||
"/obj/item/weapon/storage/pill_bottle",
|
||||
"/obj/item/stack/medical",
|
||||
"/obj/item/device/flashlight/pen"
|
||||
)
|
||||
|
||||
|
||||
/obj/item/weapon/storage/belt/security
|
||||
name = "security belt"
|
||||
desc = "Can hold security gear like handcuffs and flashes."
|
||||
icon_state = "securitybelt"
|
||||
item_state = "security"//Could likely use a better one.
|
||||
storage_slots = 4
|
||||
can_hold = list(
|
||||
"/obj/item/weapon/flashbang",
|
||||
"/obj/item/weapon/handcuffs",
|
||||
"/obj/item/device/flash",
|
||||
"/obj/item/clothing/glasses",
|
||||
"/obj/item/ammo_casing/shotgun",
|
||||
"/obj/item/ammo_magazine"
|
||||
)
|
||||
@@ -328,63 +328,3 @@
|
||||
return
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
/obj/item/weapon/storage/utilitybelt/proc/can_use()
|
||||
if(!ismob(loc)) return 0
|
||||
var/mob/M = loc
|
||||
if(src in M.get_equipped_items())
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
|
||||
/obj/item/weapon/storage/utilitybelt/dropped(mob/user as mob)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/storage/utilitybelt/MouseDrop(obj/over_object as obj, src_location, over_location)
|
||||
var/mob/M = usr
|
||||
if (!istype(over_object, /obj/screen))
|
||||
if(can_use())
|
||||
return ..()
|
||||
else
|
||||
M << "\red I need to wear the belt for that."
|
||||
return
|
||||
playsound(src.loc, "rustle", 50, 1, -5)
|
||||
if (!M.restrained() && !M.stat && can_use())
|
||||
if (over_object.name == "r_hand")
|
||||
if (!( M.r_hand ))
|
||||
M.u_equip(src)
|
||||
M.r_hand = src
|
||||
else
|
||||
if (over_object.name == "l_hand")
|
||||
if (!( M.l_hand ))
|
||||
M.u_equip(src)
|
||||
M.l_hand = src
|
||||
M.update_clothing()
|
||||
src.add_fingerprint(usr)
|
||||
return
|
||||
|
||||
/obj/item/weapon/storage/utilitybelt/attack_paw(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/item/weapon/storage/utilitybelt/attack_hand(mob/user as mob)
|
||||
if (src.loc == user)
|
||||
if(can_use())
|
||||
playsound(src.loc, "rustle", 50, 1, -5)
|
||||
if (user.s_active)
|
||||
user.s_active.close(user)
|
||||
src.show_to(user)
|
||||
else
|
||||
user << "\red I need to wear the belt for that."
|
||||
return
|
||||
else
|
||||
return ..()
|
||||
|
||||
src.add_fingerprint(user)
|
||||
|
||||
/obj/item/weapon/storage/utilitybelt/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
//..() //This will make it impossible to wrap the belt in wrapping paper, but will enable them to work as intended once more.
|
||||
if(!can_use())
|
||||
user << "\red I need to wear the belt for that."
|
||||
return
|
||||
else
|
||||
..()
|
||||
@@ -20,208 +20,198 @@ var/prison_shuttle_timeleft = 0
|
||||
var/allowedtocall = 0
|
||||
var/prison_break = 0
|
||||
|
||||
/proc/prison_process()
|
||||
while(prison_shuttle_time - world.timeofday > 0)
|
||||
var/ticksleft = prison_shuttle_time - world.timeofday
|
||||
|
||||
if(ticksleft > 1e5)
|
||||
prison_shuttle_time = world.timeofday + 10 // midnight rollover
|
||||
|
||||
|
||||
prison_shuttle_timeleft = (ticksleft / 10)
|
||||
sleep(5)
|
||||
prison_shuttle_moving_to_station = 0
|
||||
prison_shuttle_moving_to_prison = 0
|
||||
|
||||
switch(prison_shuttle_at_station)
|
||||
|
||||
if(0)
|
||||
prison_shuttle_at_station = 1
|
||||
if (prison_shuttle_moving_to_station || prison_shuttle_moving_to_prison) return
|
||||
|
||||
if (!prison_can_move())
|
||||
usr << "\red The prison shuttle is unable to leave."
|
||||
return
|
||||
|
||||
var/area/start_location = locate(/area/shuttle/prison/prison)
|
||||
var/area/end_location = locate(/area/shuttle/prison/station)
|
||||
|
||||
var/list/dstturfs = list()
|
||||
var/throwy = world.maxy
|
||||
|
||||
for(var/turf/T in end_location)
|
||||
dstturfs += T
|
||||
if(T.y < throwy)
|
||||
throwy = T.y
|
||||
|
||||
// hey you, get out of the way!
|
||||
for(var/turf/T in dstturfs)
|
||||
// find the turf to move things to
|
||||
var/turf/D = locate(T.x, throwy - 1, 1)
|
||||
//var/turf/E = get_step(D, SOUTH)
|
||||
for(var/atom/movable/AM as mob|obj in T)
|
||||
AM.Move(D)
|
||||
if(istype(T, /turf/simulated))
|
||||
del(T)
|
||||
|
||||
start_location.move_contents_to(end_location)
|
||||
|
||||
|
||||
if(1)
|
||||
prison_shuttle_at_station = 0
|
||||
if (prison_shuttle_moving_to_station || prison_shuttle_moving_to_prison) return
|
||||
|
||||
if (!prison_can_move())
|
||||
usr << "\red The prison shuttle is unable to leave."
|
||||
return
|
||||
|
||||
var/area/start_location = locate(/area/shuttle/prison/station)
|
||||
var/area/end_location = locate(/area/shuttle/prison/prison)
|
||||
|
||||
var/list/dstturfs = list()
|
||||
var/throwy = world.maxy
|
||||
|
||||
for(var/turf/T in end_location)
|
||||
dstturfs += T
|
||||
if(T.y < throwy)
|
||||
throwy = T.y
|
||||
|
||||
// hey you, get out of the way!
|
||||
for(var/turf/T in dstturfs)
|
||||
// find the turf to move things to
|
||||
var/turf/D = locate(T.x, throwy - 1, 1)
|
||||
//var/turf/E = get_step(D, SOUTH)
|
||||
for(var/atom/movable/AM as mob|obj in T)
|
||||
AM.Move(D)
|
||||
if(istype(T, /turf/simulated))
|
||||
del(T)
|
||||
|
||||
start_location.move_contents_to(end_location)
|
||||
|
||||
|
||||
/proc/prison_can_move()
|
||||
if(prison_shuttle_moving_to_station || prison_shuttle_moving_to_prison) return 0
|
||||
|
||||
else return 1
|
||||
|
||||
/obj/machinery/computer/prison_shuttle/attackby(I as obj, user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/machinery/computer/prison_shuttle/attack_ai(var/mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/machinery/computer/prison_shuttle/attack_paw(var/mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/machinery/computer/prison_shuttle/attackby(I as obj, user as mob)
|
||||
if(istype(I,/obj/item/weapon/card/emag))
|
||||
user << "\blue Nothing happens."
|
||||
else
|
||||
attackby(I as obj, user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/machinery/computer/prison_shuttle/attack_hand(var/mob/user as mob)
|
||||
if(!src.allowed(user))
|
||||
user << "\red Access Denied."
|
||||
|
||||
attack_ai(var/mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
|
||||
attack_paw(var/mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
|
||||
attackby(I as obj, user as mob)
|
||||
if(istype(I,/obj/item/weapon/card/emag) && (!hacked))
|
||||
hacked = 1
|
||||
user << "\blue You disable the lock."
|
||||
else
|
||||
return src.attack_hand(user)
|
||||
|
||||
|
||||
attack_hand(var/mob/user as mob)
|
||||
if(!src.allowed(user) && (!hacked))
|
||||
user << "\red Access Denied."
|
||||
return
|
||||
if(prison_break)
|
||||
user << "\red Unable to locate shuttle."
|
||||
return
|
||||
if(..())
|
||||
return
|
||||
user.machine = src
|
||||
post_signal("prison")
|
||||
var/dat
|
||||
if (src.temp)
|
||||
dat = src.temp
|
||||
else
|
||||
dat += {"<BR><B>Prison Shuttle</B><HR>
|
||||
\nLocation: [prison_shuttle_moving_to_station || prison_shuttle_moving_to_prison ? "Moving to station ([prison_shuttle_timeleft] Secs.)":prison_shuttle_at_station ? "Station":"Dock"]<BR>
|
||||
[prison_shuttle_moving_to_station || prison_shuttle_moving_to_prison ? "\n*Shuttle already called*<BR>\n<BR>":prison_shuttle_at_station ? "\n<A href='?src=\ref[src];sendtodock=1'>Send to Dock</A><BR>\n<BR>":"\n<A href='?src=\ref[src];sendtostation=1'>Send to station</A><BR>\n<BR>"]
|
||||
\n<A href='?src=\ref[user];mach_close=computer'>Close</A>"}
|
||||
|
||||
user << browse(dat, "window=computer;size=575x450")
|
||||
onclose(user, "computer")
|
||||
return
|
||||
|
||||
if(prison_break)
|
||||
user << "\red Unable to locate shuttle."
|
||||
return
|
||||
|
||||
if(..())
|
||||
return
|
||||
user.machine = src
|
||||
post_signal("prison")
|
||||
var/dat
|
||||
if (src.temp)
|
||||
dat = src.temp
|
||||
else
|
||||
dat += {"<BR><B>Prison Shuttle</B><HR>
|
||||
\nLocation: [prison_shuttle_moving_to_station || prison_shuttle_moving_to_prison ? "Moving to station ([prison_shuttle_timeleft] Secs.)":prison_shuttle_at_station ? "Station":"Dock"]<BR>
|
||||
[prison_shuttle_moving_to_station || prison_shuttle_moving_to_prison ? "\n*Shuttle already called*<BR>\n<BR>":prison_shuttle_at_station ? "\n<A href='?src=\ref[src];sendtodock=1'>Send to Dock</A><BR>\n<BR>":"\n<A href='?src=\ref[src];sendtostation=1'>Send to station</A><BR>\n<BR>"]
|
||||
\n<A href='?src=\ref[user];mach_close=computer'>Close</A>"}
|
||||
|
||||
user << browse(dat, "window=computer;size=575x450")
|
||||
onclose(user, "computer")
|
||||
return
|
||||
|
||||
/obj/machinery/computer/prison_shuttle/Topic(href, href_list)
|
||||
if(..())
|
||||
return
|
||||
|
||||
if ((usr.contents.Find(src) || (in_range(src, usr) && istype(src.loc, /turf))) || (istype(usr, /mob/living/silicon)))
|
||||
usr.machine = src
|
||||
|
||||
if (href_list["sendtodock"])
|
||||
if(!prison_shuttle_at_station|| prison_shuttle_moving_to_station || prison_shuttle_moving_to_prison) return
|
||||
|
||||
if (!prison_can_move())
|
||||
usr << "\red The prison shuttle is unable to leave."
|
||||
Topic(href, href_list)
|
||||
if(..())
|
||||
return
|
||||
|
||||
post_signal("prison")
|
||||
usr << "\blue The prison shuttle has been called and will arrive in [(PRISON_MOVETIME/10)] seconds."
|
||||
|
||||
src.temp += "Shuttle sent.<BR><BR><A href='?src=\ref[src];mainmenu=1'>OK</A>"
|
||||
src.updateUsrDialog()
|
||||
|
||||
prison_shuttle_moving_to_prison = 1
|
||||
|
||||
prison_shuttle_time = world.timeofday + PRISON_MOVETIME
|
||||
spawn(0)
|
||||
prison_process()
|
||||
|
||||
else if (href_list["sendtostation"])
|
||||
if(prison_shuttle_at_station || prison_shuttle_moving_to_station || prison_shuttle_moving_to_prison) return
|
||||
|
||||
if (!prison_can_move())
|
||||
usr << "\red The prison shuttle is unable to leave."
|
||||
return
|
||||
|
||||
post_signal("prison")
|
||||
usr << "\blue The prison shuttle has been called and will arrive in [(PRISON_MOVETIME/10)] seconds."
|
||||
|
||||
src.temp += "Shuttle sent.<BR><BR><A href='?src=\ref[src];mainmenu=1'>OK</A>"
|
||||
src.updateUsrDialog()
|
||||
|
||||
prison_shuttle_moving_to_station = 1
|
||||
|
||||
prison_shuttle_time = world.timeofday + PRISON_MOVETIME
|
||||
spawn(0)
|
||||
prison_process()
|
||||
|
||||
else if (href_list["mainmenu"])
|
||||
src.temp = null
|
||||
|
||||
src.add_fingerprint(usr)
|
||||
src.updateUsrDialog()
|
||||
return
|
||||
|
||||
/obj/machinery/computer/prison_shuttle/proc/prison_break()
|
||||
switch(prison_break)
|
||||
if (0)
|
||||
if(!prison_shuttle_at_station || prison_shuttle_moving_to_prison) return
|
||||
if ((usr.contents.Find(src) || (in_range(src, usr) && istype(src.loc, /turf))) || (istype(usr, /mob/living/silicon)))
|
||||
usr.machine = src
|
||||
|
||||
if (href_list["sendtodock"])
|
||||
if (!prison_can_move())
|
||||
usr << "\red The prison shuttle is unable to leave."
|
||||
return
|
||||
if(!prison_shuttle_at_station|| prison_shuttle_moving_to_station || prison_shuttle_moving_to_prison) return
|
||||
post_signal("prison")
|
||||
usr << "\blue The prison shuttle has been called and will arrive in [(PRISON_MOVETIME/10)] seconds."
|
||||
src.temp += "Shuttle sent.<BR><BR><A href='?src=\ref[src];mainmenu=1'>OK</A>"
|
||||
src.updateUsrDialog()
|
||||
prison_shuttle_moving_to_prison = 1
|
||||
prison_shuttle_at_station = prison_shuttle_at_station
|
||||
|
||||
if (!prison_shuttle_moving_to_prison || !prison_shuttle_moving_to_station)
|
||||
prison_shuttle_time = world.timeofday + PRISON_MOVETIME
|
||||
prison_shuttle_time = world.timeofday + PRISON_MOVETIME
|
||||
spawn(0)
|
||||
prison_process()
|
||||
prison_break = 1
|
||||
if(1)
|
||||
prison_break = 0
|
||||
|
||||
/obj/machinery/computer/prison_shuttle/proc/post_signal(var/command)
|
||||
else if (href_list["sendtostation"])
|
||||
if (!prison_can_move())
|
||||
usr << "\red The prison shuttle is unable to leave."
|
||||
return
|
||||
if(prison_shuttle_at_station || prison_shuttle_moving_to_station || prison_shuttle_moving_to_prison) return
|
||||
post_signal("prison")
|
||||
usr << "\blue The prison shuttle has been called and will arrive in [(PRISON_MOVETIME/10)] seconds."
|
||||
src.temp += "Shuttle sent.<BR><BR><A href='?src=\ref[src];mainmenu=1'>OK</A>"
|
||||
src.updateUsrDialog()
|
||||
prison_shuttle_moving_to_station = 1
|
||||
prison_shuttle_time = world.timeofday + PRISON_MOVETIME
|
||||
spawn(0)
|
||||
prison_process()
|
||||
|
||||
var/datum/radio_frequency/frequency = radio_controller.return_frequency(1311)
|
||||
else if (href_list["mainmenu"])
|
||||
src.temp = null
|
||||
|
||||
if(!frequency) return
|
||||
src.add_fingerprint(usr)
|
||||
src.updateUsrDialog()
|
||||
return
|
||||
|
||||
var/datum/signal/status_signal = new
|
||||
status_signal.source = src
|
||||
status_signal.transmission_method = 1
|
||||
status_signal.data["command"] = command
|
||||
|
||||
frequency.post_signal(src, status_signal)
|
||||
proc/prison_can_move()
|
||||
if(prison_shuttle_moving_to_station || prison_shuttle_moving_to_prison) return 0
|
||||
else return 1
|
||||
|
||||
|
||||
proc/prison_break()
|
||||
switch(prison_break)
|
||||
if (0)
|
||||
if(!prison_shuttle_at_station || prison_shuttle_moving_to_prison) return
|
||||
|
||||
prison_shuttle_moving_to_prison = 1
|
||||
prison_shuttle_at_station = prison_shuttle_at_station
|
||||
|
||||
if (!prison_shuttle_moving_to_prison || !prison_shuttle_moving_to_station)
|
||||
prison_shuttle_time = world.timeofday + PRISON_MOVETIME
|
||||
spawn(0)
|
||||
prison_process()
|
||||
prison_break = 1
|
||||
if(1)
|
||||
prison_break = 0
|
||||
|
||||
|
||||
proc/post_signal(var/command)
|
||||
var/datum/radio_frequency/frequency = radio_controller.return_frequency(1311)
|
||||
if(!frequency) return
|
||||
var/datum/signal/status_signal = new
|
||||
status_signal.source = src
|
||||
status_signal.transmission_method = 1
|
||||
status_signal.data["command"] = command
|
||||
frequency.post_signal(src, status_signal)
|
||||
return
|
||||
|
||||
|
||||
proc/prison_process()
|
||||
while(prison_shuttle_time - world.timeofday > 0)
|
||||
var/ticksleft = prison_shuttle_time - world.timeofday
|
||||
|
||||
if(ticksleft > 1e5)
|
||||
prison_shuttle_time = world.timeofday + 10 // midnight rollover
|
||||
|
||||
prison_shuttle_timeleft = (ticksleft / 10)
|
||||
sleep(5)
|
||||
prison_shuttle_moving_to_station = 0
|
||||
prison_shuttle_moving_to_prison = 0
|
||||
|
||||
switch(prison_shuttle_at_station)
|
||||
|
||||
if(0)
|
||||
prison_shuttle_at_station = 1
|
||||
if (prison_shuttle_moving_to_station || prison_shuttle_moving_to_prison) return
|
||||
|
||||
if (!prison_can_move())
|
||||
usr << "\red The prison shuttle is unable to leave."
|
||||
return
|
||||
|
||||
var/area/start_location = locate(/area/shuttle/prison/prison)
|
||||
var/area/end_location = locate(/area/shuttle/prison/station)
|
||||
|
||||
var/list/dstturfs = list()
|
||||
var/throwy = world.maxy
|
||||
|
||||
for(var/turf/T in end_location)
|
||||
dstturfs += T
|
||||
if(T.y < throwy)
|
||||
throwy = T.y
|
||||
// hey you, get out of the way!
|
||||
for(var/turf/T in dstturfs)
|
||||
// find the turf to move things to
|
||||
var/turf/D = locate(T.x, throwy - 1, 1)
|
||||
//var/turf/E = get_step(D, SOUTH)
|
||||
for(var/atom/movable/AM as mob|obj in T)
|
||||
AM.Move(D)
|
||||
if(istype(T, /turf/simulated))
|
||||
del(T)
|
||||
start_location.move_contents_to(end_location)
|
||||
|
||||
if(1)
|
||||
prison_shuttle_at_station = 0
|
||||
if (prison_shuttle_moving_to_station || prison_shuttle_moving_to_prison) return
|
||||
|
||||
if (!prison_can_move())
|
||||
usr << "\red The prison shuttle is unable to leave."
|
||||
return
|
||||
|
||||
var/area/start_location = locate(/area/shuttle/prison/station)
|
||||
var/area/end_location = locate(/area/shuttle/prison/prison)
|
||||
|
||||
var/list/dstturfs = list()
|
||||
var/throwy = world.maxy
|
||||
|
||||
for(var/turf/T in end_location)
|
||||
dstturfs += T
|
||||
if(T.y < throwy)
|
||||
throwy = T.y
|
||||
|
||||
// hey you, get out of the way!
|
||||
for(var/turf/T in dstturfs)
|
||||
// find the turf to move things to
|
||||
var/turf/D = locate(T.x, throwy - 1, 1)
|
||||
//var/turf/E = get_step(D, SOUTH)
|
||||
for(var/atom/movable/AM as mob|obj in T)
|
||||
AM.Move(D)
|
||||
if(istype(T, /turf/simulated))
|
||||
del(T)
|
||||
start_location.move_contents_to(end_location)
|
||||
return
|
||||
|
Before Width: | Height: | Size: 5.0 KiB After Width: | Height: | Size: 5.2 KiB |
|
Before Width: | Height: | Size: 64 KiB After Width: | Height: | Size: 65 KiB |
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 41 KiB |
|
Before Width: | Height: | Size: 673 B After Width: | Height: | Size: 776 B |
17108
maps/tgstation.2.0.8.dmm
@@ -548,12 +548,7 @@
|
||||
#include "code\game\objects\closets\syndicate.dm"
|
||||
#include "code\game\objects\closets\thunderdome.dm"
|
||||
#include "code\game\objects\closets\wardrobe.dm"
|
||||
#include "code\game\objects\closets\secure\animal.dm"
|
||||
#include "code\game\objects\closets\secure\bar.dm"
|
||||
#include "code\game\objects\closets\secure\brig.dm"
|
||||
#include "code\game\objects\closets\secure\captain.dm"
|
||||
#include "code\game\objects\closets\secure\chemlocker.dm"
|
||||
#include "code\game\objects\closets\secure\courtroom.dm"
|
||||
#include "code\game\objects\closets\secure\engineering.dm"
|
||||
#include "code\game\objects\closets\secure\medical.dm"
|
||||
#include "code\game\objects\closets\secure\personal.dm"
|
||||
@@ -638,6 +633,7 @@
|
||||
#include "code\game\objects\stacks\stack.dm"
|
||||
#include "code\game\objects\stacks\wood.dm"
|
||||
#include "code\game\objects\storage\backpack.dm"
|
||||
#include "code\game\objects\storage\belt.dm"
|
||||
#include "code\game\objects\storage\bible.dm"
|
||||
#include "code\game\objects\storage\briefcase.dm"
|
||||
#include "code\game\objects\storage\crates.dm"
|
||||
|
||||