Removes devices

This commit is contained in:
atermonera
2022-04-17 00:10:48 -08:00
parent 7a9806d9b4
commit 9d71839ac6
600 changed files with 5636 additions and 5530 deletions

View File

@@ -81,7 +81,7 @@ Pipelines + Other Objects -> Pipe network
return (src.connect_types & target.connect_types) return (src.connect_types & target.connect_types)
/obj/machinery/atmospherics/attackby(atom/A, mob/user as mob) /obj/machinery/atmospherics/attackby(atom/A, mob/user as mob)
if(istype(A, /obj/item/device/pipe_painter)) if(istype(A, /obj/item/pipe_painter))
return return
..() ..()

View File

@@ -113,7 +113,7 @@
if (istype(src, /obj/machinery/atmospherics/pipe/tank)) if (istype(src, /obj/machinery/atmospherics/pipe/tank))
return ..() return ..()
if(istype(W,/obj/item/device/pipe_painter)) if(istype(W,/obj/item/pipe_painter))
return 0 return 0
if (!W.is_wrench()) if (!W.is_wrench())

View File

@@ -67,7 +67,7 @@
return null return null
/obj/machinery/atmospherics/pipe/tank/attackby(var/obj/item/W as obj, var/mob/user as mob) /obj/machinery/atmospherics/pipe/tank/attackby(var/obj/item/W as obj, var/mob/user as mob)
if(istype(W, /obj/item/device/pipe_painter)) if(istype(W, /obj/item/pipe_painter))
return return
/obj/machinery/atmospherics/pipe/tank/air /obj/machinery/atmospherics/pipe/tank/air

View File

@@ -13,7 +13,7 @@
#define isitem(D) istype(D, /obj/item) #define isitem(D) istype(D, /obj/item)
#define isradio(A) istype(A, /obj/item/device/radio) #define isradio(A) istype(A, /obj/item/radio)
#define isairlock(A) istype(A, /obj/machinery/door/airlock) #define isairlock(A) istype(A, /obj/machinery/door/airlock)

View File

@@ -225,7 +225,7 @@
return hear return hear
/proc/get_mobs_in_radio_ranges(var/list/obj/item/device/radio/radios) /proc/get_mobs_in_radio_ranges(var/list/obj/item/radio/radios)
set background = 1 set background = 1
@@ -233,7 +233,7 @@
// Returns a list of mobs who can hear any of the radios given in @radios // Returns a list of mobs who can hear any of the radios given in @radios
var/list/speaker_coverage = list() var/list/speaker_coverage = list()
for(var/r in radios) for(var/r in radios)
var/obj/item/device/radio/R = r // You better fucking be a radio. var/obj/item/radio/R = r // You better fucking be a radio.
var/turf/speaker = get_turf(R) var/turf/speaker = get_turf(R)
if(speaker) if(speaker)
for(var/turf/T in hear(R.canhear_range,speaker)) for(var/turf/T in hear(R.canhear_range,speaker))
@@ -255,7 +255,7 @@
/mob/living/silicon/robot/can_hear_radio(var/list/hearturfs) /mob/living/silicon/robot/can_hear_radio(var/list/hearturfs)
var/turf/T = get_turf(src) var/turf/T = get_turf(src)
var/obj/item/device/radio/borg/R = hearturfs[T] // this should be an assoc list of turf-to-radio var/obj/item/radio/borg/R = hearturfs[T] // this should be an assoc list of turf-to-radio
// We heard it on our own radio? We use power for that. // We heard it on our own radio? We use power for that.
if(istype(R) && R.myborg == src) if(istype(R) && R.myborg == src)

View File

@@ -301,8 +301,8 @@ Turf and target are seperate in case you want to teleport some distance from a t
if(!search_pda) break if(!search_pda) break
search_id = 0 search_id = 0
else if( search_pda && istype(A,/obj/item/device/pda) ) else if( search_pda && istype(A,/obj/item/pda) )
var/obj/item/device/pda/PDA = A var/obj/item/pda/PDA = A
if(PDA.owner == oldname) if(PDA.owner == oldname)
PDA.owner = newname PDA.owner = newname
PDA.name = "PDA-[newname] ([PDA.ownjob])" PDA.name = "PDA-[newname] ([PDA.ownjob])"
@@ -1056,7 +1056,7 @@ var/global/list/common_tools = list(
/obj/item/weldingtool, /obj/item/weldingtool,
/obj/item/tool/screwdriver, /obj/item/tool/screwdriver,
/obj/item/tool/wirecutters, /obj/item/tool/wirecutters,
/obj/item/device/multitool, /obj/item/multitool,
/obj/item/tool/crowbar) /obj/item/tool/crowbar)
/proc/istool(O) /proc/istool(O)
@@ -1066,9 +1066,9 @@ var/global/list/common_tools = list(
/proc/is_wire_tool(obj/item/I) /proc/is_wire_tool(obj/item/I)
if(istype(I, /obj/item/device/multitool) || I.is_wirecutter()) if(istype(I, /obj/item/multitool) || I.is_wirecutter())
return TRUE return TRUE
if(istype(I, /obj/item/device/assembly/signaler)) if(istype(I, /obj/item/assembly/signaler))
return TRUE return TRUE
return return
@@ -1194,7 +1194,7 @@ Checks if that loc and dir has a item on the wall
TODO - Fix this ancient list of wall items. Preferably make it dynamically populated. ~Leshana TODO - Fix this ancient list of wall items. Preferably make it dynamically populated. ~Leshana
*/ */
var/list/WALLITEMS = list( var/list/WALLITEMS = list(
/obj/machinery/power/apc, /obj/machinery/alarm, /obj/item/device/radio/intercom, /obj/structure/frame, /obj/machinery/power/apc, /obj/machinery/alarm, /obj/item/radio/intercom, /obj/structure/frame,
/obj/structure/extinguisher_cabinet, /obj/structure/reagent_dispensers/peppertank, /obj/structure/extinguisher_cabinet, /obj/structure/reagent_dispensers/peppertank,
/obj/machinery/status_display, /obj/machinery/requests_console, /obj/machinery/light_switch, /obj/structure/sign, /obj/machinery/status_display, /obj/machinery/requests_console, /obj/machinery/light_switch, /obj/structure/sign,
/obj/machinery/newscaster, /obj/machinery/firealarm, /obj/structure/noticeboard, /obj/machinery/button/remote, /obj/machinery/newscaster, /obj/machinery/firealarm, /obj/structure/noticeboard, /obj/machinery/button/remote,
@@ -1504,7 +1504,7 @@ var/mob/dview/dview_mob = new
var/typename = "[type]" var/typename = "[type]"
var/static/list/TYPES_SHORTCUTS = list( var/static/list/TYPES_SHORTCUTS = list(
/obj/effect/decal/cleanable = "CLEANABLE", /obj/effect/decal/cleanable = "CLEANABLE",
/obj/item/device/radio/headset = "HEADSET", /obj/item/radio/headset = "HEADSET",
/obj/item/clothing/head/helmet/space = "SPESSHELMET", /obj/item/clothing/head/helmet/space = "SPESSHELMET",
/obj/item/book/manual = "MANUAL", /obj/item/book/manual = "MANUAL",
/obj/item/reagent_containers/food/drinks = "DRINK", /obj/item/reagent_containers/food/drinks = "DRINK",

View File

@@ -1,6 +1,6 @@
// Specific types // Specific types
/datum/mini_hud/mapper /datum/mini_hud/mapper
var/obj/item/device/mapping_unit/owner var/obj/item/mapping_unit/owner
/datum/mini_hud/mapper/New(var/datum/hud/other, owner) /datum/mini_hud/mapper/New(var/datum/hud/other, owner)
src.owner = owner src.owner = owner

View File

@@ -647,7 +647,7 @@
var/obj/screen/mapper/powbutton/powbutton var/obj/screen/mapper/powbutton/powbutton
var/obj/screen/mapper/mapbutton/mapbutton var/obj/screen/mapper/mapbutton/mapbutton
var/obj/item/device/mapping_unit/owner var/obj/item/mapping_unit/owner
var/obj/screen/mapper/extras_holder/extras_holder var/obj/screen/mapper/extras_holder/extras_holder
/obj/screen/movable/mapper_holder/Initialize(mapload, newowner) /obj/screen/movable/mapper_holder/Initialize(mapload, newowner)

View File

@@ -54,7 +54,7 @@
return 1 return 1
/mob/living/carbon/brain/can_use_rig() /mob/living/carbon/brain/can_use_rig()
return istype(loc, /obj/item/device/mmi) return istype(loc, /obj/item/mmi)
/mob/living/silicon/ai/can_use_rig() /mob/living/silicon/ai/can_use_rig()
return carded return carded

View File

@@ -38,47 +38,47 @@ SUBSYSTEM_DEF(circuit)
var/list/category_list = circuit_fabricator_recipe_list[category] var/list/category_list = circuit_fabricator_recipe_list[category]
category_list += IC // Populating the fabricator categories category_list += IC // Populating the fabricator categories
for(var/path in typesof(/obj/item/device/electronic_assembly)) for(var/path in typesof(/obj/item/electronic_assembly))
var/obj/item/device/electronic_assembly/A = path var/obj/item/electronic_assembly/A = path
var/name = initial(A.name) var/name = initial(A.name)
all_assemblies[name] = path all_assemblies[name] = path
cached_assemblies[A] = new path cached_assemblies[A] = new path
circuit_fabricator_recipe_list["Assemblies"] = list( circuit_fabricator_recipe_list["Assemblies"] = list(
/obj/item/device/electronic_assembly/default, /obj/item/electronic_assembly/default,
/obj/item/device/electronic_assembly/calc, /obj/item/electronic_assembly/calc,
/obj/item/device/electronic_assembly/clam, /obj/item/electronic_assembly/clam,
/obj/item/device/electronic_assembly/simple, /obj/item/electronic_assembly/simple,
/obj/item/device/electronic_assembly/hook, /obj/item/electronic_assembly/hook,
/obj/item/device/electronic_assembly/pda, /obj/item/electronic_assembly/pda,
/obj/item/device/electronic_assembly/tiny/default, /obj/item/electronic_assembly/tiny/default,
/obj/item/device/electronic_assembly/tiny/cylinder, /obj/item/electronic_assembly/tiny/cylinder,
/obj/item/device/electronic_assembly/tiny/scanner, /obj/item/electronic_assembly/tiny/scanner,
/obj/item/device/electronic_assembly/tiny/hook, /obj/item/electronic_assembly/tiny/hook,
/obj/item/device/electronic_assembly/tiny/box, /obj/item/electronic_assembly/tiny/box,
/obj/item/device/electronic_assembly/medium/default, /obj/item/electronic_assembly/medium/default,
/obj/item/device/electronic_assembly/medium/box, /obj/item/electronic_assembly/medium/box,
/obj/item/device/electronic_assembly/medium/clam, /obj/item/electronic_assembly/medium/clam,
/obj/item/device/electronic_assembly/medium/medical, /obj/item/electronic_assembly/medium/medical,
/obj/item/device/electronic_assembly/medium/gun, /obj/item/electronic_assembly/medium/gun,
/obj/item/device/electronic_assembly/medium/radio, /obj/item/electronic_assembly/medium/radio,
/obj/item/device/electronic_assembly/large/default, /obj/item/electronic_assembly/large/default,
/obj/item/device/electronic_assembly/large/scope, /obj/item/electronic_assembly/large/scope,
/obj/item/device/electronic_assembly/large/terminal, /obj/item/electronic_assembly/large/terminal,
/obj/item/device/electronic_assembly/large/arm, /obj/item/electronic_assembly/large/arm,
/obj/item/device/electronic_assembly/large/tall, /obj/item/electronic_assembly/large/tall,
/obj/item/device/electronic_assembly/large/industrial, /obj/item/electronic_assembly/large/industrial,
/obj/item/device/electronic_assembly/drone/default, /obj/item/electronic_assembly/drone/default,
/obj/item/device/electronic_assembly/drone/arms, /obj/item/electronic_assembly/drone/arms,
/obj/item/device/electronic_assembly/drone/secbot, /obj/item/electronic_assembly/drone/secbot,
/obj/item/device/electronic_assembly/drone/medbot, /obj/item/electronic_assembly/drone/medbot,
/obj/item/device/electronic_assembly/drone/genbot, /obj/item/electronic_assembly/drone/genbot,
/obj/item/device/electronic_assembly/drone/android, /obj/item/electronic_assembly/drone/android,
/obj/item/device/electronic_assembly/wallmount/tiny, /obj/item/electronic_assembly/wallmount/tiny,
/obj/item/device/electronic_assembly/wallmount/light, /obj/item/electronic_assembly/wallmount/light,
/obj/item/device/electronic_assembly/wallmount, /obj/item/electronic_assembly/wallmount,
/obj/item/device/electronic_assembly/wallmount/heavy, /obj/item/electronic_assembly/wallmount/heavy,
/obj/item/implant/integrated_circuit, /obj/item/implant/integrated_circuit,
/obj/item/clothing/under/circuitry, /obj/item/clothing/under/circuitry,
/obj/item/clothing/gloves/circuitry, /obj/item/clothing/gloves/circuitry,
@@ -90,7 +90,7 @@ SUBSYSTEM_DEF(circuit)
) )
circuit_fabricator_recipe_list["Tools"] = list( circuit_fabricator_recipe_list["Tools"] = list(
/obj/item/device/integrated_electronics/wirer, /obj/item/integrated_electronics/wirer,
/obj/item/device/integrated_electronics/debugger, /obj/item/integrated_electronics/debugger,
/obj/item/device/integrated_electronics/detailer /obj/item/integrated_electronics/detailer
) )

View File

@@ -52,7 +52,7 @@ SUBSYSTEM_DEF(supply)
return 1 return 1
if(istype(A,/obj/machinery/nuclearbomb)) if(istype(A,/obj/machinery/nuclearbomb))
return 1 return 1
if(istype(A,/obj/item/device/radio/beacon)) if(istype(A,/obj/item/radio/beacon))
return 1 return 1
for(var/atom/B in A.contents) for(var/atom/B in A.contents)

View File

@@ -4,23 +4,23 @@
/datum/category_item/autolathe/devices/igniter /datum/category_item/autolathe/devices/igniter
name = "igniter" name = "igniter"
path =/obj/item/device/assembly/igniter path =/obj/item/assembly/igniter
/datum/category_item/autolathe/devices/signaler /datum/category_item/autolathe/devices/signaler
name = "signaler" name = "signaler"
path =/obj/item/device/assembly/signaler path =/obj/item/assembly/signaler
/datum/category_item/autolathe/devices/sensor_infra /datum/category_item/autolathe/devices/sensor_infra
name = "infrared sensor" name = "infrared sensor"
path =/obj/item/device/assembly/infra path =/obj/item/assembly/infra
/datum/category_item/autolathe/devices/timer /datum/category_item/autolathe/devices/timer
name = "timer" name = "timer"
path =/obj/item/device/assembly/timer path =/obj/item/assembly/timer
/datum/category_item/autolathe/devices/sensor_prox /datum/category_item/autolathe/devices/sensor_prox
name = "proximity sensor" name = "proximity sensor"
path =/obj/item/device/assembly/prox_sensor path =/obj/item/assembly/prox_sensor
/datum/category_item/autolathe/devices/beartrap /datum/category_item/autolathe/devices/beartrap
name = "mechanical trap" name = "mechanical trap"
@@ -34,5 +34,5 @@
/datum/category_item/autolathe/devices/electropack /datum/category_item/autolathe/devices/electropack
name = "electropack" name = "electropack"
path =/obj/item/device/radio/electropack path =/obj/item/radio/electropack
hidden = 1 hidden = 1

View File

@@ -51,7 +51,7 @@
/datum/category_item/autolathe/general/flashlight /datum/category_item/autolathe/general/flashlight
name = "flashlight" name = "flashlight"
path =/obj/item/device/flashlight path =/obj/item/flashlight
/datum/category_item/autolathe/general/floor_light /datum/category_item/autolathe/general/floor_light
name = "floor light" name = "floor light"
@@ -71,15 +71,15 @@
/datum/category_item/autolathe/general/radio_headset /datum/category_item/autolathe/general/radio_headset
name = "radio headset" name = "radio headset"
path =/obj/item/device/radio/headset path =/obj/item/radio/headset
/datum/category_item/autolathe/general/radio_bounced /datum/category_item/autolathe/general/radio_bounced
name = "station bounced radio" name = "station bounced radio"
path =/obj/item/device/radio/off path =/obj/item/radio/off
/datum/category_item/autolathe/general/suit_cooler /datum/category_item/autolathe/general/suit_cooler
name = "suit cooling unit" name = "suit cooling unit"
path =/obj/item/device/suit_cooling_unit path =/obj/item/suit_cooling_unit
/datum/category_item/autolathe/general/weldermask /datum/category_item/autolathe/general/weldermask
name = "welding mask" name = "welding mask"
@@ -95,7 +95,7 @@
/datum/category_item/autolathe/general/taperecorder /datum/category_item/autolathe/general/taperecorder
name = "tape recorder" name = "tape recorder"
path =/obj/item/device/taperecorder path =/obj/item/taperecorder
/datum/category_item/autolathe/general/tube /datum/category_item/autolathe/general/tube
name = "light tube" name = "light tube"
@@ -117,7 +117,7 @@
/datum/category_item/autolathe/general/maglight /datum/category_item/autolathe/general/maglight
name = "maglight" name = "maglight"
path =/obj/item/device/flashlight/maglight path =/obj/item/flashlight/maglight
/datum/category_item/autolathe/general/ecigcartridge /datum/category_item/autolathe/general/ecigcartridge
name = "ecigarette cartridge" name = "ecigarette cartridge"

View File

@@ -4,11 +4,11 @@
/datum/category_item/autolathe/tools/multitool /datum/category_item/autolathe/tools/multitool
name = "multitool" name = "multitool"
path =/obj/item/device/multitool path =/obj/item/multitool
/datum/category_item/autolathe/tools/t_scanner /datum/category_item/autolathe/tools/t_scanner
name = "T-ray scanner" name = "T-ray scanner"
path =/obj/item/device/t_scanner path =/obj/item/t_scanner
/datum/category_item/autolathe/tools/weldertool /datum/category_item/autolathe/tools/weldertool
name = "welding tool" name = "welding tool"

View File

@@ -405,7 +405,7 @@
memory = null//Remove any memory they may have had. memory = null//Remove any memory they may have had.
if("crystals") if("crystals")
if (usr.client.holder.rights & R_FUN) if (usr.client.holder.rights & R_FUN)
// var/obj/item/device/uplink/hidden/suplink = find_syndicate_uplink() No longer needed, uses stored in mind // var/obj/item/uplink/hidden/suplink = find_syndicate_uplink() No longer needed, uses stored in mind
var/crystals var/crystals
crystals = tcrystals crystals = tcrystals
crystals = input("Amount of telecrystals for [key]", crystals) as null|num crystals = input("Amount of telecrystals for [key]", crystals) as null|num
@@ -428,7 +428,7 @@
return null return null
/datum/mind/proc/take_uplink() /datum/mind/proc/take_uplink()
var/obj/item/device/uplink/hidden/H = find_syndicate_uplink() var/obj/item/uplink/hidden/H = find_syndicate_uplink()
if(H) if(H)
qdel(H) qdel(H)
@@ -446,7 +446,7 @@
for(var/obj/item/card/id/card in current) for(var/obj/item/card/id/card in current)
is_currently_brigged = 0 is_currently_brigged = 0
break // if they still have ID they're not brigged break // if they still have ID they're not brigged
for(var/obj/item/device/pda/P in current) for(var/obj/item/pda/P in current)
if(P.id) if(P.id)
is_currently_brigged = 0 is_currently_brigged = 0
break // if they still have ID they're not brigged break // if they still have ID they're not brigged

View File

@@ -103,7 +103,7 @@
shoes = /obj/item/clothing/shoes/boots/jackboots shoes = /obj/item/clothing/shoes/boots/jackboots
gloves = /obj/item/clothing/gloves/fingerless gloves = /obj/item/clothing/gloves/fingerless
l_pocket = /obj/item/gun/projectile/revolver/toy/crossbow l_pocket = /obj/item/gun/projectile/revolver/toy/crossbow
r_pocket = /obj/item/device/flashlight/color/red r_pocket = /obj/item/flashlight/color/red
/decl/hierarchy/outfit/costume/pirate /decl/hierarchy/outfit/costume/pirate
name = OUTFIT_COSTUME("Pirate") name = OUTFIT_COSTUME("Pirate")

View File

@@ -5,7 +5,7 @@
gloves = /obj/item/clothing/gloves/black gloves = /obj/item/clothing/gloves/black
mask = /obj/item/clothing/mask/gas/clown_hat mask = /obj/item/clothing/mask/gas/clown_hat
head = /obj/item/clothing/head/chaplain_hood head = /obj/item/clothing/head/chaplain_hood
l_ear = /obj/item/device/radio/headset l_ear = /obj/item/radio/headset
glasses = /obj/item/clothing/glasses/thermal/plain/monocle glasses = /obj/item/clothing/glasses/thermal/plain/monocle
suit = /obj/item/clothing/suit/storage/hooded/chaplain_hoodie suit = /obj/item/clothing/suit/storage/hooded/chaplain_hoodie
r_pocket = /obj/item/bikehorn r_pocket = /obj/item/bikehorn
@@ -22,7 +22,7 @@
gloves = /obj/item/clothing/gloves/sterile/latex gloves = /obj/item/clothing/gloves/sterile/latex
mask = /obj/item/clothing/mask/surgical mask = /obj/item/clothing/mask/surgical
head = /obj/item/clothing/head/welding head = /obj/item/clothing/head/welding
l_ear = /obj/item/device/radio/headset l_ear = /obj/item/radio/headset
glasses = /obj/item/clothing/glasses/thermal/plain/monocle glasses = /obj/item/clothing/glasses/thermal/plain/monocle
suit = /obj/item/clothing/suit/storage/apron suit = /obj/item/clothing/suit/storage/apron
l_pocket = /obj/item/material/knife/tacknife l_pocket = /obj/item/material/knife/tacknife
@@ -39,7 +39,7 @@
uniform = /obj/item/clothing/under/suit_jacket{ starting_accessories=list(/obj/item/clothing/accessory/wcoat) } uniform = /obj/item/clothing/under/suit_jacket{ starting_accessories=list(/obj/item/clothing/accessory/wcoat) }
shoes = /obj/item/clothing/shoes/black shoes = /obj/item/clothing/shoes/black
gloves = /obj/item/clothing/gloves/black gloves = /obj/item/clothing/gloves/black
l_ear = /obj/item/device/radio/headset l_ear = /obj/item/radio/headset
glasses = /obj/item/clothing/glasses/sunglasses glasses = /obj/item/clothing/glasses/sunglasses
l_pocket = /obj/item/melee/energy/sword l_pocket = /obj/item/melee/energy/sword
mask = /obj/item/clothing/mask/gas/clown_hat mask = /obj/item/clothing/mask/gas/clown_hat
@@ -47,7 +47,7 @@
id_slot = slot_wear_id id_slot = slot_wear_id
id_type = /obj/item/card/id/syndicate/station_access id_type = /obj/item/card/id/syndicate/station_access
pda_slot = slot_belt pda_slot = slot_belt
pda_type = /obj/item/device/pda/heads pda_type = /obj/item/pda/heads
/decl/hierarchy/outfit/professional/post_equip(var/mob/living/carbon/human/H) /decl/hierarchy/outfit/professional/post_equip(var/mob/living/carbon/human/H)
var/obj/item/storage/secure/briefcase/sec_briefcase = new(H) var/obj/item/storage/secure/briefcase/sec_briefcase = new(H)

View File

@@ -1,5 +1,5 @@
/decl/hierarchy/outfit/job/cargo /decl/hierarchy/outfit/job/cargo
l_ear = /obj/item/device/radio/headset/headset_cargo l_ear = /obj/item/radio/headset/headset_cargo
hierarchy_type = /decl/hierarchy/outfit/job/cargo hierarchy_type = /decl/hierarchy/outfit/job/cargo
/decl/hierarchy/outfit/job/cargo/qm /decl/hierarchy/outfit/job/cargo/qm
@@ -9,21 +9,21 @@
glasses = /obj/item/clothing/glasses/sunglasses glasses = /obj/item/clothing/glasses/sunglasses
l_hand = /obj/item/clipboard l_hand = /obj/item/clipboard
id_type = /obj/item/card/id/cargo/head id_type = /obj/item/card/id/cargo/head
pda_type = /obj/item/device/pda/quartermaster pda_type = /obj/item/pda/quartermaster
/decl/hierarchy/outfit/job/cargo/cargo_tech /decl/hierarchy/outfit/job/cargo/cargo_tech
name = OUTFIT_JOB_NAME("Cargo technician") name = OUTFIT_JOB_NAME("Cargo technician")
uniform = /obj/item/clothing/under/rank/cargotech uniform = /obj/item/clothing/under/rank/cargotech
id_type = /obj/item/card/id/cargo id_type = /obj/item/card/id/cargo
pda_type = /obj/item/device/pda/cargo pda_type = /obj/item/pda/cargo
/decl/hierarchy/outfit/job/cargo/mining /decl/hierarchy/outfit/job/cargo/mining
name = OUTFIT_JOB_NAME("Shaft miner") name = OUTFIT_JOB_NAME("Shaft miner")
uniform = /obj/item/clothing/under/rank/miner uniform = /obj/item/clothing/under/rank/miner
l_ear = /obj/item/device/radio/headset/headset_mine l_ear = /obj/item/radio/headset/headset_mine
backpack = /obj/item/storage/backpack/industrial backpack = /obj/item/storage/backpack/industrial
satchel_one = /obj/item/storage/backpack/satchel/eng satchel_one = /obj/item/storage/backpack/satchel/eng
id_type = /obj/item/card/id/cargo/miner id_type = /obj/item/card/id/cargo/miner
pda_type = /obj/item/device/pda/shaftminer pda_type = /obj/item/pda/shaftminer
backpack_contents = list(/obj/item/tool/crowbar = 1, /obj/item/storage/bag/ore = 1) backpack_contents = list(/obj/item/tool/crowbar = 1, /obj/item/storage/bag/ore = 1)
flags = OUTFIT_HAS_BACKPACK|OUTFIT_EXTENDED_SURVIVAL flags = OUTFIT_HAS_BACKPACK|OUTFIT_EXTENDED_SURVIVAL

View File

@@ -13,14 +13,14 @@
uniform = /obj/item/clothing/under/color/white uniform = /obj/item/clothing/under/color/white
/decl/hierarchy/outfit/job/service /decl/hierarchy/outfit/job/service
l_ear = /obj/item/device/radio/headset/headset_service l_ear = /obj/item/radio/headset/headset_service
hierarchy_type = /decl/hierarchy/outfit/job/service hierarchy_type = /decl/hierarchy/outfit/job/service
/decl/hierarchy/outfit/job/service/bartender /decl/hierarchy/outfit/job/service/bartender
name = OUTFIT_JOB_NAME("Bartender") name = OUTFIT_JOB_NAME("Bartender")
uniform = /obj/item/clothing/under/rank/bartender uniform = /obj/item/clothing/under/rank/bartender
id_type = /obj/item/card/id/civilian/bartender id_type = /obj/item/card/id/civilian/bartender
pda_type = /obj/item/device/pda/bar pda_type = /obj/item/pda/bar
backpack_contents = list(/obj/item/clothing/accessory/permit/gun/bar = 1) backpack_contents = list(/obj/item/clothing/accessory/permit/gun/bar = 1)
/decl/hierarchy/outfit/job/service/bartender/post_equip(mob/living/carbon/human/H) /decl/hierarchy/outfit/job/service/bartender/post_equip(mob/living/carbon/human/H)
@@ -39,7 +39,7 @@
suit = /obj/item/clothing/suit/chef suit = /obj/item/clothing/suit/chef
head = /obj/item/clothing/head/chefhat head = /obj/item/clothing/head/chefhat
id_type = /obj/item/card/id/civilian/chef id_type = /obj/item/card/id/civilian/chef
pda_type = /obj/item/device/pda/chef pda_type = /obj/item/pda/chef
/decl/hierarchy/outfit/job/service/chef/cook /decl/hierarchy/outfit/job/service/chef/cook
name = OUTFIT_JOB_NAME("Cook") name = OUTFIT_JOB_NAME("Cook")
@@ -50,47 +50,47 @@
uniform = /obj/item/clothing/under/rank/hydroponics uniform = /obj/item/clothing/under/rank/hydroponics
suit = /obj/item/clothing/suit/storage/apron suit = /obj/item/clothing/suit/storage/apron
gloves = /obj/item/clothing/gloves/botanic_leather gloves = /obj/item/clothing/gloves/botanic_leather
r_pocket = /obj/item/device/analyzer/plant_analyzer r_pocket = /obj/item/analyzer/plant_analyzer
backpack = /obj/item/storage/backpack/hydroponics backpack = /obj/item/storage/backpack/hydroponics
satchel_one = /obj/item/storage/backpack/satchel/hyd satchel_one = /obj/item/storage/backpack/satchel/hyd
messenger_bag = /obj/item/storage/backpack/messenger/hyd messenger_bag = /obj/item/storage/backpack/messenger/hyd
sports_bag = /obj/item/storage/backpack/sport/hyd sports_bag = /obj/item/storage/backpack/sport/hyd
id_type = /obj/item/card/id/civilian/botanist id_type = /obj/item/card/id/civilian/botanist
pda_type = /obj/item/device/pda/botanist pda_type = /obj/item/pda/botanist
/decl/hierarchy/outfit/job/service/janitor /decl/hierarchy/outfit/job/service/janitor
name = OUTFIT_JOB_NAME("Janitor") name = OUTFIT_JOB_NAME("Janitor")
uniform = /obj/item/clothing/under/rank/janitor uniform = /obj/item/clothing/under/rank/janitor
id_type = /obj/item/card/id/civilian/janitor id_type = /obj/item/card/id/civilian/janitor
pda_type = /obj/item/device/pda/janitor pda_type = /obj/item/pda/janitor
/decl/hierarchy/outfit/job/librarian /decl/hierarchy/outfit/job/librarian
name = OUTFIT_JOB_NAME("Librarian") name = OUTFIT_JOB_NAME("Librarian")
uniform = /obj/item/clothing/under/suit_jacket/red uniform = /obj/item/clothing/under/suit_jacket/red
l_hand = /obj/item/barcodescanner l_hand = /obj/item/barcodescanner
id_type = /obj/item/card/id/civilian id_type = /obj/item/card/id/civilian
pda_type = /obj/item/device/pda/librarian pda_type = /obj/item/pda/librarian
/decl/hierarchy/outfit/job/librarian/journalist /decl/hierarchy/outfit/job/librarian/journalist
id_type = /obj/item/card/id/civilian/journalist id_type = /obj/item/card/id/civilian/journalist
/decl/hierarchy/outfit/job/internal_affairs_agent /decl/hierarchy/outfit/job/internal_affairs_agent
name = OUTFIT_JOB_NAME("Internal affairs agent") name = OUTFIT_JOB_NAME("Internal affairs agent")
l_ear = /obj/item/device/radio/headset/ia l_ear = /obj/item/radio/headset/ia
uniform = /obj/item/clothing/under/rank/internalaffairs uniform = /obj/item/clothing/under/rank/internalaffairs
suit = /obj/item/clothing/suit/storage/toggle/internalaffairs suit = /obj/item/clothing/suit/storage/toggle/internalaffairs
shoes = /obj/item/clothing/shoes/brown shoes = /obj/item/clothing/shoes/brown
glasses = /obj/item/clothing/glasses/sunglasses/big glasses = /obj/item/clothing/glasses/sunglasses/big
l_hand = /obj/item/clipboard l_hand = /obj/item/clipboard
id_type = /obj/item/card/id/civilian/internal_affairs id_type = /obj/item/card/id/civilian/internal_affairs
pda_type = /obj/item/device/pda/lawyer pda_type = /obj/item/pda/lawyer
/decl/hierarchy/outfit/job/chaplain /decl/hierarchy/outfit/job/chaplain
name = OUTFIT_JOB_NAME("Chaplain") name = OUTFIT_JOB_NAME("Chaplain")
uniform = /obj/item/clothing/under/rank/chaplain uniform = /obj/item/clothing/under/rank/chaplain
l_hand = /obj/item/storage/bible l_hand = /obj/item/storage/bible
id_type = /obj/item/card/id/civilian/chaplain id_type = /obj/item/card/id/civilian/chaplain
pda_type = /obj/item/device/pda/chaplain pda_type = /obj/item/pda/chaplain
/decl/hierarchy/outfit/job/explorer /decl/hierarchy/outfit/job/explorer
name = OUTFIT_JOB_NAME("Explorer") name = OUTFIT_JOB_NAME("Explorer")
@@ -99,10 +99,10 @@
mask = /obj/item/clothing/mask/gas/explorer mask = /obj/item/clothing/mask/gas/explorer
suit = /obj/item/clothing/suit/storage/hooded/explorer suit = /obj/item/clothing/suit/storage/hooded/explorer
gloves = /obj/item/clothing/gloves/black gloves = /obj/item/clothing/gloves/black
l_ear = /obj/item/device/radio/headset l_ear = /obj/item/radio/headset
id_slot = slot_wear_id id_slot = slot_wear_id
id_type = /obj/item/card/id/science/explorer id_type = /obj/item/card/id/science/explorer
pda_slot = slot_belt pda_slot = slot_belt
pda_type = /obj/item/device/pda/cargo // Brown looks more rugged pda_type = /obj/item/pda/cargo // Brown looks more rugged
r_pocket = /obj/item/device/gps/explorer r_pocket = /obj/item/gps/explorer
id_pda_assignment = "Explorer" id_pda_assignment = "Explorer"

View File

@@ -2,13 +2,13 @@
name = OUTFIT_JOB_NAME("Captain") name = OUTFIT_JOB_NAME("Captain")
glasses = /obj/item/clothing/glasses/sunglasses glasses = /obj/item/clothing/glasses/sunglasses
uniform = /obj/item/clothing/under/rank/captain uniform = /obj/item/clothing/under/rank/captain
l_ear = /obj/item/device/radio/headset/heads/captain l_ear = /obj/item/radio/headset/heads/captain
shoes = /obj/item/clothing/shoes/brown shoes = /obj/item/clothing/shoes/brown
backpack = /obj/item/storage/backpack/captain backpack = /obj/item/storage/backpack/captain
satchel_one = /obj/item/storage/backpack/satchel/cap satchel_one = /obj/item/storage/backpack/satchel/cap
messenger_bag = /obj/item/storage/backpack/messenger/com messenger_bag = /obj/item/storage/backpack/messenger/com
id_type = /obj/item/card/id/gold id_type = /obj/item/card/id/gold
pda_type = /obj/item/device/pda/captain pda_type = /obj/item/pda/captain
/decl/hierarchy/outfit/job/captain/post_equip(var/mob/living/carbon/human/H) /decl/hierarchy/outfit/job/captain/post_equip(var/mob/living/carbon/human/H)
..() ..()
@@ -26,17 +26,17 @@
/decl/hierarchy/outfit/job/hop /decl/hierarchy/outfit/job/hop
name = OUTFIT_JOB_NAME("Head of Personnel") name = OUTFIT_JOB_NAME("Head of Personnel")
uniform = /obj/item/clothing/under/rank/head_of_personnel uniform = /obj/item/clothing/under/rank/head_of_personnel
l_ear = /obj/item/device/radio/headset/heads/hop l_ear = /obj/item/radio/headset/heads/hop
shoes = /obj/item/clothing/shoes/brown shoes = /obj/item/clothing/shoes/brown
id_type = /obj/item/card/id/silver/hop id_type = /obj/item/card/id/silver/hop
pda_type = /obj/item/device/pda/heads/hop pda_type = /obj/item/pda/heads/hop
/decl/hierarchy/outfit/job/secretary /decl/hierarchy/outfit/job/secretary
name = OUTFIT_JOB_NAME("Command Secretary") name = OUTFIT_JOB_NAME("Command Secretary")
l_ear = /obj/item/device/radio/headset/headset_com l_ear = /obj/item/radio/headset/headset_com
shoes = /obj/item/clothing/shoes/brown shoes = /obj/item/clothing/shoes/brown
id_type = /obj/item/card/id/silver/secretary id_type = /obj/item/card/id/silver/secretary
pda_type = /obj/item/device/pda/heads pda_type = /obj/item/pda/heads
r_hand = /obj/item/clipboard r_hand = /obj/item/clipboard
/decl/hierarchy/outfit/job/secretary/pre_equip(mob/living/carbon/human/H) /decl/hierarchy/outfit/job/secretary/pre_equip(mob/living/carbon/human/H)

View File

@@ -1,9 +1,9 @@
/decl/hierarchy/outfit/job/engineering /decl/hierarchy/outfit/job/engineering
hierarchy_type = /decl/hierarchy/outfit/job/engineering hierarchy_type = /decl/hierarchy/outfit/job/engineering
belt = /obj/item/storage/belt/utility/full/multitool belt = /obj/item/storage/belt/utility/full/multitool
l_ear = /obj/item/device/radio/headset/headset_eng l_ear = /obj/item/radio/headset/headset_eng
shoes = /obj/item/clothing/shoes/boots/workboots shoes = /obj/item/clothing/shoes/boots/workboots
r_pocket = /obj/item/device/t_scanner r_pocket = /obj/item/t_scanner
backpack = /obj/item/storage/backpack/industrial backpack = /obj/item/storage/backpack/industrial
satchel_one = /obj/item/storage/backpack/satchel/eng satchel_one = /obj/item/storage/backpack/satchel/eng
messenger_bag = /obj/item/storage/backpack/messenger/engi messenger_bag = /obj/item/storage/backpack/messenger/engi
@@ -14,21 +14,21 @@
name = OUTFIT_JOB_NAME("Chief engineer") name = OUTFIT_JOB_NAME("Chief engineer")
head = /obj/item/clothing/head/hardhat/white head = /obj/item/clothing/head/hardhat/white
uniform = /obj/item/clothing/under/rank/chief_engineer uniform = /obj/item/clothing/under/rank/chief_engineer
l_ear = /obj/item/device/radio/headset/heads/ce l_ear = /obj/item/radio/headset/heads/ce
gloves = /obj/item/clothing/gloves/black gloves = /obj/item/clothing/gloves/black
id_type = /obj/item/card/id/engineering/head id_type = /obj/item/card/id/engineering/head
pda_type = /obj/item/device/pda/heads/ce pda_type = /obj/item/pda/heads/ce
/decl/hierarchy/outfit/job/engineering/engineer /decl/hierarchy/outfit/job/engineering/engineer
name = OUTFIT_JOB_NAME("Engineer") name = OUTFIT_JOB_NAME("Engineer")
head = /obj/item/clothing/head/hardhat head = /obj/item/clothing/head/hardhat
uniform = /obj/item/clothing/under/rank/engineer uniform = /obj/item/clothing/under/rank/engineer
id_type = /obj/item/card/id/engineering id_type = /obj/item/card/id/engineering
pda_type = /obj/item/device/pda/engineering pda_type = /obj/item/pda/engineering
/decl/hierarchy/outfit/job/engineering/atmos /decl/hierarchy/outfit/job/engineering/atmos
name = OUTFIT_JOB_NAME("Atmospheric technician") name = OUTFIT_JOB_NAME("Atmospheric technician")
uniform = /obj/item/clothing/under/rank/atmospheric_technician uniform = /obj/item/clothing/under/rank/atmospheric_technician
belt = /obj/item/storage/belt/utility/atmostech belt = /obj/item/storage/belt/utility/atmostech
id_type = /obj/item/card/id/engineering/atmos id_type = /obj/item/card/id/engineering/atmos
pda_type = /obj/item/device/pda/atmos pda_type = /obj/item/pda/atmos

View File

@@ -3,13 +3,13 @@
hierarchy_type = /decl/hierarchy/outfit/job hierarchy_type = /decl/hierarchy/outfit/job
uniform = /obj/item/clothing/under/color/grey uniform = /obj/item/clothing/under/color/grey
l_ear = /obj/item/device/radio/headset l_ear = /obj/item/radio/headset
shoes = /obj/item/clothing/shoes/black shoes = /obj/item/clothing/shoes/black
id_slot = slot_wear_id id_slot = slot_wear_id
id_type = /obj/item/card/id/civilian id_type = /obj/item/card/id/civilian
pda_slot = slot_belt pda_slot = slot_belt
pda_type = /obj/item/device/pda pda_type = /obj/item/pda
flags = OUTFIT_HAS_BACKPACK flags = OUTFIT_HAS_BACKPACK

View File

@@ -1,8 +1,8 @@
/decl/hierarchy/outfit/job/medical /decl/hierarchy/outfit/job/medical
hierarchy_type = /decl/hierarchy/outfit/job/medical hierarchy_type = /decl/hierarchy/outfit/job/medical
l_ear = /obj/item/device/radio/headset/headset_med l_ear = /obj/item/radio/headset/headset_med
shoes = /obj/item/clothing/shoes/white shoes = /obj/item/clothing/shoes/white
pda_type = /obj/item/device/pda/medical pda_type = /obj/item/pda/medical
pda_slot = slot_l_store pda_slot = slot_l_store
backpack = /obj/item/storage/backpack/medic backpack = /obj/item/storage/backpack/medic
satchel_one = /obj/item/storage/backpack/satchel/med satchel_one = /obj/item/storage/backpack/satchel/med
@@ -10,21 +10,21 @@
/decl/hierarchy/outfit/job/medical/cmo /decl/hierarchy/outfit/job/medical/cmo
name = OUTFIT_JOB_NAME("Chief Medical Officer") name = OUTFIT_JOB_NAME("Chief Medical Officer")
l_ear =/obj/item/device/radio/headset/heads/cmo l_ear =/obj/item/radio/headset/heads/cmo
uniform = /obj/item/clothing/under/rank/chief_medical_officer uniform = /obj/item/clothing/under/rank/chief_medical_officer
suit = /obj/item/clothing/suit/storage/toggle/labcoat/cmo suit = /obj/item/clothing/suit/storage/toggle/labcoat/cmo
shoes = /obj/item/clothing/shoes/brown shoes = /obj/item/clothing/shoes/brown
l_hand = /obj/item/storage/firstaid/adv l_hand = /obj/item/storage/firstaid/adv
r_pocket = /obj/item/device/healthanalyzer r_pocket = /obj/item/healthanalyzer
id_type = /obj/item/card/id/medical/head id_type = /obj/item/card/id/medical/head
pda_type = /obj/item/device/pda/heads/cmo pda_type = /obj/item/pda/heads/cmo
/decl/hierarchy/outfit/job/medical/doctor /decl/hierarchy/outfit/job/medical/doctor
name = OUTFIT_JOB_NAME("Medical Doctor") name = OUTFIT_JOB_NAME("Medical Doctor")
uniform = /obj/item/clothing/under/rank/medical uniform = /obj/item/clothing/under/rank/medical
suit = /obj/item/clothing/suit/storage/toggle/labcoat suit = /obj/item/clothing/suit/storage/toggle/labcoat
l_hand = /obj/item/storage/firstaid/regular l_hand = /obj/item/storage/firstaid/regular
r_pocket = /obj/item/device/flashlight/pen r_pocket = /obj/item/flashlight/pen
id_type = /obj/item/card/id/medical id_type = /obj/item/card/id/medical
/decl/hierarchy/outfit/job/medical/doctor/emergency_physician /decl/hierarchy/outfit/job/medical/doctor/emergency_physician
@@ -67,17 +67,17 @@
satchel_one = /obj/item/storage/backpack/satchel/chem satchel_one = /obj/item/storage/backpack/satchel/chem
sports_bag = /obj/item/storage/backpack/sport/chem sports_bag = /obj/item/storage/backpack/sport/chem
id_type = /obj/item/card/id/medical/chemist id_type = /obj/item/card/id/medical/chemist
pda_type = /obj/item/device/pda/chemist pda_type = /obj/item/pda/chemist
/decl/hierarchy/outfit/job/medical/geneticist /decl/hierarchy/outfit/job/medical/geneticist
name = OUTFIT_JOB_NAME("Geneticist") name = OUTFIT_JOB_NAME("Geneticist")
uniform = /obj/item/clothing/under/rank/geneticist uniform = /obj/item/clothing/under/rank/geneticist
suit = /obj/item/clothing/suit/storage/toggle/labcoat/genetics suit = /obj/item/clothing/suit/storage/toggle/labcoat/genetics
backpack = /obj/item/storage/backpack/genetics backpack = /obj/item/storage/backpack/genetics
r_pocket = /obj/item/device/flashlight/pen r_pocket = /obj/item/flashlight/pen
satchel_one = /obj/item/storage/backpack/satchel/gen satchel_one = /obj/item/storage/backpack/satchel/gen
id_type = /obj/item/card/id/medical/geneticist id_type = /obj/item/card/id/medical/geneticist
pda_type = /obj/item/device/pda/geneticist pda_type = /obj/item/pda/geneticist
/decl/hierarchy/outfit/job/medical/psychiatrist /decl/hierarchy/outfit/job/medical/psychiatrist
name = OUTFIT_JOB_NAME("Psychiatrist") name = OUTFIT_JOB_NAME("Psychiatrist")

View File

@@ -1,9 +1,9 @@
/decl/hierarchy/outfit/job/science /decl/hierarchy/outfit/job/science
hierarchy_type = /decl/hierarchy/outfit/job/science hierarchy_type = /decl/hierarchy/outfit/job/science
l_ear = /obj/item/device/radio/headset/headset_sci l_ear = /obj/item/radio/headset/headset_sci
suit = /obj/item/clothing/suit/storage/toggle/labcoat suit = /obj/item/clothing/suit/storage/toggle/labcoat
shoes = /obj/item/clothing/shoes/white shoes = /obj/item/clothing/shoes/white
pda_type = /obj/item/device/pda/science pda_type = /obj/item/pda/science
backpack = /obj/item/storage/backpack/toxins backpack = /obj/item/storage/backpack/toxins
satchel_one = /obj/item/storage/backpack/satchel/tox satchel_one = /obj/item/storage/backpack/satchel/tox
messenger_bag = /obj/item/storage/backpack/messenger/tox messenger_bag = /obj/item/storage/backpack/messenger/tox
@@ -11,12 +11,12 @@
/decl/hierarchy/outfit/job/science/rd /decl/hierarchy/outfit/job/science/rd
name = OUTFIT_JOB_NAME("Research Director") name = OUTFIT_JOB_NAME("Research Director")
l_ear = /obj/item/device/radio/headset/heads/rd l_ear = /obj/item/radio/headset/heads/rd
uniform = /obj/item/clothing/under/rank/research_director uniform = /obj/item/clothing/under/rank/research_director
shoes = /obj/item/clothing/shoes/brown shoes = /obj/item/clothing/shoes/brown
l_hand = /obj/item/clipboard l_hand = /obj/item/clipboard
id_type = /obj/item/card/id/science/head id_type = /obj/item/card/id/science/head
pda_type = /obj/item/device/pda/heads/rd pda_type = /obj/item/pda/heads/rd
/decl/hierarchy/outfit/job/science/scientist /decl/hierarchy/outfit/job/science/scientist
name = OUTFIT_JOB_NAME("Scientist") name = OUTFIT_JOB_NAME("Scientist")
@@ -37,7 +37,7 @@
belt = /obj/item/storage/belt/utility/full/multitool belt = /obj/item/storage/belt/utility/full/multitool
id_type = /obj/item/card/id/science id_type = /obj/item/card/id/science
pda_slot = slot_r_store pda_slot = slot_r_store
pda_type = /obj/item/device/pda/roboticist pda_type = /obj/item/pda/roboticist
backpack = /obj/item/storage/backpack backpack = /obj/item/storage/backpack
satchel_one = /obj/item/storage/backpack/satchel/norm satchel_one = /obj/item/storage/backpack/satchel/norm
suit = /obj/item/clothing/suit/storage/toggle/labcoat/roboticist suit = /obj/item/clothing/suit/storage/toggle/labcoat/roboticist

View File

@@ -1,7 +1,7 @@
/decl/hierarchy/outfit/job/security /decl/hierarchy/outfit/job/security
hierarchy_type = /decl/hierarchy/outfit/job/security hierarchy_type = /decl/hierarchy/outfit/job/security
glasses = /obj/item/clothing/glasses/sunglasses/sechud glasses = /obj/item/clothing/glasses/sunglasses/sechud
l_ear = /obj/item/device/radio/headset/headset_sec l_ear = /obj/item/radio/headset/headset_sec
gloves = /obj/item/clothing/gloves/black gloves = /obj/item/clothing/gloves/black
shoes = /obj/item/clothing/shoes/boots/jackboots shoes = /obj/item/clothing/shoes/boots/jackboots
backpack = /obj/item/storage/backpack/security backpack = /obj/item/storage/backpack/security
@@ -12,17 +12,17 @@
/decl/hierarchy/outfit/job/security/hos /decl/hierarchy/outfit/job/security/hos
name = OUTFIT_JOB_NAME("Head of security") name = OUTFIT_JOB_NAME("Head of security")
l_ear = /obj/item/device/radio/headset/heads/hos l_ear = /obj/item/radio/headset/heads/hos
uniform = /obj/item/clothing/under/rank/head_of_security uniform = /obj/item/clothing/under/rank/head_of_security
id_type = /obj/item/card/id/security/head id_type = /obj/item/card/id/security/head
pda_type = /obj/item/device/pda/heads/hos pda_type = /obj/item/pda/heads/hos
/decl/hierarchy/outfit/job/security/warden /decl/hierarchy/outfit/job/security/warden
name = OUTFIT_JOB_NAME("Warden") name = OUTFIT_JOB_NAME("Warden")
uniform = /obj/item/clothing/under/rank/warden uniform = /obj/item/clothing/under/rank/warden
l_pocket = /obj/item/device/flash l_pocket = /obj/item/flash
id_type = /obj/item/card/id/security/warden id_type = /obj/item/card/id/security/warden
pda_type = /obj/item/device/pda/warden pda_type = /obj/item/pda/warden
/decl/hierarchy/outfit/job/security/detective /decl/hierarchy/outfit/job/security/detective
name = OUTFIT_JOB_NAME("Detective") name = OUTFIT_JOB_NAME("Detective")
@@ -33,7 +33,7 @@
shoes = /obj/item/clothing/shoes/laceup shoes = /obj/item/clothing/shoes/laceup
r_hand = /obj/item/storage/briefcase/crimekit r_hand = /obj/item/storage/briefcase/crimekit
id_type = /obj/item/card/id/security/detective id_type = /obj/item/card/id/security/detective
pda_type = /obj/item/device/pda/detective pda_type = /obj/item/pda/detective
backpack = /obj/item/storage/backpack backpack = /obj/item/storage/backpack
satchel_one = /obj/item/storage/backpack/satchel/norm satchel_one = /obj/item/storage/backpack/satchel/norm
backpack_contents = list(/obj/item/storage/box/evidence = 1) backpack_contents = list(/obj/item/storage/box/evidence = 1)
@@ -46,6 +46,6 @@
/decl/hierarchy/outfit/job/security/officer /decl/hierarchy/outfit/job/security/officer
name = OUTFIT_JOB_NAME("Security Officer") name = OUTFIT_JOB_NAME("Security Officer")
uniform = /obj/item/clothing/under/rank/security uniform = /obj/item/clothing/under/rank/security
l_pocket = /obj/item/device/flash l_pocket = /obj/item/flash
id_type = /obj/item/card/id/security id_type = /obj/item/card/id/security
pda_type = /obj/item/device/pda/security pda_type = /obj/item/pda/security

View File

@@ -2,4 +2,4 @@
name = "Military Uniform" name = "Military Uniform"
hierarchy_type = /decl/hierarchy/outfit/military hierarchy_type = /decl/hierarchy/outfit/military
l_ear = /obj/item/device/radio/headset l_ear = /obj/item/radio/headset

View File

@@ -29,7 +29,7 @@
/decl/hierarchy/outfit/soviet_soldier/admiral /decl/hierarchy/outfit/soviet_soldier/admiral
name = "Soviet admiral" name = "Soviet admiral"
head = /obj/item/clothing/head/hgpiratecap head = /obj/item/clothing/head/hgpiratecap
l_ear = /obj/item/device/radio/headset/heads/captain l_ear = /obj/item/radio/headset/heads/captain
glasses = /obj/item/clothing/glasses/thermal/plain/eyepatch glasses = /obj/item/clothing/glasses/thermal/plain/eyepatch
suit = /obj/item/clothing/suit/hgpirate suit = /obj/item/clothing/suit/hgpirate
@@ -40,12 +40,12 @@
/decl/hierarchy/outfit/merchant /decl/hierarchy/outfit/merchant
name = "Merchant" name = "Merchant"
shoes = /obj/item/clothing/shoes/black shoes = /obj/item/clothing/shoes/black
l_ear = /obj/item/device/radio/headset l_ear = /obj/item/radio/headset
uniform = /obj/item/clothing/under/color/grey uniform = /obj/item/clothing/under/color/grey
id_slot = slot_wear_id id_slot = slot_wear_id
id_type = /obj/item/card/id/civilian //merchant id_type = /obj/item/card/id/civilian //merchant
pda_slot = slot_r_store pda_slot = slot_r_store
pda_type = /obj/item/device/pda/chef //cause I like the look pda_type = /obj/item/pda/chef //cause I like the look
id_pda_assignment = "Merchant" id_pda_assignment = "Merchant"
/decl/hierarchy/outfit/merchant/vox /decl/hierarchy/outfit/merchant/vox

View File

@@ -3,13 +3,13 @@
uniform = /obj/item/clothing/under/rank/centcom uniform = /obj/item/clothing/under/rank/centcom
shoes = /obj/item/clothing/shoes/laceup shoes = /obj/item/clothing/shoes/laceup
gloves = /obj/item/clothing/gloves/white gloves = /obj/item/clothing/gloves/white
l_ear = /obj/item/device/radio/headset/heads/hop l_ear = /obj/item/radio/headset/heads/hop
glasses = /obj/item/clothing/glasses/sunglasses glasses = /obj/item/clothing/glasses/sunglasses
id_slot = slot_wear_id id_slot = slot_wear_id
id_type = /obj/item/card/id/centcom //station id_type = /obj/item/card/id/centcom //station
pda_slot = slot_r_store pda_slot = slot_r_store
pda_type = /obj/item/device/pda/heads pda_type = /obj/item/pda/heads
/decl/hierarchy/outfit/nanotrasen/representative /decl/hierarchy/outfit/nanotrasen/representative
name = "Nanotrasen representative" name = "Nanotrasen representative"
@@ -19,14 +19,14 @@
/decl/hierarchy/outfit/nanotrasen/officer /decl/hierarchy/outfit/nanotrasen/officer
name = "Nanotrasen officer" name = "Nanotrasen officer"
head = /obj/item/clothing/head/beret/centcom/officer head = /obj/item/clothing/head/beret/centcom/officer
l_ear = /obj/item/device/radio/headset/heads/captain l_ear = /obj/item/radio/headset/heads/captain
belt = /obj/item/gun/energy belt = /obj/item/gun/energy
id_pda_assignment = "NanoTrasen Navy Officer" id_pda_assignment = "NanoTrasen Navy Officer"
/decl/hierarchy/outfit/nanotrasen/captain /decl/hierarchy/outfit/nanotrasen/captain
name = "Nanotrasen captain" name = "Nanotrasen captain"
uniform = /obj/item/clothing/under/rank/centcom_captain uniform = /obj/item/clothing/under/rank/centcom_captain
l_ear = /obj/item/device/radio/headset/heads/captain l_ear = /obj/item/radio/headset/heads/captain
head = /obj/item/clothing/head/beret/centcom/captain head = /obj/item/clothing/head/beret/centcom/captain
belt = /obj/item/gun/energy belt = /obj/item/gun/energy
id_pda_assignment = "NanoTrasen Navy Captain" id_pda_assignment = "NanoTrasen Navy Captain"

View File

@@ -173,7 +173,7 @@ var/list/outfits_decls_by_type_
/decl/hierarchy/outfit/proc/equip_pda(mob/living/carbon/human/H, rank, assignment) /decl/hierarchy/outfit/proc/equip_pda(mob/living/carbon/human/H, rank, assignment)
if(!pda_slot || !pda_type) if(!pda_slot || !pda_type)
return return
var/obj/item/device/pda/pda = new pda_type(H) var/obj/item/pda/pda = new pda_type(H)
if(H.equip_to_slot_or_del(pda, pda_slot)) if(H.equip_to_slot_or_del(pda, pda_slot))
pda.owner = H.real_name pda.owner = H.real_name
pda.ownjob = assignment pda.ownjob = assignment

View File

@@ -2,7 +2,7 @@
name = "Special ops - Officer" name = "Special ops - Officer"
uniform = /obj/item/clothing/under/syndicate/combat uniform = /obj/item/clothing/under/syndicate/combat
suit = /obj/item/clothing/suit/armor/swat/officer suit = /obj/item/clothing/suit/armor/swat/officer
l_ear = /obj/item/device/radio/headset/ert l_ear = /obj/item/radio/headset/ert
glasses = /obj/item/clothing/glasses/thermal/plain/eyepatch glasses = /obj/item/clothing/glasses/thermal/plain/eyepatch
mask = /obj/item/clothing/mask/smokable/cigarette/cigar/havana mask = /obj/item/clothing/mask/smokable/cigarette/cigar/havana
head = /obj/item/clothing/head/beret //deathsquad head = /obj/item/clothing/head/beret //deathsquad
@@ -29,7 +29,7 @@
uniform = /obj/item/clothing/under/ert uniform = /obj/item/clothing/under/ert
shoes = /obj/item/clothing/shoes/boots/swat shoes = /obj/item/clothing/shoes/boots/swat
gloves = /obj/item/clothing/gloves/swat gloves = /obj/item/clothing/gloves/swat
l_ear = /obj/item/device/radio/headset/ert l_ear = /obj/item/radio/headset/ert
belt = /obj/item/gun/energy/gun belt = /obj/item/gun/energy/gun
glasses = /obj/item/clothing/glasses/sunglasses glasses = /obj/item/clothing/glasses/sunglasses
back = /obj/item/storage/backpack/satchel back = /obj/item/storage/backpack/satchel
@@ -55,7 +55,7 @@
name = "Spec ops - Mercenary" name = "Spec ops - Mercenary"
uniform = /obj/item/clothing/under/syndicate uniform = /obj/item/clothing/under/syndicate
shoes = /obj/item/clothing/shoes/boots/combat shoes = /obj/item/clothing/shoes/boots/combat
l_ear = /obj/item/device/radio/headset/syndicate l_ear = /obj/item/radio/headset/syndicate
belt = /obj/item/storage/belt/security belt = /obj/item/storage/belt/security
glasses = /obj/item/clothing/glasses/sunglasses glasses = /obj/item/clothing/glasses/sunglasses
gloves = /obj/item/clothing/gloves/swat gloves = /obj/item/clothing/gloves/swat

View File

@@ -1,7 +1,7 @@
/decl/hierarchy/outfit/wizard /decl/hierarchy/outfit/wizard
uniform = /obj/item/clothing/under/color/lightpurple uniform = /obj/item/clothing/under/color/lightpurple
shoes = /obj/item/clothing/shoes/sandal shoes = /obj/item/clothing/shoes/sandal
l_ear = /obj/item/device/radio/headset l_ear = /obj/item/radio/headset
r_pocket = /obj/item/teleportation_scroll r_pocket = /obj/item/teleportation_scroll
l_hand = /obj/item/staff l_hand = /obj/item/staff
r_hand = /obj/item/spellbook r_hand = /obj/item/spellbook

View File

@@ -78,15 +78,15 @@
/obj/item/melee/energy/sword/ionic_rapier, /obj/item/melee/energy/sword/ionic_rapier,
/obj/item/storage/box/syndie_kit/space, //doesn't matter what species you are, /obj/item/storage/box/syndie_kit/space, //doesn't matter what species you are,
/obj/item/storage/box/syndie_kit/demolitions, /obj/item/storage/box/syndie_kit/demolitions,
/obj/item/device/multitool/ai_detector, /obj/item/multitool/ai_detector,
/obj/item/plastique, /obj/item/plastique,
/obj/item/storage/toolbox/syndicate/powertools /obj/item/storage/toolbox/syndicate/powertools
), ),
list( //the infiltrator, list( //the infiltrator,
/obj/item/gun/projectile/silenced, /obj/item/gun/projectile/silenced,
/obj/item/device/chameleon, /obj/item/chameleon,
/obj/item/storage/box/syndie_kit/chameleon, /obj/item/storage/box/syndie_kit/chameleon,
/obj/item/device/encryptionkey/syndicate, /obj/item/encryptionkey/syndicate,
/obj/item/card/id/syndicate, /obj/item/card/id/syndicate,
/obj/item/clothing/mask/gas/voice, /obj/item/clothing/mask/gas/voice,
/obj/item/makeover /obj/item/makeover

View File

@@ -56,7 +56,7 @@
/obj/item/reagent_containers/glass/bottle/ammonia = 2, /obj/item/reagent_containers/glass/bottle/ammonia = 2,
/obj/item/material/knife/machete/hatchet, /obj/item/material/knife/machete/hatchet,
/obj/item/material/minihoe, /obj/item/material/minihoe,
/obj/item/device/analyzer/plant_analyzer, /obj/item/analyzer/plant_analyzer,
/obj/item/clothing/gloves/botanic_leather, /obj/item/clothing/gloves/botanic_leather,
/obj/item/clothing/suit/storage/apron, /obj/item/clothing/suit/storage/apron,
/obj/item/material/minihoe, /obj/item/material/minihoe,

View File

@@ -112,7 +112,7 @@
contains = list( contains = list(
/obj/item/storage/belt/medical = 3, /obj/item/storage/belt/medical = 3,
/obj/item/clothing/glasses/hud/health = 3, /obj/item/clothing/glasses/hud/health = 3,
/obj/item/device/radio/headset/headset_med/alt = 3, /obj/item/radio/headset/headset_med/alt = 3,
/obj/item/clothing/suit/storage/hooded/wintercoat/medical = 3 /obj/item/clothing/suit/storage/hooded/wintercoat/medical = 3
) )
cost = 10 cost = 10
@@ -124,7 +124,7 @@
name = "Chief medical officer equipment" name = "Chief medical officer equipment"
contains = list( contains = list(
/obj/item/storage/belt/medical, /obj/item/storage/belt/medical,
/obj/item/device/radio/headset/heads/cmo, /obj/item/radio/headset/heads/cmo,
/obj/item/clothing/under/rank/chief_medical_officer, /obj/item/clothing/under/rank/chief_medical_officer,
/obj/item/reagent_containers/hypospray/vial, /obj/item/reagent_containers/hypospray/vial,
/obj/item/clothing/accessory/stethoscope, /obj/item/clothing/accessory/stethoscope,
@@ -135,8 +135,8 @@
/obj/item/clothing/shoes/white, /obj/item/clothing/shoes/white,
/obj/item/cartridge/cmo, /obj/item/cartridge/cmo,
/obj/item/clothing/gloves/sterile/latex, /obj/item/clothing/gloves/sterile/latex,
/obj/item/device/healthanalyzer, /obj/item/healthanalyzer,
/obj/item/device/flashlight/pen, /obj/item/flashlight/pen,
/obj/item/reagent_containers/syringe /obj/item/reagent_containers/syringe
) )
cost = 50 cost = 50
@@ -148,7 +148,7 @@
name = "Medical Doctor equipment" name = "Medical Doctor equipment"
contains = list( contains = list(
/obj/item/storage/belt/medical, /obj/item/storage/belt/medical,
/obj/item/device/radio/headset/headset_med, /obj/item/radio/headset/headset_med,
/obj/item/clothing/under/rank/medical, /obj/item/clothing/under/rank/medical,
/obj/item/clothing/accessory/stethoscope, /obj/item/clothing/accessory/stethoscope,
/obj/item/clothing/glasses/hud/health, /obj/item/clothing/glasses/hud/health,
@@ -158,8 +158,8 @@
/obj/item/clothing/shoes/white, /obj/item/clothing/shoes/white,
/obj/item/cartridge/medical, /obj/item/cartridge/medical,
/obj/item/clothing/gloves/sterile/latex, /obj/item/clothing/gloves/sterile/latex,
/obj/item/device/healthanalyzer, /obj/item/healthanalyzer,
/obj/item/device/flashlight/pen, /obj/item/flashlight/pen,
/obj/item/reagent_containers/syringe /obj/item/reagent_containers/syringe
) )
cost = 20 cost = 20
@@ -171,7 +171,7 @@
name = "Chemist equipment" name = "Chemist equipment"
contains = list( contains = list(
/obj/item/storage/box/beakers, /obj/item/storage/box/beakers,
/obj/item/device/radio/headset/headset_med, /obj/item/radio/headset/headset_med,
/obj/item/storage/box/autoinjectors, /obj/item/storage/box/autoinjectors,
/obj/item/clothing/under/rank/chemist, /obj/item/clothing/under/rank/chemist,
/obj/item/clothing/glasses/science, /obj/item/clothing/glasses/science,
@@ -181,7 +181,7 @@
/obj/item/cartridge/chemistry, /obj/item/cartridge/chemistry,
/obj/item/clothing/gloves/sterile/latex, /obj/item/clothing/gloves/sterile/latex,
/obj/item/reagent_containers/dropper, /obj/item/reagent_containers/dropper,
/obj/item/device/healthanalyzer, /obj/item/healthanalyzer,
/obj/item/storage/box/pillbottles, /obj/item/storage/box/pillbottles,
/obj/item/reagent_containers/syringe /obj/item/reagent_containers/syringe
) )
@@ -194,7 +194,7 @@
name = "Paramedic equipment" name = "Paramedic equipment"
contains = list( contains = list(
/obj/item/storage/belt/medical/emt, /obj/item/storage/belt/medical/emt,
/obj/item/device/radio/headset/headset_med, /obj/item/radio/headset/headset_med,
/obj/item/clothing/under/rank/medical/scrubs/black, /obj/item/clothing/under/rank/medical/scrubs/black,
/obj/item/clothing/accessory/armband/medblue, /obj/item/clothing/accessory/armband/medblue,
/obj/item/clothing/glasses/hud/health, /obj/item/clothing/glasses/hud/health,
@@ -207,9 +207,9 @@
/obj/item/storage/firstaid/adv, /obj/item/storage/firstaid/adv,
/obj/item/clothing/shoes/boots/jackboots, /obj/item/clothing/shoes/boots/jackboots,
/obj/item/clothing/gloves/sterile/latex, /obj/item/clothing/gloves/sterile/latex,
/obj/item/device/healthanalyzer, /obj/item/healthanalyzer,
/obj/item/cartridge/medical, /obj/item/cartridge/medical,
/obj/item/device/flashlight/pen, /obj/item/flashlight/pen,
/obj/item/reagent_containers/syringe, /obj/item/reagent_containers/syringe,
/obj/item/clothing/accessory/storage/white_vest /obj/item/clothing/accessory/storage/white_vest
) )
@@ -222,7 +222,7 @@
name = "Psychiatrist equipment" name = "Psychiatrist equipment"
contains = list( contains = list(
/obj/item/clothing/under/rank/psych, /obj/item/clothing/under/rank/psych,
/obj/item/device/radio/headset/headset_med, /obj/item/radio/headset/headset_med,
/obj/item/clothing/under/rank/psych/turtleneck, /obj/item/clothing/under/rank/psych/turtleneck,
/obj/item/clothing/shoes/laceup, /obj/item/clothing/shoes/laceup,
/obj/item/clothing/suit/storage/toggle/labcoat, /obj/item/clothing/suit/storage/toggle/labcoat,
@@ -262,8 +262,8 @@
name = "Autopsy equipment" name = "Autopsy equipment"
contains = list( contains = list(
/obj/item/folder/white, /obj/item/folder/white,
/obj/item/device/camera, /obj/item/camera,
/obj/item/device/camera_film = 2, /obj/item/camera_film = 2,
/obj/item/autopsy_scanner, /obj/item/autopsy_scanner,
/obj/item/surgical/scalpel, /obj/item/surgical/scalpel,
/obj/item/storage/box/masks, /obj/item/storage/box/masks,
@@ -338,7 +338,7 @@
/datum/supply_pack/med/defib /datum/supply_pack/med/defib
name = "Defibrillator crate" name = "Defibrillator crate"
contains = list(/obj/item/device/defib_kit = 2) contains = list(/obj/item/defib_kit = 2)
cost = 30 cost = 30
containertype = /obj/structure/closet/crate/veymed containertype = /obj/structure/closet/crate/veymed
containername = "Defibrillator crate" containername = "Defibrillator crate"

View File

@@ -82,7 +82,7 @@
containername = "Plushies Crate" containername = "Plushies Crate"
/datum/supply_pack/misc/eftpos /datum/supply_pack/misc/eftpos
contains = list(/obj/item/device/eftpos) contains = list(/obj/item/eftpos)
name = "EFTPOS scanner" name = "EFTPOS scanner"
cost = 10 cost = 10
containertype = /obj/structure/closet/crate/nanotrasen containertype = /obj/structure/closet/crate/nanotrasen

View File

@@ -12,7 +12,7 @@
/datum/supply_pack/munitions/weapons /datum/supply_pack/munitions/weapons
name = "Weapons - Security basic equipment" name = "Weapons - Security basic equipment"
contains = list( contains = list(
/obj/item/device/flash = 2, /obj/item/flash = 2,
/obj/item/reagent_containers/spray/pepper = 2, /obj/item/reagent_containers/spray/pepper = 2,
/obj/item/melee/baton/loaded = 2, /obj/item/melee/baton/loaded = 2,
/obj/item/gun/energy/taser = 2, /obj/item/gun/energy/taser = 2,
@@ -132,7 +132,7 @@
/datum/supply_pack/munitions/bolt_rifles_competitive /datum/supply_pack/munitions/bolt_rifles_competitive
name = "Weapons - Competitive shooting rifles" name = "Weapons - Competitive shooting rifles"
contains = list( contains = list(
/obj/item/device/assembly/timer, /obj/item/assembly/timer,
/obj/item/gun/projectile/shotgun/pump/rifle/practice = 2, /obj/item/gun/projectile/shotgun/pump/rifle/practice = 2,
/obj/item/ammo_magazine/clip/c762/practice = 4, /obj/item/ammo_magazine/clip/c762/practice = 4,
/obj/item/target = 2, /obj/item/target = 2,

View File

@@ -47,8 +47,8 @@
contains = list( contains = list(
/obj/item/storage/fancy/crayons, /obj/item/storage/fancy/crayons,
/obj/item/storage/fancy/markers, /obj/item/storage/fancy/markers,
/obj/item/device/camera, /obj/item/camera,
/obj/item/device/camera_film = 2, /obj/item/camera_film = 2,
/obj/item/storage/photo_album, /obj/item/storage/photo_album,
/obj/item/packageWrap, /obj/item/packageWrap,
/obj/item/reagent_containers/glass/paint/red, /obj/item/reagent_containers/glass/paint/red,
@@ -71,9 +71,9 @@
containername = "station painting supplies crate" containername = "station painting supplies crate"
containertype = /obj/structure/closet/crate/grayson containertype = /obj/structure/closet/crate/grayson
contains = list( contains = list(
/obj/item/device/pipe_painter = 2, /obj/item/pipe_painter = 2,
/obj/item/device/floor_painter = 2, /obj/item/floor_painter = 2,
///obj/item/device/closet_painter = 2 ///obj/item/closet_painter = 2
) )
/datum/supply_pack/recreation/cheapbait /datum/supply_pack/recreation/cheapbait

View File

@@ -14,9 +14,9 @@
/datum/supply_pack/robotics/robotics_assembly /datum/supply_pack/robotics/robotics_assembly
name = "Robotics assembly crate" name = "Robotics assembly crate"
contains = list( contains = list(
/obj/item/device/assembly/prox_sensor = 3, /obj/item/assembly/prox_sensor = 3,
/obj/item/storage/toolbox/electrical, /obj/item/storage/toolbox/electrical,
/obj/item/device/flash = 4, /obj/item/flash = 4,
/obj/item/cell/high = 2 /obj/item/cell/high = 2
) )
cost = 10 cost = 10
@@ -151,10 +151,10 @@
/datum/supply_pack/randomised/robotics/exosuit_mod /datum/supply_pack/randomised/robotics/exosuit_mod
num_contained = 1 num_contained = 1
contains = list( contains = list(
/obj/item/device/kit/paint/ripley, /obj/item/kit/paint/ripley,
/obj/item/device/kit/paint/ripley/death, /obj/item/kit/paint/ripley/death,
/obj/item/device/kit/paint/ripley/flames_red, /obj/item/kit/paint/ripley/flames_red,
/obj/item/device/kit/paint/ripley/flames_blue /obj/item/kit/paint/ripley/flames_blue
) )
name = "Random APLU modkit" name = "Random APLU modkit"
cost = 200 cost = 200
@@ -163,18 +163,18 @@
/datum/supply_pack/randomised/robotics/exosuit_mod/durand /datum/supply_pack/randomised/robotics/exosuit_mod/durand
contains = list( contains = list(
/obj/item/device/kit/paint/durand, /obj/item/kit/paint/durand,
/obj/item/device/kit/paint/durand/seraph, /obj/item/kit/paint/durand/seraph,
/obj/item/device/kit/paint/durand/phazon /obj/item/kit/paint/durand/phazon
) )
name = "Random Durand exosuit modkit" name = "Random Durand exosuit modkit"
containertype = /obj/structure/closet/crate/heph containertype = /obj/structure/closet/crate/heph
/datum/supply_pack/randomised/robotics/exosuit_mod/gygax /datum/supply_pack/randomised/robotics/exosuit_mod/gygax
contains = list( contains = list(
/obj/item/device/kit/paint/gygax, /obj/item/kit/paint/gygax,
/obj/item/device/kit/paint/gygax/darkgygax, /obj/item/kit/paint/gygax/darkgygax,
/obj/item/device/kit/paint/gygax/recitence /obj/item/kit/paint/gygax/recitence
) )
name = "Random Gygax exosuit modkit" name = "Random Gygax exosuit modkit"
containertype = /obj/structure/closet/crate/heph containertype = /obj/structure/closet/crate/heph
@@ -182,7 +182,7 @@
/datum/supply_pack/robotics/jumper_cables /datum/supply_pack/robotics/jumper_cables
name = "Jumper kit crate" name = "Jumper kit crate"
contains = list( contains = list(
/obj/item/device/defib_kit/jumper_kit = 2 /obj/item/defib_kit/jumper_kit = 2
) )
cost = 30 cost = 30
containertype = /obj/structure/closet/crate/secure/einstein containertype = /obj/structure/closet/crate/secure/einstein

View File

@@ -17,11 +17,11 @@
contains = list( contains = list(
/obj/item/tank/phoron = 3, /obj/item/tank/phoron = 3,
/obj/item/tank/oxygen = 3, /obj/item/tank/oxygen = 3,
/obj/item/device/assembly/igniter = 3, /obj/item/assembly/igniter = 3,
/obj/item/device/assembly/prox_sensor = 3, /obj/item/assembly/prox_sensor = 3,
/obj/item/device/assembly/timer = 3, /obj/item/assembly/timer = 3,
/obj/item/device/assembly/signaler = 3, /obj/item/assembly/signaler = 3,
/obj/item/device/transfer_valve = 3 /obj/item/transfer_valve = 3
) )
cost = 10 cost = 10
containertype = /obj/structure/closet/crate/secure/phoron containertype = /obj/structure/closet/crate/secure/phoron
@@ -45,7 +45,7 @@
/datum/supply_pack/sci/integrated_circuit_printer /datum/supply_pack/sci/integrated_circuit_printer
name = "Integrated circuit printer" name = "Integrated circuit printer"
contains = list(/obj/item/device/integrated_circuit_printer = 2) contains = list(/obj/item/integrated_circuit_printer = 2)
cost = 15 cost = 15
containertype = /obj/structure/closet/crate/ward containertype = /obj/structure/closet/crate/ward
containername = "Integrated circuit crate" containername = "Integrated circuit crate"
@@ -61,15 +61,15 @@
name = "Xenoarchaeology Tech crate" name = "Xenoarchaeology Tech crate"
contains = list( contains = list(
/obj/item/pickaxe/excavationdrill, /obj/item/pickaxe/excavationdrill,
/obj/item/device/xenoarch_multi_tool, /obj/item/xenoarch_multi_tool,
/obj/item/clothing/suit/space/anomaly, /obj/item/clothing/suit/space/anomaly,
/obj/item/clothing/head/helmet/space/anomaly, /obj/item/clothing/head/helmet/space/anomaly,
/obj/item/storage/belt/archaeology, /obj/item/storage/belt/archaeology,
/obj/item/device/flashlight/lantern, /obj/item/flashlight/lantern,
/obj/item/device/core_sampler, /obj/item/core_sampler,
/obj/item/device/gps, /obj/item/gps,
/obj/item/device/beacon_locator, /obj/item/beacon_locator,
/obj/item/device/radio/beacon, /obj/item/radio/beacon,
/obj/item/clothing/glasses/meson, /obj/item/clothing/glasses/meson,
/obj/item/pickaxe, /obj/item/pickaxe,
/obj/item/storage/bag/fossils, /obj/item/storage/bag/fossils,

View File

@@ -431,7 +431,7 @@
contains = list( contains = list(
/obj/item/storage/belt/security = 3, /obj/item/storage/belt/security = 3,
/obj/item/clothing/glasses/sunglasses/sechud = 3, /obj/item/clothing/glasses/sunglasses/sechud = 3,
/obj/item/device/radio/headset/headset_sec/alt = 3, /obj/item/radio/headset/headset_sec/alt = 3,
/obj/item/clothing/suit/storage/hooded/wintercoat/security = 3 /obj/item/clothing/suit/storage/hooded/wintercoat/security = 3
) )
cost = 10 cost = 10
@@ -444,20 +444,20 @@
/obj/item/storage/box/evidence = 2, /obj/item/storage/box/evidence = 2,
/obj/item/clothing/suit/storage/vest/detective, /obj/item/clothing/suit/storage/vest/detective,
/obj/item/cartridge/detective, /obj/item/cartridge/detective,
/obj/item/device/radio/headset/headset_sec, /obj/item/radio/headset/headset_sec,
/obj/item/taperoll/police, /obj/item/taperoll/police,
/obj/item/clothing/glasses/sunglasses, /obj/item/clothing/glasses/sunglasses,
/obj/item/device/camera, /obj/item/camera,
/obj/item/folder/red, /obj/item/folder/red,
/obj/item/folder/blue, /obj/item/folder/blue,
/obj/item/storage/belt/detective, /obj/item/storage/belt/detective,
/obj/item/clothing/gloves/black, /obj/item/clothing/gloves/black,
/obj/item/device/taperecorder, /obj/item/taperecorder,
/obj/item/device/mass_spectrometer, /obj/item/mass_spectrometer,
/obj/item/device/camera_film = 2, /obj/item/camera_film = 2,
/obj/item/storage/photo_album, /obj/item/storage/photo_album,
/obj/item/device/reagent_scanner, /obj/item/reagent_scanner,
/obj/item/device/flashlight/maglight, /obj/item/flashlight/maglight,
/obj/item/storage/briefcase/crimekit, /obj/item/storage/briefcase/crimekit,
/obj/item/storage/bag/detective /obj/item/storage/bag/detective
) )
@@ -469,10 +469,10 @@
/datum/supply_pack/security/detectivescan /datum/supply_pack/security/detectivescan
name = "Forensic - Scanning Equipment" name = "Forensic - Scanning Equipment"
contains = list( contains = list(
/obj/item/device/mass_spectrometer, /obj/item/mass_spectrometer,
/obj/item/device/reagent_scanner, /obj/item/reagent_scanner,
/obj/item/storage/briefcase/crimekit, /obj/item/storage/briefcase/crimekit,
/obj/item/device/detective_scanner /obj/item/detective_scanner
) )
cost = 60 cost = 60
containertype = /obj/structure/closet/crate/secure/ward containertype = /obj/structure/closet/crate/secure/ward
@@ -509,22 +509,22 @@
/obj/item/cartridge/security, /obj/item/cartridge/security,
/obj/item/clothing/accessory/badge/holo, /obj/item/clothing/accessory/badge/holo,
/obj/item/clothing/accessory/badge/holo/cord, /obj/item/clothing/accessory/badge/holo/cord,
/obj/item/device/radio/headset/headset_sec, /obj/item/radio/headset/headset_sec,
/obj/item/storage/belt/security, /obj/item/storage/belt/security,
/obj/item/device/flash, /obj/item/flash,
/obj/item/reagent_containers/spray/pepper, /obj/item/reagent_containers/spray/pepper,
/obj/item/grenade/flashbang, /obj/item/grenade/flashbang,
/obj/item/melee/baton/loaded, /obj/item/melee/baton/loaded,
/obj/item/clothing/glasses/sunglasses/sechud, /obj/item/clothing/glasses/sunglasses/sechud,
/obj/item/taperoll/police, /obj/item/taperoll/police,
/obj/item/clothing/gloves/black, /obj/item/clothing/gloves/black,
/obj/item/device/hailer, /obj/item/hailer,
/obj/item/device/flashlight/flare, /obj/item/flashlight/flare,
/obj/item/clothing/accessory/storage/black_vest, /obj/item/clothing/accessory/storage/black_vest,
/obj/item/clothing/head/soft/sec/corp, /obj/item/clothing/head/soft/sec/corp,
/obj/item/clothing/under/rank/security/corp, /obj/item/clothing/under/rank/security/corp,
/obj/item/gun/energy/taser, /obj/item/gun/energy/taser,
/obj/item/device/flashlight/maglight /obj/item/flashlight/maglight
) )
cost = 20 cost = 20
containertype = /obj/structure/closet/crate/secure/nanotrasen containertype = /obj/structure/closet/crate/secure/nanotrasen
@@ -541,10 +541,10 @@
/obj/item/clothing/suit/storage/vest/wardencoat/alt, /obj/item/clothing/suit/storage/vest/wardencoat/alt,
/obj/item/clothing/head/helmet/warden, /obj/item/clothing/head/helmet/warden,
/obj/item/cartridge/security, /obj/item/cartridge/security,
/obj/item/device/radio/headset/headset_sec, /obj/item/radio/headset/headset_sec,
/obj/item/clothing/glasses/sunglasses/sechud, /obj/item/clothing/glasses/sunglasses/sechud,
/obj/item/taperoll/police, /obj/item/taperoll/police,
/obj/item/device/hailer, /obj/item/hailer,
/obj/item/clothing/accessory/badge/holo/warden, /obj/item/clothing/accessory/badge/holo/warden,
/obj/item/storage/box/flashbangs, /obj/item/storage/box/flashbangs,
/obj/item/storage/belt/security, /obj/item/storage/belt/security,
@@ -552,7 +552,7 @@
/obj/item/melee/baton/loaded, /obj/item/melee/baton/loaded,
/obj/item/storage/box/holobadge, /obj/item/storage/box/holobadge,
/obj/item/clothing/head/beret/sec/corporate/warden, /obj/item/clothing/head/beret/sec/corporate/warden,
/obj/item/device/flashlight/maglight /obj/item/flashlight/maglight
) )
cost = 20 cost = 20
containertype = /obj/structure/closet/crate/secure/nanotrasen containertype = /obj/structure/closet/crate/secure/nanotrasen
@@ -568,17 +568,17 @@
/obj/item/clothing/suit/storage/vest/hoscoat, /obj/item/clothing/suit/storage/vest/hoscoat,
/obj/item/clothing/head/helmet/dermal, /obj/item/clothing/head/helmet/dermal,
/obj/item/cartridge/hos, /obj/item/cartridge/hos,
/obj/item/device/radio/headset/heads/hos, /obj/item/radio/headset/heads/hos,
/obj/item/clothing/glasses/sunglasses/sechud, /obj/item/clothing/glasses/sunglasses/sechud,
/obj/item/storage/belt/security, /obj/item/storage/belt/security,
/obj/item/device/flash, /obj/item/flash,
/obj/item/device/hailer, /obj/item/hailer,
/obj/item/clothing/accessory/badge/holo/hos, /obj/item/clothing/accessory/badge/holo/hos,
/obj/item/clothing/accessory/holster/waist, /obj/item/clothing/accessory/holster/waist,
/obj/item/melee/telebaton, /obj/item/melee/telebaton,
/obj/item/shield/riot/tele, /obj/item/shield/riot/tele,
/obj/item/clothing/head/beret/sec/corporate/hos, /obj/item/clothing/head/beret/sec/corporate/hos,
/obj/item/device/flashlight/maglight /obj/item/flashlight/maglight
) )
cost = 50 cost = 50
containertype = /obj/structure/closet/crate/secure/nanotrasen containertype = /obj/structure/closet/crate/secure/nanotrasen

View File

@@ -23,7 +23,7 @@
/datum/supply_pack/supply/toner /datum/supply_pack/supply/toner
name = "Toner cartridges" name = "Toner cartridges"
contains = list(/obj/item/device/toner = 6) contains = list(/obj/item/toner = 6)
cost = 10 cost = 10
containertype = /obj/structure/closet/crate/ummarcar containertype = /obj/structure/closet/crate/ummarcar
containername = "Toner cartridges" containername = "Toner cartridges"
@@ -41,7 +41,7 @@
/obj/item/clothing/shoes/galoshes, /obj/item/clothing/shoes/galoshes,
/obj/item/clothing/suit/caution = 4, /obj/item/clothing/suit/caution = 4,
/obj/item/storage/bag/trash, /obj/item/storage/bag/trash,
/obj/item/device/lightreplacer, /obj/item/lightreplacer,
/obj/item/reagent_containers/spray/cleaner, /obj/item/reagent_containers/spray/cleaner,
/obj/item/reagent_containers/glass/rag, /obj/item/reagent_containers/glass/rag,
/obj/item/grenade/chem_grenade/cleaner = 3, /obj/item/grenade/chem_grenade/cleaner = 3,
@@ -57,7 +57,7 @@
/obj/fiftyspawner/cardboard, /obj/fiftyspawner/cardboard,
/obj/item/packageWrap = 4, /obj/item/packageWrap = 4,
/obj/item/wrapping_paper = 2, /obj/item/wrapping_paper = 2,
/obj/item/device/destTagger, /obj/item/destTagger,
/obj/item/hand_labeler, /obj/item/hand_labeler,
/obj/item/tool/wirecutters, /obj/item/tool/wirecutters,
/obj/item/tape_roll = 2) /obj/item/tape_roll = 2)
@@ -71,7 +71,7 @@
/obj/item/pen/red, /obj/item/pen/red,
/obj/item/pen/blue, /obj/item/pen/blue,
/obj/item/pen/blue, /obj/item/pen/blue,
/obj/item/device/camera_film, /obj/item/camera_film,
/obj/item/folder/blue, /obj/item/folder/blue,
/obj/item/folder/red, /obj/item/folder/red,
/obj/item/folder/yellow, /obj/item/folder/yellow,
@@ -97,7 +97,7 @@
cost = 10 cost = 10
containertype = /obj/structure/closet/crate/thinktronic containertype = /obj/structure/closet/crate/thinktronic
containername = "Spare PDA crate" containername = "Spare PDA crate"
contains = list(/obj/item/device/pda = 3) contains = list(/obj/item/pda = 3)
/datum/supply_pack/supply/minergear /datum/supply_pack/supply/minergear
name = "Shaft miner equipment" name = "Shaft miner equipment"
@@ -105,13 +105,13 @@
/obj/item/storage/backpack/industrial, /obj/item/storage/backpack/industrial,
/obj/item/storage/backpack/satchel/eng, /obj/item/storage/backpack/satchel/eng,
/obj/item/clothing/suit/storage/hooded/wintercoat/miner, /obj/item/clothing/suit/storage/hooded/wintercoat/miner,
/obj/item/device/radio/headset/headset_cargo, /obj/item/radio/headset/headset_cargo,
/obj/item/clothing/under/rank/miner, /obj/item/clothing/under/rank/miner,
/obj/item/clothing/gloves/black, /obj/item/clothing/gloves/black,
/obj/item/clothing/shoes/black, /obj/item/clothing/shoes/black,
/obj/item/device/analyzer, /obj/item/analyzer,
/obj/item/storage/bag/ore, /obj/item/storage/bag/ore,
/obj/item/device/flashlight/lantern, /obj/item/flashlight/lantern,
/obj/item/shovel, /obj/item/shovel,
/obj/item/pickaxe, /obj/item/pickaxe,
/obj/item/mining_scanner, /obj/item/mining_scanner,

View File

@@ -5,7 +5,7 @@
category = /datum/uplink_category/services category = /datum/uplink_category/services
blacklisted = 1 blacklisted = 1
/datum/uplink_item/abstract/announcements/buy(var/obj/item/device/uplink/U, var/mob/user) /datum/uplink_item/abstract/announcements/buy(var/obj/item/uplink/U, var/mob/user)
. = ..() . = ..()
if(.) if(.)
log_and_message_admins("has triggered a falsified [src]", user) log_and_message_admins("has triggered a falsified [src]", user)
@@ -24,7 +24,7 @@
return return
return list("title" = title, "message" = message) return list("title" = title, "message" = message)
/datum/uplink_item/abstract/announcements/fake_centcom/get_goods(var/obj/item/device/uplink/U, var/loc, var/mob/user, var/list/args) /datum/uplink_item/abstract/announcements/fake_centcom/get_goods(var/obj/item/uplink/U, var/loc, var/mob/user, var/list/args)
for (var/obj/machinery/computer/communications/C in machines) for (var/obj/machinery/computer/communications/C in machines)
if(! (C.stat & (BROKEN|NOPOWER) ) ) if(! (C.stat & (BROKEN|NOPOWER) ) )
var/obj/item/paper/P = new /obj/item/paper( C.loc ) var/obj/item/paper/P = new /obj/item/paper( C.loc )
@@ -41,7 +41,7 @@
desc = "Creates a fake crew arrival announcement as well as fake crew records, using your current appearance (including held items!) and worn id card. Trigger with care!" desc = "Creates a fake crew arrival announcement as well as fake crew records, using your current appearance (including held items!) and worn id card. Trigger with care!"
item_cost = 15 item_cost = 15
/datum/uplink_item/abstract/announcements/fake_crew_arrival/get_goods(var/obj/item/device/uplink/U, var/loc, var/mob/user, var/list/args) /datum/uplink_item/abstract/announcements/fake_crew_arrival/get_goods(var/obj/item/uplink/U, var/loc, var/mob/user, var/list/args)
if(!user) if(!user)
return 0 return 0
@@ -99,7 +99,7 @@
desc = "Interferes with the station's ion sensors. Triggers immediately upon investment." desc = "Interferes with the station's ion sensors. Triggers immediately upon investment."
item_cost = 10 item_cost = 10
/datum/uplink_item/abstract/announcements/fake_ion_storm/get_goods(var/obj/item/device/uplink/U, var/loc) /datum/uplink_item/abstract/announcements/fake_ion_storm/get_goods(var/obj/item/uplink/U, var/loc)
ion_storm_announcement() ion_storm_announcement()
return 1 return 1
@@ -108,7 +108,7 @@
desc = "Interferes with the station's radiation sensors. Triggers immediately upon investment." desc = "Interferes with the station's radiation sensors. Triggers immediately upon investment."
item_cost = 15 item_cost = 15
/datum/uplink_item/abstract/announcements/fake_radiation/get_goods(var/obj/item/device/uplink/U, var/loc) /datum/uplink_item/abstract/announcements/fake_radiation/get_goods(var/obj/item/uplink/U, var/loc)
var/datum/event_meta/EM = new(EVENT_LEVEL_MUNDANE, "Fake Radiation Storm", add_to_queue = 0) var/datum/event_meta/EM = new(EVENT_LEVEL_MUNDANE, "Fake Radiation Storm", add_to_queue = 0)
new/datum/event/radiation_storm/syndicate(EM) new/datum/event/radiation_storm/syndicate(EM)
return 1 return 1

View File

@@ -21,21 +21,21 @@
name = "Random Item" name = "Random Item"
desc = "Buys you one random item." desc = "Buys you one random item."
/datum/uplink_item/item/badassery/random_one/buy(var/obj/item/device/uplink/U, var/mob/user) /datum/uplink_item/item/badassery/random_one/buy(var/obj/item/uplink/U, var/mob/user)
var/datum/uplink_item/item = default_uplink_selection.get_random_item((user ? user.mind.tcrystals : DEFAULT_TELECRYSTAL_AMOUNT), U) var/datum/uplink_item/item = default_uplink_selection.get_random_item((user ? user.mind.tcrystals : DEFAULT_TELECRYSTAL_AMOUNT), U)
return item.buy(U, user) return item.buy(U, user)
/datum/uplink_item/item/badassery/random_one/can_buy(var/obj/item/device/uplink/U, var/telecrystals) /datum/uplink_item/item/badassery/random_one/can_buy(var/obj/item/uplink/U, var/telecrystals)
return default_uplink_selection.get_random_item(telecrystals, U) != null return default_uplink_selection.get_random_item(telecrystals, U) != null
/datum/uplink_item/item/badassery/random_many /datum/uplink_item/item/badassery/random_many
name = "Random Items" name = "Random Items"
desc = "Buys you as many random items you can afford. Convenient packaging NOT included." desc = "Buys you as many random items you can afford. Convenient packaging NOT included."
/datum/uplink_item/item/badassery/random_many/cost(obj/item/device/uplink/U, var/telecrystals) /datum/uplink_item/item/badassery/random_many/cost(obj/item/uplink/U, var/telecrystals)
return max(1, telecrystals) return max(1, telecrystals)
/datum/uplink_item/item/badassery/random_many/get_goods(var/obj/item/device/uplink/U, var/loc, var/mob/M) /datum/uplink_item/item/badassery/random_many/get_goods(var/obj/item/uplink/U, var/loc, var/mob/M)
var/list/bought_items = list() var/list/bought_items = list()
for(var/datum/uplink_item/UI in get_random_uplink_items(U, M.mind.tcrystals, loc)) for(var/datum/uplink_item/UI in get_random_uplink_items(U, M.mind.tcrystals, loc))
UI.purchase_log(U) UI.purchase_log(U)
@@ -45,7 +45,7 @@
return bought_items return bought_items
/datum/uplink_item/item/badassery/random_many/purchase_log(obj/item/device/uplink/U) /datum/uplink_item/item/badassery/random_many/purchase_log(obj/item/uplink/U)
feedback_add_details("traitor_uplink_items_bought", "[src]") feedback_add_details("traitor_uplink_items_bought", "[src]")
log_and_message_admins("used \the [U.loc] to buy \a [src] at random") log_and_message_admins("used \the [U.loc] to buy \a [src] at random")
@@ -77,7 +77,7 @@
..() ..()
desc = "A crate containing [item_worth] telecrystal\s worth of surplus leftovers." desc = "A crate containing [item_worth] telecrystal\s worth of surplus leftovers."
/datum/uplink_item/item/badassery/surplus/get_goods(var/obj/item/device/uplink/U, var/loc) /datum/uplink_item/item/badassery/surplus/get_goods(var/obj/item/uplink/U, var/loc)
var/obj/structure/largecrate/C = new(loc) var/obj/structure/largecrate/C = new(loc)
var/random_items = get_surplus_items(null, item_worth, C) var/random_items = get_surplus_items(null, item_worth, C)
for(var/datum/uplink_item/I in random_items) for(var/datum/uplink_item/I in random_items)

View File

@@ -27,7 +27,7 @@
/datum/uplink_item/item/stealth_items/chameleon_projector /datum/uplink_item/item/stealth_items/chameleon_projector
name = "Chameleon-Projector" name = "Chameleon-Projector"
item_cost = 30 item_cost = 30
path = /obj/item/device/chameleon path = /obj/item/chameleon
/datum/uplink_item/item/stealth_items/voice /datum/uplink_item/item/stealth_items/voice
name = "Voice Changer" name = "Voice Changer"

View File

@@ -5,7 +5,7 @@
category = /datum/uplink_category/telecrystals category = /datum/uplink_category/telecrystals
blacklisted = 1 blacklisted = 1
/datum/uplink_item/item/telecrystal/get_goods(var/obj/item/device/uplink/U, var/loc, var/mob/M) /datum/uplink_item/item/telecrystal/get_goods(var/obj/item/uplink/U, var/loc, var/mob/M)
return new /obj/item/stack/telecrystal(loc, cost(U, M.mind.tcrystals)) return new /obj/item/stack/telecrystal(loc, cost(U, M.mind.tcrystals))
/datum/uplink_item/item/telecrystal/one /datum/uplink_item/item/telecrystal/one
@@ -35,5 +35,5 @@
/datum/uplink_item/item/telecrystal/all /datum/uplink_item/item/telecrystal/all
name = "Telecrystals - Empty Uplink" name = "Telecrystals - Empty Uplink"
/datum/uplink_item/item/telecrystal/all/cost(obj/item/device/uplink/U, mob/M) /datum/uplink_item/item/telecrystal/all/cost(obj/item/uplink/U, mob/M)
return max(1, M.mind.tcrystals) return max(1, M.mind.tcrystals)

View File

@@ -7,7 +7,7 @@
/datum/uplink_item/item/tools/binoculars /datum/uplink_item/item/tools/binoculars
name = "Binoculars" name = "Binoculars"
item_cost = 5 item_cost = 5
path = /obj/item/device/binoculars path = /obj/item/binoculars
/datum/uplink_item/item/tools/toolbox // Leaving the basic as an option since powertools are loud. /datum/uplink_item/item/tools/toolbox // Leaving the basic as an option since powertools are loud.
name = "Fully Loaded Toolbox" name = "Fully Loaded Toolbox"
@@ -27,7 +27,7 @@
/datum/uplink_item/item/tools/encryptionkey_radio /datum/uplink_item/item/tools/encryptionkey_radio
name = "Encrypted Radio Channel Key" name = "Encrypted Radio Channel Key"
item_cost = 10 item_cost = 10
path = /obj/item/device/encryptionkey/syndicate path = /obj/item/encryptionkey/syndicate
/datum/uplink_item/item/tools/money /datum/uplink_item/item/tools/money
name = "Operations Funding" name = "Operations Funding"
@@ -61,12 +61,12 @@
/datum/uplink_item/item/tools/encryptionkey_binary /datum/uplink_item/item/tools/encryptionkey_binary
name = "Binary Translator Key" name = "Binary Translator Key"
item_cost = 15 item_cost = 15
path = /obj/item/device/encryptionkey/binary path = /obj/item/encryptionkey/binary
/datum/uplink_item/item/tools/hacking_tool /datum/uplink_item/item/tools/hacking_tool
name = "Door Hacking Tool" name = "Door Hacking Tool"
item_cost = 20 item_cost = 20
path = /obj/item/device/multitool/hacktool path = /obj/item/multitool/hacktool
desc = "Appears and functions as a standard multitool until the mode is toggled by applying a screwdriver appropriately. \ desc = "Appears and functions as a standard multitool until the mode is toggled by applying a screwdriver appropriately. \
When in hacking mode this device will grant full access to any standard airlock within 20 to 40 seconds. \ When in hacking mode this device will grant full access to any standard airlock within 20 to 40 seconds. \
This device will also be able to immediately access the last 6 to 8 hacked airlocks." This device will also be able to immediately access the last 6 to 8 hacked airlocks."
@@ -74,7 +74,7 @@
/datum/uplink_item/item/tools/ai_detector /datum/uplink_item/item/tools/ai_detector
name = "Anti-Surveillance Tool" name = "Anti-Surveillance Tool"
item_cost = 20 item_cost = 20
path = /obj/item/device/multitool/ai_detector path = /obj/item/multitool/ai_detector
desc = "This functions like a normal multitool, but includes an integrated camera network sensor that will warn the holder if they are being \ desc = "This functions like a normal multitool, but includes an integrated camera network sensor that will warn the holder if they are being \
watched, by changing color and beeping. It is able to detect both AI visual surveillance and security camera utilization from terminals, and \ watched, by changing color and beeping. It is able to detect both AI visual surveillance and security camera utilization from terminals, and \
will give different warnings by beeping and changing colors based on what it detects. Only the holder can hear the warnings." will give different warnings by beeping and changing colors based on what it detects. Only the holder can hear the warnings."
@@ -82,7 +82,7 @@
/datum/uplink_item/item/tools/radio_jammer /datum/uplink_item/item/tools/radio_jammer
name = "Subspace Jammer" name = "Subspace Jammer"
item_cost = 25 item_cost = 25
path = /obj/item/device/radio_jammer path = /obj/item/radio_jammer
desc = "A device which is capable of disrupting subspace communications, preventing the use of headsets, PDAs, and communicators within \ desc = "A device which is capable of disrupting subspace communications, preventing the use of headsets, PDAs, and communicators within \
a radius of seven meters. It runs off weapon cells, which can be replaced as needed. One cell will last for approximately ten minutes." a radius of seven meters. It runs off weapon cells, which can be replaced as needed. One cell will last for approximately ten minutes."
@@ -116,7 +116,7 @@
/datum/uplink_item/item/tools/powersink /datum/uplink_item/item/tools/powersink
name = "Powersink (DANGER!)" name = "Powersink (DANGER!)"
item_cost = 40 item_cost = 40
path = /obj/item/device/powersink path = /obj/item/powersink
/datum/uplink_item/item/tools/packagebomb/large /datum/uplink_item/item/tools/packagebomb/large
name = "Package Bomb (Large)" name = "Package Bomb (Large)"
@@ -126,7 +126,7 @@
/datum/uplink_item/item/tools/integratedcircuitprinter /datum/uplink_item/item/tools/integratedcircuitprinter
name = "Integrated Circuit Printer (Upgraded)" name = "Integrated Circuit Printer (Upgraded)"
item_cost = 10 item_cost = 10
path = /obj/item/device/integrated_circuit_printer/upgraded path = /obj/item/integrated_circuit_printer/upgraded
/* /*
/datum/uplink_item/item/tools/packagebomb/huge /datum/uplink_item/item/tools/packagebomb/huge

View File

@@ -43,7 +43,7 @@ var/datum/uplink/uplink = new()
/datum/uplink_item/proc/buy(var/obj/item/device/uplink/U, var/mob/user) /datum/uplink_item/proc/buy(var/obj/item/uplink/U, var/mob/user)
var/extra_args = extra_args(user) var/extra_args = extra_args(user)
if(!extra_args) if(!extra_args)
return return
@@ -69,13 +69,13 @@ var/datum/uplink/uplink = new()
/datum/uplink_item/proc/extra_args(var/mob/user) /datum/uplink_item/proc/extra_args(var/mob/user)
return TRUE return TRUE
/datum/uplink_item/proc/can_buy(var/obj/item/device/uplink/U, var/telecrystals) /datum/uplink_item/proc/can_buy(var/obj/item/uplink/U, var/telecrystals)
if(cost(U, telecrystals) > telecrystals) if(cost(U, telecrystals) > telecrystals)
return FALSE return FALSE
return TRUE return TRUE
/datum/uplink_item/proc/cost(obj/item/device/uplink/U, mob/M) /datum/uplink_item/proc/cost(obj/item/uplink/U, mob/M)
. = item_cost . = item_cost
if(U) if(U)
. = U.get_item_cost(src, .) . = U.get_item_cost(src, .)
@@ -84,7 +84,7 @@ var/datum/uplink/uplink = new()
return desc return desc
// get_goods does not necessarily return physical objects, it is simply a way to acquire the uplink item without paying // get_goods does not necessarily return physical objects, it is simply a way to acquire the uplink item without paying
/datum/uplink_item/proc/get_goods(var/obj/item/device/uplink/U, var/loc, mob/user) /datum/uplink_item/proc/get_goods(var/obj/item/uplink/U, var/loc, mob/user)
return FALSE return FALSE
/datum/uplink_item/proc/log_icon() /datum/uplink_item/proc/log_icon()
@@ -103,7 +103,7 @@ var/datum/uplink/uplink = new()
* Physical Uplink Entries * * Physical Uplink Entries *
* * * *
********************************/ ********************************/
/datum/uplink_item/item/buy(var/obj/item/device/uplink/U, var/mob/user) /datum/uplink_item/item/buy(var/obj/item/uplink/U, var/mob/user)
var/obj/item/I = ..() var/obj/item/I = ..()
if(!I) if(!I)
return return
@@ -117,7 +117,7 @@ var/datum/uplink/uplink = new()
A.put_in_any_hand_if_possible(I) A.put_in_any_hand_if_possible(I)
return I return I
/datum/uplink_item/item/get_goods(var/obj/item/device/uplink/U, var/loc, var/mob/user) /datum/uplink_item/item/get_goods(var/obj/item/uplink/U, var/loc, var/mob/user)
var/obj/item/I = new path(loc) var/obj/item/I = new path(loc)
return I return I
@@ -154,7 +154,7 @@ var/datum/uplink/uplink = new()
var/crate_path = /obj/structure/largecrate var/crate_path = /obj/structure/largecrate
var/list/paths = list() // List of paths to be spawned into the crate. var/list/paths = list() // List of paths to be spawned into the crate.
/datum/uplink_item/crated/get_goods(var/obj/item/device/uplink/U, var/loc) /datum/uplink_item/crated/get_goods(var/obj/item/uplink/U, var/loc)
var/obj/L = new crate_path(get_turf(loc)) var/obj/L = new crate_path(get_turf(loc))
L.adjust_scale(rand(9, 12) / 10, rand(9, 12) / 10) // Some variation in the crate / locker size. L.adjust_scale(rand(9, 12) / 10, rand(9, 12) / 10) // Some variation in the crate / locker size.
@@ -179,7 +179,7 @@ var/datum/uplink/uplink = new()
/**************** /****************
* Support procs * * Support procs *
****************/ ****************/
/proc/get_random_uplink_items(var/obj/item/device/uplink/U, var/remaining_TC, var/loc) /proc/get_random_uplink_items(var/obj/item/uplink/U, var/remaining_TC, var/loc)
var/list/bought_items = list() var/list/bought_items = list()
while(remaining_TC) while(remaining_TC)
var/datum/uplink_item/I = default_uplink_selection.get_random_item(remaining_TC, U, bought_items) var/datum/uplink_item/I = default_uplink_selection.get_random_item(remaining_TC, U, bought_items)
@@ -190,7 +190,7 @@ var/datum/uplink/uplink = new()
return bought_items return bought_items
/proc/get_surplus_items(var/obj/item/device/uplink/U, var/remaining_TC, var/loc) /proc/get_surplus_items(var/obj/item/uplink/U, var/remaining_TC, var/loc)
var/list/bought_items = list() var/list/bought_items = list()
var/override = TRUE var/override = TRUE
while(remaining_TC) while(remaining_TC)

View File

@@ -1,5 +1,5 @@
/datum/wires/radio /datum/wires/radio
holder_type = /obj/item/device/radio holder_type = /obj/item/radio
wire_count = 3 wire_count = 3
proper_name = "Radio" proper_name = "Radio"
@@ -8,13 +8,13 @@
return ..() return ..()
/datum/wires/radio/interactable(mob/user) /datum/wires/radio/interactable(mob/user)
var/obj/item/device/radio/R = holder var/obj/item/radio/R = holder
if(R.b_stat) if(R.b_stat)
return TRUE return TRUE
return FALSE return FALSE
/datum/wires/radio/on_pulse(wire) /datum/wires/radio/on_pulse(wire)
var/obj/item/device/radio/R = holder var/obj/item/radio/R = holder
switch(wire) switch(wire)
if(WIRE_RADIO_SIGNAL) if(WIRE_RADIO_SIGNAL)
R.listening = !R.listening && !is_cut(WIRE_RADIO_RECEIVER) R.listening = !R.listening && !is_cut(WIRE_RADIO_RECEIVER)
@@ -28,7 +28,7 @@
..() ..()
/datum/wires/radio/on_cut(wire, mend) /datum/wires/radio/on_cut(wire, mend)
var/obj/item/device/radio/R = holder var/obj/item/radio/R = holder
switch(wire) switch(wire)
if(WIRE_RADIO_SIGNAL) if(WIRE_RADIO_SIGNAL)
R.listening = mend && !is_cut(WIRE_RADIO_RECEIVER) R.listening = mend && !is_cut(WIRE_RADIO_RECEIVER)

View File

@@ -200,7 +200,7 @@
user.put_in_hands(O) user.put_in_hands(O)
return TRUE return TRUE
if(!istype(I, /obj/item/device/assembly/signaler)) if(!istype(I, /obj/item/assembly/signaler))
to_chat(user, "<span class='error'>You need a remote signaller!</span>") to_chat(user, "<span class='error'>You need a remote signaller!</span>")
return return
@@ -223,7 +223,7 @@
// if(user.can_admin_interact()) // if(user.can_admin_interact())
// return TRUE // return TRUE
var/obj/item/I = user.get_active_hand() var/obj/item/I = user.get_active_hand()
if(istype(I, /obj/item/device/multitool/alien)) if(istype(I, /obj/item/multitool/alien))
return TRUE return TRUE
return FALSE return FALSE
@@ -399,7 +399,7 @@
* Arugments: * Arugments:
* * S - the attached signaler receiving the signal. * * S - the attached signaler receiving the signal.
*/ */
/datum/wires/proc/pulse_assembly(obj/item/device/assembly/signaler/S) /datum/wires/proc/pulse_assembly(obj/item/assembly/signaler/S)
for(var/color in assemblies) for(var/color in assemblies)
if(S == assemblies[color]) if(S == assemblies[color])
pulse_color(color) pulse_color(color)
@@ -415,7 +415,7 @@
* * color - the wire color. * * color - the wire color.
* * S - the signaler that a mob is trying to attach. * * S - the signaler that a mob is trying to attach.
*/ */
/datum/wires/proc/attach_assembly(color, obj/item/device/assembly/signaler/S) /datum/wires/proc/attach_assembly(color, obj/item/assembly/signaler/S)
if(S && istype(S) && !is_attached(color)) if(S && istype(S) && !is_attached(color))
assemblies[color] = S assemblies[color] = S
S.forceMove(holder) S.forceMove(holder)
@@ -431,7 +431,7 @@
* * color - the wire color. * * color - the wire color.
*/ */
/datum/wires/proc/detach_assembly(color) /datum/wires/proc/detach_assembly(color)
var/obj/item/device/assembly/signaler/S = get_attached(color) var/obj/item/assembly/signaler/S = get_attached(color)
if(S && istype(S)) if(S && istype(S))
assemblies -= color assemblies -= color
S.connected = null S.connected = null

View File

@@ -125,7 +125,7 @@
var/selfdestruct = 0.0 var/selfdestruct = 0.0
var/traitor_frequency = 0.0 var/traitor_frequency = 0.0
var/mob/currentUser = null var/mob/currentUser = null
var/obj/item/device/radio/origradio = null var/obj/item/radio/origradio = null
flags = ONBELT flags = ONBELT
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
item_state = "radio" item_state = "radio"
@@ -143,7 +143,7 @@
var/uses = 4.0 var/uses = 4.0
var/selfdestruct = 0.0 var/selfdestruct = 0.0
var/traitor_frequency = 0.0 var/traitor_frequency = 0.0
var/obj/item/device/radio/origradio = null var/obj/item/radio/origradio = null
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
item_state = "radio" item_state = "radio"
throwforce = 5 throwforce = 5
@@ -234,9 +234,11 @@
item_state = "std_mod" item_state = "std_mod"
desc = "Charging circuits for power cells." desc = "Charging circuits for power cells."
/obj/item/device/camera_bug /obj/item/camera_bug
name = "camera bug" name = "camera bug"
icon = 'icons/obj/device.dmi' icon = 'icons/obj/device.dmi'
pickup_sound = 'sound/items/pickup/device.ogg'
drop_sound = 'sound/items/drop/device.ogg'
icon_state = "flash" icon_state = "flash"
w_class = ITEMSIZE_TINY w_class = ITEMSIZE_TINY
item_state = "electronic" item_state = "electronic"

View File

@@ -39,7 +39,7 @@
desc = "A huge, bulky mass of pressure and temperature-resistant organic tissue, evolved to facilitate space travel." desc = "A huge, bulky mass of pressure and temperature-resistant organic tissue, evolved to facilitate space travel."
flags = 0 //Not THICKMATERIAL because it's organic tissue, so if somebody tries to inject something into it, flags = 0 //Not THICKMATERIAL because it's organic tissue, so if somebody tries to inject something into it,
//it still ends up in your blood. (also balance but muh fluff) //it still ends up in your blood. (also balance but muh fluff)
allowed = list(/obj/item/device/flashlight, /obj/item/tank/emergency/oxygen, /obj/item/tank/oxygen) allowed = list(/obj/item/flashlight, /obj/item/tank/emergency/oxygen, /obj/item/tank/oxygen)
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) //No armor at all. armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) //No armor at all.
canremove = 0 canremove = 0

View File

@@ -91,7 +91,7 @@
invocation_type = SpI_NONE invocation_type = SpI_NONE
range = 0 range = 0
summon_type = list(/obj/item/device/soulstone) summon_type = list(/obj/item/soulstone)
hud_state = "const_stone" hud_state = "const_stone"
override_base = "const" override_base = "const"

View File

@@ -114,7 +114,7 @@
origin_tech = list(TECH_MATERIAL = 3, TECH_ARCANE = 1) origin_tech = list(TECH_MATERIAL = 3, TECH_ARCANE = 1)
desc = "A bulky suit of armour, bristling with spikes. It looks space-worthy." desc = "A bulky suit of armour, bristling with spikes. It looks space-worthy."
w_class = ITEMSIZE_NORMAL w_class = ITEMSIZE_NORMAL
allowed = list(/obj/item/book/tome,/obj/item/melee/cultblade,/obj/item/tank/emergency/oxygen,/obj/item/device/suit_cooling_unit) allowed = list(/obj/item/book/tome,/obj/item/melee/cultblade,/obj/item/tank/emergency/oxygen,/obj/item/suit_cooling_unit)
slowdown = 0.5 slowdown = 0.5
armor = list(melee = 60, bullet = 50, laser = 30, energy = 80, bomb = 30, bio = 30, rad = 30) armor = list(melee = 60, bullet = 50, laser = 30, energy = 80, bomb = 30, bio = 30, rad = 30)
siemens_coefficient = 0 siemens_coefficient = 0

View File

@@ -10,7 +10,7 @@
/obj/effect/overlay/cultify() /obj/effect/overlay/cultify()
return return
/obj/item/device/flashlight/lamp/cultify() /obj/item/flashlight/lamp/cultify()
new /obj/structure/cult/pylon(loc) new /obj/structure/cult/pylon(loc)
..() ..()

View File

@@ -647,10 +647,10 @@ var/list/sacrificed = list()
if(istype(I,/obj/item/organ/internal/brain)) if(istype(I,/obj/item/organ/internal/brain))
var/obj/item/organ/internal/brain/B = I var/obj/item/organ/internal/brain/B = I
victims += B.brainmob victims += B.brainmob
else if(istype(I,/obj/item/device/mmi)) else if(istype(I,/obj/item/mmi))
var/obj/item/device/mmi/B = I var/obj/item/mmi/B = I
victims += B.brainmob victims += B.brainmob
else if(istype(I,/obj/item/device/aicard)) else if(istype(I,/obj/item/aicard))
for(var/mob/living/silicon/ai/A in I) for(var/mob/living/silicon/ai/A in I)
victims += A victims += A
for(var/mob/living/carbon/C in orange(1,src)) for(var/mob/living/carbon/C in orange(1,src))

View File

@@ -2,7 +2,7 @@
// Soulstone // Soulstone
///////////////////////// /////////////////////////
/obj/item/device/soulstone /obj/item/soulstone
name = "Soul Stone Shard" name = "Soul Stone Shard"
icon = 'icons/obj/wizard.dmi' icon = 'icons/obj/wizard.dmi'
icon_state = "soulstone" icon_state = "soulstone"
@@ -14,12 +14,12 @@
var/imprinted = "empty" var/imprinted = "empty"
var/possible_constructs = list("Juggernaut","Wraith","Artificer","Harvester") var/possible_constructs = list("Juggernaut","Wraith","Artificer","Harvester")
/obj/item/device/soulstone/cultify() /obj/item/soulstone/cultify()
return return
//////////////////////////////Capturing//////////////////////////////////////////////////////// //////////////////////////////Capturing////////////////////////////////////////////////////////
/obj/item/device/soulstone/attack(mob/living/carbon/human/M as mob, mob/user as mob) /obj/item/soulstone/attack(mob/living/carbon/human/M as mob, mob/user as mob)
if(!istype(M, /mob/living/carbon/human))//If target is not a human. if(!istype(M, /mob/living/carbon/human))//If target is not a human.
return ..() return ..()
if(istype(M, /mob/living/carbon/human/dummy)) if(istype(M, /mob/living/carbon/human/dummy))
@@ -39,7 +39,7 @@
///////////////////Options for using captured souls/////////////////////////////////////// ///////////////////Options for using captured souls///////////////////////////////////////
/obj/item/device/soulstone/attack_self(mob/user) /obj/item/soulstone/attack_self(mob/user)
if (!in_range(src, user)) if (!in_range(src, user))
return return
user.set_machine(src) user.set_machine(src)
@@ -56,7 +56,7 @@
/obj/item/device/soulstone/Topic(href, href_list) /obj/item/soulstone/Topic(href, href_list)
var/mob/U = usr var/mob/U = usr
if (!in_range(src, U)||U.machine!=src) if (!in_range(src, U)||U.machine!=src)
U << browse(null, "window=aicard") U << browse(null, "window=aicard")
@@ -97,13 +97,13 @@
desc = "This eerie contraption looks like it would come alive if supplied with a missing ingredient." desc = "This eerie contraption looks like it would come alive if supplied with a missing ingredient."
/obj/structure/constructshell/attackby(obj/item/O as obj, mob/user as mob) /obj/structure/constructshell/attackby(obj/item/O as obj, mob/user as mob)
if(istype(O, /obj/item/device/soulstone)) if(istype(O, /obj/item/soulstone))
var/obj/item/device/soulstone/S = O; var/obj/item/soulstone/S = O;
S.transfer_soul("CONSTRUCT",src,user) S.transfer_soul("CONSTRUCT",src,user)
////////////////////////////Proc for moving soul in and out off stone////////////////////////////////////// ////////////////////////////Proc for moving soul in and out off stone//////////////////////////////////////
/obj/item/device/soulstone/proc/transfer_human(var/mob/living/carbon/human/T,var/mob/U) /obj/item/soulstone/proc/transfer_human(var/mob/living/carbon/human/T,var/mob/U)
if(!istype(T)) if(!istype(T))
return; return;
if(src.imprinted != "empty") if(src.imprinted != "empty")
@@ -156,7 +156,7 @@
src.imprinted = "[S.name]" src.imprinted = "[S.name]"
qdel(T) qdel(T)
/obj/item/device/soulstone/proc/transfer_shade(var/mob/living/simple_mob/construct/shade/T,var/mob/U) /obj/item/soulstone/proc/transfer_shade(var/mob/living/simple_mob/construct/shade/T,var/mob/U)
if(!istype(T)) if(!istype(T))
return; return;
if (T.stat == DEAD) if (T.stat == DEAD)
@@ -178,7 +178,7 @@
to_chat(T, "Your soul has been recaptured by the soul stone, its arcane energies are reknitting your ethereal form") to_chat(T, "Your soul has been recaptured by the soul stone, its arcane energies are reknitting your ethereal form")
to_chat(U, "<span class='notice'>Capture successful!</span> : [T.name]'s has been recaptured and stored within the soul stone.") to_chat(U, "<span class='notice'>Capture successful!</span> : [T.name]'s has been recaptured and stored within the soul stone.")
/obj/item/device/soulstone/proc/transfer_construct(var/obj/structure/constructshell/T,var/mob/U) /obj/item/soulstone/proc/transfer_construct(var/obj/structure/constructshell/T,var/mob/U)
var/mob/living/simple_mob/construct/shade/A = locate() in src var/mob/living/simple_mob/construct/shade/A = locate() in src
if(!A) if(!A)
to_chat(U, "<span class='danger'>Capture failed!</span>: The soul stone is empty! Go kill someone!") to_chat(U, "<span class='danger'>Capture failed!</span>: The soul stone is empty! Go kill someone!")
@@ -236,7 +236,7 @@
Z.cancel_camera() Z.cancel_camera()
qdel(src) qdel(src)
/obj/item/device/soulstone/proc/transfer_soul(var/choice as text, var/target, var/mob/U as mob) /obj/item/soulstone/proc/transfer_soul(var/choice as text, var/target, var/mob/U as mob)
switch(choice) switch(choice)
if("VICTIM") if("VICTIM")
transfer_human(target,U) transfer_human(target,U)

View File

@@ -105,7 +105,7 @@
var/obj/item/paper/talisman/T = new /obj/item/paper/talisman(get_turf(usr)) var/obj/item/paper/talisman/T = new /obj/item/paper/talisman(get_turf(usr))
T.imbue = "armor" T.imbue = "armor"
if("soulstone") if("soulstone")
new /obj/item/device/soulstone(get_turf(usr)) new /obj/item/soulstone(get_turf(usr))
if("construct") if("construct")
new /obj/structure/constructshell/cult(get_turf(usr)) new /obj/structure/constructshell/cult(get_turf(usr))
src.uses-- src.uses--

View File

@@ -68,7 +68,7 @@
set name = "Destroy Station" set name = "Destroy Station"
set desc = "Activates or deactivates self destruct sequence of this station. Sequence takes two minutes, and if you are shut down before timer reaches zero it will be cancelled." set desc = "Activates or deactivates self destruct sequence of this station. Sequence takes two minutes, and if you are shut down before timer reaches zero it will be cancelled."
var/mob/living/silicon/ai/user = usr var/mob/living/silicon/ai/user = usr
var/obj/item/device/radio/radio = new/obj/item/device/radio() var/obj/item/radio/radio = new/obj/item/radio()
if(!ability_prechecks(user, 0, 0)) if(!ability_prechecks(user, 0, 0))

View File

@@ -1066,7 +1066,7 @@ datum
check_completion() check_completion()
if(steal_target) if(steal_target)
for(var/obj/item/device/aicard/C in owner.current.get_contents()) for(var/obj/item/aicard/C in owner.current.get_contents())
for(var/mob/living/silicon/ai/M in C) for(var/mob/living/silicon/ai/M in C)
if(istype(M, /mob/living/silicon/ai) && M.stat != 2) if(istype(M, /mob/living/silicon/ai) && M.stat != 2)
return 1 return 1
@@ -1378,7 +1378,7 @@ datum
if(!owner.current||owner.current.stat==2)//If you're otherwise dead. if(!owner.current||owner.current.stat==2)//If you're otherwise dead.
return 0 return 0
var/list/all_items = owner.current.get_contents() var/list/all_items = owner.current.get_contents()
for(var/obj/item/device/mmi/mmi in all_items) for(var/obj/item/mmi/mmi in all_items)
if(mmi.brainmob&&mmi.brainmob.mind==target) return 1 if(mmi.brainmob&&mmi.brainmob.mind==target) return 1
for(var/obj/item/organ/brain/brain in all_items) for(var/obj/item/organ/brain/brain in all_items)
if(brain.brainmob&&brain.brainmob.mind==target) return 1 if(brain.brainmob&&brain.brainmob.mind==target) return 1

View File

@@ -1,6 +1,8 @@
/obj/item/pinpointer /obj/item/pinpointer
name = "pinpointer" name = "pinpointer"
icon = 'icons/obj/device.dmi' icon = 'icons/obj/device.dmi'
pickup_sound = 'sound/items/pickup/device.ogg'
drop_sound = 'sound/items/drop/device.ogg'
icon_state = "pinoff" icon_state = "pinoff"
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
@@ -61,6 +63,8 @@
/obj/item/pinpointer/advpinpointer /obj/item/pinpointer/advpinpointer
name = "Advanced Pinpointer" name = "Advanced Pinpointer"
icon = 'icons/obj/device.dmi' icon = 'icons/obj/device.dmi'
pickup_sound = 'sound/items/pickup/device.ogg'
drop_sound = 'sound/items/drop/device.ogg'
desc = "A larger version of the normal pinpointer, this unit features a helpful quantum entanglement detection system to locate various objects that do not broadcast a locator signal." desc = "A larger version of the normal pinpointer, this unit features a helpful quantum entanglement detection system to locate various objects that do not broadcast a locator signal."
var/mode = 0 // Mode 0 locates disk, mode 1 locates coordinates. var/mode = 0 // Mode 0 locates disk, mode 1 locates coordinates.
var/turf/location = null var/turf/location = null

View File

@@ -144,8 +144,8 @@ var/global/list/all_objectives = list()
/datum/objective/anti_revolution/demote/check_completion() /datum/objective/anti_revolution/demote/check_completion()
if(target && target.current && istype(target,/mob/living/carbon/human)) if(target && target.current && istype(target,/mob/living/carbon/human))
var/obj/item/card/id/I = target.current:wear_id var/obj/item/card/id/I = target.current:wear_id
if(istype(I, /obj/item/device/pda)) if(istype(I, /obj/item/pda))
var/obj/item/device/pda/P = I var/obj/item/pda/P = I
I = P.id I = P.id
if(!istype(I)) return 1 if(!istype(I)) return 1
@@ -429,7 +429,7 @@ var/global/list/all_objectives = list()
"an RCD" = /obj/item/rcd, "an RCD" = /obj/item/rcd,
"a jetpack" = /obj/item/tank/jetpack, "a jetpack" = /obj/item/tank/jetpack,
"a site manager's jumpsuit" = /obj/item/clothing/under/rank/captain, "a site manager's jumpsuit" = /obj/item/clothing/under/rank/captain,
"a functional AI" = /obj/item/device/aicard, "a functional AI" = /obj/item/aicard,
"a pair of magboots" = /obj/item/clothing/shoes/magboots, "a pair of magboots" = /obj/item/clothing/shoes/magboots,
"the station blueprints" = /obj/item/blueprints, "the station blueprints" = /obj/item/blueprints,
"a nasa voidsuit" = /obj/item/clothing/suit/space/void, "a nasa voidsuit" = /obj/item/clothing/suit/space/void,
@@ -516,7 +516,7 @@ var/global/list/all_objectives = list()
if("a functional AI") if("a functional AI")
for(var/obj/item/device/aicard/C in all_items) //Check for ai card for(var/obj/item/aicard/C in all_items) //Check for ai card
for(var/mob/living/silicon/ai/M in C) for(var/mob/living/silicon/ai/M in C)
if(istype(M, /mob/living/silicon/ai) && M.stat != 2) //See if any AI's are alive inside that card. if(istype(M, /mob/living/silicon/ai) && M.stat != 2) //See if any AI's are alive inside that card.
return 1 return 1

View File

@@ -119,7 +119,7 @@ mob
//hsb.loc = usr.loc //hsb.loc = usr.loc
if("hsbtoolbox") if("hsbtoolbox")
var/obj/item/storage/hsb = new/obj/item/storage/toolbox/mechanical var/obj/item/storage/hsb = new/obj/item/storage/toolbox/mechanical
for(var/obj/item/device/radio/T in hsb) for(var/obj/item/radio/T in hsb)
qdel(T) qdel(T)
new/obj/item/tool/crowbar (hsb) new/obj/item/tool/crowbar (hsb)
hsb.loc = usr.loc hsb.loc = usr.loc
@@ -136,7 +136,7 @@ mob
continue continue
if(istype(O, /obj/item/assembly)) if(istype(O, /obj/item/assembly))
continue continue
if(istype(O, /obj/item/device/camera)) if(istype(O, /obj/item/camera))
continue continue
if(istype(O, /obj/item/dummy)) if(istype(O, /obj/item/dummy))
continue continue

View File

@@ -9,6 +9,8 @@
name = "disposable teleporter" name = "disposable teleporter"
desc = "A very compact personal teleportation device. It's very precise and safe, however it can only be used a few times." desc = "A very compact personal teleportation device. It's very precise and safe, however it can only be used a few times."
icon = 'icons/obj/device.dmi' icon = 'icons/obj/device.dmi'
pickup_sound = 'sound/items/pickup/device.ogg'
drop_sound = 'sound/items/drop/device.ogg'
icon_state = "hand_tele" //temporary icon_state = "hand_tele" //temporary
var/uses = 3.0 var/uses = 3.0
w_class = ITEMSIZE_TINY w_class = ITEMSIZE_TINY

View File

@@ -208,4 +208,4 @@
name = "Spyglass" name = "Spyglass"
desc = "A mundane spyglass, it may prove useful to those who wish to scout ahead, or fight from an extreme range." desc = "A mundane spyglass, it may prove useful to those who wish to scout ahead, or fight from an extreme range."
cost = 100 cost = 100
obj_path = /obj/item/device/binoculars/spyglass obj_path = /obj/item/binoculars/spyglass

View File

@@ -72,7 +72,7 @@
return PROJECTILE_CONTINUE // complete projectile permutation return PROJECTILE_CONTINUE // complete projectile permutation
else if(istype(damage_source, /obj/item/weapon)) else if(istype(damage_source))
var/obj/item/W = damage_source var/obj/item/W = damage_source
if(attacker) if(attacker)
W.attack(attacker) W.attack(attacker)

View File

@@ -67,7 +67,7 @@
to_chat(user, "<span class='danger'>You can't use \the [I] while warping!</span>") to_chat(user, "<span class='danger'>You can't use \the [I] while warping!</span>")
return return
if(istype(I, /obj/item/weapon)) if(istype(I))
var/obj/item/W = I var/obj/item/W = I
W.attack(chosen_target, user) W.attack(chosen_target, user)
W.afterattack(chosen_target, user) W.afterattack(chosen_target, user)

View File

@@ -507,7 +507,7 @@ var/global/datum/controller/occupations/job_master
if(job.supervisors) if(job.supervisors)
to_chat(H, "<b>As the [alt_title ? alt_title : rank] you answer directly to [job.supervisors]. Special circumstances may change this.</b>") to_chat(H, "<b>As the [alt_title ? alt_title : rank] you answer directly to [job.supervisors]. Special circumstances may change this.</b>")
if(job.has_headset) if(job.has_headset)
H.equip_to_slot_or_del(new /obj/item/device/radio/headset(H), slot_l_ear) H.equip_to_slot_or_del(new /obj/item/radio/headset(H), slot_l_ear)
to_chat(H, "<b>To speak on your department's radio channel use :h. For the use of other channels, examine your headset.</b>") to_chat(H, "<b>To speak on your department's radio channel use :h. For the use of other channels, examine your headset.</b>")
if(job.req_admin_notify) if(job.req_admin_notify)

View File

@@ -8,12 +8,12 @@
anchored = 1 anchored = 1
use_power = USE_POWER_IDLE use_power = USE_POWER_IDLE
idle_power_usage = 0 idle_power_usage = 0
var/obj/item/device/radio/beacon/Beacon var/obj/item/radio/beacon/Beacon
/obj/machinery/bluespace_beacon/Initialize() /obj/machinery/bluespace_beacon/Initialize()
. = ..() . = ..()
var/turf/T = src.loc var/turf/T = src.loc
Beacon = new /obj/item/device/radio/beacon Beacon = new /obj/item/radio/beacon
Beacon.invisibility = INVISIBILITY_MAXIMUM Beacon.invisibility = INVISIBILITY_MAXIMUM
Beacon.loc = T Beacon.loc = T
@@ -41,7 +41,7 @@
/obj/machinery/bluespace_beacon/process() /obj/machinery/bluespace_beacon/process()
if(!Beacon) if(!Beacon)
var/turf/T = src.loc var/turf/T = src.loc
Beacon = new /obj/item/device/radio/beacon Beacon = new /obj/item/radio/beacon
Beacon.invisibility = INVISIBILITY_MAXIMUM Beacon.invisibility = INVISIBILITY_MAXIMUM
Beacon.loc = T Beacon.loc = T
if(Beacon) if(Beacon)

View File

@@ -551,8 +551,8 @@
/obj/machinery/body_scanconsole/attackby(var/obj/item/I, var/mob/user) /obj/machinery/body_scanconsole/attackby(var/obj/item/I, var/mob/user)
if(computer_deconstruction_screwdriver(user, I)) if(computer_deconstruction_screwdriver(user, I))
return return
else if(istype(I, /obj/item/device/multitool)) //Did you want to link it? else if(istype(I, /obj/item/multitool)) //Did you want to link it?
var/obj/item/device/multitool/P = I var/obj/item/multitool/P = I
if(P.connectable) if(P.connectable)
if(istype(P.connectable, /obj/machinery/bodyscanner)) if(istype(P.connectable, /obj/machinery/bodyscanner))
var/obj/machinery/bodyscanner/C = P.connectable var/obj/machinery/bodyscanner/C = P.connectable

View File

@@ -750,7 +750,7 @@
if(alarm_deconstruction_wirecutters(user, W)) if(alarm_deconstruction_wirecutters(user, W))
return return
if(istype(W, /obj/item/card/id) || istype(W, /obj/item/device/pda))// trying to unlock the interface with an ID card if(istype(W, /obj/item/card/id) || istype(W, /obj/item/pda))// trying to unlock the interface with an ID card
togglelock() togglelock()
return ..() return ..()

View File

@@ -239,7 +239,7 @@ update_flag
..() ..()
/obj/machinery/portable_atmospherics/canister/attackby(var/obj/item/W as obj, var/mob/user as mob) /obj/machinery/portable_atmospherics/canister/attackby(var/obj/item/W as obj, var/mob/user as mob)
if(!W.is_wrench() && !istype(W, /obj/item/tank) && !istype(W, /obj/item/device/analyzer) && !istype(W, /obj/item/device/pda)) if(!W.is_wrench() && !istype(W, /obj/item/tank) && !istype(W, /obj/item/analyzer) && !istype(W, /obj/item/pda))
visible_message("<span class='warning'>\The [user] hits \the [src] with \a [W]!</span>") visible_message("<span class='warning'>\The [user] hits \the [src] with \a [W]!</span>")
src.health -= W.force src.health -= W.force
src.add_fingerprint(user) src.add_fingerprint(user)

View File

@@ -115,7 +115,7 @@
qdel(src) qdel(src)
return return
if(istype(W, /obj/item/device/multitool)) if(istype(W, /obj/item/multitool))
for(var/obj/machinery/atmospherics/pipe/P in loc) for(var/obj/machinery/atmospherics/pipe/P in loc)
pipes_on_turf |= P pipes_on_turf |= P
if(!pipes_on_turf.len) if(!pipes_on_turf.len)

View File

@@ -162,7 +162,7 @@
"<span class='notice'>You screw the camera's panel [panel_open ? "open" : "closed"].</span>") "<span class='notice'>You screw the camera's panel [panel_open ? "open" : "closed"].</span>")
playsound(src, W.usesound, 50, 1) playsound(src, W.usesound, 50, 1)
else if((W.is_wirecutter() || istype(W, /obj/item/device/multitool)) && panel_open) else if((W.is_wirecutter() || istype(W, /obj/item/multitool)) && panel_open)
interact(user) interact(user)
else if(istype(W, /obj/item/weldingtool) && (wires.CanDeconstruct() || (stat & BROKEN))) else if(istype(W, /obj/item/weldingtool) && (wires.CanDeconstruct() || (stat & BROKEN)))
@@ -185,10 +185,10 @@
qdel(src) qdel(src)
// OTHER // OTHER
else if (can_use() && (istype(W, /obj/item/paper) || istype(W, /obj/item/device/pda)) && isliving(user)) else if (can_use() && (istype(W, /obj/item/paper) || istype(W, /obj/item/pda)) && isliving(user))
var/mob/living/U = user var/mob/living/U = user
var/obj/item/paper/X = null var/obj/item/paper/X = null
var/obj/item/device/pda/P = null var/obj/item/pda/P = null
var/itemname = "" var/itemname = ""
var/info = "" var/info = ""

View File

@@ -9,7 +9,7 @@
matter = list(MAT_STEEL = 700,"glass" = 300) matter = list(MAT_STEEL = 700,"glass" = 300)
// Motion, EMP-Proof, X-Ray // Motion, EMP-Proof, X-Ray
var/list/obj/item/possible_upgrades = list(/obj/item/device/assembly/prox_sensor, /obj/item/stack/material/osmium, /obj/item/stock_parts/scanning_module) var/list/obj/item/possible_upgrades = list(/obj/item/assembly/prox_sensor, /obj/item/stack/material/osmium, /obj/item/stock_parts/scanning_module)
var/list/upgrades = list() var/list/upgrades = list()
var/camera_name var/camera_name
var/camera_network var/camera_network

View File

@@ -195,7 +195,7 @@ var/global/list/engineering_networks = list(
return null return null
/obj/machinery/camera/proc/isMotion() /obj/machinery/camera/proc/isMotion()
var/O = locate(/obj/item/device/assembly/prox_sensor) in assembly.upgrades var/O = locate(/obj/item/assembly/prox_sensor) in assembly.upgrades
return O return O
// UPGRADE PROCS // UPGRADE PROCS
@@ -213,7 +213,7 @@ var/global/list/engineering_networks = list(
/obj/machinery/camera/proc/upgradeMotion() /obj/machinery/camera/proc/upgradeMotion()
if(!isturf(loc)) if(!isturf(loc))
return //nooooo return //nooooo
assembly.upgrades.Add(new /obj/item/device/assembly/prox_sensor(assembly)) assembly.upgrades.Add(new /obj/item/assembly/prox_sensor(assembly))
setPowerUsage() setPowerUsage()
START_MACHINE_PROCESSING(src) START_MACHINE_PROCESSING(src)
sense_proximity(callback = /atom/proc/HasProximity) sense_proximity(callback = /atom/proc/HasProximity)

View File

@@ -229,7 +229,7 @@
return return
if(default_part_replacement(user, W)) if(default_part_replacement(user, W))
return return
if(istype(W, /obj/item/card/id)||istype(W, /obj/item/device/pda)) if(istype(W, /obj/item/card/id)||istype(W, /obj/item/pda))
if(!check_access(W)) if(!check_access(W))
to_chat(user, "<span class='warning'>Access Denied.</span>") to_chat(user, "<span class='warning'>Access Denied.</span>")
return return
@@ -265,8 +265,8 @@
user.visible_message("[user] secures [src] to the floor.", "You secure [src] to the floor.") user.visible_message("[user] secures [src] to the floor.", "You secure [src] to the floor.")
else else
user.visible_message("[user] unsecures [src] from the floor.", "You unsecure [src] from the floor.") user.visible_message("[user] unsecures [src] from the floor.", "You unsecure [src] from the floor.")
else if(istype(W, /obj/item/device/multitool)) else if(istype(W, /obj/item/multitool))
var/obj/item/device/multitool/M = W var/obj/item/multitool/M = W
M.connecting = src M.connecting = src
to_chat(user, "<span class='notice'>You load connection data from [src] to [M].</span>") to_chat(user, "<span class='notice'>You load connection data from [src] to [M].</span>")
M.update_icon() M.update_icon()

View File

@@ -7,7 +7,7 @@
var/state = 0 var/state = 0
var/datum/ai_laws/laws = new /datum/ai_laws/nanotrasen var/datum/ai_laws/laws = new /datum/ai_laws/nanotrasen
var/obj/item/circuitboard/circuit = null var/obj/item/circuitboard/circuit = null
var/obj/item/device/mmi/brain = null var/obj/item/mmi/brain = null
/obj/structure/AIcore/attackby(obj/item/P as obj, mob/user as mob) /obj/structure/AIcore/attackby(obj/item/P as obj, mob/user as mob)
@@ -123,8 +123,8 @@
laws.add_inherent_law(M.newFreeFormLaw) laws.add_inherent_law(M.newFreeFormLaw)
to_chat(usr, "Added a freeform law.") to_chat(usr, "Added a freeform law.")
if(istype(P, /obj/item/device/mmi)) if(istype(P, /obj/item/mmi))
var/obj/item/device/mmi/M = P var/obj/item/mmi/M = P
if(!M.brainmob) if(!M.brainmob)
to_chat(user, "<span class='warning'>Sticking an empty [P] into the frame would sort of defeat the purpose.</span>") to_chat(user, "<span class='warning'>Sticking an empty [P] into the frame would sort of defeat the purpose.</span>")
return return
@@ -195,7 +195,7 @@ GLOBAL_LIST_BOILERPLATE(all_deactivated_AI_cores, /obj/structure/AIcore/deactiva
empty_playable_ai_cores -= src empty_playable_ai_cores -= src
return ..() return ..()
/obj/structure/AIcore/deactivated/proc/load_ai(var/mob/living/silicon/ai/transfer, var/obj/item/device/aicard/card, var/mob/user) /obj/structure/AIcore/deactivated/proc/load_ai(var/mob/living/silicon/ai/transfer, var/obj/item/aicard/card, var/mob/user)
if(!istype(transfer) || locate(/mob/living/silicon/ai) in src) if(!istype(transfer) || locate(/mob/living/silicon/ai) in src)
return return
@@ -224,8 +224,8 @@ GLOBAL_LIST_BOILERPLATE(all_deactivated_AI_cores, /obj/structure/AIcore/deactiva
/obj/structure/AIcore/deactivated/attackby(var/obj/item/W, var/mob/user) /obj/structure/AIcore/deactivated/attackby(var/obj/item/W, var/mob/user)
if(istype(W, /obj/item/device/aicard)) if(istype(W, /obj/item/aicard))
var/obj/item/device/aicard/card = W var/obj/item/aicard/card = W
var/mob/living/silicon/ai/transfer = locate() in card var/mob/living/silicon/ai/transfer = locate() in card
if(transfer) if(transfer)
load_ai(transfer,card,user) load_ai(transfer,card,user)

View File

@@ -22,7 +22,7 @@
else else
to_chat(user, "<span class='warning'>The screws on [name]'s screen won't budge and it emits a warning beep.</span>") to_chat(user, "<span class='warning'>The screws on [name]'s screen won't budge and it emits a warning beep.</span>")
return return
if(istype(I, /obj/item/device/aicard)) if(istype(I, /obj/item/aicard))
if(stat & (NOPOWER|BROKEN)) if(stat & (NOPOWER|BROKEN))
to_chat(user, "<span class='warning'>This terminal isn't functioning right now.</span>") to_chat(user, "<span class='warning'>This terminal isn't functioning right now.</span>")
return return
@@ -30,7 +30,7 @@
to_chat(user, "<span class='danger'>Terminal is busy restoring [occupier] right now.</span>") to_chat(user, "<span class='danger'>Terminal is busy restoring [occupier] right now.</span>")
return return
var/obj/item/device/aicard/card = I var/obj/item/aicard/card = I
if(occupier) if(occupier)
if(card.grab_ai(occupier, user)) if(card.grab_ai(occupier, user))
occupier = null occupier = null

View File

@@ -74,7 +74,7 @@
light_range_on = 2 light_range_on = 2
network = list(NETWORK_THUNDER) network = list(NETWORK_THUNDER)
circuit = /obj/item/circuitboard/security/telescreen/entertainment circuit = /obj/item/circuitboard/security/telescreen/entertainment
var/obj/item/device/radio/radio = null var/obj/item/radio/radio = null
/obj/machinery/computer/security/telescreen/entertainment/Initialize() /obj/machinery/computer/security/telescreen/entertainment/Initialize()
. = ..() . = ..()

View File

@@ -99,8 +99,8 @@
to_chat(user, "You insert [W].") to_chat(user, "You insert [W].")
SStgui.update_uis(src) SStgui.update_uis(src)
return return
else if(istype(W, /obj/item/device/multitool)) else if(istype(W, /obj/item/multitool))
var/obj/item/device/multitool/M = W var/obj/item/multitool/M = W
var/obj/machinery/clonepod/P = M.connecting var/obj/machinery/clonepod/P = M.connecting
if(P && !(P in pods)) if(P && !(P in pods))
pods += P pods += P
@@ -205,7 +205,7 @@
if(TGUI_MODAL_ANSWER) if(TGUI_MODAL_ANSWER)
if(params["id"] == "del_rec" && active_record) if(params["id"] == "del_rec" && active_record)
var/obj/item/card/id/C = usr.get_active_hand() var/obj/item/card/id/C = usr.get_active_hand()
if(!istype(C) && !istype(C, /obj/item/device/pda)) if(!istype(C) && !istype(C, /obj/item/pda))
set_temp("ID not in hand.", "danger") set_temp("ID not in hand.", "danger")
return return
if(check_access(C)) if(check_access(C))

View File

@@ -23,7 +23,7 @@
var/optioncount = 8 var/optioncount = 8
// Custom temp Properties // Custom temp Properties
var/customsender = "System Administrator" var/customsender = "System Administrator"
var/obj/item/device/pda/customrecepient = null var/obj/item/pda/customrecepient = null
var/customjob = "Admin" var/customjob = "Admin"
var/custommessage = "This is a test, please ignore." var/custommessage = "This is a test, please ignore."
var/list/temp = null var/list/temp = null
@@ -136,8 +136,8 @@
data["linkedServer"]["spamFilter"] = spamfilter data["linkedServer"]["spamFilter"] = spamfilter
//Get out list of viable PDAs //Get out list of viable PDAs
var/list/obj/item/device/pda/sendPDAs = list() var/list/obj/item/pda/sendPDAs = list()
for(var/obj/item/device/pda/P in PDAs) for(var/obj/item/pda/P in PDAs)
if(!P.owner || P.hidden) if(!P.owner || P.hidden)
continue continue
var/datum/data/pda/app/messenger/M = P.find_program(/datum/data/pda/app/messenger) var/datum/data/pda/app/messenger/M = P.find_program(/datum/data/pda/app/messenger)
@@ -274,7 +274,7 @@
. = TRUE . = TRUE
if("set_recipient") if("set_recipient")
var/ref = params["val"] var/ref = params["val"]
var/obj/item/device/pda/P = locate(ref) var/obj/item/pda/P = locate(ref)
if(!istype(P) || !P.owner || P.hidden) if(!istype(P) || !P.owner || P.hidden)
return FALSE return FALSE
@@ -298,8 +298,8 @@
set_temp("NOTICE: No message entered!", "average") set_temp("NOTICE: No message entered!", "average")
return TRUE return TRUE
var/obj/item/device/pda/PDARec = null var/obj/item/pda/PDARec = null
for(var/obj/item/device/pda/P in PDAs) for(var/obj/item/pda/P in PDAs)
if(!P.owner || P.hidden) if(!P.owner || P.hidden)
continue continue
var/datum/data/pda/app/messenger/M = P.find_program(/datum/data/pda/app/messenger) var/datum/data/pda/app/messenger/M = P.find_program(/datum/data/pda/app/messenger)

View File

@@ -11,9 +11,9 @@
/obj/machinery/computer/shuttle/attackby(var/obj/item/card/W as obj, var/mob/user as mob) /obj/machinery/computer/shuttle/attackby(var/obj/item/card/W as obj, var/mob/user as mob)
if(stat & (BROKEN|NOPOWER)) return if(stat & (BROKEN|NOPOWER)) return
if ((!( istype(W, /obj/item/card) ) || !( ticker ) || emergency_shuttle.location() || !( user ))) return if ((!( istype(W, /obj/item/card) ) || !( ticker ) || emergency_shuttle.location() || !( user ))) return
if (istype(W, /obj/item/card/id)||istype(W, /obj/item/device/pda)) if (istype(W, /obj/item/card/id)||istype(W, /obj/item/pda))
if (istype(W, /obj/item/device/pda)) if (istype(W, /obj/item/pda))
var/obj/item/device/pda/pda = W var/obj/item/pda/pda = W
W = pda.id W = pda.id
if (!W:access) //no access if (!W:access) //no access
to_chat(user, "The access level of [W:registered_name]\'s card is not high enough. ") to_chat(user, "The access level of [W:registered_name]\'s card is not high enough. ")

View File

@@ -24,7 +24,7 @@ var/specops_shuttle_timeleft = 0
var/specops_shuttle_timereset = 0 var/specops_shuttle_timereset = 0
/proc/specops_return() /proc/specops_return()
var/obj/item/device/radio/intercom/announcer = new /obj/item/device/radio/intercom(null)//We need a fake AI to announce some stuff below. Otherwise it will be wonky. var/obj/item/radio/intercom/announcer = new /obj/item/radio/intercom(null)//We need a fake AI to announce some stuff below. Otherwise it will be wonky.
announcer.config(list("Response Team" = 0)) announcer.config(list("Response Team" = 0))
var/message_tracker[] = list(0,1,2,3,5,10,30,45)//Create a a list with potential time values. var/message_tracker[] = list(0,1,2,3,5,10,30,45)//Create a a list with potential time values.
@@ -99,7 +99,7 @@ var/specops_shuttle_timeleft = 0
/proc/specops_process() /proc/specops_process()
var/area/centcom/specops/special_ops = locate()//Where is the specops area located? var/area/centcom/specops/special_ops = locate()//Where is the specops area located?
var/obj/item/device/radio/intercom/announcer = new /obj/item/device/radio/intercom(null)//We need a fake AI to announce some stuff below. Otherwise it will be wonky. var/obj/item/radio/intercom/announcer = new /obj/item/radio/intercom(null)//We need a fake AI to announce some stuff below. Otherwise it will be wonky.
announcer.config(list("Response Team" = 0)) announcer.config(list("Response Team" = 0))
var/message_tracker[] = list(0,1,2,3,5,10,30,45)//Create a a list with potential time values. var/message_tracker[] = list(0,1,2,3,5,10,30,45)//Create a a list with potential time values.

View File

@@ -229,7 +229,7 @@
var/mob/occupant = null // Person waiting to be despawned. var/mob/occupant = null // Person waiting to be despawned.
var/time_till_despawn = 9000 // Down to 15 minutes //30 minutes-ish is too long var/time_till_despawn = 9000 // Down to 15 minutes //30 minutes-ish is too long
var/time_entered = 0 // Used to keep track of the safe period. var/time_entered = 0 // Used to keep track of the safe period.
var/obj/item/device/radio/intercom/announce // var/obj/item/radio/intercom/announce //
var/obj/machinery/computer/cryopod/control_computer var/obj/machinery/computer/cryopod/control_computer
var/last_no_computer_message = 0 var/last_no_computer_message = 0
@@ -309,7 +309,7 @@
/obj/machinery/cryopod/Initialize() /obj/machinery/cryopod/Initialize()
. = ..() . = ..()
announce = new /obj/item/device/radio/intercom(src) announce = new /obj/item/radio/intercom(src)
find_control_computer() find_control_computer()
/obj/machinery/cryopod/Destroy() /obj/machinery/cryopod/Destroy()

View File

@@ -1072,9 +1072,9 @@ About the new airlock wires panel:
src.update_icon() src.update_icon()
else if(C.is_wirecutter()) else if(C.is_wirecutter())
return src.attack_hand(user) return src.attack_hand(user)
else if(istype(C, /obj/item/device/multitool)) else if(istype(C, /obj/item/multitool))
return src.attack_hand(user) return src.attack_hand(user)
else if(istype(C, /obj/item/device/assembly/signaler)) else if(istype(C, /obj/item/assembly/signaler))
return src.attack_hand(user) return src.attack_hand(user)
else if(istype(C, /obj/item/pai_cable)) // -- TLE else if(istype(C, /obj/item/pai_cable)) // -- TLE
var/obj/item/pai_cable/cable = C var/obj/item/pai_cable/cable = C
@@ -1122,26 +1122,22 @@ About the new airlock wires panel:
spawn(0) close(1) spawn(0) close(1)
// Check if we're using a crowbar or armblade, and if the airlock's unpowered for whatever reason (off, broken, etc). // Check if we're using a crowbar or armblade, and if the airlock's unpowered for whatever reason (off, broken, etc).
else if(istype(C, /obj/item/weapon)) if((C.pry == 1) && !arePowerSystemsOn())
var/obj/item/W = C if(locked)
if((W.pry == 1) && !arePowerSystemsOn()) to_chat(user, "<span class='notice'>The airlock's bolts prevent it from being forced.</span>")
if(locked) else if( !welded && !operating )
to_chat(user, "<span class='notice'>The airlock's bolts prevent it from being forced.</span>") if(istype(C, /obj/item/material/twohanded/fireaxe)) // If this is a fireaxe, make sure it's held in two hands.
else if( !welded && !operating ) var/obj/item/material/twohanded/fireaxe/F = C
if(istype(C, /obj/item/material/twohanded/fireaxe)) // If this is a fireaxe, make sure it's held in two hands. if(!F.wielded)
var/obj/item/material/twohanded/fireaxe/F = C to_chat(user, "<span class='warning'>You need to be wielding \the [F] to do that.</span>")
if(!F.wielded) return
to_chat(user, "<span class='warning'>You need to be wielding \the [F] to do that.</span>") // At this point, it's an armblade or a fireaxe that passed the wielded test, let's try to open it.
return if(density)
// At this point, it's an armblade or a fireaxe that passed the wielded test, let's try to open it. spawn(0)
if(density) open(1)
spawn(0) else
open(1) spawn(0)
else close(1)
spawn(0)
close(1)
else
..()
else else
..() ..()
return return

View File

@@ -245,7 +245,7 @@
/obj/machinery/access_button/attackby(obj/item/I as obj, mob/user as mob) /obj/machinery/access_button/attackby(obj/item/I as obj, mob/user as mob)
//Swiping ID on the access button //Swiping ID on the access button
if (istype(I, /obj/item/card/id) || istype(I, /obj/item/device/pda)) if (istype(I, /obj/item/card/id) || istype(I, /obj/item/pda))
attack_hand(user) attack_hand(user)
return return
..() ..()

View File

@@ -153,7 +153,7 @@
// This only works on broken doors or doors without power. Also allows repair with Plasteel. // This only works on broken doors or doors without power. Also allows repair with Plasteel.
/obj/machinery/door/blast/attackby(obj/item/C as obj, mob/user as mob) /obj/machinery/door/blast/attackby(obj/item/C as obj, mob/user as mob)
src.add_fingerprint(user) src.add_fingerprint(user)
if(istype(C, /obj/item/weapon)) // For reasons unknown, sometimes C is actually not what it is advertised as, like a mob. if(istype(C)) // For reasons unknown, sometimes C is actually not what it is advertised as, like a mob.
if(C.pry == 1 && (user.a_intent != I_HURT || (stat & BROKEN))) // Can we pry it open with something, like a crowbar/fireaxe/lingblade? if(C.pry == 1 && (user.a_intent != I_HURT || (stat & BROKEN))) // Can we pry it open with something, like a crowbar/fireaxe/lingblade?
if(istype(C,/obj/item/material/twohanded/fireaxe)) // Fireaxes need to be in both hands to pry. if(istype(C,/obj/item/material/twohanded/fireaxe)) // Fireaxes need to be in both hands to pry.
var/obj/item/material/twohanded/fireaxe/F = C var/obj/item/material/twohanded/fireaxe/F = C

View File

@@ -112,7 +112,7 @@
else else
bumpopen(M) bumpopen(M)
if(istype(AM, /obj/item/device/uav)) if(istype(AM, /obj/item/uav))
if(check_access(null)) if(check_access(null))
open() open()
else else
@@ -272,7 +272,7 @@
return return
//psa to whoever coded this, there are plenty of objects that need to call attack() on doors without bludgeoning them. //psa to whoever coded this, there are plenty of objects that need to call attack() on doors without bludgeoning them.
if(src.density && istype(I, /obj/item/weapon) && user.a_intent == I_HURT && !istype(I, /obj/item/card)) if(src.density && istype(I) && user.a_intent == I_HURT && !istype(I, /obj/item/card))
var/obj/item/W = I var/obj/item/W = I
user.setClickCooldown(user.get_attack_speed(W)) user.setClickCooldown(user.get_attack_speed(W))
if(W.damtype == BRUTE || W.damtype == BURN) if(W.damtype == BRUTE || W.damtype == BURN)

View File

@@ -252,7 +252,7 @@
return return
//If it's a weapon, smash windoor. Unless it's an id card, agent card, ect.. then ignore it (Cards really shouldnt damage a door anyway) //If it's a weapon, smash windoor. Unless it's an id card, agent card, ect.. then ignore it (Cards really shouldnt damage a door anyway)
if(src.density && istype(I, /obj/item/weapon) && !istype(I, /obj/item/card)) if(src.density && istype(I) && !istype(I, /obj/item/card))
user.setClickCooldown(user.get_attack_speed(I)) user.setClickCooldown(user.get_attack_speed(I))
var/aforce = I.force var/aforce = I.force
playsound(src, 'sound/effects/Glasshit.ogg', 75, 1) playsound(src, 'sound/effects/Glasshit.ogg', 75, 1)

View File

@@ -24,7 +24,7 @@
docking_program.display_name = display_name docking_program.display_name = display_name
/obj/machinery/embedded_controller/radio/airlock/docking_port/attackby(obj/item/W, mob/user) /obj/machinery/embedded_controller/radio/airlock/docking_port/attackby(obj/item/W, mob/user)
if(istype(W,/obj/item/device/multitool)) //give them part of code, would take few tries to get full if(istype(W,/obj/item/multitool)) //give them part of code, would take few tries to get full
var/datum/embedded_program/docking/airlock/docking_program = program var/datum/embedded_program/docking/airlock/docking_program = program
var/code = docking_program.docking_codes var/code = docking_program.docking_codes
if(!code) if(!code)

View File

@@ -90,7 +90,7 @@ FIRE ALARM
return return
if(panel_open) if(panel_open)
if(istype(W, /obj/item/device/multitool)) if(istype(W, /obj/item/multitool))
detecting = !(detecting) detecting = !(detecting)
if(detecting) if(detecting)
user.visible_message("<span class='notice'>\The [user] has reconnected [src]'s detecting unit!</span>", "<span class='notice'>You have reconnected [src]'s detecting unit.</span>") user.visible_message("<span class='notice'>\The [user] has reconnected [src]'s detecting unit!</span>", "<span class='notice'>You have reconnected [src]'s detecting unit.</span>")

View File

@@ -60,7 +60,7 @@
return return
if(W.is_wirecutter()) if(W.is_wirecutter())
return wires.Interact(user) return wires.Interact(user)
if(istype(W, /obj/item/device/multitool)) if(istype(W, /obj/item/multitool))
return wires.Interact(user) return wires.Interact(user)
if(W.is_wrench()) if(W.is_wrench())
if(playing) if(playing)

View File

@@ -26,7 +26,7 @@
if(default_deconstruction_crowbar(user, I)) if(default_deconstruction_crowbar(user, I))
return return
if(istype(I, /obj/item/device/multitool)) if(istype(I, /obj/item/multitool))
if(panel_open) if(panel_open)
var/input = sanitize(input(usr, "What id would you like to give this conveyor?", "Multitool-Conveyor interface", id)) var/input = sanitize(input(usr, "What id would you like to give this conveyor?", "Multitool-Conveyor interface", id))
if(!input) if(!input)

View File

@@ -104,7 +104,7 @@
NEWSCASTER.update_icon() NEWSCASTER.update_icon()
// var/list/receiving_pdas = new // var/list/receiving_pdas = new
// for (var/obj/item/device/pda/P in PDAs) // for (var/obj/item/pda/P in PDAs)
// if(!P.owner) // if(!P.owner)
// continue // continue
// if(P.toff) // if(P.toff)
@@ -114,7 +114,7 @@
// spawn(0) // get_receptions sleeps further down the line, spawn of elsewhere // spawn(0) // get_receptions sleeps further down the line, spawn of elsewhere
// var/datum/receptions/receptions = get_receptions(null, receiving_pdas) // datums are not atoms, thus we have to assume the newscast network always has reception // var/datum/receptions/receptions = get_receptions(null, receiving_pdas) // datums are not atoms, thus we have to assume the newscast network always has reception
// for(var/obj/item/device/pda/PDA in receiving_pdas) // for(var/obj/item/pda/PDA in receiving_pdas)
// if(!(receptions.receiver_reception[PDA] & TELECOMMS_RECEPTION_RECEIVER)) // if(!(receptions.receiver_reception[PDA] & TELECOMMS_RECEPTION_RECEIVER))
// continue // continue

View File

@@ -78,7 +78,7 @@ var/bomb_set
flick("nuclearbombc", src) flick("nuclearbombc", src)
return return
if(O.is_wirecutter() || istype(O, /obj/item/device/multitool)) if(O.is_wirecutter() || istype(O, /obj/item/multitool))
if(opened == 1) if(opened == 1)
nukehack_win(user) nukehack_win(user)
return return
@@ -238,7 +238,7 @@ var/bomb_set
if(href_list["act"]) if(href_list["act"])
var/temp_wire = href_list["wire"] var/temp_wire = href_list["wire"]
if(href_list["act"] == "pulse") if(href_list["act"] == "pulse")
if(!istype(usr.get_active_hand(), /obj/item/device/multitool)) if(!istype(usr.get_active_hand(), /obj/item/multitool))
to_chat(usr, "You need a multitool!") to_chat(usr, "You need a multitool!")
else else
if(wires[temp_wire]) if(wires[temp_wire])

View File

@@ -14,13 +14,13 @@
/obj/machinery/pda_multicaster/Initialize() /obj/machinery/pda_multicaster/Initialize()
. = ..() . = ..()
internal_PDAs = list("command" = new /obj/item/device/pda/multicaster/command(src), internal_PDAs = list("command" = new /obj/item/pda/multicaster/command(src),
"security" = new /obj/item/device/pda/multicaster/security(src), "security" = new /obj/item/pda/multicaster/security(src),
"engineering" = new /obj/item/device/pda/multicaster/engineering(src), "engineering" = new /obj/item/pda/multicaster/engineering(src),
"medical" = new /obj/item/device/pda/multicaster/medical(src), "medical" = new /obj/item/pda/multicaster/medical(src),
"research" = new /obj/item/device/pda/multicaster/research(src), "research" = new /obj/item/pda/multicaster/research(src),
"cargo" = new /obj/item/device/pda/multicaster/cargo(src), "cargo" = new /obj/item/pda/multicaster/cargo(src),
"civilian" = new /obj/item/device/pda/multicaster/civilian(src)) "civilian" = new /obj/item/pda/multicaster/civilian(src))
/obj/machinery/pda_multicaster/prebuilt/Initialize() /obj/machinery/pda_multicaster/prebuilt/Initialize()
. = ..() . = ..()
@@ -61,7 +61,7 @@
log_game(msg) log_game(msg)
/obj/machinery/pda_multicaster/proc/update_PDAs(var/turn_off) /obj/machinery/pda_multicaster/proc/update_PDAs(var/turn_off)
for(var/obj/item/device/pda/pda in contents) for(var/obj/item/pda/pda in contents)
var/datum/data/pda/app/messenger/M = pda.find_program(/datum/data/pda/app/messenger/multicast) var/datum/data/pda/app/messenger/M = pda.find_program(/datum/data/pda/app/messenger/multicast)
if(M) if(M)
M.toff = turn_off M.toff = turn_off

View File

@@ -524,7 +524,7 @@
if(prob(50)) if(prob(50))
new /obj/item/stack/material/steel(loc, rand(1,4)) new /obj/item/stack/material/steel(loc, rand(1,4))
if(prob(50)) if(prob(50))
new /obj/item/device/assembly/prox_sensor(loc) new /obj/item/assembly/prox_sensor(loc)
else else
to_chat(user, "<span class='notice'>You remove the turret but did not manage to salvage anything.</span>") to_chat(user, "<span class='notice'>You remove the turret but did not manage to salvage anything.</span>")
qdel(src) // qdel qdel(src) // qdel
@@ -560,7 +560,7 @@
update_icon() update_icon()
wrenching = FALSE wrenching = FALSE
else if(istype(I, /obj/item/card/id)||istype(I, /obj/item/device/pda)) else if(istype(I, /obj/item/card/id)||istype(I, /obj/item/pda))
//Behavior lock/unlock mangement //Behavior lock/unlock mangement
if(allowed(user)) if(allowed(user))
locked = !locked locked = !locked
@@ -1143,7 +1143,7 @@
if(5) if(5)
to_chat(user, "<span class='notice'>You remove the prox sensor from the turret frame.</span>") to_chat(user, "<span class='notice'>You remove the prox sensor from the turret frame.</span>")
new /obj/item/device/assembly/prox_sensor(loc) new /obj/item/assembly/prox_sensor(loc)
build_step = 4 build_step = 4
/obj/machinery/porta_turret_construct/attack_ai() /obj/machinery/porta_turret_construct/attack_ai()

View File

@@ -10,7 +10,7 @@
active_power_usage = 40000 //40 kW active_power_usage = 40000 //40 kW
var/efficiency = 40000 //will provide the modified power rate when upgraded var/efficiency = 40000 //will provide the modified power rate when upgraded
var/obj/item/charging = null var/obj/item/charging = null
var/list/allowed_devices = list(/obj/item/gun/energy, /obj/item/melee/baton, /obj/item/modular_computer, /obj/item/computer_hardware/battery_module, /obj/item/cell, /obj/item/device/flashlight, /obj/item/device/electronic_assembly, /obj/item/weldingtool/electric, /obj/item/ammo_magazine/smart, /obj/item/device/flash, /obj/item/device/defib_kit) var/list/allowed_devices = list(/obj/item/gun/energy, /obj/item/melee/baton, /obj/item/modular_computer, /obj/item/computer_hardware/battery_module, /obj/item/cell, /obj/item/flashlight, /obj/item/electronic_assembly, /obj/item/weldingtool/electric, /obj/item/ammo_magazine/smart, /obj/item/flash, /obj/item/defib_kit)
var/icon_state_charged = "recharger2" var/icon_state_charged = "recharger2"
var/icon_state_charging = "recharger1" var/icon_state_charging = "recharger1"
var/icon_state_idle = "recharger0" //also when unpowered var/icon_state_idle = "recharger0" //also when unpowered
@@ -58,8 +58,8 @@
if(B.use_external_power) if(B.use_external_power)
to_chat(user, "<span class='notice'>\The [B] has no recharge port.</span>") to_chat(user, "<span class='notice'>\The [B] has no recharge port.</span>")
return return
if(istype(G, /obj/item/device/flash)) if(istype(G, /obj/item/flash))
var/obj/item/device/flash/F = G var/obj/item/flash/F = G
if(F.use_external_power) if(F.use_external_power)
to_chat(user, "<span class='notice'>\The [F] has no recharge port.</span>") to_chat(user, "<span class='notice'>\The [F] has no recharge port.</span>")
return return
@@ -166,7 +166,7 @@
layer = ABOVE_TURF_LAYER layer = ABOVE_TURF_LAYER
active_power_usage = 60000 //60 kW , It's more specialized than the standalone recharger (guns, batons, and flashlights only) so make it more powerful active_power_usage = 60000 //60 kW , It's more specialized than the standalone recharger (guns, batons, and flashlights only) so make it more powerful
efficiency = 60000 efficiency = 60000
allowed_devices = list(/obj/item/gun/energy, /obj/item/gun/magnetic, /obj/item/melee/baton, /obj/item/device/flashlight, /obj/item/cell/device) allowed_devices = list(/obj/item/gun/energy, /obj/item/gun/magnetic, /obj/item/melee/baton, /obj/item/flashlight, /obj/item/cell/device)
icon_state_charged = "wrecharger2" icon_state_charged = "wrecharger2"
icon_state_charging = "wrecharger1" icon_state_charging = "wrecharger1"
icon_state_idle = "wrecharger0" icon_state_idle = "wrecharger0"

View File

@@ -203,7 +203,7 @@ var/list/obj/machinery/requests_console/allConsoles = list()
/obj/machinery/requests_console/attackby(var/obj/item/O as obj, var/mob/user as mob) /obj/machinery/requests_console/attackby(var/obj/item/O as obj, var/mob/user as mob)
if(computer_deconstruction_screwdriver(user, O)) if(computer_deconstruction_screwdriver(user, O))
return return
if(istype(O, /obj/item/device/multitool)) if(istype(O, /obj/item/multitool))
var/input = sanitize(input(usr, "What Department ID would you like to give this request console?", "Multitool-Request Console Interface", department)) var/input = sanitize(input(usr, "What Department ID would you like to give this request console?", "Multitool-Request Console Interface", department))
if(!input) if(!input)
to_chat(usr, "No input found. Please hang up and try your call again.") to_chat(usr, "No input found. Please hang up and try your call again.")

View File

@@ -675,7 +675,7 @@
return return
//Hacking init. //Hacking init.
if(istype(I, /obj/item/device/multitool) || I.is_wirecutter()) if(istype(I, /obj/item/multitool) || I.is_wirecutter())
if(panel_open) if(panel_open)
attack_hand(user) attack_hand(user)
return return

Some files were not shown because too many files have changed in this diff Show More