Merge branch 'master' into patch-118
This commit is contained in:
@@ -50,17 +50,20 @@ PROCESSING_SUBSYSTEM_DEF(circuit)
|
||||
/obj/item/electronic_assembly/simple,
|
||||
/obj/item/electronic_assembly/hook,
|
||||
/obj/item/electronic_assembly/pda,
|
||||
/obj/item/electronic_assembly/dildo,
|
||||
/obj/item/electronic_assembly/small/default,
|
||||
/obj/item/electronic_assembly/small/cylinder,
|
||||
/obj/item/electronic_assembly/small/scanner,
|
||||
/obj/item/electronic_assembly/small/hook,
|
||||
/obj/item/electronic_assembly/small/box,
|
||||
/obj/item/electronic_assembly/small/dildo,
|
||||
/obj/item/electronic_assembly/medium/default,
|
||||
/obj/item/electronic_assembly/medium/box,
|
||||
/obj/item/electronic_assembly/medium/clam,
|
||||
/obj/item/electronic_assembly/medium/medical,
|
||||
/obj/item/electronic_assembly/medium/gun,
|
||||
/obj/item/electronic_assembly/medium/radio,
|
||||
/obj/item/electronic_assembly/medium/dildo,
|
||||
/obj/item/electronic_assembly/large/default,
|
||||
/obj/item/electronic_assembly/large/scope,
|
||||
/obj/item/electronic_assembly/large/terminal,
|
||||
@@ -89,4 +92,4 @@ PROCESSING_SUBSYSTEM_DEF(circuit)
|
||||
/obj/item/card/data/full_color,
|
||||
/obj/item/card/data/disk
|
||||
)
|
||||
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
message_admins("EMP with size ([heavy_range], [light_range]) in area [epicenter.loc.name] ")
|
||||
log_game("EMP with size ([heavy_range], [light_range]) in area [epicenter.loc.name] ")
|
||||
|
||||
if(heavy_range > 1)
|
||||
if(heavy_range >= 1)
|
||||
new /obj/effect/temp_visual/emp/pulse(epicenter)
|
||||
|
||||
if(heavy_range > light_range)
|
||||
|
||||
@@ -362,7 +362,7 @@ AI MODULES
|
||||
/obj/item/aiModule/core/full/asimov
|
||||
name = "'Asimov' Core AI Module"
|
||||
law_id = "asimov"
|
||||
var/subject = "human being"
|
||||
var/subject = "person of an NT approved crew species" //CITADEL CHANGED FROM HUMANS!
|
||||
|
||||
/obj/item/aiModule/core/full/asimov/attack_self(var/mob/user as mob)
|
||||
var/targName = stripped_input(user, "Please enter a new subject that asimov is concerned with.", "Asimov to whom?", subject)
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
var/cell_type = /obj/item/stock_parts/cell/high
|
||||
var/obj/item/stock_parts/cell/cell
|
||||
var/recharging = FALSE
|
||||
var/gun_charger = FALSE
|
||||
|
||||
/obj/item/inducer/Initialize()
|
||||
. = ..()
|
||||
@@ -104,7 +105,7 @@
|
||||
var/obj/item/stock_parts/cell/C = A.get_cell()
|
||||
var/obj/O
|
||||
var/coefficient = 1
|
||||
if(istype(A, /obj/item/gun/energy))
|
||||
if(istype(A, /obj/item/gun/energy) && gun_charger != TRUE)
|
||||
to_chat(user,"Error unable to interface with device")
|
||||
return FALSE
|
||||
if(istype(A, /obj))
|
||||
@@ -181,3 +182,26 @@
|
||||
/obj/item/inducer/sci/Initialize()
|
||||
. = ..()
|
||||
update_icon()
|
||||
|
||||
/obj/item/inducer/sci/combat
|
||||
icon_state = "inducer-combat"
|
||||
item_state = "inducer-combat"
|
||||
w_class = WEIGHT_CLASS_BULKY
|
||||
slot_flags = SLOT_BELT
|
||||
desc = "A tool for inductively charging internal power cells. This one has been modified and upgraded to be able to charge into guns as well as normal electronics."
|
||||
cell_type = /obj/item/stock_parts/cell/hyper
|
||||
powertransfer = 1300
|
||||
opened = FALSE
|
||||
gun_charger = TRUE
|
||||
|
||||
/obj/item/inducer/sci/combat/dry
|
||||
cell_type = null
|
||||
opened = TRUE
|
||||
|
||||
/obj/item/inducer/sci/combat/dry/Initialize() //Just in case
|
||||
. = ..()
|
||||
update_icon()
|
||||
|
||||
/obj/item/inducer/sci/combat/Initialize()
|
||||
. = ..()
|
||||
update_icon()
|
||||
|
||||
@@ -382,8 +382,8 @@ GLOBAL_LIST_INIT(runed_metal_recipes, list ( \
|
||||
GLOBAL_LIST_INIT(brass_recipes, list ( \
|
||||
new/datum/stack_recipe("wall gear", /obj/structure/destructible/clockwork/wall_gear, 3, time = 10, one_per_turf = TRUE, on_floor = TRUE), \
|
||||
null,
|
||||
new/datum/stack_recipe("pinion airlock", /obj/machinery/door/airlock/clockwork, 5, time = 50, one_per_turf = TRUE, on_floor = TRUE), \
|
||||
new/datum/stack_recipe("brass pinion airlock", /obj/machinery/door/airlock/clockwork/brass, 5, time = 50, one_per_turf = TRUE, on_floor = TRUE), \
|
||||
new/datum/stack_recipe("brass pinion airlock", /obj/machinery/door/airlock/clockwork, 5, time = 50, one_per_turf = TRUE, on_floor = TRUE), \
|
||||
new/datum/stack_recipe("brass pinion airlock - windowed", /obj/machinery/door/airlock/clockwork/brass, 5, time = 50, one_per_turf = TRUE, on_floor = TRUE), \
|
||||
new/datum/stack_recipe("brass windoor", /obj/machinery/door/window/clockwork, 2, time = 30, on_floor = TRUE, window_checks = TRUE), \
|
||||
null,
|
||||
new/datum/stack_recipe("directional brass window", /obj/structure/window/reinforced/clockwork/unanchored, time = 0, on_floor = TRUE, window_checks = TRUE), \
|
||||
@@ -392,11 +392,14 @@ GLOBAL_LIST_INIT(brass_recipes, list ( \
|
||||
new/datum/stack_recipe("brass table frame", /obj/structure/table_frame/brass, 1, time = 5, one_per_turf = TRUE, on_floor = TRUE), \
|
||||
null,
|
||||
new/datum/stack_recipe("sender - pressure sensor", /obj/structure/destructible/clockwork/trap/trigger/pressure_sensor, 2, time = 20, one_per_turf = TRUE, on_floor = TRUE), \
|
||||
new/datum/stack_recipe("sender - mech sensor", /obj/structure/destructible/clockwork/trap/trigger/pressure_sensor/mech, 2, time = 20, one_per_turf = TRUE, on_floor = TRUE), \
|
||||
new/datum/stack_recipe("sender - lever", /obj/structure/destructible/clockwork/trap/trigger/lever, 1, time = 10, one_per_turf = TRUE, on_floor = TRUE), \
|
||||
new/datum/stack_recipe("sender - repeater", /obj/structure/destructible/clockwork/trap/trigger/repeater, 2, time = 20, one_per_turf = TRUE, on_floor = TRUE), \
|
||||
null,
|
||||
new/datum/stack_recipe("receiver - brass skewer", /obj/structure/destructible/clockwork/trap/brass_skewer, 2, time = 20, one_per_turf = TRUE, on_floor = TRUE, placement_checks = STACK_CHECK_ADJACENT), \
|
||||
new/datum/stack_recipe("receiver - steam vent", /obj/structure/destructible/clockwork/trap/steam_vent, 3, time = 30, one_per_turf = TRUE, on_floor = TRUE, placement_checks = STACK_CHECK_CARDINALS), \
|
||||
new/datum/stack_recipe("receiver - power nullifier", /obj/structure/destructible/clockwork/trap/power_nullifier, 5, time = 20, one_per_turf = TRUE, on_floor = TRUE, placement_checks = STACK_CHECK_CARDINALS), \
|
||||
|
||||
))
|
||||
|
||||
/obj/item/stack/tile/brass
|
||||
|
||||
@@ -48,6 +48,13 @@
|
||||
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 60, "acid" = 50)
|
||||
component_type = /datum/component/storage/concrete/bluespace/bag_of_holding
|
||||
|
||||
/obj/item/storage/backpack/holding/satchel
|
||||
name = "satchel of holding"
|
||||
desc = "A satchel that opens into a localized pocket of Blue Space."
|
||||
icon_state = "holdingsat"
|
||||
item_state = "holdingsat"
|
||||
species_exception = list(/datum/species/angel)
|
||||
|
||||
/obj/item/storage/backpack/holding/ComponentInitialize()
|
||||
. = ..()
|
||||
GET_COMPONENT(STR, /datum/component/storage)
|
||||
|
||||
@@ -208,3 +208,38 @@
|
||||
new/obj/item/stack/cable_coil/orange(src)
|
||||
new/obj/item/stack/cable_coil/cyan(src)
|
||||
new/obj/item/stack/cable_coil/white(src)
|
||||
|
||||
/obj/item/storage/toolbox/gold_real
|
||||
name = "golden toolbox"
|
||||
desc = "A larger then normal toolbox made of gold plated plastitanium."
|
||||
item_state = "gold"
|
||||
icon_state = "gold"
|
||||
has_latches = FALSE
|
||||
force = 16 // Less then a spear
|
||||
throwforce = 14
|
||||
throw_speed = 5
|
||||
throw_range = 10
|
||||
|
||||
/obj/item/storage/toolbox/gold_real/PopulateContents()
|
||||
new /obj/item/screwdriver/nuke(src)
|
||||
new /obj/item/wrench(src)
|
||||
new /obj/item/weldingtool/largetank(src)
|
||||
new /obj/item/crowbar/red(src)
|
||||
new /obj/item/wirecutters(src, "red")
|
||||
new /obj/item/multitool/ai_detect(src)
|
||||
new /obj/item/clothing/gloves/combat(src)
|
||||
|
||||
/obj/item/storage/toolbox/gold_real/ComponentInitialize()
|
||||
. = ..()
|
||||
GET_COMPONENT(STR, /datum/component/storage)
|
||||
STR.max_combined_w_class = 40
|
||||
STR.max_items = 12
|
||||
|
||||
/obj/item/storage/toolbox/gold_fake // used in crafting
|
||||
name = "golden toolbox"
|
||||
desc = "A gold plated toolbox, fancy and harmless do to the gold plating being on cardboard!"
|
||||
icon_state = "gold"
|
||||
item_state = "gold"
|
||||
has_latches = FALSE
|
||||
force = 0
|
||||
throwforce = 0
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
|
||||
#define MUSICIAN_HEARCHECK_MINDELAY 4
|
||||
#define MUSIC_MAXLINES 300
|
||||
#define MUSIC_MAXLINES 600
|
||||
#define MUSIC_MAXLINECHARS 50
|
||||
|
||||
/datum/song
|
||||
|
||||
@@ -217,3 +217,7 @@
|
||||
/proc/_step_away(ref, trg, max)
|
||||
step_away(ref, trg, max)
|
||||
|
||||
/proc/_instantiate_at(thing, location)
|
||||
new thing(location)
|
||||
|
||||
|
||||
|
||||
@@ -503,6 +503,7 @@ Congratulations! You are now trained for invasive xenobiology research!"}
|
||||
L.lastattacker = user.real_name
|
||||
L.lastattackerckey = user.ckey
|
||||
|
||||
L.adjustStaminaLoss(35) //because previously it took 5-6 hits to actually "incapacitate" someone for the purposes of the sleep inducement
|
||||
L.Knockdown(140)
|
||||
L.apply_effect(EFFECT_STUTTER, 7)
|
||||
SEND_SIGNAL(L, COMSIG_LIVING_MINOR_SHOCK)
|
||||
|
||||
+20
@@ -0,0 +1,20 @@
|
||||
//Mech sensor: Activates when stepped on by a mech
|
||||
/obj/structure/destructible/clockwork/trap/trigger/pressure_sensor/mech
|
||||
name = "mech sensor"
|
||||
desc = "A thin plate of brass, barely visible but clearly distinct."
|
||||
clockwork_desc = "A trigger that will activate when a mech controlled by a non-servant runs across it."
|
||||
max_integrity = 5
|
||||
icon_state = "pressure_sensor"
|
||||
alpha = 75
|
||||
|
||||
/obj/structure/destructible/clockwork/trap/trigger/pressure_sensor/mech/Crossed(atom/movable/AM)
|
||||
|
||||
if(!istype(AM,/obj/mecha/))
|
||||
return
|
||||
|
||||
var/obj/mecha/M = AM
|
||||
if(M.occupant && is_servant_of_ratvar(M.occupant))
|
||||
return
|
||||
audible_message("<i>*click*</i>")
|
||||
playsound(src, 'sound/items/screwdriver2.ogg', 50, TRUE)
|
||||
activate()
|
||||
@@ -68,7 +68,14 @@
|
||||
mouse_opacity = MOUSE_OPACITY_OPAQUE //So players can interact with the tile it's on to pull them off
|
||||
buckle_mob(squirrel, TRUE)
|
||||
else
|
||||
visible_message("<span class='danger'>A massive brass spike erupts from the ground!</span>")
|
||||
var/obj/mecha/M = locate() in get_turf(src)
|
||||
if(M)
|
||||
M.take_damage(50,BRUTE,"melee")
|
||||
M.visible_message("<span class='danger'>A massive brass spike erupts from the ground, penetrating \the [M] and shattering the trap into pieces!</span>")
|
||||
addtimer(CALLBACK(src, .proc/take_damage, max_integrity), 1)
|
||||
else
|
||||
visible_message("<span class='danger'>A massive brass spike erupts from the ground!</span>")
|
||||
|
||||
playsound(src, 'sound/machines/clockcult/brass_skewer.ogg', 75, FALSE)
|
||||
icon_state = "[initial(icon_state)]_extended"
|
||||
density = TRUE //Skewers are one-use only
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
/obj/structure/destructible/clockwork/trap/power_nullifier
|
||||
name = "power nullifier"
|
||||
desc = "A well hidden set of wires and connections."
|
||||
clockwork_desc = "When triggered, it sets off a 3x3 emp pulse with the center suffering a stronger pulse."
|
||||
icon_state = "electric_trap"
|
||||
break_message = "<span class='warning'>The power nullifier sparks, then slowly crumbles to debris!</span>"
|
||||
max_integrity = 40
|
||||
density = FALSE
|
||||
var/activated = FALSE
|
||||
|
||||
/obj/structure/destructible/clockwork/trap/power_nullifier/activate()
|
||||
if(!activated)
|
||||
activated = TRUE
|
||||
empulse(get_turf(src),1,1,TRUE)
|
||||
|
||||
/obj/structure/destructible/clockwork/trap/power_nullifier/emp_act(var/strength=1)
|
||||
activate()
|
||||
@@ -193,15 +193,14 @@
|
||||
pocket_storage_component_path = /datum/component/storage/concrete/pockets/small/collar/locked
|
||||
var/lock = FALSE
|
||||
|
||||
/obj/item/clothing/neck/petcollar/locked/attackby(obj/item/key/collar, mob/user, params)
|
||||
if(lock != FALSE)
|
||||
to_chat(user, "<span class='warning'>With a click the collar unlocks!</span>")
|
||||
lock = FALSE
|
||||
item_flags = NONE
|
||||
else
|
||||
to_chat(user, "<span class='warning'>With a click the collar locks!</span>")
|
||||
lock = TRUE
|
||||
item_flags = NODROP
|
||||
/obj/item/clothing/neck/petcollar/locked/attackby(obj/item/K, mob/user, params)
|
||||
if(istype(K, /obj/item/key/collar))
|
||||
if(lock != FALSE)
|
||||
to_chat(user, "<span class='warning'>With a click the collar unlocks!</span>")
|
||||
lock = FALSE
|
||||
else
|
||||
to_chat(user, "<span class='warning'>With a click the collar locks!</span>")
|
||||
lock = TRUE
|
||||
return
|
||||
|
||||
/obj/item/clothing/neck/petcollar/locked/attack_hand(mob/user)
|
||||
|
||||
@@ -709,3 +709,14 @@
|
||||
reqs = list(/obj/item/tank/internals/oxygen/red = 2, /obj/item/extinguisher = 1, /obj/item/pipe = 3, /obj/item/stack/cable_coil = 30)//red oxygen tank so it looks right
|
||||
category = CAT_MISC
|
||||
tools = list(TOOL_WRENCH, TOOL_WELDER, TOOL_WIRECUTTER)
|
||||
|
||||
/datum/crafting_recipe/goldenbox
|
||||
name = "Gold Plated Toolbox"
|
||||
result = /obj/item/storage/toolbox/gold_fake
|
||||
reqs = list(/obj/item/stack/sheet/cardboard = 1, //so we dont null items in crafting
|
||||
/obj/item/stack/cable_coil = 10,
|
||||
/obj/item/stack/sheet/mineral/gold = 1,
|
||||
/obj/item/stock_parts/cell = 1,
|
||||
/datum/reagent/water = 15)
|
||||
time = 40
|
||||
category = CAT_MISC
|
||||
|
||||
@@ -643,6 +643,11 @@
|
||||
icon_state = "setup_small_pda"
|
||||
desc = "It's a case, for building small electronics with. This one resembles a PDA."
|
||||
|
||||
/obj/item/electronic_assembly/dildo
|
||||
name = "type-g electronic assembly"
|
||||
icon_state = "setup_dildo_medium"
|
||||
desc = "It's a case, for building small electronics with. This one has a phallic design."
|
||||
|
||||
/obj/item/electronic_assembly/small
|
||||
name = "electronic device"
|
||||
icon_state = "setup_device"
|
||||
@@ -674,6 +679,11 @@
|
||||
icon_state = "setup_device_box"
|
||||
desc = "It's a case, for building tiny-sized electronics with. This one has a boxy design."
|
||||
|
||||
/obj/item/electronic_assembly/small/dildo
|
||||
name = "type-f electronic device"
|
||||
icon_state = "setup_dildo_small"
|
||||
desc = "It's a case, for building tiny-sized electronics with. This one has a phallic design."
|
||||
|
||||
/obj/item/electronic_assembly/medium
|
||||
name = "electronic mechanism"
|
||||
icon_state = "setup_medium"
|
||||
@@ -714,6 +724,12 @@
|
||||
icon_state = "setup_medium_radio"
|
||||
desc = "It's a case, for building medium-sized electronics with. This one resembles an old radio."
|
||||
|
||||
/obj/item/electronic_assembly/medium/dildo
|
||||
name = "type-g electronic mechanism"
|
||||
icon_state = "setup_dildo_large"
|
||||
desc = "It's a case, for building medium-sized electronics with. This one has a phallic design."
|
||||
|
||||
|
||||
/obj/item/electronic_assembly/large
|
||||
name = "electronic machine"
|
||||
icon_state = "setup_large"
|
||||
|
||||
@@ -1 +1,868 @@
|
||||
/datum/design/bucket
|
||||
name = "Bucket"
|
||||
id = "bucket"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 200)
|
||||
build_path = /obj/item/reagent_containers/glass/bucket
|
||||
category = list("initial","Tools")
|
||||
|
||||
/datum/design/crowbar
|
||||
name = "Pocket Crowbar"
|
||||
id = "crowbar"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 50)
|
||||
build_path = /obj/item/crowbar
|
||||
category = list("initial","Tools")
|
||||
|
||||
/datum/design/flashlight
|
||||
name = "Flashlight"
|
||||
id = "flashlight"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 50, MAT_GLASS = 20)
|
||||
build_path = /obj/item/flashlight
|
||||
category = list("initial","Tools")
|
||||
|
||||
/datum/design/extinguisher
|
||||
name = "Fire Extinguisher"
|
||||
id = "extinguisher"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 90)
|
||||
build_path = /obj/item/extinguisher
|
||||
category = list("initial","Tools")
|
||||
|
||||
/datum/design/pocketfireextinguisher
|
||||
name = "Pocket Fire Extinguisher"
|
||||
id = "pocketfireextinguisher"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 50, MAT_GLASS = 40)
|
||||
build_path = /obj/item/extinguisher/mini
|
||||
category = list("initial","Tools")
|
||||
|
||||
/datum/design/multitool
|
||||
name = "Multitool"
|
||||
id = "multitool"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 50, MAT_GLASS = 20)
|
||||
build_path = /obj/item/multitool
|
||||
category = list("initial","Tools")
|
||||
|
||||
/datum/design/analyzer
|
||||
name = "Analyzer"
|
||||
id = "analyzer"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 30, MAT_GLASS = 20)
|
||||
build_path = /obj/item/analyzer
|
||||
category = list("initial","Tools")
|
||||
|
||||
/datum/design/tscanner
|
||||
name = "T-Ray Scanner"
|
||||
id = "tscanner"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 150)
|
||||
build_path = /obj/item/t_scanner
|
||||
category = list("initial","Tools")
|
||||
|
||||
/datum/design/weldingtool
|
||||
name = "Welding Tool"
|
||||
id = "welding_tool"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 70, MAT_GLASS = 20)
|
||||
build_path = /obj/item/weldingtool
|
||||
category = list("initial","Tools")
|
||||
|
||||
/datum/design/mini_weldingtool
|
||||
name = "Emergency Welding Tool"
|
||||
id = "mini_welding_tool"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 30, MAT_GLASS = 10)
|
||||
build_path = /obj/item/weldingtool/mini
|
||||
category = list("initial","Tools")
|
||||
|
||||
/datum/design/screwdriver
|
||||
name = "Screwdriver"
|
||||
id = "screwdriver"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 75)
|
||||
build_path = /obj/item/screwdriver
|
||||
category = list("initial","Tools")
|
||||
|
||||
/datum/design/wirecutters
|
||||
name = "Wirecutters"
|
||||
id = "wirecutters"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 80)
|
||||
build_path = /obj/item/wirecutters
|
||||
category = list("initial","Tools")
|
||||
|
||||
/datum/design/wrench
|
||||
name = "Wrench"
|
||||
id = "wrench"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 150)
|
||||
build_path = /obj/item/wrench
|
||||
category = list("initial","Tools")
|
||||
|
||||
/datum/design/welding_helmet
|
||||
name = "Welding Helmet"
|
||||
id = "welding_helmet"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 1750, MAT_GLASS = 400)
|
||||
build_path = /obj/item/clothing/head/welding
|
||||
category = list("initial","Tools")
|
||||
|
||||
/datum/design/cable_coil
|
||||
name = "Cable Coil"
|
||||
id = "cable_coil"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 10, MAT_GLASS = 5)
|
||||
build_path = /obj/item/stack/cable_coil/random
|
||||
category = list("initial","Tools")
|
||||
maxstack = 30
|
||||
|
||||
/datum/design/toolbox
|
||||
name = "Toolbox"
|
||||
id = "tool_box"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 500)
|
||||
build_path = /obj/item/storage/toolbox
|
||||
category = list("initial","Tools")
|
||||
|
||||
/datum/design/apc_board
|
||||
name = "APC Module"
|
||||
id = "power control"
|
||||
build_type = AUTOLATHE | PROTOLATHE
|
||||
materials = list(MAT_METAL = 100, MAT_GLASS = 100)
|
||||
build_path = /obj/item/electronics/apc
|
||||
category = list("initial", "Electronics")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING
|
||||
|
||||
/datum/design/airlock_board
|
||||
name = "Airlock Electronics"
|
||||
id = "airlock_board"
|
||||
build_type = AUTOLATHE | PROTOLATHE
|
||||
materials = list(MAT_METAL = 50, MAT_GLASS = 50)
|
||||
build_path = /obj/item/electronics/airlock
|
||||
category = list("initial", "Electronics")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING
|
||||
|
||||
/datum/design/firelock_board
|
||||
name = "Firelock Circuitry"
|
||||
id = "firelock_board"
|
||||
build_type = AUTOLATHE | PROTOLATHE
|
||||
materials = list(MAT_METAL = 50, MAT_GLASS = 50)
|
||||
build_path = /obj/item/electronics/firelock
|
||||
category = list("initial", "Electronics")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING
|
||||
|
||||
/datum/design/airalarm_electronics
|
||||
name = "Air Alarm Electronics"
|
||||
id = "airalarm_electronics"
|
||||
build_type = AUTOLATHE | PROTOLATHE
|
||||
materials = list(MAT_METAL = 50, MAT_GLASS = 50)
|
||||
build_path = /obj/item/electronics/airalarm
|
||||
category = list("initial", "Electronics")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING
|
||||
|
||||
/datum/design/firealarm_electronics
|
||||
name = "Fire Alarm Electronics"
|
||||
id = "firealarm_electronics"
|
||||
build_type = AUTOLATHE | PROTOLATHE
|
||||
materials = list(MAT_METAL = 50, MAT_GLASS = 50)
|
||||
build_path = /obj/item/electronics/firealarm
|
||||
category = list("initial", "Electronics")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING
|
||||
|
||||
/datum/design/camera
|
||||
name = "Camera"
|
||||
id = "camera"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 50, MAT_GLASS = 100)
|
||||
build_path = /obj/item/camera
|
||||
category = list("initial", "Misc")
|
||||
|
||||
/datum/design/camera_film
|
||||
name = "Camera Film Cartridge"
|
||||
id = "camera_film"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 10, MAT_GLASS = 10)
|
||||
build_path = /obj/item/camera_film
|
||||
category = list("initial", "Misc")
|
||||
|
||||
/datum/design/earmuffs
|
||||
name = "Earmuffs"
|
||||
id = "earmuffs"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 500, MAT_GLASS = 500)
|
||||
build_path = /obj/item/clothing/ears/earmuffs
|
||||
category = list("initial", "Misc")
|
||||
|
||||
/datum/design/pipe_painter
|
||||
name = "Pipe Painter"
|
||||
id = "pipe_painter"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 5000, MAT_GLASS = 2000)
|
||||
build_path = /obj/item/pipe_painter
|
||||
category = list("initial", "Misc")
|
||||
|
||||
/datum/design/airlock_painter
|
||||
name = "Airlock Painter"
|
||||
id = "airlock_painter"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 50, MAT_GLASS = 50)
|
||||
build_path = /obj/item/airlock_painter
|
||||
category = list("initial", "Misc")
|
||||
|
||||
/datum/design/metal
|
||||
name = "Metal"
|
||||
id = "metal"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = MINERAL_MATERIAL_AMOUNT)
|
||||
build_path = /obj/item/stack/sheet/metal
|
||||
category = list("initial","Construction")
|
||||
maxstack = 50
|
||||
|
||||
/datum/design/glass
|
||||
name = "Glass"
|
||||
id = "glass"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_GLASS = MINERAL_MATERIAL_AMOUNT)
|
||||
build_path = /obj/item/stack/sheet/glass
|
||||
category = list("initial","Construction")
|
||||
maxstack = 50
|
||||
|
||||
/datum/design/rglass
|
||||
name = "Reinforced Glass"
|
||||
id = "rglass"
|
||||
build_type = AUTOLATHE | SMELTER | PROTOLATHE
|
||||
materials = list(MAT_METAL = 1000, MAT_GLASS = MINERAL_MATERIAL_AMOUNT)
|
||||
build_path = /obj/item/stack/sheet/rglass
|
||||
category = list("initial","Construction","Stock Parts")
|
||||
maxstack = 50
|
||||
|
||||
/datum/design/rods
|
||||
name = "Metal Rod"
|
||||
id = "rods"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 1000)
|
||||
build_path = /obj/item/stack/rods
|
||||
category = list("initial","Construction")
|
||||
maxstack = 50
|
||||
|
||||
/datum/design/rcd_ammo
|
||||
name = "Compressed Matter Cartridge"
|
||||
id = "rcd_ammo"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 12000, MAT_GLASS=8000)
|
||||
build_path = /obj/item/rcd_ammo
|
||||
category = list("initial","Construction")
|
||||
|
||||
/datum/design/kitchen_knife
|
||||
name = "Kitchen Knife"
|
||||
id = "kitchen_knife"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 12000)
|
||||
build_path = /obj/item/kitchen/knife
|
||||
category = list("initial","Dinnerware")
|
||||
|
||||
/datum/design/fork
|
||||
name = "Fork"
|
||||
id = "fork"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 80)
|
||||
build_path = /obj/item/kitchen/fork
|
||||
category = list("initial","Dinnerware")
|
||||
|
||||
/datum/design/tray
|
||||
name = "Tray"
|
||||
id = "tray"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 3000)
|
||||
build_path = /obj/item/storage/bag/tray
|
||||
category = list("initial","Dinnerware")
|
||||
|
||||
/datum/design/bowl
|
||||
name = "Bowl"
|
||||
id = "bowl"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_GLASS = 500)
|
||||
build_path = /obj/item/reagent_containers/glass/bowl
|
||||
category = list("initial","Dinnerware")
|
||||
|
||||
/datum/design/drinking_glass
|
||||
name = "Drinking Glass"
|
||||
id = "drinking_glass"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_GLASS = 500)
|
||||
build_path = /obj/item/reagent_containers/food/drinks/drinkingglass
|
||||
category = list("initial","Dinnerware")
|
||||
|
||||
/datum/design/shot_glass
|
||||
name = "Shot Glass"
|
||||
id = "shot_glass"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_GLASS = 100)
|
||||
build_path = /obj/item/reagent_containers/food/drinks/drinkingglass/shotglass
|
||||
category = list("initial","Dinnerware")
|
||||
|
||||
/datum/design/shaker
|
||||
name = "Shaker"
|
||||
id = "shaker"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 1500)
|
||||
build_path = /obj/item/reagent_containers/food/drinks/shaker
|
||||
category = list("initial","Dinnerware")
|
||||
|
||||
/datum/design/cultivator
|
||||
name = "Cultivator"
|
||||
id = "cultivator"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL=50)
|
||||
build_path = /obj/item/cultivator
|
||||
category = list("initial","Misc")
|
||||
|
||||
/datum/design/plant_analyzer
|
||||
name = "Plant Analyzer"
|
||||
id = "plant_analyzer"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 30, MAT_GLASS = 20)
|
||||
build_path = /obj/item/plant_analyzer
|
||||
category = list("initial","Misc")
|
||||
|
||||
/datum/design/shovel
|
||||
name = "Shovel"
|
||||
id = "shovel"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 50)
|
||||
build_path = /obj/item/shovel
|
||||
category = list("initial","Misc")
|
||||
|
||||
/datum/design/spade
|
||||
name = "Spade"
|
||||
id = "spade"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 50)
|
||||
build_path = /obj/item/shovel/spade
|
||||
category = list("initial","Misc")
|
||||
|
||||
/datum/design/hatchet
|
||||
name = "Hatchet"
|
||||
id = "hatchet"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 15000)
|
||||
build_path = /obj/item/hatchet
|
||||
category = list("initial","Misc")
|
||||
|
||||
/datum/design/foilhat
|
||||
name = "Tinfoil Hat"
|
||||
id = "tinfoil_hat"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 5500)
|
||||
build_path = /obj/item/clothing/head/foilhat
|
||||
category = list("hacked", "Misc")
|
||||
|
||||
/datum/design/scalpel
|
||||
name = "Scalpel"
|
||||
id = "scalpel"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 4000, MAT_GLASS = 1000)
|
||||
build_path = /obj/item/scalpel
|
||||
category = list("initial", "Medical")
|
||||
|
||||
/datum/design/circular_saw
|
||||
name = "Circular Saw"
|
||||
id = "circular_saw"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 10000, MAT_GLASS = 6000)
|
||||
build_path = /obj/item/circular_saw
|
||||
category = list("initial", "Medical")
|
||||
|
||||
/datum/design/surgicaldrill
|
||||
name = "Surgical Drill"
|
||||
id = "surgicaldrill"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 10000, MAT_GLASS = 6000)
|
||||
build_path = /obj/item/surgicaldrill
|
||||
category = list("initial", "Medical")
|
||||
|
||||
/datum/design/retractor
|
||||
name = "Retractor"
|
||||
id = "retractor"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 6000, MAT_GLASS = 3000)
|
||||
build_path = /obj/item/retractor
|
||||
category = list("initial", "Medical")
|
||||
|
||||
/datum/design/cautery
|
||||
name = "Cautery"
|
||||
id = "cautery"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 2500, MAT_GLASS = 750)
|
||||
build_path = /obj/item/cautery
|
||||
category = list("initial", "Medical")
|
||||
|
||||
/datum/design/hemostat
|
||||
name = "Hemostat"
|
||||
id = "hemostat"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 5000, MAT_GLASS = 2500)
|
||||
build_path = /obj/item/hemostat
|
||||
category = list("initial", "Medical")
|
||||
|
||||
/datum/design/beaker
|
||||
name = "Beaker"
|
||||
id = "beaker"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_GLASS = 500)
|
||||
build_path = /obj/item/reagent_containers/glass/beaker
|
||||
category = list("initial", "Medical")
|
||||
|
||||
/datum/design/large_beaker
|
||||
name = "Large Beaker"
|
||||
id = "large_beaker"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_GLASS = 2500)
|
||||
build_path = /obj/item/reagent_containers/glass/beaker/large
|
||||
category = list("initial", "Medical")
|
||||
|
||||
/datum/design/healthanalyzer
|
||||
name = "Health Analyzer"
|
||||
id = "healthanalyzer"
|
||||
build_type = AUTOLATHE | PROTOLATHE
|
||||
materials = list(MAT_METAL = 500, MAT_GLASS = 50)
|
||||
build_path = /obj/item/healthanalyzer
|
||||
category = list("initial", "Medical")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_MEDICAL
|
||||
|
||||
/datum/design/pillbottle
|
||||
name = "Pill Bottle"
|
||||
id = "pillbottle"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 20, MAT_GLASS = 100)
|
||||
build_path = /obj/item/storage/pill_bottle
|
||||
category = list("initial", "Medical")
|
||||
|
||||
/datum/design/beanbag_slug
|
||||
name = "Beanbag Slug"
|
||||
id = "beanbag_slug"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 250)
|
||||
build_path = /obj/item/ammo_casing/shotgun/beanbag
|
||||
category = list("initial", "Security")
|
||||
|
||||
/datum/design/rubbershot
|
||||
name = "Rubber Shot"
|
||||
id = "rubber_shot"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 4000)
|
||||
build_path = /obj/item/ammo_casing/shotgun/rubbershot
|
||||
category = list("initial", "Security")
|
||||
|
||||
/datum/design/c38
|
||||
name = "Speed Loader (.38 rubber)"
|
||||
id = "c38"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 20000)
|
||||
build_path = /obj/item/ammo_box/c38
|
||||
category = list("initial", "Security")
|
||||
|
||||
/datum/design/recorder
|
||||
name = "Universal Recorder"
|
||||
id = "recorder"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 60, MAT_GLASS = 30)
|
||||
build_path = /obj/item/taperecorder/empty
|
||||
category = list("initial", "Misc")
|
||||
|
||||
/datum/design/tape
|
||||
name = "Tape"
|
||||
id = "tape"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 20, MAT_GLASS = 5)
|
||||
build_path = /obj/item/tape/random
|
||||
category = list("initial", "Misc")
|
||||
|
||||
/datum/design/igniter
|
||||
name = "Igniter"
|
||||
id = "igniter"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 500, MAT_GLASS = 50)
|
||||
build_path = /obj/item/assembly/igniter
|
||||
category = list("initial", "Misc")
|
||||
|
||||
/datum/design/signaler
|
||||
name = "Remote Signaling Device"
|
||||
id = "signaler"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 400, MAT_GLASS = 120)
|
||||
build_path = /obj/item/assembly/signaler
|
||||
category = list("initial", "T-Comm")
|
||||
|
||||
/datum/design/radio_headset
|
||||
name = "Radio Headset"
|
||||
id = "radio_headset"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 75)
|
||||
build_path = /obj/item/radio/headset
|
||||
category = list("initial", "T-Comm")
|
||||
|
||||
/datum/design/bounced_radio
|
||||
name = "Station Bounced Radio"
|
||||
id = "bounced_radio"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 75, MAT_GLASS = 25)
|
||||
build_path = /obj/item/radio/off
|
||||
category = list("initial", "T-Comm")
|
||||
|
||||
/datum/design/intercom_frame
|
||||
name = "Intercom Frame"
|
||||
id = "intercom_frame"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 75, MAT_GLASS = 25)
|
||||
build_path = /obj/item/wallframe/intercom
|
||||
category = list("initial", "T-Comm")
|
||||
|
||||
/datum/design/infrared_emitter
|
||||
name = "Infrared Emitter"
|
||||
id = "infrared_emitter"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 1000, MAT_GLASS = 500)
|
||||
build_path = /obj/item/assembly/infra
|
||||
category = list("initial", "Misc")
|
||||
|
||||
/datum/design/health_sensor
|
||||
name = "Health Sensor"
|
||||
id = "health_sensor"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 800, MAT_GLASS = 200)
|
||||
build_path = /obj/item/assembly/health
|
||||
category = list("initial", "Medical")
|
||||
|
||||
/datum/design/timer
|
||||
name = "Timer"
|
||||
id = "timer"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 500, MAT_GLASS = 50)
|
||||
build_path = /obj/item/assembly/timer
|
||||
category = list("initial", "Misc")
|
||||
|
||||
/datum/design/voice_analyser
|
||||
name = "Voice Analyser"
|
||||
id = "voice_analyser"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 500, MAT_GLASS = 50)
|
||||
build_path = /obj/item/assembly/voice
|
||||
category = list("initial", "Misc")
|
||||
|
||||
/datum/design/light_tube
|
||||
name = "Light Tube"
|
||||
id = "light_tube"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_GLASS = 100)
|
||||
build_path = /obj/item/light/tube
|
||||
category = list("initial", "Construction")
|
||||
|
||||
/datum/design/light_bulb
|
||||
name = "Light Bulb"
|
||||
id = "light_bulb"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_GLASS = 100)
|
||||
build_path = /obj/item/light/bulb
|
||||
category = list("initial", "Construction")
|
||||
|
||||
/datum/design/camera_assembly
|
||||
name = "Camera Assembly"
|
||||
id = "camera_assembly"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 400, MAT_GLASS = 250)
|
||||
build_path = /obj/item/wallframe/camera
|
||||
category = list("initial", "Construction")
|
||||
|
||||
/datum/design/newscaster_frame
|
||||
name = "Newscaster Frame"
|
||||
id = "newscaster_frame"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 14000, MAT_GLASS = 8000)
|
||||
build_path = /obj/item/wallframe/newscaster
|
||||
category = list("initial", "Construction")
|
||||
|
||||
/datum/design/syringe
|
||||
name = "Syringe"
|
||||
id = "syringe"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 10, MAT_GLASS = 20)
|
||||
build_path = /obj/item/reagent_containers/syringe
|
||||
category = list("initial", "Medical")
|
||||
|
||||
/datum/design/prox_sensor
|
||||
name = "Proximity Sensor"
|
||||
id = "prox_sensor"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 800, MAT_GLASS = 200)
|
||||
build_path = /obj/item/assembly/prox_sensor
|
||||
category = list("initial", "Misc")
|
||||
|
||||
/datum/design/foam_dart
|
||||
name = "Box of Foam Darts"
|
||||
id = "foam_dart"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 500)
|
||||
build_path = /obj/item/ammo_box/foambox
|
||||
category = list("initial", "Misc")
|
||||
|
||||
//hacked autolathe recipes
|
||||
/datum/design/flamethrower
|
||||
name = "Flamethrower"
|
||||
id = "flamethrower"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 500)
|
||||
build_path = /obj/item/flamethrower/full
|
||||
category = list("hacked", "Security")
|
||||
|
||||
/datum/design/rcd
|
||||
name = "Rapid Construction Device (RCD)"
|
||||
id = "rcd"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 30000)
|
||||
build_path = /obj/item/construction/rcd
|
||||
category = list("hacked", "Construction")
|
||||
|
||||
/datum/design/rpd
|
||||
name = "Rapid Pipe Dispenser (RPD)"
|
||||
id = "rpd"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 75000, MAT_GLASS = 37500)
|
||||
build_path = /obj/item/pipe_dispenser
|
||||
category = list("hacked", "Construction")
|
||||
|
||||
/datum/design/electropack
|
||||
name = "Electropack"
|
||||
id = "electropack"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 10000, MAT_GLASS = 2500)
|
||||
build_path = /obj/item/electropack
|
||||
category = list("hacked", "Tools")
|
||||
|
||||
/datum/design/large_welding_tool
|
||||
name = "Industrial Welding Tool"
|
||||
id = "large_welding_tool"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 70, MAT_GLASS = 60)
|
||||
build_path = /obj/item/weldingtool/largetank
|
||||
category = list("hacked", "Tools")
|
||||
|
||||
/datum/design/handcuffs
|
||||
name = "Handcuffs"
|
||||
id = "handcuffs"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 500)
|
||||
build_path = /obj/item/restraints/handcuffs
|
||||
category = list("hacked", "Security")
|
||||
|
||||
/datum/design/receiver
|
||||
name = "Modular Receiver"
|
||||
id = "receiver"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 15000)
|
||||
build_path = /obj/item/weaponcrafting/receiver
|
||||
category = list("hacked", "Security")
|
||||
|
||||
/datum/design/shotgun_slug
|
||||
name = "Shotgun Slug"
|
||||
id = "shotgun_slug"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 4000)
|
||||
build_path = /obj/item/ammo_casing/shotgun
|
||||
category = list("hacked", "Security")
|
||||
|
||||
/datum/design/buckshot_shell
|
||||
name = "Buckshot Shell"
|
||||
id = "buckshot_shell"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 4000)
|
||||
build_path = /obj/item/ammo_casing/shotgun/buckshot
|
||||
category = list("hacked", "Security")
|
||||
|
||||
/datum/design/shotgun_dart
|
||||
name = "Shotgun Dart"
|
||||
id = "shotgun_dart"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 4000)
|
||||
build_path = /obj/item/ammo_casing/shotgun/dart
|
||||
category = list("hacked", "Security")
|
||||
|
||||
/datum/design/incendiary_slug
|
||||
name = "Incendiary Slug"
|
||||
id = "incendiary_slug"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 4000)
|
||||
build_path = /obj/item/ammo_casing/shotgun/incendiary
|
||||
category = list("hacked", "Security")
|
||||
|
||||
/datum/design/riot_dart
|
||||
name = "Foam Riot Dart"
|
||||
id = "riot_dart"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 1000) //Discount for making individually - no box = less metal!
|
||||
build_path = /obj/item/ammo_casing/caseless/foam_dart/riot
|
||||
category = list("hacked", "Security")
|
||||
|
||||
/datum/design/riot_darts
|
||||
name = "Foam Riot Dart Box"
|
||||
id = "riot_darts"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 50000) //Comes with 40 darts
|
||||
build_path = /obj/item/ammo_box/foambox/riot
|
||||
category = list("hacked", "Security")
|
||||
|
||||
/datum/design/a357
|
||||
name = "Speed Loader (.357)"
|
||||
id = "a357"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 30000)
|
||||
build_path = /obj/item/ammo_box/a357
|
||||
category = list("hacked", "Security")
|
||||
|
||||
/datum/design/c10mm
|
||||
name = "Ammo Box (10mm)"
|
||||
id = "c10mm"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 30000)
|
||||
build_path = /obj/item/ammo_box/c10mm
|
||||
category = list("hacked", "Security")
|
||||
|
||||
/datum/design/c45
|
||||
name = "Ammo Box (.45)"
|
||||
id = "c45"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 30000)
|
||||
build_path = /obj/item/ammo_box/c45
|
||||
category = list("hacked", "Security")
|
||||
|
||||
/datum/design/c9mm
|
||||
name = "Ammo Box (9mm)"
|
||||
id = "c9mm"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 30000)
|
||||
build_path = /obj/item/ammo_box/c9mm
|
||||
category = list("hacked", "Security")
|
||||
|
||||
/datum/design/cleaver
|
||||
name = "Butcher's Cleaver"
|
||||
id = "cleaver"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 18000)
|
||||
build_path = /obj/item/kitchen/knife/butcher
|
||||
category = list("hacked", "Dinnerware")
|
||||
|
||||
/datum/design/spraycan
|
||||
name = "Spraycan"
|
||||
id = "spraycan"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 100, MAT_GLASS = 100)
|
||||
build_path = /obj/item/toy/crayon/spraycan
|
||||
category = list("initial", "Tools")
|
||||
|
||||
/datum/design/desttagger
|
||||
name = "Destination Tagger"
|
||||
id = "desttagger"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 250, MAT_GLASS = 125)
|
||||
build_path = /obj/item/destTagger
|
||||
category = list("initial", "Electronics")
|
||||
|
||||
/datum/design/handlabeler
|
||||
name = "Hand Labeler"
|
||||
id = "handlabel"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 150, MAT_GLASS = 125)
|
||||
build_path = /obj/item/hand_labeler
|
||||
category = list("initial", "Electronics")
|
||||
|
||||
/datum/design/geiger
|
||||
name = "Geiger Counter"
|
||||
id = "geigercounter"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 150, MAT_GLASS = 150)
|
||||
build_path = /obj/item/geiger_counter
|
||||
category = list("initial", "Tools")
|
||||
|
||||
/datum/design/turret_control_frame
|
||||
name = "Turret Control Frame"
|
||||
id = "turret_control"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 12000)
|
||||
build_path = /obj/item/wallframe/turret_control
|
||||
category = list("initial", "Construction")
|
||||
|
||||
/datum/design/conveyor_belt
|
||||
name = "Conveyor Belt"
|
||||
id = "conveyor_belt"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 5000)
|
||||
build_path = /obj/item/conveyor_construct
|
||||
category = list("initial", "Construction")
|
||||
|
||||
/datum/design/conveyor_switch
|
||||
name = "Conveyor Belt Switch"
|
||||
id = "conveyor_switch"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 450, MAT_GLASS = 190)
|
||||
build_path = /obj/item/conveyor_switch_construct
|
||||
category = list("initial", "Construction")
|
||||
|
||||
/datum/design/laptop
|
||||
name = "Laptop Frame"
|
||||
id = "laptop"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 10000, MAT_GLASS = 1000)
|
||||
build_path = /obj/item/modular_computer/laptop/buildable
|
||||
category = list("initial","Misc")
|
||||
|
||||
/datum/design/tablet
|
||||
name = "Tablet Frame"
|
||||
id = "tablet"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 2000, MAT_GLASS = 1000)
|
||||
build_path = /obj/item/modular_computer/tablet
|
||||
category = list("initial","Misc")
|
||||
|
||||
/datum/design/slime_scanner
|
||||
name = "Slime Scanner"
|
||||
id = "slime_scanner"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 300, MAT_GLASS = 200)
|
||||
build_path = /obj/item/slime_scanner
|
||||
category = list("initial", "Misc")
|
||||
|
||||
/datum/design/pet_carrier
|
||||
name = "Pet Carrier"
|
||||
id = "pet_carrier"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 7500, MAT_GLASS = 100)
|
||||
build_path = /obj/item/pet_carrier
|
||||
category = list("initial", "Misc")
|
||||
|
||||
/datum/design/miniature_power_cell
|
||||
name = "Light Fixture Battery"
|
||||
id = "miniature_power_cell"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_GLASS = 20)
|
||||
build_path = /obj/item/stock_parts/cell/emergency_light
|
||||
category = list("initial", "Electronics")
|
||||
|
||||
/datum/design/packageWrap
|
||||
name = "Package Wrapping"
|
||||
id = "packagewrap"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 200, MAT_GLASS = 200)
|
||||
build_path = /obj/item/stack/packageWrap
|
||||
category = list("initial", "Misc")
|
||||
maxstack = 30
|
||||
|
||||
/datum/design/holodisk
|
||||
name = "Holodisk"
|
||||
id = "holodisk"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 100, MAT_GLASS = 100)
|
||||
build_path = /obj/item/disk/holodisk
|
||||
category = list("initial", "Misc")
|
||||
|
||||
@@ -24,6 +24,17 @@
|
||||
dangerous_construction = TRUE
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SCIENCE
|
||||
|
||||
/datum/design/satchel_holding
|
||||
name = "Satchel of Holding"
|
||||
desc = "A satchel that opens into a localized pocket of bluespace."
|
||||
id = "satchel_holding"
|
||||
build_type = PROTOLATHE
|
||||
materials = list(MAT_GOLD = 3000, MAT_DIAMOND = 1500, MAT_URANIUM = 250, MAT_BLUESPACE = 2000)
|
||||
build_path = /obj/item/storage/backpack/holding/satchel
|
||||
category = list("Bluespace Designs")
|
||||
dangerous_construction = TRUE
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SCIENCE
|
||||
|
||||
/datum/design/biobag_holding
|
||||
name = "Bio Bag of Holding"
|
||||
desc = "A chemical holding thingy. Mostly used for xenobiology."
|
||||
|
||||
@@ -77,6 +77,16 @@
|
||||
category = list("Power Designs")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_ENGINEERING
|
||||
|
||||
/datum/design/inducercombat
|
||||
name = "Combat Ready Inducer"
|
||||
desc = "The improved NT-8475 Electromagnetic Power Inducer can this one has been SCIENCED to allow for combat. It still comes printed with SCIENCED colors!"
|
||||
id = "combatinducer"
|
||||
build_type = PROTOLATHE
|
||||
materials = list(MAT_METAL = 13000, MAT_GLASS = 10000, MAT_SILVER = 1500, MAT_GOLD = 1250, MAT_DIAMOND = 500, MAT_TITANIUM = 1200)
|
||||
build_path = /obj/item/inducer/sci/combat/dry
|
||||
category = list("Power Designs")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SECURITY
|
||||
|
||||
/datum/design/board/pacman
|
||||
name = "Machine Design (PACMAN-type Generator Board)"
|
||||
desc = "The circuit board that for a PACMAN-type portable generator."
|
||||
|
||||
@@ -246,7 +246,7 @@
|
||||
display_name = "Bluespace Pockets"
|
||||
description = "Studies into the mysterious alternate dimension known as bluespace and how to place items in the threads of reality."
|
||||
prereq_ids = list("adv_power", "adv_bluespace", "adv_biotech", "adv_plasma")
|
||||
design_ids = list( "bluespacebodybag","bag_holding", "bluespace_pod", "borg_upgrade_trashofholding", "blutrash")
|
||||
design_ids = list( "bluespacebodybag","bag_holding", "bluespace_pod", "borg_upgrade_trashofholding", "blutrash", "satchel_holding")
|
||||
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5500)
|
||||
export_price = 5000
|
||||
/////////////////////////plasma tech/////////////////////////
|
||||
|
||||
@@ -45,7 +45,8 @@
|
||||
var/species_color = ""
|
||||
var/mutation_color = ""
|
||||
var/no_update = 0
|
||||
var/body_markings //for bodypart markings
|
||||
var/body_markings = "" //for bodypart markings
|
||||
var/body_markings_icon = 'modular_citadel/icons/mob/mam_markings.dmi'
|
||||
var/list/markings_color = list()
|
||||
var/auxmarking
|
||||
var/list/auxmarking_color = list()
|
||||
@@ -260,6 +261,7 @@
|
||||
icon = DEFAULT_BODYPART_ICON_ORGANIC
|
||||
else if(status == BODYPART_ROBOTIC)
|
||||
icon = DEFAULT_BODYPART_ICON_ROBOTIC
|
||||
body_markings = null
|
||||
|
||||
if(owner)
|
||||
owner.updatehealth()
|
||||
@@ -332,14 +334,18 @@
|
||||
species_color = ""
|
||||
|
||||
if("mam_body_markings" in S.default_features)
|
||||
var/datum/sprite_accessory/Smark
|
||||
Smark = GLOB.mam_body_markings_list[H.dna.features["mam_body_markings"]]
|
||||
if(H.dna.features.["mam_body_markings"] != "None")
|
||||
body_markings_icon = Smark.icon
|
||||
body_markings = lowertext(H.dna.features.["mam_body_markings"])
|
||||
if(MATRIXED)
|
||||
markings_color = list(colorlist)
|
||||
else
|
||||
body_markings = "plain"
|
||||
markings_color = (H.dna.features.["mcolor"])
|
||||
else
|
||||
body_markings = "None"
|
||||
body_markings = null
|
||||
markings_color = ""
|
||||
|
||||
if(!dropping_limb && H.dna.check_mutation(HULK))
|
||||
@@ -354,6 +360,7 @@
|
||||
|
||||
if(status == BODYPART_ROBOTIC)
|
||||
dmg_overlay_type = "robotic"
|
||||
body_markings = null
|
||||
|
||||
if(dropping_limb)
|
||||
no_update = TRUE //when attached, the limb won't be affected by the appearance changes of its mob owner.
|
||||
@@ -385,11 +392,11 @@
|
||||
. += image('icons/mob/dam_mob.dmi', "[dmg_overlay_type]_[body_zone]_[brutestate]0", -DAMAGE_LAYER, image_dir)
|
||||
if(burnstate)
|
||||
. += image('icons/mob/dam_mob.dmi', "[dmg_overlay_type]_[body_zone]_0[burnstate]", -DAMAGE_LAYER, image_dir)
|
||||
if(body_markings)
|
||||
if(body_markings && status != BODYPART_ROBOTIC)
|
||||
if(use_digitigrade == NOT_DIGITIGRADE)
|
||||
. += image('modular_citadel/icons/mob/mam_markings.dmi', "[body_markings]_[body_zone]", -MARKING_LAYER, image_dir)
|
||||
. += image(body_markings_icon, "[body_markings]_[body_zone]", -MARKING_LAYER, image_dir)
|
||||
else
|
||||
. += image('modular_citadel/icons/mob/mam_markings.dmi', "[body_markings]_digitigrade_[use_digitigrade]_[body_zone]", -MARKING_LAYER, image_dir)
|
||||
. += image(body_markings_icon, "[body_markings]_digitigrade_[use_digitigrade]_[body_zone]", -MARKING_LAYER, image_dir)
|
||||
|
||||
var/image/limb = image(layer = -BODYPARTS_LAYER, dir = image_dir)
|
||||
var/image/aux
|
||||
@@ -447,9 +454,9 @@
|
||||
marking = image('modular_citadel/icons/mob/markings_notmammals.dmi', "husk_digitigrade_[use_digitigrade]_[body_zone]", -MARKING_LAYER, image_dir)
|
||||
|
||||
else if(!use_digitigrade)
|
||||
marking = image('modular_citadel/icons/mob/mam_markings.dmi', "[body_markings]_[body_zone]", -MARKING_LAYER, image_dir)
|
||||
marking = image(body_markings_icon, "[body_markings]_[body_zone]", -MARKING_LAYER, image_dir)
|
||||
else
|
||||
marking = image('modular_citadel/icons/mob/mam_markings.dmi', "[body_markings]_digitigrade_[use_digitigrade]_[body_zone]", -MARKING_LAYER, image_dir)
|
||||
marking = image(body_markings_icon, "[body_markings]_digitigrade_[use_digitigrade]_[body_zone]", -MARKING_LAYER, image_dir)
|
||||
. += marking
|
||||
|
||||
// Citadel End
|
||||
@@ -461,7 +468,7 @@
|
||||
if(species_id == "husk")
|
||||
auxmarking = image('modular_citadel/icons/mob/markings_notmammals.dmi', "husk_[aux_zone]", -aux_layer, image_dir)
|
||||
else
|
||||
auxmarking = image('modular_citadel/icons/mob/mam_markings.dmi', "[body_markings]_[aux_zone]", -aux_layer, image_dir)
|
||||
auxmarking = image(body_markings_icon, "[body_markings]_[aux_zone]", -aux_layer, image_dir)
|
||||
. += auxmarking
|
||||
|
||||
else
|
||||
@@ -475,21 +482,21 @@
|
||||
. += aux
|
||||
if(body_markings)
|
||||
if(species_id == "husk")
|
||||
auxmarking = image('modular_citadel/icons/mob/mam_markings.dmi', "husk_[aux_zone]", -aux_layer, image_dir)
|
||||
auxmarking = image('modular_citadel/icons/mob/markings_notmammals.dmi', "husk_[aux_zone]", -aux_layer, image_dir)
|
||||
else
|
||||
auxmarking = image('modular_citadel/icons/mob/mam_markings.dmi', "[body_markings]_[aux_zone]", -aux_layer, image_dir)
|
||||
auxmarking = image(body_markings_icon, "[body_markings]_[aux_zone]", -aux_layer, image_dir)
|
||||
. += auxmarking
|
||||
|
||||
if(body_markings)
|
||||
if(species_id == "husk")
|
||||
marking = image('modular_citadel/icons/mob/mam_markings.dmi', "husk_[body_zone]", -MARKING_LAYER, image_dir)
|
||||
marking = image('modular_citadel/icons/mob/markings_notmammals.dmi', "husk_[body_zone]", -MARKING_LAYER, image_dir)
|
||||
else if(species_id == "husk" && use_digitigrade)
|
||||
marking = image('modular_citadel/icons/mob/mam_markings.dmi', "husk_digitigrade_[use_digitigrade]_[body_zone]", -MARKING_LAYER, image_dir)
|
||||
marking = image('modular_citadel/icons/mob/markings_notmammals.dmi', "husk_digitigrade_[use_digitigrade]_[body_zone]", -MARKING_LAYER, image_dir)
|
||||
|
||||
else if(!use_digitigrade)
|
||||
marking = image('modular_citadel/icons/mob/mam_markings.dmi', "[body_markings]_[body_zone]", -MARKING_LAYER, image_dir)
|
||||
marking = image(body_markings_icon, "[body_markings]_[body_zone]", -MARKING_LAYER, image_dir)
|
||||
else
|
||||
marking = image('modular_citadel/icons/mob/mam_markings.dmi', "[body_markings]_digitigrade_[use_digitigrade]_[body_zone]", -MARKING_LAYER, image_dir)
|
||||
marking = image(body_markings_icon, "[body_markings]_digitigrade_[use_digitigrade]_[body_zone]", -MARKING_LAYER, image_dir)
|
||||
. += marking
|
||||
return
|
||||
|
||||
|
||||
@@ -178,6 +178,7 @@
|
||||
L.update_limb(fixed_icon, src)
|
||||
if(robotic)
|
||||
L.change_bodypart_status(BODYPART_ROBOTIC)
|
||||
L.body_markings = null
|
||||
. = L
|
||||
|
||||
/mob/living/carbon/monkey/newBodyPart(zone, robotic, fixed_icon)
|
||||
|
||||
@@ -1438,6 +1438,13 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item))
|
||||
cost = 20
|
||||
restricted_roles = list("Assistant")
|
||||
|
||||
/datum/uplink_item/role_restricted/goldenbox
|
||||
name = "Gold Toolbox"
|
||||
desc = "A gold planted plastitanium toolbox loaded with tools. Comes with a set of AI detection multi-tool and a pare of combat gloves."
|
||||
item = /obj/item/storage/toolbox/gold_real
|
||||
cost = 5 // Has synda tools + gloves + a robust weapon
|
||||
restricted_roles = list("Assistant", "Curator") //Curator do to being made of gold - It fits the theme
|
||||
|
||||
/datum/uplink_item/role_restricted/brainwash_disk
|
||||
name = "Brainwashing Surgery Program"
|
||||
desc = "A disk containing the procedure to perform a brainwashing surgery, allowing you to implant an objective onto a target. \
|
||||
|
||||
Reference in New Issue
Block a user