mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-25 13:07:46 +01:00
RnD autolathe removal + tech level overhaul
This commit is contained in:
@@ -4359,7 +4359,7 @@
|
||||
"bGz" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/poddoor/shutters{dir = 2; id_tag = "mechbay"; name = "Mech Bay"},/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/assembly/chargebay)
|
||||
"bGA" = (/obj/structure/table,/obj/item/weapon/book/manual/robotics_cyborgs{pixel_x = 2; pixel_y = 5},/obj/item/weapon/storage/belt/utility,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/machinery/requests_console{department = "Robotics"; departmentType = 2; name = "Robotics Requests Console"; pixel_y = 30},/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/robotics)
|
||||
"bGB" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/poddoor/shutters{density = 0; dir = 2; icon_state = "shutter0"; id_tag = "robotics"; name = "Robotics Lab Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/assembly/robotics)
|
||||
"bGC" = (/obj/machinery/autolathe,/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/lab)
|
||||
"bGC" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 0; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/lab)
|
||||
"bGD" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 0},/obj/item/weapon/storage/belt/utility,/obj/item/clothing/gloves/color/latex,/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/lab)
|
||||
"bGE" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/machinery/door/window/eastright{base_state = "left"; dir = 2; icon_state = "left"; name = "Robotics Desk"; req_access_txt = "29"},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/folder/white,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/poddoor/shutters{density = 0; dir = 2; icon_state = "shutter0"; id_tag = "robotics"; name = "Robotics Lab Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/assembly/robotics)
|
||||
"bGF" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel{dir = 10; icon_state = "purple"},/area/hallway/primary/starboard/east)
|
||||
@@ -4882,7 +4882,7 @@
|
||||
"bRn" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plasteel{icon_state = "bot"},/area/medical/research{name = "Research Division"})
|
||||
"bRo" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/camera{c_tag = "Research Hallway Entrance"; dir = 2; network = list("Research","SS13")},/turf/simulated/floor/plasteel{icon_state = "bot"},/area/medical/research{name = "Research Division"})
|
||||
"bRp" = (/obj/machinery/door_control{id = "rdlab2"; name = "Research and Development Lab Shutters Control"; pixel_x = -24; pixel_y = -24; req_access_txt = "47"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/lab)
|
||||
"bRq" = (/obj/structure/table,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 0; pixel_y = 0},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 0; pixel_y = 0},/obj/item/stack/tape_roll,/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/lab)
|
||||
"bRq" = (/obj/structure/table,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 0; pixel_y = 0},/obj/item/stack/tape_roll,/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/lab)
|
||||
"bRr" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/space,/area/shuttle/research)
|
||||
"bRs" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor/plating/airless,/area/shuttle/research)
|
||||
"bRt" = (/obj/machinery/computer/shuttle/science,/turf/simulated/shuttle/floor,/area/shuttle/research)
|
||||
|
||||
@@ -25,7 +25,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
|
||||
var/points_per_crate = 5 //points gained per crate returned
|
||||
var/points_per_intel = 250 //points gained per intel returned
|
||||
var/points_per_plasma = 5 //points gained per plasma returned
|
||||
var/points_per_design = 25 //points gained per max reliability research design returned (only for initilally unreliable designs)
|
||||
var/points_per_design = 25 //points gained per research design returned
|
||||
var/centcom_message = "" //Remarks from Centcom on how well you checked the last order.
|
||||
var/list/discoveredPlants = list() //Typepaths for unusual plants we've already sent CentComm, associated with their potencies
|
||||
var/list/techLevels = list()
|
||||
|
||||
@@ -250,6 +250,17 @@ var/list/all_supply_groups = list(supply_emergency,supply_security,supply_engine
|
||||
cost = 10
|
||||
containername = "disabler crate"
|
||||
|
||||
/datum/supply_packs/security/forensics
|
||||
name = "Forensics Crate"
|
||||
contains = list(/obj/item/device/detective_scanner,
|
||||
/obj/item/weapon/storage/box/evidence,
|
||||
/obj/item/device/camera,
|
||||
/obj/item/device/taperecorder,
|
||||
/obj/item/toy/crayon/white,
|
||||
/obj/item/clothing/head/det_hat)
|
||||
cost = 20
|
||||
containername = "forensics crate"
|
||||
|
||||
///// Armory stuff
|
||||
|
||||
/datum/supply_packs/security/armory
|
||||
@@ -895,6 +906,13 @@ var/list/all_supply_groups = list(supply_emergency,supply_security,supply_engine
|
||||
containername = "tank transfer valves crate"
|
||||
access = access_rd
|
||||
|
||||
/datum/supply_packs/science/prototype
|
||||
name = "Machine Prototype Crate"
|
||||
contains = list(/obj/item/device/machineprototype)
|
||||
cost = 80
|
||||
containertype = /obj/structure/closet/crate/secure/scisec
|
||||
containername = "machine prototype crate"
|
||||
access = access_research
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////// Organic /////////////////////////////////////////
|
||||
|
||||
@@ -38,7 +38,6 @@
|
||||
icon_state = "ling_eyeshield"
|
||||
eye_colour = null
|
||||
implant_overlay = null
|
||||
origin_tech = "biotech=4"
|
||||
slot = "eye_ling"
|
||||
status = 0
|
||||
aug_message = "We feel a minute twitch in our eyes, our eyes feel more durable."
|
||||
@@ -61,7 +60,6 @@
|
||||
icon_state = "ling_thermal"
|
||||
eye_colour = null
|
||||
implant_overlay = null
|
||||
origin_tech = "biotech=5;magnets=5"
|
||||
slot = "eye_ling"
|
||||
status = 0
|
||||
aug_message = "We feel a minute twitch in our eyes, and darkness creeps away."
|
||||
@@ -82,4 +80,4 @@
|
||||
var/mob/living/carbon/human/H = owner
|
||||
H.weakeyes = 0
|
||||
H.vision_type = null
|
||||
..()
|
||||
..()
|
||||
|
||||
@@ -113,7 +113,7 @@
|
||||
owner.set_species(species)
|
||||
|
||||
/obj/item/organ/internal/heart/gland/ventcrawling
|
||||
origin_tech = "materials=4;biotech=5;bluespace=3;abductor=3"
|
||||
origin_tech = "materials=4;biotech=5;bluespace=4;abductor=3"
|
||||
cooldown_low = 1800
|
||||
cooldown_high = 2400
|
||||
uses = 1
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
desc = "A currently unactivated swarmer. Swarmers can self activate at any time, it would be wise to immediately dispose of this."
|
||||
icon = 'icons/mob/swarmer.dmi'
|
||||
icon_state = "swarmer_unactivated"
|
||||
origin_tech = "bluespace=4;materials=4;programming=7"
|
||||
|
||||
/obj/item/unactivated_swarmer/New()
|
||||
notify_ghosts("An unactivated swarmer has been created in [get_area(src)]!", enter_link = "<a href=?src=[UID()];ghostjoin=1>(Click to enter)</a>", source = src, action = NOTIFY_ATTACK)
|
||||
|
||||
@@ -230,7 +230,7 @@
|
||||
desc = "Still it beats furiously, emanating an aura of utter hate."
|
||||
icon = 'icons/obj/surgery.dmi'
|
||||
icon_state = "demon_heart"
|
||||
origin_tech = "combat=5;biotech=8"
|
||||
origin_tech = "combat=5;biotech=7"
|
||||
|
||||
/obj/item/organ/internal/heart/demon/update_icon()
|
||||
return //always beating visually
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
desc = "A fragment of the legendary treasure known simply as the 'Soul Stone'. The shard still flickers with a fraction of the full artifact's power."
|
||||
w_class = WEIGHT_CLASS_TINY
|
||||
slot_flags = SLOT_BELT
|
||||
origin_tech = "bluespace=4;materials=4"
|
||||
origin_tech = "bluespace=4;materials=5"
|
||||
var/imprinted = "empty"
|
||||
|
||||
var/usability = TRUE // Can this soul stone be used by anyone, or only cultists/wizards?
|
||||
|
||||
@@ -1072,5 +1072,6 @@ Just an object used in constructing air alarms
|
||||
desc = "Looks like a circuit. Probably is."
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
materials = list(MAT_METAL=50, MAT_GLASS=50)
|
||||
origin_tech = "engineering=2;programming=1"
|
||||
toolspeed = 1
|
||||
usesound = 'sound/items/Deconstruct.ogg'
|
||||
|
||||
@@ -41,30 +41,31 @@
|
||||
/obj/item/weapon/circuitboard/message_monitor
|
||||
name = "Circuit board (Message Monitor)"
|
||||
build_path = /obj/machinery/computer/message_monitor
|
||||
origin_tech = "programming=3"
|
||||
origin_tech = "programming=2"
|
||||
/obj/item/weapon/circuitboard/camera
|
||||
name = "Circuit board (Camera Monitor)"
|
||||
build_path = /obj/machinery/computer/security
|
||||
origin_tech = "programming=2"
|
||||
origin_tech = "programming=2;combat=2"
|
||||
/obj/item/weapon/circuitboard/xenobiology
|
||||
name = "Circuit board (Xenobiology Console)"
|
||||
build_path = /obj/machinery/computer/camera_advanced/xenobio
|
||||
origin_tech = "programming=3;biotech=3"
|
||||
/obj/item/weapon/circuitboard/aicore
|
||||
name = "Circuit board (AI Core)"
|
||||
origin_tech = "programming=4;biotech=2"
|
||||
origin_tech = "programming=3"
|
||||
board_type = "other"
|
||||
/obj/item/weapon/circuitboard/aiupload
|
||||
name = "Circuit board (AI Upload)"
|
||||
build_path = /obj/machinery/computer/aiupload
|
||||
origin_tech = "programming=4"
|
||||
origin_tech = "programming=4;engineering=4"
|
||||
/obj/item/weapon/circuitboard/borgupload
|
||||
name = "Circuit board (Cyborg Upload)"
|
||||
build_path = /obj/machinery/computer/borgupload
|
||||
origin_tech = "programming=4"
|
||||
origin_tech = "programming=4;engineering=4"
|
||||
/obj/item/weapon/circuitboard/med_data
|
||||
name = "Circuit board (Medical Records)"
|
||||
build_path = /obj/machinery/computer/med_data
|
||||
origin_tech = "programming=2;biotech=2"
|
||||
/obj/item/weapon/circuitboard/pandemic
|
||||
name = "circuit board (PanD.E.M.I.C. 2200)"
|
||||
build_path = /obj/machinery/computer/pandemic
|
||||
@@ -76,10 +77,11 @@
|
||||
/obj/item/weapon/circuitboard/communications
|
||||
name = "Circuit board (Communications Console)"
|
||||
build_path = /obj/machinery/computer/communications
|
||||
origin_tech = "programming=2;magnets=2"
|
||||
origin_tech = "programming=3;magnets=3"
|
||||
/obj/item/weapon/circuitboard/card
|
||||
name = "Circuit board (ID Computer)"
|
||||
build_path = /obj/machinery/computer/card
|
||||
origin_tech = "programming=3"
|
||||
/obj/item/weapon/circuitboard/card/minor
|
||||
name = "Circuit board (Dept ID Computer)"
|
||||
build_path = /obj/machinery/computer/card/minor
|
||||
@@ -106,10 +108,11 @@
|
||||
/obj/item/weapon/circuitboard/teleporter
|
||||
name = "Circuit board (Teleporter Console)"
|
||||
build_path = /obj/machinery/computer/teleporter
|
||||
origin_tech = "programming=2;bluespace=2"
|
||||
origin_tech = "programming=3;bluespace=3;plasmatech=3"
|
||||
/obj/item/weapon/circuitboard/secure_data
|
||||
name = "Circuit board (Security Records)"
|
||||
build_path = /obj/machinery/computer/secure_data
|
||||
origin_tech = "programming=2;combat=2"
|
||||
/obj/item/weapon/circuitboard/skills
|
||||
name = "Circuit board (Employment Records)"
|
||||
build_path = /obj/machinery/computer/skills
|
||||
@@ -151,7 +154,7 @@
|
||||
/obj/item/weapon/circuitboard/cloning
|
||||
name = "Circuit board (Cloning Machine Console)"
|
||||
build_path = /obj/machinery/computer/cloning
|
||||
origin_tech = "programming=3;biotech=3"
|
||||
origin_tech = "programming=2;biotech=2"
|
||||
/obj/item/weapon/circuitboard/arcade/battle
|
||||
name = "circuit board (Arcade Battle)"
|
||||
build_path = /obj/machinery/computer/arcade/battle
|
||||
@@ -159,7 +162,7 @@
|
||||
/obj/item/weapon/circuitboard/arcade/orion_trail
|
||||
name = "circuit board (Orion Trail)"
|
||||
build_path = /obj/machinery/computer/arcade/orion_trail
|
||||
origin_tech = "programming=2"
|
||||
origin_tech = "programming=1"
|
||||
/obj/item/weapon/circuitboard/solar_control
|
||||
name = "Circuit board (Solar Control)"
|
||||
build_path = /obj/machinery/power/solar_control
|
||||
@@ -167,6 +170,7 @@
|
||||
/obj/item/weapon/circuitboard/powermonitor
|
||||
name = "Circuit board (Power Monitor)"
|
||||
build_path = /obj/machinery/computer/monitor
|
||||
origin_tech = "programming=2;powerstorage=2"
|
||||
/obj/item/weapon/circuitboard/olddoor
|
||||
name = "Circuit board (DoorMex)"
|
||||
build_path = /obj/machinery/computer/pod/old
|
||||
@@ -219,15 +223,15 @@
|
||||
/obj/item/weapon/circuitboard/crew
|
||||
name = "Circuit board (Crew Monitoring Computer)"
|
||||
build_path = /obj/machinery/computer/crew
|
||||
origin_tech = "programming=3;biotech=2;magnets=2"
|
||||
origin_tech = "programming=2;biotech=2"
|
||||
/obj/item/weapon/circuitboard/mech_bay_power_console
|
||||
name = "Circuit board (Mech Bay Power Control Console)"
|
||||
build_path = /obj/machinery/computer/mech_bay_power_console
|
||||
origin_tech = "programming=2;powerstorage=3"
|
||||
origin_tech = "programming=3;powerstorage=3"
|
||||
/obj/item/weapon/circuitboard/ordercomp
|
||||
name = "Circuit board (Supply Ordering Console)"
|
||||
build_path = /obj/machinery/computer/ordercomp
|
||||
origin_tech = "programming=2"
|
||||
origin_tech = "programming=3"
|
||||
/obj/item/weapon/circuitboard/supplycomp
|
||||
name = "Circuit board (Supply Shuttle Console)"
|
||||
build_path = /obj/machinery/computer/supplycomp
|
||||
@@ -237,19 +241,19 @@
|
||||
/obj/item/weapon/circuitboard/operating
|
||||
name = "Circuit board (Operating Computer)"
|
||||
build_path = /obj/machinery/computer/operating
|
||||
origin_tech = "programming=2;biotech=2"
|
||||
origin_tech = "programming=2;biotech=3"
|
||||
/obj/item/weapon/circuitboard/comm_monitor
|
||||
name = "Circuit board (Telecommunications Monitor)"
|
||||
build_path = /obj/machinery/computer/telecomms/monitor
|
||||
origin_tech = "programming=3"
|
||||
origin_tech = "programming=3;magnets=3;bluespace=2"
|
||||
/obj/item/weapon/circuitboard/comm_server
|
||||
name = "Circuit board (Telecommunications Server Monitor)"
|
||||
build_path = /obj/machinery/computer/telecomms/server
|
||||
origin_tech = "programming=3"
|
||||
origin_tech = "programming=3;magnets=3;bluespace=2"
|
||||
/obj/item/weapon/circuitboard/comm_traffic
|
||||
name = "Circuitboard (Telecommunications Traffic Control)"
|
||||
build_path = /obj/machinery/computer/telecomms/traffic
|
||||
origin_tech = "programming=3"
|
||||
origin_tech = "programming=3;magnets=3;bluespace=2"
|
||||
|
||||
|
||||
/obj/item/weapon/circuitboard/shuttle
|
||||
@@ -285,7 +289,7 @@
|
||||
/obj/item/weapon/circuitboard/aifixer
|
||||
name = "Circuit board (AI Integrity Restorer)"
|
||||
build_path = /obj/machinery/computer/aifixer
|
||||
origin_tech = "programming=3;biotech=2"
|
||||
origin_tech = "programming=2;biotech=2"
|
||||
/obj/item/weapon/circuitboard/area_atmos
|
||||
name = "Circuit board (Area Air Control)"
|
||||
build_path = /obj/machinery/computer/area_atmos
|
||||
@@ -293,7 +297,7 @@
|
||||
/obj/item/weapon/circuitboard/telesci_console
|
||||
name = "Circuit board (Telepad Control Console)"
|
||||
build_path = /obj/machinery/computer/telescience
|
||||
origin_tech = "programming=3;bluespace=2"
|
||||
origin_tech = "programming=3;bluespace=3;plasmatech=4"
|
||||
|
||||
/obj/item/weapon/circuitboard/atmos_automation
|
||||
name = "Circuit board (Atmospherics Automation)"
|
||||
@@ -301,6 +305,7 @@
|
||||
/obj/item/weapon/circuitboard/large_tank_control
|
||||
name = "Circuit board (Atmospheric Tank Control)"
|
||||
build_path = /obj/machinery/computer/general_air_control/large_tank_control
|
||||
origin_tech = "programming=2;engineering=3;materials=2"
|
||||
|
||||
/obj/item/weapon/circuitboard/turbine_computer
|
||||
name = "circuit board (Turbine Computer)"
|
||||
@@ -310,7 +315,7 @@
|
||||
/obj/item/weapon/circuitboard/HONKputer
|
||||
name = "Circuit board (HONKputer)"
|
||||
build_path = /obj/machinery/computer/HONKputer
|
||||
origin_tech = "programming=4"
|
||||
origin_tech = "programming=2"
|
||||
icon = 'icons/obj/machines/HONKputer.dmi'
|
||||
icon_state = "bananium_board"
|
||||
board_type = "honkcomputer"
|
||||
|
||||
@@ -57,10 +57,7 @@
|
||||
else
|
||||
desc += "."
|
||||
|
||||
/obj/machinery/constructable_frame/machine_frame/attackby(obj/item/P as obj, mob/user as mob, params)
|
||||
if(P.crit_fail)
|
||||
to_chat(user, "<span class='danger'>This part is faulty, you cannot add this to the machine!</span>")
|
||||
return
|
||||
/obj/machinery/constructable_frame/machine_frame/attackby(obj/item/P, mob/user, params)
|
||||
switch(state)
|
||||
if(1)
|
||||
if(istype(P, /obj/item/stack/cable_coil))
|
||||
@@ -171,11 +168,10 @@
|
||||
for(var/path in req_components)
|
||||
while(req_components[path] > 0 && (locate(path) in part_list))
|
||||
var/obj/item/part = (locate(path) in part_list)
|
||||
if(!part.crit_fail)
|
||||
added_components[part] = path
|
||||
replacer.remove_from_storage(part, src)
|
||||
req_components[path]--
|
||||
part_list -= part
|
||||
added_components[part] = path
|
||||
replacer.remove_from_storage(part, src)
|
||||
req_components[path]--
|
||||
part_list -= part
|
||||
|
||||
for(var/obj/item/weapon/stock_parts/part in added_components)
|
||||
components += part
|
||||
@@ -265,7 +261,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (SMES)"
|
||||
build_path = /obj/machinery/power/smes
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=4;powerstorage=5;engineering=5"
|
||||
origin_tech = "programming=3;powerstorage=3;engineering=3"
|
||||
frame_desc = "Requires 5 pieces of cable, 5 Power Cells and 1 Capacitor."
|
||||
req_components = list(
|
||||
/obj/item/stack/cable_coil = 5,
|
||||
@@ -276,7 +272,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Emitter)"
|
||||
build_path = /obj/machinery/power/emitter
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=4;powerstorage=5;engineering=5"
|
||||
origin_tech = "programming=3;powerstorage=4;engineering=4"
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/micro_laser = 1,
|
||||
/obj/item/weapon/stock_parts/manipulator = 1)
|
||||
@@ -285,7 +281,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Power Compressor)"
|
||||
build_path = /obj/machinery/power/compressor
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=4;powerstorage=5;engineering=4"
|
||||
origin_tech = "programming=4;powerstorage=4;engineering=4"
|
||||
req_components = list(
|
||||
/obj/item/stack/cable_coil = 5,
|
||||
/obj/item/weapon/stock_parts/manipulator = 6)
|
||||
@@ -294,7 +290,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Power Turbine)"
|
||||
build_path = /obj/machinery/power/turbine
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=4;powerstorage=4;engineering=5"
|
||||
origin_tech = "programming=4;powerstorage=4;engineering=4"
|
||||
req_components = list(
|
||||
/obj/item/stack/cable_coil = 5,
|
||||
/obj/item/weapon/stock_parts/capacitor = 6)
|
||||
@@ -327,7 +323,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Biogenerator)"
|
||||
build_path = /obj/machinery/biogenerator
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=3;biotech=2;materials=3"
|
||||
origin_tech = "programming=2;biotech=3;materials=3"
|
||||
frame_desc = "Requires 1 Matter Bin, 1 Manipulator, 1 piece of cable and 1 Console Screen."
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/matter_bin = 1,
|
||||
@@ -361,7 +357,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Hydroponics Tray)"
|
||||
build_path = /obj/machinery/hydroponics/constructable
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=1;biotech=1"
|
||||
origin_tech = "programming=1;biotech=2"
|
||||
frame_desc = "Requires 2 Matter Bins, 1 Manipulator, and 1 Console Screen."
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/matter_bin = 2,
|
||||
@@ -372,7 +368,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Microwave)"
|
||||
build_path = /obj/machinery/kitchen_machine/microwave
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=1"
|
||||
origin_tech = "programming=2;magnets=2"
|
||||
frame_desc = "Requires 1 Micro Laser, 2 pieces of cable and 1 Console Screen."
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/micro_laser = 1,
|
||||
@@ -383,7 +379,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Oven)"
|
||||
build_path = /obj/machinery/kitchen_machine/oven
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=1;plasmatech=1"
|
||||
origin_tech = "programming=2;magnets=2"
|
||||
frame_desc = "Requires 2 Micro Lasers, 5 pieces of cable and 1 Console Screen."
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/micro_laser = 2,
|
||||
@@ -394,7 +390,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Grill)"
|
||||
build_path = /obj/machinery/kitchen_machine/grill
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=1;plasmatech=1"
|
||||
origin_tech = "programming=2;magnets=2"
|
||||
frame_desc = "Requires 2 Micro Lasers, 5 pieces of cable and 1 Console Screen."
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/micro_laser = 2,
|
||||
@@ -405,7 +401,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Candy Maker)"
|
||||
build_path = /obj/machinery/kitchen_machine/candy_maker
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=2"
|
||||
origin_tech = "programming=2;magnets=2"
|
||||
frame_desc = "Requires 1 Manipulator, 5 pieces of cable and 1 Console Screen."
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/manipulator = 1,
|
||||
@@ -416,7 +412,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Deep Fryer)"
|
||||
build_path = /obj/machinery/cooker/deepfryer
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=2"
|
||||
origin_tech = "programming=1"
|
||||
frame_desc = "Requires 2 Micro Lasers and 5 pieces of cable."
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/micro_laser = 2,
|
||||
@@ -426,7 +422,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Gibber)"
|
||||
build_path = /obj/machinery/gibber
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=1"
|
||||
origin_tech = "programming=2;engineering=2"
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/matter_bin = 1,
|
||||
/obj/item/weapon/stock_parts/manipulator = 1)
|
||||
@@ -435,7 +431,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Tesla Coil)"
|
||||
build_path = /obj/machinery/power/tesla_coil
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=1"
|
||||
origin_tech = "programming=3;magnets=3;powerstorage=3"
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/capacitor = 1)
|
||||
|
||||
@@ -443,7 +439,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Grounding Rod)"
|
||||
build_path = /obj/machinery/power/grounding_rod
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=1"
|
||||
origin_tech = "programming=3;powerstorage=3;magnets=3;plasmatech=2"
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/capacitor = 1)
|
||||
|
||||
@@ -460,16 +456,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Recycler)"
|
||||
build_path = /obj/machinery/recycler
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=1"
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/matter_bin = 1,
|
||||
/obj/item/weapon/stock_parts/manipulator = 1)
|
||||
|
||||
/obj/item/weapon/circuitboard/seed_extractor
|
||||
name = "circuit board (Seed Extractor)"
|
||||
build_path = /obj/machinery/seed_extractor
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=1"
|
||||
origin_tech = "programming=2;engineering=2"
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/matter_bin = 1,
|
||||
/obj/item/weapon/stock_parts/manipulator = 1)
|
||||
@@ -519,7 +506,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Monkey Recycler)"
|
||||
build_path = /obj/machinery/monkey_recycler
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=1"
|
||||
origin_tech = "programming=1;biotech=2"
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/matter_bin = 1,
|
||||
/obj/item/weapon/stock_parts/manipulator = 1)
|
||||
@@ -536,7 +523,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Portable Chem Dispenser)"
|
||||
build_path = /obj/machinery/chem_dispenser/constructable
|
||||
board_type = "machine"
|
||||
origin_tech = "materials=4;engineering=4;programming=4;plasmatech=3;biotech=3"
|
||||
origin_tech = "materials=4;programming=4;plasmatech=4;biotech=3"
|
||||
frame_desc = "Requires 2 Matter Bins, 1 Capacitor, 1 Manipulator, 1 Console Screen, and 1 Power Cell."
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/matter_bin = 2,
|
||||
@@ -549,7 +536,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Chem Master 2999)"
|
||||
build_path = /obj/machinery/chem_master/constructable
|
||||
board_type = "machine"
|
||||
origin_tech = "materials=2;programming=2;biotech=1"
|
||||
origin_tech = "materials=3;programming=2;biotech=3"
|
||||
req_components = list(
|
||||
/obj/item/weapon/reagent_containers/glass/beaker = 2,
|
||||
/obj/item/weapon/stock_parts/manipulator = 1,
|
||||
@@ -559,7 +546,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "circuit board (Chemical Heater)"
|
||||
build_path = /obj/machinery/chem_heater
|
||||
board_type = "machine"
|
||||
origin_tech = "materials=2;engineering=2"
|
||||
origin_tech = "programming=2;engineering=2;biotech=2"
|
||||
frame_desc = "Requires 1 Micro Laser and 1 Console Screen."
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/micro_laser = 1,
|
||||
@@ -625,7 +612,7 @@ to destroy them and players will be able to make replacements.
|
||||
name = "Circuit Board (PACMAN-type Generator)"
|
||||
build_path = /obj/machinery/power/port_gen/pacman
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=3:powerstorage=3;plasmatech=3;engineering=3"
|
||||
origin_tech = "programming=2:powerstorage=3;plasmatech=3;engineering=3"
|
||||
frame_desc = "Requires 1 Matter Bin, 1 Micro-Laser, 2 Pieces of Cable, and 1 Capacitor."
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/matter_bin = 1,
|
||||
@@ -641,7 +628,7 @@ to destroy them and players will be able to make replacements.
|
||||
/obj/item/weapon/circuitboard/pacman/mrs
|
||||
name = "Circuit Board (MRSPACMAN-type Generator)"
|
||||
build_path = /obj/machinery/power/port_gen/pacman/mrs
|
||||
origin_tech = "programming=3;powerstorage=5;engineering=5"
|
||||
origin_tech = "programming=3;powerstorage=4;engineering=4;plasmatech=4"
|
||||
|
||||
obj/item/weapon/circuitboard/rdserver
|
||||
name = "Circuit Board (R&D Server)"
|
||||
@@ -657,7 +644,7 @@ obj/item/weapon/circuitboard/rdserver
|
||||
name = "Circuit board (Exosuit Fabricator)"
|
||||
build_path = /obj/machinery/mecha_part_fabricator
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=3;engineering=3"
|
||||
origin_tech = "programming=2;engineering=2"
|
||||
frame_desc = "Requires 2 Matter Bins, 1 Manipulator, 1 Micro-Laser and 1 Console Screen."
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/matter_bin = 2,
|
||||
@@ -669,7 +656,7 @@ obj/item/weapon/circuitboard/rdserver
|
||||
name = "Circuit board (Spacepod Fabricator)"
|
||||
build_path = /obj/machinery/spod_part_fabricator //ah fuck my life
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=3;engineering=3"
|
||||
origin_tech = "programming=2;engineering=2"
|
||||
frame_desc = "Requires 3 Matter Bins, 2 Manipulators, 2 Micro-Lasers, and 1 Console Screen."
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/matter_bin = 3,
|
||||
@@ -682,7 +669,7 @@ obj/item/weapon/circuitboard/rdserver
|
||||
name = "Circuit board (Clone Pod)"
|
||||
build_path = /obj/machinery/clonepod
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=3;biotech=3"
|
||||
origin_tech = "programming=2;biotech=2"
|
||||
frame_desc = "Requires 2 Manipulator, 2 Scanning Module, 2 pieces of cable and 1 Console Screen."
|
||||
req_components = list(
|
||||
/obj/item/stack/cable_coil = 2,
|
||||
@@ -707,7 +694,7 @@ obj/item/weapon/circuitboard/rdserver
|
||||
name = "circuit board (Mech Bay Recharger)"
|
||||
build_path = /obj/machinery/mech_bay_recharge_port
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=3;powerstorage=4;engineering=4"
|
||||
origin_tech = "programming=3;powerstorage=3;engineering=3"
|
||||
frame_desc = "Requires 1 piece of cable and 5 Capacitors."
|
||||
req_components = list(
|
||||
/obj/item/stack/cable_coil = 1,
|
||||
@@ -717,7 +704,7 @@ obj/item/weapon/circuitboard/rdserver
|
||||
name = "circuit board (Teleporter Hub)"
|
||||
build_path = /obj/machinery/teleport/hub
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=3;engineering=5;bluespace=5;materials=4"
|
||||
origin_tech = "programming=3;engineering=4;bluespace=4;materials=4"
|
||||
frame_desc = "Requires 3 Bluespace Crystals and 1 Matter Bin."
|
||||
req_components = list(
|
||||
/obj/item/weapon/ore/bluespace_crystal = 3,
|
||||
@@ -727,7 +714,7 @@ obj/item/weapon/circuitboard/rdserver
|
||||
name = "circuit board (Teleporter Station)"
|
||||
build_path = /obj/machinery/teleport/station
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=4;engineering=4;bluespace=4"
|
||||
origin_tech = "programming=4;engineering=4;bluespace=4;plasmatech=3"
|
||||
frame_desc = "Requires 2 Bluespace Crystals, 2 Capacitors and 1 Console Screen."
|
||||
req_components = list(
|
||||
/obj/item/weapon/ore/bluespace_crystal = 2,
|
||||
@@ -738,7 +725,7 @@ obj/item/weapon/circuitboard/rdserver
|
||||
name = "circuit board (Permanent Teleporter)"
|
||||
build_path = /obj/machinery/teleport/perma
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=3;engineering=5;bluespace=5;materials=4"
|
||||
origin_tech = "programming=3;engineering=4;bluespace=4;materials=4"
|
||||
frame_desc = "Requires 3 Bluespace Crystals and 1 Matter Bin."
|
||||
req_components = list(
|
||||
/obj/item/weapon/ore/bluespace_crystal = 3,
|
||||
@@ -749,7 +736,7 @@ obj/item/weapon/circuitboard/rdserver
|
||||
name = "Circuit board (Telepad)"
|
||||
build_path = /obj/machinery/telepad
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=4;engineering=3;materials=3;bluespace=4"
|
||||
origin_tech = "programming=4;engineering=3;plasmatech=4;bluespace=4"
|
||||
frame_desc = "Requires 2 Bluespace Crystals, 1 Capacitor, 1 piece of cable and 1 Console Screen."
|
||||
req_components = list(
|
||||
/obj/item/weapon/ore/bluespace_crystal = 2,
|
||||
@@ -773,7 +760,7 @@ obj/item/weapon/circuitboard/rdserver
|
||||
name = "circuit board (Sleeper)"
|
||||
build_path = /obj/machinery/sleeper
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=3;biotech=2;engineering=3;materials=3"
|
||||
origin_tech = "programming=3;biotech=2;engineering=3"
|
||||
frame_desc = "Requires 1 Matter Bin, 1 Manipulator, 1 piece of cable and 2 Console Screens."
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/matter_bin = 1,
|
||||
@@ -794,7 +781,7 @@ obj/item/weapon/circuitboard/rdserver
|
||||
name = "circuit board (Body Scanner)"
|
||||
build_path = /obj/machinery/bodyscanner
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=3;biotech=2;engineering=3;materials=3"
|
||||
origin_tech = "programming=3;biotech=2;engineering=3"
|
||||
frame_desc = "Requires 1 Scanning Module, 2 pieces of cable and 2 Console Screens."
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/scanning_module = 1,
|
||||
@@ -805,7 +792,7 @@ obj/item/weapon/circuitboard/rdserver
|
||||
name = "circuit board (Body Scanner Console)"
|
||||
build_path = /obj/machinery/body_scanconsole
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=3;biotech=2;engineering=3;materials=3"
|
||||
origin_tech = "programming=3;biotech=2;engineering=3"
|
||||
frame_desc = "Requires 2 pieces of cable and 2 Console Screens."
|
||||
req_components = list(
|
||||
/obj/item/stack/cable_coil = 2,
|
||||
@@ -815,7 +802,7 @@ obj/item/weapon/circuitboard/rdserver
|
||||
name = "circuit board (Cryotube)"
|
||||
build_path = /obj/machinery/atmospherics/unary/cryo_cell
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=4;biotech=3;engineering=4"
|
||||
origin_tech = "programming=4;biotech=3;engineering=4;plasmatech=3"
|
||||
frame_desc = "Requires 1 Matter Bin, 1 piece of cable and 4 Console Screens."
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/matter_bin = 1,
|
||||
@@ -933,7 +920,7 @@ obj/item/weapon/circuitboard/rdserver
|
||||
name = "circuit board (Mining Equipment Vendor)"
|
||||
build_path = /obj/machinery/mineral/equipment_vendor
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=1;engineering=2"
|
||||
origin_tech = "programming=1;engineering=3"
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/console_screen = 1,
|
||||
/obj/item/weapon/stock_parts/matter_bin = 3)
|
||||
@@ -942,7 +929,7 @@ obj/item/weapon/circuitboard/rdserver
|
||||
name = "circuit board (Claw Game)"
|
||||
build_path = /obj/machinery/arcade/claw
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=2"
|
||||
origin_tech = "programming=1"
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/matter_bin = 1,
|
||||
/obj/item/weapon/stock_parts/manipulator = 1,
|
||||
@@ -953,7 +940,7 @@ obj/item/weapon/circuitboard/rdserver
|
||||
name = "circuit board (Prize Counter)"
|
||||
build_path = /obj/machinery/prize_counter
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=2;materials=2"
|
||||
origin_tech = "programming=1"
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/matter_bin = 1,
|
||||
/obj/item/weapon/stock_parts/manipulator = 1,
|
||||
@@ -964,7 +951,7 @@ obj/item/weapon/circuitboard/rdserver
|
||||
name = "circuit board (Virtual Gameboard)"
|
||||
build_path = /obj/machinery/gameboard
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=2"
|
||||
origin_tech = "programming=1"
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/micro_laser = 1,
|
||||
/obj/item/stack/cable_coil = 3,
|
||||
|
||||
@@ -126,12 +126,12 @@
|
||||
/obj/item/weapon/circuitboard/cryopodcontrol
|
||||
name = "Circuit board (Cryogenic Oversight Console)"
|
||||
build_path = "/obj/machinery/computer/cryopod"
|
||||
origin_tech = "programming=3"
|
||||
origin_tech = "programming=1"
|
||||
|
||||
/obj/item/weapon/circuitboard/robotstoragecontrol
|
||||
name = "Circuit board (Robotic Storage Console)"
|
||||
build_path = "/obj/machinery/computer/cryopod/robot"
|
||||
origin_tech = "programming=3"
|
||||
origin_tech = "programming=1"
|
||||
|
||||
//Decorative structures to go alongside cryopods.
|
||||
/obj/structure/cryofeed
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
icon_state = "door_electronics"
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
materials = list(MAT_METAL=50, MAT_GLASS=50)
|
||||
|
||||
origin_tech = "engineering=2;programming=1"
|
||||
req_access = list(access_engine)
|
||||
|
||||
var/list/conf_access = null
|
||||
|
||||
@@ -261,6 +261,7 @@
|
||||
desc = "A circuit board used in construction of firelocks."
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
materials = list(MAT_METAL=50, MAT_GLASS=50)
|
||||
origin_tech = "engineering=2;programming=1"
|
||||
toolspeed = 1
|
||||
usesound = 'sound/items/Deconstruct.ogg'
|
||||
|
||||
|
||||
@@ -269,6 +269,7 @@ Just a object used in constructing fire alarms
|
||||
desc = "A circuit. It has a label on it, it says \"Can handle heat levels up to 40 degrees celsius!\""
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
materials = list(MAT_METAL=50, MAT_GLASS=50)
|
||||
origin_tech = "engineering=2;programming=1"
|
||||
toolspeed = 1
|
||||
usesound = 'sound/items/Deconstruct.ogg'
|
||||
|
||||
|
||||
@@ -404,8 +404,6 @@ Class Procs:
|
||||
on_deconstruction()
|
||||
spawn_frame()
|
||||
for(var/obj/item/I in component_parts)
|
||||
if(I.reliability != 100 && crit_fail)
|
||||
I.crit_fail = 1
|
||||
I.forceMove(loc)
|
||||
qdel(src)
|
||||
|
||||
|
||||
@@ -551,7 +551,7 @@
|
||||
name = "Circuit board (Programmable Unloader)"
|
||||
build_path = "/obj/machinery/programmable"
|
||||
board_type = "machine"
|
||||
origin_tech = "engineering=3;programming=6"
|
||||
origin_tech = "engineering=1;programming=2"
|
||||
frame_desc = "Requires 2 Manipulators, 1 Scanning Module, 1 Cable."
|
||||
req_components = list(
|
||||
/obj/item/weapon/stock_parts/scanning_module = 1,
|
||||
|
||||
@@ -193,7 +193,7 @@
|
||||
icon_state = "bombcore"
|
||||
item_state = "eshield0"
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
origin_tech = "syndicate=6;combat=5"
|
||||
origin_tech = "syndicate=5;combat=6"
|
||||
burn_state = FLAMMABLE //Burnable (but the casing isn't)
|
||||
var/adminlog = null
|
||||
|
||||
@@ -311,7 +311,7 @@
|
||||
icon_state = "bigred"
|
||||
item_state = "electronic"
|
||||
w_class = WEIGHT_CLASS_TINY
|
||||
origin_tech = "syndicate=2"
|
||||
origin_tech = "syndicate=3"
|
||||
var/cooldown = 0
|
||||
var/detonated = 0
|
||||
var/existant = 0
|
||||
|
||||
@@ -68,8 +68,6 @@
|
||||
// Drop all the component stuff
|
||||
if(component_parts)
|
||||
for(var/obj/I in component_parts)
|
||||
if(I.reliability != 100 && crit_fail)
|
||||
I.crit_fail = 1
|
||||
I.loc = src.loc
|
||||
else
|
||||
// If the machine wasn't made during runtime, probably doesn't have components:
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
//TODO: Add critfail checks and reliability
|
||||
//DO NOT ADD MECHA PARTS TO THE GAME WITH THE DEFAULT "SPRITE ME" SPRITE!
|
||||
//I'm annoyed I even have to tell you this! SPRITE FIRST, then commit.
|
||||
|
||||
@@ -7,7 +6,7 @@
|
||||
icon = 'icons/mecha/mecha_equipment.dmi'
|
||||
icon_state = "mecha_equip"
|
||||
force = 5
|
||||
origin_tech = "materials=2"
|
||||
origin_tech = "materials=2;engineering=2"
|
||||
var/equip_cooldown = 0
|
||||
var/equip_ready = 1
|
||||
var/energy_drain = 0
|
||||
|
||||
@@ -110,7 +110,6 @@
|
||||
name = "exosuit mining scanner"
|
||||
desc = "Equipment for engineering and combat exosuits. It will automatically check surrounding rock for useful minerals."
|
||||
icon_state = "mecha_analyzer"
|
||||
origin_tech = "materials=3;engineering=2"
|
||||
selectable = 0
|
||||
equip_cooldown = 30
|
||||
var/scanning = 0
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
name = "mounted teleporter"
|
||||
desc = "An exosuit module that allows exosuits to teleport to any position in view."
|
||||
icon_state = "mecha_teleport"
|
||||
origin_tech = "bluespace=10"
|
||||
origin_tech = "bluespace=7"
|
||||
equip_cooldown = 150
|
||||
energy_drain = 8000
|
||||
range = RANGED
|
||||
@@ -25,7 +25,7 @@
|
||||
/obj/item/mecha_parts/mecha_equipment/teleporter/precise
|
||||
name = "upgraded teleporter"
|
||||
desc = "An exosuit module that allows exosuits to teleport to any position in view. This is the high-precision, energy-efficient version."
|
||||
origin_tech = "bluespace=13"
|
||||
origin_tech = "bluespace=7"
|
||||
energy_drain = 1000
|
||||
tele_precision = 1
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
name = "mounted wormhole generator"
|
||||
desc = "An exosuit module that allows generating of small quasi-stable wormholes."
|
||||
icon_state = "mecha_wholegen"
|
||||
origin_tech = "bluespace=3"
|
||||
origin_tech = "bluespace=4;magnets=4;plasmatech=2"
|
||||
equip_cooldown = 50
|
||||
energy_drain = 300
|
||||
range = RANGED
|
||||
@@ -82,7 +82,7 @@
|
||||
name = "mounted gravitational catapult"
|
||||
desc = "An exosuit mounted Gravitational Catapult."
|
||||
icon_state = "mecha_teleport"
|
||||
origin_tech = "bluespace=2;magnets=3"
|
||||
origin_tech = "bluespace=3;magnets=3;engineering=4"
|
||||
equip_cooldown = 10
|
||||
energy_drain = 100
|
||||
range = MELEE|RANGED
|
||||
@@ -145,7 +145,7 @@
|
||||
name = "Armor Booster Module (Close Combat Weaponry)"
|
||||
desc = "Boosts exosuit armor against armed melee attacks. Requires energy to operate."
|
||||
icon_state = "mecha_abooster_ccw"
|
||||
origin_tech = "materials=3"
|
||||
origin_tech = "materials=4;combat=4"
|
||||
equip_cooldown = 10
|
||||
energy_drain = 50
|
||||
range = 0
|
||||
@@ -163,7 +163,7 @@
|
||||
name = "Armor Booster Module (Ranged Weaponry)"
|
||||
desc = "Boosts exosuit armor against ranged attacks. Completely blocks taser shots. Requires energy to operate."
|
||||
icon_state = "mecha_abooster_proj"
|
||||
origin_tech = "materials=4"
|
||||
origin_tech = "materials=4;combat=3;engineering=3"
|
||||
equip_cooldown = 10
|
||||
energy_drain = 50
|
||||
range = 0
|
||||
@@ -183,7 +183,7 @@
|
||||
name = "Repair Droid"
|
||||
desc = "Automated repair droid. Scans exosuit for damage and repairs it. Can fix almost all types of external or internal damage."
|
||||
icon_state = "repair_droid"
|
||||
origin_tech = "magnets=3;programming=3"
|
||||
origin_tech ="magnets=3;programming=3;engineering=4"
|
||||
equip_cooldown = 20
|
||||
energy_drain = 50
|
||||
range = 0
|
||||
@@ -490,4 +490,4 @@
|
||||
/obj/item/mecha_parts/mecha_equipment/generator/nuclear/process()
|
||||
if(..())
|
||||
for(var/mob/living/carbon/M in view(chassis))
|
||||
M.apply_effect((rad_per_cycle * 3),IRRADIATE,0)
|
||||
M.apply_effect((rad_per_cycle * 3),IRRADIATE,0)
|
||||
|
||||
@@ -188,7 +188,7 @@
|
||||
name = "Mounted RCD"
|
||||
desc = "An exosuit-mounted Rapid Construction Device. (Can be attached to: Any exosuit)"
|
||||
icon_state = "mecha_rcd"
|
||||
origin_tech = "materials=4;bluespace=3;magnets=4;powerstorage=4"
|
||||
origin_tech = "materials=4;bluespace=3;magnets=4;powerstorage=4;engineering=4"
|
||||
equip_cooldown = 10
|
||||
energy_drain = 250
|
||||
range = MELEE|RANGED
|
||||
@@ -287,7 +287,7 @@
|
||||
name = "mounted MRCD"
|
||||
desc = "An exosuit-mounted Mime Rapid Construction Device. (Can be attached to: Reticence)"
|
||||
icon_state = "mecha_rcd"
|
||||
origin_tech = "materials=4;bluespace=3;magnets=4;powerstorage=4"
|
||||
origin_tech = "materials=4;bluespace=3;magnets=4;powerstorage=4;engineering=4"
|
||||
equip_cooldown = 10
|
||||
energy_drain = 250
|
||||
range = MELEE|RANGED
|
||||
|
||||
@@ -70,6 +70,7 @@
|
||||
equip_cooldown = 8
|
||||
name = "CH-PS \"Firedart\" Laser"
|
||||
icon_state = "mecha_laser"
|
||||
origin_tech = "magnets=3;combat=3;engineering=3"
|
||||
energy_drain = 30
|
||||
projectile = /obj/item/projectile/beam
|
||||
fire_sound = 'sound/weapons/Laser.ogg'
|
||||
@@ -84,6 +85,7 @@
|
||||
equip_cooldown = 10
|
||||
name = "CH-LC \"Solaris\" Laser Cannon"
|
||||
icon_state = "mecha_laser"
|
||||
origin_tech = "magnets=4;combat=4;engineering=3"
|
||||
energy_drain = 60
|
||||
projectile = /obj/item/projectile/beam/laser/heavylaser
|
||||
fire_sound = 'sound/weapons/lasercannonfire.ogg'
|
||||
@@ -92,6 +94,7 @@
|
||||
equip_cooldown = 40
|
||||
name = "mkIV Ion Heavy Cannon"
|
||||
icon_state = "mecha_ion"
|
||||
origin_tech = "materials=4;combat=5;magnets=4"
|
||||
energy_drain = 120
|
||||
projectile = /obj/item/projectile/ion
|
||||
fire_sound = 'sound/weapons/Laser.ogg'
|
||||
@@ -170,6 +173,7 @@
|
||||
/obj/item/mecha_parts/mecha_equipment/weapon/energy/taser
|
||||
name = "PBT \"Pacifier\" Mounted Taser"
|
||||
icon_state = "mecha_taser"
|
||||
origin_tech = "combat=3"
|
||||
energy_drain = 20
|
||||
equip_cooldown = 8
|
||||
projectile = /obj/item/projectile/energy/electrode
|
||||
@@ -270,6 +274,7 @@
|
||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/carbine
|
||||
name = "FNX-66 Carbine"
|
||||
icon_state = "mecha_carbine"
|
||||
origin_tech = "materials=4;combat=4"
|
||||
equip_cooldown = 5
|
||||
projectile = /obj/item/projectile/bullet/incendiary/shell/dragonsbreath
|
||||
fire_sound = 'sound/weapons/Gunshot.ogg'
|
||||
@@ -294,6 +299,7 @@
|
||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot
|
||||
name = "LBX AC 10 \"Scattershot\""
|
||||
icon_state = "mecha_scatter"
|
||||
origin_tech = "combat=4"
|
||||
equip_cooldown = 20
|
||||
projectile = /obj/item/projectile/bullet/midbullet
|
||||
fire_sound = 'sound/weapons/Gunshot.ogg'
|
||||
@@ -305,6 +311,7 @@
|
||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg
|
||||
name = "Ultra AC 2"
|
||||
icon_state = "mecha_uac2"
|
||||
origin_tech = "combat=4"
|
||||
equip_cooldown = 10
|
||||
projectile = /obj/item/projectile/bullet/weakbullet3
|
||||
fire_sound = 'sound/weapons/Gunshot.ogg'
|
||||
@@ -321,6 +328,7 @@
|
||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack
|
||||
name = "SRM-8 Light Missile Rack"
|
||||
icon_state = "mecha_missilerack"
|
||||
origin_tech = "combat=5;materials=4;engineering=4"
|
||||
projectile = /obj/item/missile
|
||||
fire_sound = 'sound/effects/bang.ogg'
|
||||
projectiles = 8
|
||||
@@ -373,6 +381,7 @@
|
||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang
|
||||
name = "SGL-6 Grenade Launcher"
|
||||
icon_state = "mecha_grenadelnchr"
|
||||
origin_tech = "combat=4;engineering=4"
|
||||
projectile = /obj/item/weapon/grenade/flashbang
|
||||
fire_sound = 'sound/effects/bang.ogg'
|
||||
projectiles = 6
|
||||
@@ -398,6 +407,7 @@
|
||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang/clusterbang//Because I am a heartless bastard -Sieve
|
||||
name = "SOB-3 Grenade Launcher"
|
||||
desc = "A weapon for combat exosuits. Launches primed clusterbangs. You monster."
|
||||
origin_tech = "combat=4;materials=4"
|
||||
projectiles = 3
|
||||
projectile = /obj/item/weapon/grenade/clusterbuster
|
||||
projectile_energy_cost = 1600 //getting off cheap seeing as this is 3 times the flashbangs held in the grenade launcher.
|
||||
@@ -504,7 +514,7 @@
|
||||
icon_state = "mecha_plasmacutter"
|
||||
item_state = "plasmacutter"
|
||||
energy_drain = 30
|
||||
origin_tech = "materials=3;combat=2;powerstorage=3;plasmatech=3"
|
||||
origin_tech = "materials=3;plasmatech=4;engineering=3"
|
||||
projectile = /obj/item/projectile/plasma/adv/mech
|
||||
fire_sound = 'sound/weapons/laser.ogg'
|
||||
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
idle_power_usage = 20
|
||||
active_power_usage = 5000
|
||||
var/time_coeff = 1
|
||||
var/component_coeff = 1
|
||||
var/list/resources = list(
|
||||
MAT_METAL=0,
|
||||
MAT_GLASS=0,
|
||||
@@ -77,6 +78,12 @@
|
||||
T += M.rating
|
||||
res_max_amount = (187000+(T * 37500))
|
||||
|
||||
//resources adjustment coefficient (1 -> 0.85 -> 0.7 -> 0.55)
|
||||
T = 1.15
|
||||
for(var/obj/item/weapon/stock_parts/micro_laser/Ma in component_parts)
|
||||
T -= Ma.rating*0.15
|
||||
component_coeff = T
|
||||
|
||||
//building time adjustment coefficient (1 -> 0.8 -> 0.6)
|
||||
T = -1
|
||||
for(var/obj/item/weapon/stock_parts/manipulator/Ml in component_parts)
|
||||
@@ -246,7 +253,7 @@
|
||||
return
|
||||
|
||||
/obj/machinery/mecha_part_fabricator/proc/get_resource_cost_w_coeff(datum/design/D, resource, roundto = 1)
|
||||
return round(D.materials[resource], roundto)
|
||||
return round(D.materials[resource]*component_coeff, roundto)
|
||||
|
||||
/obj/machinery/mecha_part_fabricator/proc/get_construction_time_w_coeff(datum/design/D, roundto = 1) //aran
|
||||
return round(initial(D.construction_time)*time_coeff, roundto)
|
||||
|
||||
@@ -602,7 +602,6 @@
|
||||
WR.crowbar_salvage += E
|
||||
E.forceMove(WR)
|
||||
E.equip_ready = 1
|
||||
E.reliability = round(rand(E.reliability/3,E.reliability))
|
||||
else
|
||||
E.forceMove(loc)
|
||||
qdel(E)
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
icon_state = "blank"
|
||||
w_class = WEIGHT_CLASS_GIGANTIC
|
||||
flags = CONDUCT
|
||||
origin_tech = "programming=2;materials=2"
|
||||
origin_tech = "programming=2;materials=2;engineering=2"
|
||||
|
||||
|
||||
/obj/item/mecha_parts/chassis
|
||||
@@ -47,25 +47,21 @@
|
||||
name="Ripley Left Arm"
|
||||
desc="A Ripley APLU left arm. Data and power sockets are compatible with most exosuit tools."
|
||||
icon_state = "ripley_l_arm"
|
||||
origin_tech = "programming=2;materials=2;engineering=2"
|
||||
|
||||
/obj/item/mecha_parts/part/ripley_right_arm
|
||||
name="Ripley Right Arm"
|
||||
desc="A Ripley APLU right arm. Data and power sockets are compatible with most exosuit tools."
|
||||
icon_state = "ripley_r_arm"
|
||||
origin_tech = "programming=2;materials=2;engineering=2"
|
||||
|
||||
/obj/item/mecha_parts/part/ripley_left_leg
|
||||
name="Ripley Left Leg"
|
||||
desc="A Ripley APLU left leg. Contains somewhat complex servodrives and balance maintaining systems."
|
||||
icon_state = "ripley_l_leg"
|
||||
origin_tech = "programming=2;materials=2;engineering=2"
|
||||
|
||||
/obj/item/mecha_parts/part/ripley_right_leg
|
||||
name="Ripley Right Leg"
|
||||
desc="A Ripley APLU right leg. Contains somewhat complex servodrives and balance maintaining systems."
|
||||
icon_state = "ripley_r_leg"
|
||||
origin_tech = "programming=2;materials=2;engineering=2"
|
||||
|
||||
///////// Gygax
|
||||
|
||||
@@ -80,40 +76,40 @@
|
||||
name="Gygax Torso"
|
||||
desc="A torso part of Gygax. Contains power unit, processing core and life support systems. Has an additional equipment slot."
|
||||
icon_state = "gygax_harness"
|
||||
origin_tech = "programming=2;materials=2;biotech=3;engineering=3"
|
||||
origin_tech = "programming=2;materials=4;biotech=3;engineering=3"
|
||||
|
||||
/obj/item/mecha_parts/part/gygax_head
|
||||
name="Gygax Head"
|
||||
desc="A Gygax head. Houses advanced surveilance and targeting sensors."
|
||||
icon_state = "gygax_head"
|
||||
origin_tech = "programming=2;materials=2;magnets=3;engineering=3"
|
||||
origin_tech = "programming=2;materials=4;magnets=3;engineering=3"
|
||||
|
||||
/obj/item/mecha_parts/part/gygax_left_arm
|
||||
name="Gygax Left Arm"
|
||||
desc="A Gygax left arm. Data and power sockets are compatible with most exosuit tools and weapons."
|
||||
icon_state = "gygax_l_arm"
|
||||
origin_tech = "programming=2;materials=2;engineering=3"
|
||||
origin_tech = "programming=2;materials=4;engineering=3"
|
||||
|
||||
/obj/item/mecha_parts/part/gygax_right_arm
|
||||
name="Gygax Right Arm"
|
||||
desc="A Gygax right arm. Data and power sockets are compatible with most exosuit tools and weapons."
|
||||
icon_state = "gygax_r_arm"
|
||||
origin_tech = "programming=2;materials=2;engineering=3"
|
||||
origin_tech = "programming=2;materials=4;engineering=3"
|
||||
|
||||
/obj/item/mecha_parts/part/gygax_left_leg
|
||||
name="Gygax Left Leg"
|
||||
icon_state = "gygax_l_leg"
|
||||
origin_tech = "programming=2;materials=2;engineering=3"
|
||||
origin_tech = "programming=2;materials=4;engineering=3"
|
||||
|
||||
/obj/item/mecha_parts/part/gygax_right_leg
|
||||
name="Gygax Right Leg"
|
||||
icon_state = "gygax_r_leg"
|
||||
origin_tech = "programming=2;materials=2;engineering=3"
|
||||
origin_tech = "programming=2;materials=4;engineering=3"
|
||||
|
||||
/obj/item/mecha_parts/part/gygax_armour
|
||||
name="Gygax Armour Plates"
|
||||
icon_state = "gygax_armour"
|
||||
origin_tech = "materials=6;combat=4;engineering=5"
|
||||
origin_tech = "materials=6;combat=4;engineering=4"
|
||||
|
||||
|
||||
//////////// Durand
|
||||
@@ -158,7 +154,7 @@
|
||||
/obj/item/mecha_parts/part/durand_armor
|
||||
name="Durand Armour Plates"
|
||||
icon_state = "durand_armor"
|
||||
origin_tech = "materials=5;combat=4;engineering=5"
|
||||
origin_tech = "materials=5;combat=4;engineering=4"
|
||||
|
||||
|
||||
|
||||
@@ -278,7 +274,6 @@
|
||||
|
||||
/obj/item/mecha_parts/chassis/phazon
|
||||
name = "Phazon Chassis"
|
||||
origin_tech = "materials=6"
|
||||
|
||||
New()
|
||||
..()
|
||||
@@ -287,38 +282,38 @@
|
||||
/obj/item/mecha_parts/part/phazon_torso
|
||||
name="Phazon Torso"
|
||||
icon_state = "phazon_harness"
|
||||
origin_tech = "programming=5;materials=6;bluespace=5;powerstorage=5"
|
||||
origin_tech = "programming=4;materials=4;bluespace=4;plasmatech=5"
|
||||
|
||||
/obj/item/mecha_parts/part/phazon_head
|
||||
name="Phazon Head"
|
||||
icon_state = "phazon_head"
|
||||
origin_tech = "programming=4;materials=5;magnets=5"
|
||||
origin_tech = "programming=3;materials=3;magnets=3"
|
||||
|
||||
/obj/item/mecha_parts/part/phazon_left_arm
|
||||
name="Phazon Left Arm"
|
||||
icon_state = "phazon_l_arm"
|
||||
origin_tech = "materials=5;bluespace=2;magnets=2"
|
||||
origin_tech = "materials=3;bluespace=3;magnets=3"
|
||||
|
||||
/obj/item/mecha_parts/part/phazon_right_arm
|
||||
name="Phazon Right Arm"
|
||||
icon_state = "phazon_r_arm"
|
||||
origin_tech = "materials=5;bluespace=2;magnets=2"
|
||||
origin_tech = "materials=3;bluespace=3;magnets=3"
|
||||
|
||||
/obj/item/mecha_parts/part/phazon_left_leg
|
||||
name="Phazon Left Leg"
|
||||
icon_state = "phazon_l_leg"
|
||||
origin_tech = "materials=5;bluespace=3;magnets=3"
|
||||
origin_tech = "materials=3;bluespace=3;magnets=3"
|
||||
|
||||
/obj/item/mecha_parts/part/phazon_right_leg
|
||||
name="Phazon Right Leg"
|
||||
icon_state = "phazon_r_leg"
|
||||
origin_tech = "materials=5;bluespace=3;magnets=3"
|
||||
origin_tech = "materials=3;bluespace=3;magnets=3"
|
||||
|
||||
/obj/item/mecha_parts/part/phazon_armor
|
||||
name="Phazon armor"
|
||||
desc="Phazon armor plates. They are layered with plasma to protect the pilot from the stress of phasing and have unusual properties."
|
||||
icon_state = "phazon_armor"
|
||||
origin_tech = "materials=6;bluespace=5;magnets=5"
|
||||
origin_tech = "materials=4;bluespace=4;plasmatech=5"
|
||||
|
||||
///////// Odysseus
|
||||
/obj/item/mecha_parts/chassis/odysseus
|
||||
@@ -331,7 +326,6 @@
|
||||
/obj/item/mecha_parts/part/odysseus_head
|
||||
name="Odysseus Head"
|
||||
icon_state = "odysseus_head"
|
||||
origin_tech = "programming=3;materials=2"
|
||||
|
||||
/obj/item/mecha_parts/part/odysseus_torso
|
||||
name="Odysseus Torso"
|
||||
@@ -343,25 +337,21 @@
|
||||
name="Odysseus Left Arm"
|
||||
desc="An Odysseus left arm. Data and power sockets are compatible with most exosuit tools."
|
||||
icon_state = "odysseus_l_arm"
|
||||
origin_tech = "programming=2;materials=2;engineering=2"
|
||||
|
||||
/obj/item/mecha_parts/part/odysseus_right_arm
|
||||
name="Odysseus Right Arm"
|
||||
desc="An Odysseus right arm. Data and power sockets are compatible with most exosuit tools."
|
||||
icon_state = "odysseus_r_arm"
|
||||
origin_tech = "programming=2;materials=2;engineering=2"
|
||||
|
||||
/obj/item/mecha_parts/part/odysseus_left_leg
|
||||
name="Odysseus Left Leg"
|
||||
desc="An Odysseus left leg. Contains somewhat complex servodrives and balance maintaining systems."
|
||||
icon_state = "odysseus_l_leg"
|
||||
origin_tech = "programming=2;materials=2;engineering=2"
|
||||
|
||||
/obj/item/mecha_parts/part/odysseus_right_leg
|
||||
name="Odysseus Right Leg"
|
||||
desc="A Odysseus right leg. Contains somewhat complex servodrives and balance maintaining systems."
|
||||
icon_state = "odysseus_r_leg"
|
||||
origin_tech = "programming=2;materials=2;engineering=2"
|
||||
|
||||
/*/obj/item/mecha_parts/part/odysseus_armour
|
||||
name="Odysseus Carapace"
|
||||
@@ -385,7 +375,7 @@
|
||||
throw_range = 15
|
||||
|
||||
/obj/item/weapon/circuitboard/mecha/ripley
|
||||
origin_tech = "programming=3"
|
||||
origin_tech = "programming=2"
|
||||
|
||||
/obj/item/weapon/circuitboard/mecha/ripley/peripherals
|
||||
name = "Circuit board (Ripley Peripherals Control module)"
|
||||
@@ -396,7 +386,7 @@
|
||||
icon_state = "mainboard"
|
||||
|
||||
/obj/item/weapon/circuitboard/mecha/gygax
|
||||
origin_tech = "programming=4"
|
||||
origin_tech = "programming=4;combat=3;engineering=3"
|
||||
|
||||
/obj/item/weapon/circuitboard/mecha/gygax/peripherals
|
||||
name = "Circuit board (Gygax Peripherals Control module)"
|
||||
@@ -412,7 +402,7 @@
|
||||
icon_state = "mainboard"
|
||||
|
||||
/obj/item/weapon/circuitboard/mecha/durand
|
||||
origin_tech = "programming=4"
|
||||
origin_tech = "programming=4;combat=3;engineering=3"
|
||||
|
||||
/obj/item/weapon/circuitboard/mecha/durand/peripherals
|
||||
name = "Circuit board (Durand Peripherals Control module)"
|
||||
@@ -421,14 +411,14 @@
|
||||
/obj/item/weapon/circuitboard/mecha/durand/targeting
|
||||
name = "Circuit board (Durand Weapon Control and Targeting module)"
|
||||
icon_state = "mcontroller"
|
||||
origin_tech = "programming=4;combat=4"
|
||||
origin_tech = "programming=4;combat=4;engineering=3"
|
||||
|
||||
/obj/item/weapon/circuitboard/mecha/durand/main
|
||||
name = "Circuit board (Durand Central Control module)"
|
||||
icon_state = "mainboard"
|
||||
|
||||
/obj/item/weapon/circuitboard/mecha/phazon
|
||||
origin_tech = "programming=4"
|
||||
origin_tech = "programming=5;plasmatech=4"
|
||||
|
||||
/obj/item/weapon/circuitboard/mecha/phazon/peripherals
|
||||
name = "Circuit board (Phazon Peripherals Control module)"
|
||||
@@ -437,14 +427,13 @@
|
||||
/obj/item/weapon/circuitboard/mecha/phazon/targeting
|
||||
name = "Circuit board (Phazon Weapon Control and Targeting module)"
|
||||
icon_state = "mcontroller"
|
||||
origin_tech = "programming=4;combat=4"
|
||||
|
||||
/obj/item/weapon/circuitboard/mecha/phazon/main
|
||||
name = "Circuit board (Phazon Central Control module)"
|
||||
icon_state = "mainboard"
|
||||
|
||||
/obj/item/weapon/circuitboard/mecha/honker
|
||||
origin_tech = "programming=4"
|
||||
origin_tech = "programming=3;engineering=3"
|
||||
|
||||
/obj/item/weapon/circuitboard/mecha/honker/peripherals
|
||||
name = "Circuit board (H.O.N.K Peripherals Control module)"
|
||||
@@ -459,7 +448,7 @@
|
||||
icon_state = "mainboard"
|
||||
|
||||
/obj/item/weapon/circuitboard/mecha/reticence
|
||||
origin_tech = "programming=4"
|
||||
origin_tech = "programming=3;engineering=3"
|
||||
|
||||
/obj/item/weapon/circuitboard/mecha/reticence/peripherals
|
||||
name = "circuit board (Reticence Peripherals Control module)"
|
||||
@@ -474,7 +463,7 @@
|
||||
icon_state = "mainboard"
|
||||
|
||||
/obj/item/weapon/circuitboard/mecha/odysseus
|
||||
origin_tech = "programming=3"
|
||||
origin_tech = "programming=3;biotech=3"
|
||||
|
||||
/obj/item/weapon/circuitboard/mecha/odysseus/peripherals
|
||||
name = "Circuit board (Odysseus Peripherals Control module)"
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
|
||||
/obj/effect/anomaly/grav/New()
|
||||
..()
|
||||
aSignal.origin_tech = "magnets=5;powerstorage=4"
|
||||
aSignal.origin_tech = "magnets=7"
|
||||
|
||||
/obj/effect/anomaly/grav/anomalyEffect()
|
||||
..()
|
||||
@@ -89,7 +89,7 @@
|
||||
|
||||
/obj/effect/anomaly/flux/New()
|
||||
..()
|
||||
aSignal.origin_tech = "powerstorage=6;programming=4;plasmatech=4"
|
||||
aSignal.origin_tech = "powerstorage=7"
|
||||
|
||||
/////////////////////
|
||||
|
||||
@@ -101,7 +101,7 @@
|
||||
|
||||
/obj/effect/anomaly/bluespace/New()
|
||||
..()
|
||||
aSignal.origin_tech = "bluespace=5;magnets=5;powerstorage=3"
|
||||
aSignal.origin_tech = "bluespace=7"
|
||||
|
||||
/obj/effect/anomaly/bluespace/Bumped(atom/A)
|
||||
if(isliving(A))
|
||||
@@ -116,7 +116,7 @@
|
||||
|
||||
/obj/effect/anomaly/pyro/New()
|
||||
..()
|
||||
aSignal.origin_tech = "plasmatech=5;powerstorage=4;biotech=6"
|
||||
aSignal.origin_tech = "plasmatech=7"
|
||||
|
||||
/obj/effect/anomaly/pyro/anomalyEffect()
|
||||
..()
|
||||
@@ -133,7 +133,7 @@
|
||||
|
||||
/obj/effect/anomaly/bhole/New()
|
||||
..()
|
||||
aSignal.origin_tech = "materials=5;combat=4;engineering=4"
|
||||
aSignal.origin_tech = "engineering=7"
|
||||
|
||||
/obj/effect/anomaly/bhole/anomalyEffect()
|
||||
..()
|
||||
@@ -180,4 +180,4 @@
|
||||
//Damaging the turf
|
||||
if( T && istype(T,/turf/simulated) && prob(turf_removal_chance) )
|
||||
T.ex_act(ex_act_force)
|
||||
return
|
||||
return
|
||||
|
||||
@@ -169,9 +169,6 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d
|
||||
var/list/techlvls = params2list(origin_tech)
|
||||
for(var/T in techlvls) //This needs to use the better names.
|
||||
msg += "Tech: [CallTechName(T)] | Magnitude: [techlvls[T]] <BR>"
|
||||
msg += "Research reliability: [reliability]% <BR>"
|
||||
if(crit_fail)
|
||||
msg += "<span class='danger'>Critical failure detected in subject!</span><BR>"
|
||||
else
|
||||
msg += "<span class='danger'>No tech origins detected.</span><BR>"
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
slot_flags = SLOT_BELT
|
||||
flags = NOBLUDGEON
|
||||
var/flush = null
|
||||
origin_tech = "programming=4;materials=4"
|
||||
origin_tech = "programming=3;materials=3"
|
||||
|
||||
|
||||
/obj/item/device/aicard/afterattack(atom/target, mob/user, proximity)
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
icon_state = ""
|
||||
flags = CONDUCT
|
||||
w_class = WEIGHT_CLASS_TINY
|
||||
origin_tech = "materials=1;biotech=1"
|
||||
origin_tech = "magnets=1;biotech=1"
|
||||
var/list/datum/autopsy_data_scanner/wdata = list()
|
||||
var/list/chemtraces = list()
|
||||
var/target_name = null
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
item_state = "camera_bug"
|
||||
throw_speed = 4
|
||||
throw_range = 20
|
||||
origin_tech = "syndicate=3;engineering=1"
|
||||
origin_tech = "syndicate=1;engineering=3"
|
||||
|
||||
var/obj/machinery/camera/current = null
|
||||
|
||||
|
||||
@@ -243,7 +243,7 @@ obj/item/device/flashlight/lamp/bananalamp
|
||||
return //Bio-luminescence does not toggle.
|
||||
|
||||
/obj/item/device/flashlight/emp
|
||||
origin_tech = "magnets=4;syndicate=5"
|
||||
origin_tech = "magnets=3;syndicate=1"
|
||||
|
||||
var/emp_max_charges = 4
|
||||
var/emp_cur_charges = 4
|
||||
|
||||
@@ -9,8 +9,7 @@
|
||||
slot_flags = SLOT_BELT
|
||||
materials = list(MAT_METAL=500, MAT_GLASS=500)
|
||||
w_class = WEIGHT_CLASS_SMALL //Increased to 2, because diodes are w_class 2. Conservation of matter.
|
||||
origin_tech = "combat=1"
|
||||
origin_tech = "magnets=2"
|
||||
origin_tech = "combat=1;magnets=2"
|
||||
var/energy = 5
|
||||
var/max_energy = 5
|
||||
var/effectchance = 33
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
|
||||
flags = CONDUCT
|
||||
slot_flags = SLOT_BELT
|
||||
origin_tech = "magnets=3;materials=2"
|
||||
origin_tech = "magnets=3;engineering=4"
|
||||
|
||||
var/max_uses = 20
|
||||
var/uses = 0
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
/obj/item/device/machineprototype
|
||||
name = "machine prototype"
|
||||
desc = "A complicated machine prototype. You have no idea how it works."
|
||||
icon = 'icons/obj/machineprototype.dmi'
|
||||
icon_state = "machineprototype"
|
||||
materials = list(MAT_METAL=1000, MAT_GLASS=500)
|
||||
origin_tech = "engineering=6"
|
||||
@@ -11,7 +11,7 @@
|
||||
throw_speed = 1
|
||||
throw_range = 2
|
||||
materials = list(MAT_METAL=750)
|
||||
origin_tech = "powerstorage=3;syndicate=5"
|
||||
origin_tech = "powerstorage=5;syndicate=5"
|
||||
var/drain_rate = 1600000 // amount of power to drain per tick
|
||||
var/apc_drain_rate = 50 // Max. amount drained from single APC. In Watts.
|
||||
var/dissipation_rate = 20000 // Passive dissipation of drained power. In Watts.
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
/obj/item/device/radio/beacon/syndicate
|
||||
name = "suspicious beacon"
|
||||
desc = "A label on it reads: <i>Activate to have a singularity beacon teleported to your location</i>."
|
||||
origin_tech = "bluespace=1;syndicate=7"
|
||||
origin_tech = "bluespace=6;syndicate=5"
|
||||
syndicate = 1
|
||||
|
||||
/obj/item/device/radio/beacon/syndicate/attack_self(mob/user as mob)
|
||||
@@ -67,7 +67,7 @@
|
||||
/obj/item/device/radio/beacon/syndicate/bomb
|
||||
name = "suspicious beacon"
|
||||
desc = "A label on it reads: <i>Warning: Activating this device will send a high-ordinance explosive to your location</i>."
|
||||
origin_tech = "bluespace=1;syndicate=7"
|
||||
origin_tech = "bluespace=5;syndicate=5"
|
||||
|
||||
/obj/item/device/radio/beacon/syndicate/bomb/attack_self(mob/user as mob)
|
||||
if(user)
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
icon_state = "cypherkey"
|
||||
item_state = ""
|
||||
w_class = WEIGHT_CLASS_TINY
|
||||
origin_tech = "engineering=2;bluespace=1"
|
||||
var/translate_binary = 0
|
||||
var/translate_hive = 0
|
||||
var/syndie = 0
|
||||
@@ -19,7 +20,7 @@
|
||||
/obj/item/device/encryptionkey/syndicate
|
||||
icon_state = "cypherkey"
|
||||
channels = list("Syndicate" = 1)
|
||||
origin_tech = "syndicate=3"
|
||||
origin_tech = "syndicate=1;engineering=3;bluespace=2"
|
||||
syndie = 1 //Signifies that it de-crypts Syndicate transmissions
|
||||
|
||||
/obj/item/device/encryptionkey/syndteam
|
||||
@@ -33,7 +34,7 @@
|
||||
desc = "An encryption key for a radio headset. To access the binary channel, use :b."
|
||||
icon_state = "cypherkey"
|
||||
translate_binary = 1
|
||||
origin_tech = "syndicate=3"
|
||||
origin_tech = "syndicate=3;engineering=4;bluespace=3"
|
||||
|
||||
/obj/item/device/encryptionkey/headset_sec
|
||||
name = "Security Radio Encryption Key"
|
||||
|
||||
@@ -233,6 +233,7 @@
|
||||
desc = "Looks like a circuit. Probably is."
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
materials = list(MAT_METAL=50, MAT_GLASS=50)
|
||||
origin_tech = "engineering=2;programming=1"
|
||||
toolspeed = 1
|
||||
usesound = 'sound/items/Deconstruct.ogg'
|
||||
|
||||
|
||||
@@ -22,15 +22,12 @@ REAGENT SCANNER
|
||||
var/pulse_duration = 10
|
||||
|
||||
/obj/item/device/t_scanner/longer_pulse
|
||||
origin_tech = "magnets=2;engineering=2"
|
||||
pulse_duration = 50
|
||||
|
||||
/obj/item/device/t_scanner/extended_range
|
||||
origin_tech = "magnets=1;engineering=3"
|
||||
scan_range = 3
|
||||
|
||||
/obj/item/device/t_scanner/extended_range/longer_pulse
|
||||
origin_tech = "magnets=2;engineering=3"
|
||||
scan_range = 3
|
||||
pulse_duration = 50
|
||||
|
||||
@@ -375,10 +372,9 @@ REAGENT SCANNER
|
||||
throwforce = 5
|
||||
throw_speed = 4
|
||||
throw_range = 20
|
||||
materials = list(MAT_METAL=30, MAT_GLASS=20)
|
||||
origin_tech = "magnets=2;biotech=2"
|
||||
materials = list(MAT_METAL=150, MAT_GLASS=100)
|
||||
origin_tech = "magnets=2;biotech=1;plasmatech=2"
|
||||
var/details = 0
|
||||
var/recent_fail = 0
|
||||
var/datatoprint = ""
|
||||
var/scanning = 1
|
||||
actions_types = list(/datum/action/item_action/print_report)
|
||||
@@ -396,9 +392,6 @@ REAGENT SCANNER
|
||||
/obj/item/device/mass_spectrometer/attack_self(mob/user as mob)
|
||||
if(user.stat)
|
||||
return
|
||||
if(crit_fail)
|
||||
to_chat(user, "<span class='warning'>This device has critically failed and is no longer functional!</span>")
|
||||
return
|
||||
if(!user.IsAdvancedToolUser())
|
||||
to_chat(user, "<span class='warning'>You don't have the dexterity to do this!</span>")
|
||||
return
|
||||
@@ -414,34 +407,19 @@ REAGENT SCANNER
|
||||
break
|
||||
var/dat = ""
|
||||
for(var/R in blood_traces)
|
||||
if(prob(reliability))
|
||||
if(details)
|
||||
dat += "[R] ([blood_traces[R]] units) "
|
||||
else
|
||||
dat += "[R] <br>"
|
||||
recent_fail = 0
|
||||
if(details)
|
||||
dat += "[R] ([blood_traces[R]] units) "
|
||||
else
|
||||
if(recent_fail)
|
||||
crit_fail = 1
|
||||
reagents.clear_reagents()
|
||||
return
|
||||
else
|
||||
recent_fail = 1
|
||||
if(dat)
|
||||
to_chat(user, "Trace chemicals detected in blood sample: [dat]")
|
||||
datatoprint = dat
|
||||
scanning = 0
|
||||
reagents.clear_reagents()
|
||||
else
|
||||
reagents.clear_reagents()
|
||||
to_chat(user, "<span class='notice'>No trace chemicals detected in blood sample.</span>")
|
||||
dat += "[R] "
|
||||
to_chat(user, "[dat]")
|
||||
reagents.clear_reagents()
|
||||
return
|
||||
|
||||
/obj/item/device/mass_spectrometer/adv
|
||||
name = "advanced mass-spectrometer"
|
||||
icon_state = "adv_spectrometer"
|
||||
details = 1
|
||||
origin_tech = "magnets=4;biotech=2"
|
||||
origin_tech = "magnets=4;biotech=3;plasmatech=3"
|
||||
|
||||
/obj/item/device/mass_spectrometer/proc/print_report()
|
||||
if(!scanning)
|
||||
@@ -477,9 +455,8 @@ REAGENT SCANNER
|
||||
throw_speed = 4
|
||||
throw_range = 20
|
||||
materials = list(MAT_METAL=30, MAT_GLASS=20)
|
||||
origin_tech = "magnets=2;biotech=2"
|
||||
origin_tech = "magnets=2;biotech=1;plasmatech=2"
|
||||
var/details = 0
|
||||
var/recent_fail = 0
|
||||
var/datatoprint = ""
|
||||
var/scanning = 1
|
||||
actions_types = list(/datum/action/item_action/print_report)
|
||||
@@ -492,23 +469,13 @@ REAGENT SCANNER
|
||||
return
|
||||
if(!istype(O))
|
||||
return
|
||||
if(crit_fail)
|
||||
to_chat(user, "<span class='warning'>This device has critically failed and is no longer functional!</span>")
|
||||
return
|
||||
|
||||
if(!isnull(O.reagents))
|
||||
var/dat = ""
|
||||
if(O.reagents.reagent_list.len > 0)
|
||||
var/one_percent = O.reagents.total_volume / 100
|
||||
for(var/datum/reagent/R in O.reagents.reagent_list)
|
||||
if(prob(reliability))
|
||||
dat += "<br>[TAB]<span class='notice'>[R][details ? ": [R.volume / one_percent]%" : ""]</span>"
|
||||
recent_fail = 0
|
||||
else if(recent_fail)
|
||||
crit_fail = 1
|
||||
dat = null
|
||||
break
|
||||
else
|
||||
recent_fail = 1
|
||||
dat += "<br>[TAB]<span class='notice'>[R][details ? ": [R.volume / one_percent]%" : ""]</span>"
|
||||
if(dat)
|
||||
to_chat(user, "<span class='notice'>Chemicals found: [dat]</span>")
|
||||
datatoprint = dat
|
||||
@@ -523,7 +490,7 @@ REAGENT SCANNER
|
||||
name = "advanced reagent scanner"
|
||||
icon_state = "adv_spectrometer"
|
||||
details = 1
|
||||
origin_tech = "magnets=4;biotech=2"
|
||||
origin_tech = "magnets=4;biotech=3;plasmatech=3"
|
||||
|
||||
/obj/item/device/reagent_scanner/proc/print_report()
|
||||
if(!scanning)
|
||||
@@ -551,7 +518,7 @@ REAGENT SCANNER
|
||||
name = "slime scanner"
|
||||
icon_state = "adv_spectrometer_s"
|
||||
item_state = "analyzer"
|
||||
origin_tech = "biotech=1"
|
||||
origin_tech = "biotech=2"
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
flags = CONDUCT
|
||||
throwforce = 0
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
icon_state = "scanner"
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
slot_flags = SLOT_BELT
|
||||
origin_tech = "biotech=3;materials=3;magnets=3"
|
||||
origin_tech = "programming=3;materials=3;magnets=3"
|
||||
var/datum/nano_module/crew_monitor/crew_monitor
|
||||
|
||||
/obj/item/device/sensor_device/New()
|
||||
|
||||
@@ -163,7 +163,7 @@
|
||||
name = "Chameleon flag"
|
||||
desc = "A poor recreation of the official NT flag. It seems to shimmer a little."
|
||||
icon_state = "ntflag"
|
||||
origin_tech = "materials=3;magnets=4;syndicate=4"
|
||||
origin_tech = "syndicate=4;magnets=4"
|
||||
var/used = 0
|
||||
|
||||
/obj/item/flag/chameleon/attack_self(mob/user)
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
/obj/item/mounted/frame
|
||||
name = "mountable frame"
|
||||
desc = "Place it on a wall."
|
||||
origin_tech = "materials=1;engineering=1"
|
||||
var/sheets_refunded = 2
|
||||
var/list/mount_reqs = list() //can contain simfloor, nospace. Used in try_build to see if conditions are needed, then met
|
||||
toolspeed = 1
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
desc = "Protected by FRM."
|
||||
icon = 'icons/obj/module.dmi'
|
||||
icon_state = "cyborg_upgrade"
|
||||
origin_tech = "programming=2"
|
||||
var/locked = 0
|
||||
var/installed = 0
|
||||
var/require_module = 0
|
||||
@@ -103,6 +104,7 @@
|
||||
desc = "Used to kick in a robot's VTEC systems, increasing their speed."
|
||||
icon_state = "cyborg_upgrade2"
|
||||
require_module = 1
|
||||
origin_tech = "engineering=4;materials=5;programming=4"
|
||||
|
||||
/obj/item/borg/upgrade/vtec/action(var/mob/living/silicon/robot/R)
|
||||
if(..())
|
||||
@@ -120,6 +122,7 @@
|
||||
name = "cyborg rapid disabler cooling module"
|
||||
desc = "Used to cool a mounted disabler, increasing the potential current in it and thus its recharge rate."
|
||||
icon_state = "cyborg_upgrade3"
|
||||
origin_tech = "engineering=4;powerstorage=4;combat=4"
|
||||
require_module = 1
|
||||
module_type = /obj/item/weapon/robot_module/security
|
||||
|
||||
@@ -144,6 +147,7 @@
|
||||
name = "ion thruster upgrade"
|
||||
desc = "A energy-operated thruster system for cyborgs."
|
||||
icon_state = "cyborg_upgrade3"
|
||||
origin_tech = "engineering=4;powerstorage=4"
|
||||
|
||||
/obj/item/borg/upgrade/thrusters/action(mob/living/silicon/robot/R)
|
||||
if(..())
|
||||
@@ -160,6 +164,7 @@
|
||||
name = "mining cyborg diamond drill"
|
||||
desc = "A diamond drill replacement for the mining module's standard drill."
|
||||
icon_state = "cyborg_upgrade3"
|
||||
origin_tech = "engineering=4;materials=5"
|
||||
require_module = 1
|
||||
module_type = /obj/item/weapon/robot_module/miner
|
||||
|
||||
@@ -181,6 +186,7 @@
|
||||
name = "mining cyborg satchel of holding"
|
||||
desc = "A satchel of holding replacement for mining cyborg's ore satchel module."
|
||||
icon_state = "cyborg_upgrade3"
|
||||
origin_tech = "engineering=4;materials=4;bluespace=4"
|
||||
require_module = 1
|
||||
module_type = /obj/item/weapon/robot_module/miner
|
||||
|
||||
@@ -200,6 +206,7 @@
|
||||
name = "illegal equipment module"
|
||||
desc = "Unlocks the hidden, deadlier functions of a cyborg"
|
||||
icon_state = "cyborg_upgrade3"
|
||||
origin_tech = "combat=4;syndicate=1"
|
||||
require_module = 1
|
||||
|
||||
/obj/item/borg/upgrade/syndicate/action(mob/living/silicon/robot/R)
|
||||
|
||||
@@ -75,7 +75,7 @@
|
||||
singular_name = "gauze length"
|
||||
desc = "Some sterile gauze to wrap around bloody stumps."
|
||||
icon_state = "gauze"
|
||||
origin_tech = "biotech=1"
|
||||
origin_tech = "biotech=2"
|
||||
|
||||
/obj/item/stack/medical/bruise_pack/attack(mob/living/M, mob/user)
|
||||
if(..())
|
||||
@@ -121,7 +121,7 @@
|
||||
gender = PLURAL
|
||||
singular_name = "ointment"
|
||||
icon_state = "ointment"
|
||||
origin_tech = "biotech=1"
|
||||
origin_tech = "biotech=2"
|
||||
|
||||
/obj/item/stack/medical/ointment/attack(mob/living/M, mob/user)
|
||||
if(..())
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
desc = "A tube of paste containing swarms of repair nanites. Very effective in repairing robotic machinery."
|
||||
icon = 'icons/obj/nanopaste.dmi'
|
||||
icon_state = "tube"
|
||||
origin_tech = "materials=3;engineering=2"
|
||||
origin_tech = "materials=2;engineering=3"
|
||||
amount = 10
|
||||
toolspeed = 1
|
||||
|
||||
|
||||
@@ -267,7 +267,7 @@
|
||||
singular_name = "glass sheet"
|
||||
icon_state = "sheet-plasmaglass"
|
||||
materials = list(MAT_GLASS=MINERAL_MATERIAL_AMOUNT*2)
|
||||
origin_tech = "materials=3;plasmatech=2"
|
||||
origin_tech = "plasmatech=2;materials=2"
|
||||
var/created_window = /obj/structure/window/plasmabasic
|
||||
var/full_window = /obj/structure/window/full/plasmabasic
|
||||
|
||||
@@ -356,7 +356,7 @@
|
||||
singular_name = "reinforced plasma glass sheet"
|
||||
icon_state = "sheet-plasmarglass"
|
||||
materials = list(MAT_METAL=MINERAL_MATERIAL_AMOUNT/2, MAT_GLASS=MINERAL_MATERIAL_AMOUNT*2)
|
||||
origin_tech = "materials=3;plasmatech=2"
|
||||
origin_tech = "plasmatech=2;materials=2"
|
||||
var/created_window = /obj/structure/window/plasmareinforced
|
||||
var/full_window = /obj/structure/window/full/plasmareinforced
|
||||
|
||||
|
||||
@@ -1,9 +1,13 @@
|
||||
/obj/item/stack/sheet/animalhide
|
||||
name = "hide"
|
||||
desc = "Something went wrong."
|
||||
origin_tech = "biotech=3"
|
||||
|
||||
/obj/item/stack/sheet/animalhide/human
|
||||
name = "human skin"
|
||||
desc = "The by-product of human farming."
|
||||
singular_name = "human skin piece"
|
||||
icon_state = "sheet-hide"
|
||||
origin_tech = ""
|
||||
|
||||
var/global/list/datum/stack_recipe/human_recipes = list( \
|
||||
new/datum/stack_recipe("bloated human costume", /obj/item/clothing/suit/bloated_human, 5, on_floor = 1), \
|
||||
@@ -19,42 +23,36 @@ var/global/list/datum/stack_recipe/human_recipes = list( \
|
||||
desc = "A piece of generic skin."
|
||||
singular_name = "generic skin piece"
|
||||
icon_state = "sheet-hide"
|
||||
origin_tech = null
|
||||
|
||||
/obj/item/stack/sheet/animalhide/corgi
|
||||
name = "corgi hide"
|
||||
desc = "The by-product of corgi farming."
|
||||
singular_name = "corgi hide piece"
|
||||
icon_state = "sheet-corgi"
|
||||
origin_tech = ""
|
||||
|
||||
/obj/item/stack/sheet/animalhide/cat
|
||||
name = "cat hide"
|
||||
desc = "The by-product of cat farming."
|
||||
singular_name = "cat hide piece"
|
||||
icon_state = "sheet-cat"
|
||||
origin_tech = ""
|
||||
|
||||
/obj/item/stack/sheet/animalhide/monkey
|
||||
name = "monkey hide"
|
||||
desc = "The by-product of monkey farming."
|
||||
singular_name = "monkey hide piece"
|
||||
icon_state = "sheet-monkey"
|
||||
origin_tech = ""
|
||||
|
||||
/obj/item/stack/sheet/animalhide/lizard
|
||||
name = "lizard skin"
|
||||
desc = "Sssssss..."
|
||||
singular_name = "lizard skin piece"
|
||||
icon_state = "sheet-lizard"
|
||||
origin_tech = ""
|
||||
|
||||
/obj/item/stack/sheet/animalhide/xeno
|
||||
name = "alien hide"
|
||||
desc = "The skin of a terrible creature."
|
||||
singular_name = "alien hide piece"
|
||||
icon_state = "sheet-xeno"
|
||||
origin_tech = ""
|
||||
|
||||
//don't see anywhere else to put these, maybe together they could be used to make the xenos suit?
|
||||
/obj/item/stack/sheet/xenochitin
|
||||
|
||||
@@ -106,7 +106,6 @@ var/global/list/datum/stack_recipe/abductor_recipes = list ( \
|
||||
throwforce = 5
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
throw_speed = 3
|
||||
throw_range = 3
|
||||
|
||||
/obj/item/stack/sheet/mineral/New()
|
||||
..()
|
||||
@@ -118,7 +117,6 @@ var/global/list/datum/stack_recipe/abductor_recipes = list ( \
|
||||
desc = "This appears to be a combination of both sand and stone."
|
||||
singular_name = "sandstone brick"
|
||||
icon_state = "sheet-sandstone"
|
||||
throw_speed = 3
|
||||
throw_range = 5
|
||||
origin_tech = "materials=1"
|
||||
sheettype = "sandstone"
|
||||
@@ -194,7 +192,7 @@ var/global/list/datum/stack_recipe/abductor_recipes = list ( \
|
||||
name = "silver"
|
||||
icon_state = "sheet-silver"
|
||||
singular_name = "silver bar"
|
||||
origin_tech = "materials=3"
|
||||
origin_tech = "materials=4"
|
||||
sheettype = "silver"
|
||||
materials = list(MAT_SILVER=MINERAL_MATERIAL_AMOUNT)
|
||||
|
||||
@@ -242,7 +240,6 @@ var/global/list/datum/stack_recipe/abductor_recipes = list ( \
|
||||
throwforce = 5
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
throw_speed = 1
|
||||
throw_range = 3
|
||||
origin_tech = "materials=6;abductor=1"
|
||||
sheettype = "abductor"
|
||||
|
||||
|
||||
@@ -95,7 +95,7 @@ AI MODULES
|
||||
name = "\improper 'Safeguard' AI module"
|
||||
var/targetName = ""
|
||||
desc = "A 'safeguard' AI module: 'Safeguard <name>. Individuals that threaten <name> are not crew and must be eliminated.'"
|
||||
origin_tech = "programming=3;materials=4"
|
||||
origin_tech = "programming=3;materials=3"
|
||||
|
||||
/obj/item/weapon/aiModule/safeguard/attack_self(var/mob/user as mob)
|
||||
..()
|
||||
@@ -121,7 +121,7 @@ AI MODULES
|
||||
name = "\improper 'oneCrewMember' AI module"
|
||||
var/targetName = ""
|
||||
desc = "A 'one human' AI module: 'Only <name> is crew.'"
|
||||
origin_tech = "programming=3;materials=6" //made with diamonds!
|
||||
origin_tech = "programming=4;materials=4"
|
||||
|
||||
/obj/item/weapon/aiModule/oneCrewMember/attack_self(var/mob/user as mob)
|
||||
..()
|
||||
@@ -152,7 +152,7 @@ AI MODULES
|
||||
/obj/item/weapon/aiModule/protectStation
|
||||
name = "\improper 'ProtectStation' AI module"
|
||||
desc = "A 'protect station' AI module: 'Protect the space station against damage. Anyone you see harming the station is to be no longer considered crew, and is a threat to the station which must be neutralized.'"
|
||||
origin_tech = "programming=3;materials=4" //made of gold
|
||||
origin_tech = "programming=4;materials=4" //made of gold
|
||||
|
||||
/obj/item/weapon/aiModule/protectStation/attack_self(var/mob/user as mob)
|
||||
..()
|
||||
@@ -182,7 +182,7 @@ AI MODULES
|
||||
/obj/item/weapon/aiModule/oxygen
|
||||
name = "\improper 'OxygenIsToxicToHumans' AI module"
|
||||
desc = "A 'OxygenIsToxicToHumans' AI module: 'Oxygen is highly toxic to crew members, and must be purged from the station. Prevent, by any means necessary, anyone from exposing the station to this toxic gas. Extreme cold is the most effective method of healing the damage Oxygen does to a crew member.'"
|
||||
origin_tech = "programming=3;biotech=2;materials=4"
|
||||
origin_tech = "programming=4;biotech=2;materials=4"
|
||||
|
||||
/obj/item/weapon/aiModule/oxygen/attack_self(var/mob/user as mob)
|
||||
..()
|
||||
@@ -231,7 +231,7 @@ AI MODULES
|
||||
name = "\improper 'Reset' AI module"
|
||||
var/targetName = "name"
|
||||
desc = "A 'reset' AI module: 'Clears all laws except for the core laws.'"
|
||||
origin_tech = "programming=3;materials=4"
|
||||
origin_tech = "programming=3;materials=2"
|
||||
|
||||
/obj/item/weapon/aiModule/reset/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
log_law_changes(target, sender)
|
||||
@@ -248,7 +248,7 @@ AI MODULES
|
||||
/obj/item/weapon/aiModule/purge // -- TLE
|
||||
name = "\improper 'Purge' AI module"
|
||||
desc = "A 'purge' AI Module: 'Purges all laws.'"
|
||||
origin_tech = "programming=3;materials=6"
|
||||
origin_tech = "programming=5;materials=4"
|
||||
|
||||
/obj/item/weapon/aiModule/purge/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
..()
|
||||
@@ -305,14 +305,14 @@ AI MODULES
|
||||
/obj/item/weapon/aiModule/paladin // -- NEO
|
||||
name = "\improper 'P.A.L.A.D.I.N.' core AI module"
|
||||
desc = "A P.A.L.A.D.I.N. Core AI Module: 'Reconfigures the AI's core laws.'"
|
||||
origin_tech = "programming=3;materials=6"
|
||||
origin_tech = "programming=3;materials=4"
|
||||
laws = new/datum/ai_laws/paladin
|
||||
|
||||
/****************** T.Y.R.A.N.T. *****************/
|
||||
/obj/item/weapon/aiModule/tyrant // -- Darem
|
||||
name = "\improper 'T.Y.R.A.N.T.' core AI module"
|
||||
desc = "A T.Y.R.A.N.T. Core AI Module: 'Reconfigures the AI's core laws.'"
|
||||
origin_tech = "programming=3;materials=6;syndicate=2"
|
||||
origin_tech = "programming=3;materials=4;syndicate=1"
|
||||
laws = new/datum/ai_laws/tyrant()
|
||||
|
||||
/******************** Antimov ********************/
|
||||
@@ -327,7 +327,7 @@ AI MODULES
|
||||
name = "\improper 'Freeform' core AI module"
|
||||
var/newFreeFormLaw = ""
|
||||
desc = "A 'freeform' Core AI module: '<freeform>'"
|
||||
origin_tech = "programming=3;materials=6"
|
||||
origin_tech = "programming=5;materials=4"
|
||||
|
||||
/obj/item/weapon/aiModule/freeformcore/attack_self(var/mob/user as mob)
|
||||
..()
|
||||
@@ -353,7 +353,7 @@ AI MODULES
|
||||
name = "hacked AI module"
|
||||
var/newFreeFormLaw = ""
|
||||
desc = "A hacked AI law module: '<freeform>'"
|
||||
origin_tech = "programming=3;materials=6;syndicate=7"
|
||||
origin_tech = "programming=5;materials=5;syndicate=5"
|
||||
|
||||
/obj/item/weapon/aiModule/syndicate/attack_self(var/mob/user as mob)
|
||||
..()
|
||||
@@ -384,7 +384,7 @@ AI MODULES
|
||||
desc = "A little toy model AI core with real law uploading action!" //Note: subtle tell
|
||||
icon = 'icons/obj/toy.dmi'
|
||||
icon_state = "AI"
|
||||
origin_tech = "programming=3;materials=6;syndicate=7"
|
||||
origin_tech = "programming=6;materials=5;syndicate=6"
|
||||
laws = list("")
|
||||
|
||||
/obj/item/weapon/aiModule/toyAI/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
|
||||
@@ -394,7 +394,7 @@ RCD
|
||||
opacity = 0
|
||||
density = 0
|
||||
anchored = 0.0
|
||||
origin_tech = "materials=2"
|
||||
origin_tech = "materials=3"
|
||||
materials = list(MAT_METAL=16000, MAT_GLASS=8000)
|
||||
var/ammoamt = 20
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
throw_speed = 1
|
||||
throw_range = 7
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
origin_tech = "engineering=4;materials=4"
|
||||
origin_tech = "engineering=4;materials=2"
|
||||
var/max_amount = 90
|
||||
var/active = 0
|
||||
var/obj/structure/cable/last = null
|
||||
|
||||
@@ -299,7 +299,7 @@
|
||||
/obj/item/weapon/card/id/syndicate
|
||||
name = "agent card"
|
||||
var/list/initial_access = list(access_maint_tunnels, access_syndicate, access_external_airlocks)
|
||||
origin_tech = "syndicate=3"
|
||||
origin_tech = "syndicate=1"
|
||||
var/registered_user = null
|
||||
untrackable = 1
|
||||
|
||||
|
||||
@@ -89,6 +89,7 @@
|
||||
icon_state = "air_horn"
|
||||
honk_sound = 'sound/items/AirHorn2.ogg'
|
||||
cooldowntime = 50
|
||||
origin_tech = "materials=4;engineering=4"
|
||||
|
||||
/obj/item/weapon/bikehorn/golden
|
||||
name = "golden bike horn"
|
||||
|
||||
@@ -112,8 +112,6 @@
|
||||
/obj/item/weapon/defibrillator/emp_act(severity)
|
||||
if(bcell)
|
||||
deductcharge(1000 / severity)
|
||||
if(bcell.reliability != 100 && prob(50/severity))
|
||||
bcell.reliability -= 10 / severity
|
||||
if(safety)
|
||||
safety = 0
|
||||
src.visible_message("<span class='notice'>[src] beeps: Safety protocols disabled!</span>")
|
||||
@@ -208,7 +206,7 @@
|
||||
item_state = "defibcompact"
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
slot_flags = SLOT_BELT
|
||||
origin_tech = "biotech=4"
|
||||
origin_tech = "biotech=5"
|
||||
|
||||
/obj/item/weapon/defibrillator/compact/item_action_slot_check(slot, mob/user)
|
||||
if(slot == slot_belt)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
flags = NOBLUDGEON
|
||||
det_time = 10
|
||||
display_timer = 0
|
||||
origin_tech = "syndicate=2"
|
||||
origin_tech = "syndicate=1"
|
||||
toolspeed = 1
|
||||
var/atom/target = null
|
||||
var/image_overlay = null
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
throw_range = 5
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
materials = list(MAT_METAL=500)
|
||||
origin_tech = "combat=1;plasmatech=1"
|
||||
origin_tech = "combat=1;plasmatech=2;engineering=2"
|
||||
var/status = 0
|
||||
var/throw_amount = 100
|
||||
var/lit = 0 //on or off
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/obj/item/weapon/grenade/gas
|
||||
name = "Plasma Fire Grenade"
|
||||
desc = "A compressed plasma grenade, used to start horrific plasma fires."
|
||||
origin_tech = "materials=3;magnets=4;syndicate=4"
|
||||
origin_tech = "materials=3;magnets=4;syndicate=3"
|
||||
icon = 'icons/obj/grenade.dmi'
|
||||
icon_state = "syndicate"
|
||||
item_state = "flashbang"
|
||||
|
||||
@@ -332,7 +332,7 @@
|
||||
bomb_state = "largebomb"
|
||||
allowed_containers = list(/obj/item/weapon/reagent_containers/glass,/obj/item/weapon/reagent_containers/food/condiment,
|
||||
/obj/item/weapon/reagent_containers/food/drinks)
|
||||
origin_tech = "combat=3;materials=3"
|
||||
origin_tech = "combat=3;engineering=3"
|
||||
affected_area = 4
|
||||
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
desc = "It is designed to wreak havoc on electronic systems."
|
||||
icon_state = "emp"
|
||||
item_state = "emp"
|
||||
origin_tech = "materials=2;magnets=3"
|
||||
origin_tech = "magnets=3;combat=2"
|
||||
|
||||
/obj/item/weapon/grenade/empgrenade/prime()
|
||||
update_mob()
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
name = "flashbang"
|
||||
icon_state = "flashbang"
|
||||
item_state = "flashbang"
|
||||
origin_tech = "materials=2;combat=1"
|
||||
origin_tech = "materials=2;combat=3"
|
||||
|
||||
/obj/item/weapon/grenade/flashbang/prime()
|
||||
update_mob()
|
||||
|
||||
@@ -35,20 +35,20 @@
|
||||
name = "manhack delivery grenade"
|
||||
spawner_type = /mob/living/simple_animal/hostile/viscerator
|
||||
deliveryamt = 5
|
||||
origin_tech = "materials=3;magnets=4;syndicate=4"
|
||||
origin_tech = "materials=3;magnets=4;syndicate=3"
|
||||
|
||||
/obj/item/weapon/grenade/spawnergrenade/spesscarp
|
||||
name = "carp delivery grenade"
|
||||
spawner_type = /mob/living/simple_animal/hostile/carp
|
||||
deliveryamt = 5
|
||||
origin_tech = "materials=3;magnets=4;syndicate=4"
|
||||
origin_tech = "materials=3;magnets=4;syndicate=3"
|
||||
|
||||
/obj/item/weapon/grenade/spawnergrenade/feral_cats
|
||||
name = "feral cat delivery grenade"
|
||||
desc = "This grenade contains 8 dehydrated feral cats in a similar manner to dehydrated monkeys, which, upon detonation, will be rehydrated by a small reservoir of water contained within the grenade. These cats will then attack anything in sight."
|
||||
spawner_type = /mob/living/simple_animal/hostile/feral_cat
|
||||
deliveryamt = 5
|
||||
origin_tech = "materials=3;magnets=4;syndicate=4"
|
||||
origin_tech = "materials=3;magnets=4;syndicate=3"
|
||||
|
||||
/obj/item/weapon/grenade/spawnergrenade/feral_cats/prime() //Own proc for this because the regular one would flash people which was dumb.
|
||||
update_mob()
|
||||
@@ -65,4 +65,4 @@
|
||||
|
||||
|
||||
qdel(src)
|
||||
return
|
||||
return
|
||||
|
||||
@@ -4,9 +4,9 @@
|
||||
icon = 'icons/obj/grenade.dmi'
|
||||
icon_state = "syndicate"
|
||||
item_state = "flashbang"
|
||||
origin_tech = "materials=3;magnets=4;syndicate=4"
|
||||
origin_tech = "materials=3;magnets=4;syndicate=3"
|
||||
|
||||
/obj/item/weapon/grenade/syndieminibomb/prime()
|
||||
update_mob()
|
||||
explosion(src.loc,1,2,4,flame_range = 2)
|
||||
qdel(src)
|
||||
qdel(src)
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
throw_speed = 2
|
||||
throw_range = 5
|
||||
materials = list(MAT_METAL=500)
|
||||
origin_tech = "materials=1"
|
||||
origin_tech = "engineering=3;combat=3"
|
||||
breakouttime = 600 //Deciseconds = 60s = 1 minutes
|
||||
var/cuffsound = 'sound/weapons/handcuffs.ogg'
|
||||
var/trashtype = null //For disposable cuffs
|
||||
@@ -75,6 +75,7 @@
|
||||
name = "cable restraints"
|
||||
desc = "Looks like some cables tied together. Could be used to tie something up."
|
||||
icon_state = "cuff_white"
|
||||
origin_tech = "engineering=2"
|
||||
materials = list(MAT_METAL=150, MAT_GLASS=75)
|
||||
breakouttime = 300 //Deciseconds = 30s
|
||||
cuffsound = 'sound/weapons/cablecuff.ogg'
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
throwforce = 0
|
||||
throw_speed = 3
|
||||
throw_range = 7
|
||||
origin_tech = "programming=3"
|
||||
origin_tech = "magnets=1;programming=3"
|
||||
var/list/signs = list()
|
||||
var/max_signs = 20
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
desc = "Use this to escape from those evil Red Shirts."
|
||||
icon_state = "freedom"
|
||||
item_color = "r"
|
||||
origin_tech = "materials=2;magnets=3;biotech=3;syndicate=4"
|
||||
origin_tech = "combat=5;magnets=3;biotech=4;syndicate=2"
|
||||
uses = 4
|
||||
|
||||
|
||||
@@ -48,4 +48,4 @@ No Implant Specifics"}
|
||||
|
||||
/obj/item/weapon/implantcase/freedom/New()
|
||||
imp = new /obj/item/weapon/implant/freedom(src)
|
||||
..()
|
||||
..()
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
name = "firearms authentication implant"
|
||||
desc = "Lets you shoot your guns"
|
||||
icon_state = "auth"
|
||||
origin_tech = "materials=2;magnets=2;programming=2;biotech=5;syndicate=5"
|
||||
origin_tech = "magnets=2;programming=7;biotech=5;syndicate=5"
|
||||
activated = 0
|
||||
|
||||
/obj/item/weapon/implant/weapons_auth/get_data()
|
||||
@@ -53,7 +53,7 @@
|
||||
name = "emp implant"
|
||||
desc = "Triggers an EMP."
|
||||
icon_state = "emp"
|
||||
origin_tech = "materials=2;biotech=3;magnets=4;syndicate=4"
|
||||
origin_tech = "biotech=3;magnets=4;syndicate=1"
|
||||
uses = 2
|
||||
|
||||
/obj/item/weapon/implant/emp/activate()
|
||||
@@ -65,4 +65,4 @@
|
||||
/obj/item/weapon/implant/cortical
|
||||
name = "cortical stack"
|
||||
desc = "A fist-sized mass of biocircuits and chips."
|
||||
icon_state = "implant_evil"
|
||||
icon_state = "implant_evil"
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
name = "storage implant"
|
||||
desc = "Stores up to two big items in a bluespace pocket."
|
||||
icon_state = "storage"
|
||||
origin_tech = "materials=2;magnets=4;bluespace=4;syndicate=4"
|
||||
origin_tech = "materials=2;magnets=4;bluespace=5;syndicate=4"
|
||||
item_color = "r"
|
||||
var/obj/item/weapon/storage/hidden/implant/storage
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
throw_speed = 3
|
||||
throw_range = 5
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
origin_tech = "materials=1;biotech=3;programming=2"
|
||||
origin_tech = "materials=2;biotech=3"
|
||||
materials = list(MAT_METAL=600, MAT_GLASS=200)
|
||||
toolspeed = 1
|
||||
var/obj/item/weapon/implant/imp = null
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
desc = "Summon things."
|
||||
icon = 'icons/obj/radio.dmi'
|
||||
icon_state = "radio"
|
||||
origin_tech = "materials=2;magnets=4;programming=4;biotech=4;syndicate=8;bluespace=5"
|
||||
origin_tech = "materials=4;magnets=4;programming=4;biotech=4;syndicate=5;bluespace=5"
|
||||
|
||||
/obj/item/weapon/implant/uplink/New()
|
||||
hidden_uplink = new(src)
|
||||
@@ -32,4 +32,4 @@
|
||||
|
||||
/obj/item/weapon/implanter/uplink/New()
|
||||
imp = new /obj/item/weapon/implant/uplink(src)
|
||||
..()
|
||||
..()
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
|
||||
/obj/item/weapon/kitchen
|
||||
icon = 'icons/obj/kitchen.dmi'
|
||||
origin_tech = "materials=1"
|
||||
|
||||
/*
|
||||
* Utensils
|
||||
@@ -23,7 +24,6 @@
|
||||
throw_speed = 3
|
||||
throw_range = 5
|
||||
flags = CONDUCT
|
||||
origin_tech = "materials=1"
|
||||
attack_verb = list("attacked", "stabbed", "poked")
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
sharp = 0
|
||||
@@ -97,7 +97,6 @@
|
||||
throw_speed = 3
|
||||
throw_range = 6
|
||||
materials = list(MAT_METAL=12000)
|
||||
origin_tech = "materials=1"
|
||||
attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
||||
no_embed = 1
|
||||
sharp = 1
|
||||
@@ -149,7 +148,7 @@
|
||||
desc = "A military combat utility survival knife."
|
||||
force = 20
|
||||
throwforce = 20
|
||||
origin_tech = "materials=2;combat=4"
|
||||
origin_tech = "materials=3;combat=4"
|
||||
attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "cut")
|
||||
|
||||
/obj/item/weapon/kitchen/knife/carrotshiv
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
flags = CONDUCT
|
||||
throwforce = 0
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
origin_tech = "materials=1"
|
||||
origin_tech = "engineering=3;combat=3"
|
||||
slowdown = 7
|
||||
breakouttime = 300 //Deciseconds = 30s = 0.5 minute
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
throw_range = 1
|
||||
icon_state = "beartrap"
|
||||
desc = "A trap used to catch bears and other legged creatures."
|
||||
origin_tech = "engineering=4"
|
||||
var/armed = 0
|
||||
var/trap_damage = 20
|
||||
var/obj/item/weapon/grenade/iedcasing/IED = null
|
||||
|
||||
@@ -580,11 +580,8 @@
|
||||
<h2>Protolathe</h2>
|
||||
This machine is an advanced form of the Autolathe that produce non-circuit designs. Unlike the Autolathe, it can use processed metal, glass, solid plasma, silver, gold, and diamonds along with a variety of chemicals to produce devices. The downside is that, again, not all devices you make are 100% reliable when you first discover them.
|
||||
|
||||
<h1>Reliability and You</h1>
|
||||
As it has been stated, many devices when they're first discovered do not have a 100% reliablity when you first discover them. Instead, the reliablity of the device is dependent upon a base reliability value, whatever improvements to the design you've discovered through the Destructive Analyzer, and any advancements you've made with the device's source technologies. To be able to improve the reliability of a device, you have to use the device until it breaks beyond repair. Once that happens, you can analyze it in a Destructive Analyzer. Once the device reachs a certain minimum reliability, you'll gain tech advancements from it.
|
||||
|
||||
<h1>Building a Better Machine</h1>
|
||||
Many machines produces from circuit boards and inserted into a machine frame require a variety of parts to construct. These are parts like capacitors, batteries, matter bins, and so forth. As your knowledge of science improves, more advanced versions are unlocked. If you use these parts when constructing something, its attributes may be improved. For example, if you use an advanced matter bin when constructing an autolathe (rather then a regular one), it'll hold more materials. Experiment around with stock parts of various qualities to see how they affect the end results! Be warned, however: Tier 3 and higher stock parts don't have 100% reliability and their low reliability may affect the reliability of the end machine.
|
||||
Many machines produces from circuit boards and inserted into a machine frame require a variety of parts to construct. These are parts like capacitors, batteries, matter bins, and so forth. As your knowledge of science improves, more advanced versions are unlocked. If you use these parts when constructing something, its attributes may be improved. For example, if you use an advanced matter bin when constructing an autolathe (rather then a regular one), it'll hold more materials. Experiment around with stock parts of various qualities to see how they affect the end results!
|
||||
</body>
|
||||
</html>
|
||||
"}*/
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
hitsound = "swing_hit"
|
||||
flags = CONDUCT
|
||||
armour_penetration = 100
|
||||
origin_tech = "combat=3"
|
||||
origin_tech = "combat=4;magnets=3"
|
||||
attack_verb = list("attacked", "chopped", "cleaved", "torn", "cut")
|
||||
attack_verb_on = list()
|
||||
sharp = 1
|
||||
@@ -86,7 +86,7 @@
|
||||
throw_range = 5
|
||||
hitsound = "swing_hit"
|
||||
armour_penetration = 35
|
||||
origin_tech = "magnets=3;syndicate=4"
|
||||
origin_tech = "combat=3;magnets=4;syndicate=4"
|
||||
block_chance = 50
|
||||
sharp = 1
|
||||
edge = 1
|
||||
@@ -123,7 +123,6 @@
|
||||
sharp = 1
|
||||
edge = 1
|
||||
hitsound = 'sound/weapons/circsawhit.ogg'
|
||||
origin_tech = "materials=3;biotech=3;syndicate=3"
|
||||
icon = 'icons/obj/surgery.dmi'
|
||||
icon_state = "esaw_0"
|
||||
icon_state_on = "esaw_1"
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
force = 10
|
||||
throwforce = 7
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
origin_tech = "combat=4"
|
||||
origin_tech = "combat=5"
|
||||
attack_verb = list("flogged", "whipped", "lashed", "disciplined")
|
||||
hitsound = 'sound/weapons/slash.ogg' //pls replace
|
||||
|
||||
@@ -61,4 +61,4 @@
|
||||
force = 10
|
||||
throwforce = 7
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
attack_verb = list("slashed", "stabbed", "sliced", "caned")
|
||||
attack_verb = list("slashed", "stabbed", "sliced", "caned")
|
||||
@@ -78,6 +78,7 @@
|
||||
mopcap = 15
|
||||
icon_state = "advmop"
|
||||
item_state = "mop" //meh will do for now until TG makes one
|
||||
origin_tech = "materials=3;engineering=3"
|
||||
force = 6
|
||||
throwforce = 8
|
||||
throw_range = 4
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
materials = list(MAT_METAL=700, MAT_GLASS=50)
|
||||
var/rigged = 0 // true if rigged to explode
|
||||
var/chargerate = 100 //how much power is given every tick in a recharger
|
||||
var/minor_fault = 0 //If not 100% reliable, it will build up faults.
|
||||
var/self_recharge = 0 //does it self recharge, over time, or not?
|
||||
var/grown_battery = FALSE // If it's a grown that acts as a battery, add a wire overlay to it.
|
||||
|
||||
@@ -102,7 +101,7 @@
|
||||
|
||||
/obj/item/weapon/stock_parts/cell/super
|
||||
name = "super-capacity power cell"
|
||||
origin_tech = "powerstorage=5"
|
||||
origin_tech = "powerstorage=3;materials=3"
|
||||
icon_state = "scell"
|
||||
maxcharge = 20000
|
||||
materials = list(MAT_GLASS=300)
|
||||
@@ -115,7 +114,7 @@
|
||||
|
||||
/obj/item/weapon/stock_parts/cell/hyper
|
||||
name = "hyper-capacity power cell"
|
||||
origin_tech = "powerstorage=6"
|
||||
origin_tech = "powerstorage=4;engineering=4;materials=4"
|
||||
icon_state = "hpcell"
|
||||
maxcharge = 30000
|
||||
materials = list(MAT_GLASS=400)
|
||||
@@ -128,7 +127,7 @@
|
||||
|
||||
/obj/item/weapon/stock_parts/cell/bluespace
|
||||
name = "bluespace power cell"
|
||||
origin_tech = "powerstorage=7"
|
||||
origin_tech = "powerstorage=5;bluespace=4;materials=4;engineering=4"
|
||||
icon_state = "bscell"
|
||||
maxcharge = 40000
|
||||
materials = list(MAT_GLASS=600)
|
||||
@@ -142,7 +141,7 @@
|
||||
/obj/item/weapon/stock_parts/cell/infinite
|
||||
name = "infinite-capacity power cell!"
|
||||
icon_state = "icell"
|
||||
origin_tech = null
|
||||
origin_tech = "powerstorage=7"
|
||||
maxcharge = 30000
|
||||
materials = list(MAT_GLASS=1000)
|
||||
rating = 6
|
||||
@@ -161,13 +160,12 @@
|
||||
maxcharge = 300
|
||||
materials = list()
|
||||
rating = 1
|
||||
minor_fault = 1
|
||||
grown_battery = TRUE //it has the overlays for wires
|
||||
|
||||
/obj/item/weapon/stock_parts/cell/high/slime
|
||||
name = "charged slime core"
|
||||
desc = "A yellow slime core infused with plasma, it crackles with power."
|
||||
origin_tech = "powerstorage=2;biotech=4"
|
||||
origin_tech = "powerstorage=5;biotech=4"
|
||||
icon = 'icons/mob/slimes.dmi'
|
||||
icon_state = "yellow slime extract"
|
||||
materials = list()
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
item_state = "paper"
|
||||
throw_speed = 4
|
||||
throw_range = 20
|
||||
origin_tech = "bluespace=4"
|
||||
origin_tech = "bluespace=6"
|
||||
burn_state = FLAMMABLE
|
||||
|
||||
/obj/item/weapon/teleportation_scroll/apprentice
|
||||
name = "lesser scroll of teleportation"
|
||||
uses = 1
|
||||
origin_tech = "bluespace 2"
|
||||
origin_tech = "bluespace=5"
|
||||
|
||||
/obj/item/weapon/teleportation_scroll/attack_self(mob/user as mob)
|
||||
user.set_machine(src)
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
throw_range = 3
|
||||
w_class = WEIGHT_CLASS_BULKY
|
||||
materials = list(MAT_GLASS=7500, MAT_METAL=1000)
|
||||
origin_tech = "materials=2"
|
||||
origin_tech = "materials=3;combat=4"
|
||||
attack_verb = list("shoved", "bashed")
|
||||
var/cooldown = 0 //shield bash cooldown. based on world.time
|
||||
|
||||
@@ -46,6 +46,7 @@
|
||||
icon_state = "buckler"
|
||||
item_state = "buckler"
|
||||
materials = list()
|
||||
origin_tech = "materials=1;combat=3;biotech=2"
|
||||
burn_state = FLAMMABLE
|
||||
block_chance = 30
|
||||
|
||||
@@ -59,7 +60,7 @@
|
||||
throw_speed = 3
|
||||
throw_range = 5
|
||||
w_class = WEIGHT_CLASS_TINY
|
||||
origin_tech = "materials=4;magnets=3;syndicate=4"
|
||||
origin_tech = "materials=4;magnets=5;syndicate=6"
|
||||
attack_verb = list("shoved", "bashed")
|
||||
var/active = 0
|
||||
|
||||
@@ -102,6 +103,7 @@
|
||||
desc = "An advanced riot shield made of lightweight materials that collapses for easy storage."
|
||||
icon = 'icons/obj/weapons.dmi'
|
||||
icon_state = "teleriot0"
|
||||
origin_tech = "materials=3;combat=4;engineering=4"
|
||||
slot_flags = null
|
||||
force = 3
|
||||
throwforce = 3
|
||||
|
||||
@@ -24,12 +24,11 @@
|
||||
/obj/item/weapon/storage/part_replacer/afterattack(obj/machinery/T as obj, mob/living/carbon/human/user as mob, flag, params)
|
||||
if(flag)
|
||||
return
|
||||
else
|
||||
if(works_from_distance)
|
||||
if(istype(T))
|
||||
if(T.component_parts)
|
||||
T.exchange_parts(user, src)
|
||||
user.Beam(T,icon_state="rped_upgrade",icon='icons/effects/effects.dmi',time=5)
|
||||
else if(works_from_distance)
|
||||
if(istype(T))
|
||||
if(T.component_parts)
|
||||
T.exchange_parts(user, src)
|
||||
user.Beam(T,icon_state="rped_upgrade",icon='icons/effects/effects.dmi',time=5)
|
||||
return
|
||||
|
||||
/obj/item/weapon/storage/part_replacer/bluespace
|
||||
@@ -164,7 +163,7 @@
|
||||
name = "super capacitor"
|
||||
desc = "A super-high capacity capacitor used in the construction of a variety of devices."
|
||||
icon_state = "super_capacitor"
|
||||
origin_tech = "powerstorage=5;materials=4"
|
||||
origin_tech = "powerstorage=4;engineering=4"
|
||||
rating = 3
|
||||
materials = list(MAT_METAL=50, MAT_GLASS=50)
|
||||
|
||||
@@ -172,7 +171,7 @@
|
||||
name = "phasic scanning module"
|
||||
desc = "A compact, high resolution phasic scanning module used in the construction of certain devices."
|
||||
icon_state = "super_scan_module"
|
||||
origin_tech = "magnets=5"
|
||||
origin_tech = "magnets=4;engineering=4"
|
||||
rating = 3
|
||||
materials = list(MAT_METAL=50, MAT_GLASS=20)
|
||||
|
||||
@@ -180,7 +179,7 @@
|
||||
name = "pico-manipulator"
|
||||
desc = "A tiny little manipulator used in the construction of certain devices."
|
||||
icon_state = "pico_mani"
|
||||
origin_tech = "materials=5;programming=2"
|
||||
origin_tech = "materials=4;programming=4,engineering=4"
|
||||
rating = 3
|
||||
materials = list(MAT_METAL=30)
|
||||
|
||||
@@ -188,7 +187,7 @@
|
||||
name = "ultra-high-power micro-laser"
|
||||
icon_state = "ultra_high_micro_laser"
|
||||
desc = "A tiny laser used in certain devices."
|
||||
origin_tech = "magnets=5"
|
||||
origin_tech = "magnets=4;engineering=4"
|
||||
rating = 3
|
||||
materials = list(MAT_METAL=10, MAT_GLASS=20)
|
||||
|
||||
@@ -196,7 +195,7 @@
|
||||
name = "super matter bin"
|
||||
desc = "A container for hold compressed matter awaiting re-construction."
|
||||
icon_state = "super_matter_bin"
|
||||
origin_tech = "materials=5"
|
||||
origin_tech = "materials=4;engineering=4"
|
||||
rating = 3
|
||||
materials = list(MAT_METAL=80)
|
||||
|
||||
@@ -206,7 +205,7 @@
|
||||
name = "quadratic capacitor"
|
||||
desc = "An capacity capacitor used in the construction of a variety of devices."
|
||||
icon_state = "quadratic_capacitor"
|
||||
origin_tech = "powerstorage=6;materials=5"
|
||||
origin_tech = "powerstorage=5;materials=4;engineering=4"
|
||||
rating = 4
|
||||
materials = list(MAT_METAL=50, MAT_GLASS=50)
|
||||
|
||||
@@ -214,7 +213,7 @@
|
||||
name = "triphasic scanning module"
|
||||
desc = "A compact, ultra resolution triphasic scanning module used in the construction of certain devices."
|
||||
icon_state = "triphasic_scan_module"
|
||||
origin_tech = "magnets=6"
|
||||
origin_tech = "magnets=5;materials=4;engineering=4"
|
||||
rating = 4
|
||||
materials = list(MAT_METAL=50, MAT_GLASS=20)
|
||||
|
||||
@@ -222,7 +221,7 @@
|
||||
name = "femto-manipulator"
|
||||
desc = "A tiny little manipulator used in the construction of certain devices."
|
||||
icon_state = "femto_mani"
|
||||
origin_tech = "materials=6;programming=3"
|
||||
origin_tech = "materials=6;programming=4;engineering=4"
|
||||
rating = 4
|
||||
materials = list(MAT_METAL=30)
|
||||
|
||||
@@ -230,7 +229,7 @@
|
||||
name = "quad-ultra micro-laser"
|
||||
icon_state = "quadultra_micro_laser"
|
||||
desc = "A tiny laser used in certain devices."
|
||||
origin_tech = "magnets=6"
|
||||
origin_tech = "magnets=5;materials=4;engineering=4"
|
||||
rating = 4
|
||||
materials = list(MAT_METAL=10, MAT_GLASS=20)
|
||||
|
||||
@@ -238,7 +237,7 @@
|
||||
name = "bluespace matter bin"
|
||||
desc = "A container for hold compressed matter awaiting re-construction."
|
||||
icon_state = "bluespace_matter_bin"
|
||||
origin_tech = "materials=6"
|
||||
origin_tech = "materials=6;programming=4;engineering=4"
|
||||
rating = 4
|
||||
materials = list(MAT_METAL=80)
|
||||
|
||||
@@ -248,49 +247,49 @@
|
||||
name = "subspace ansible"
|
||||
icon_state = "subspace_ansible"
|
||||
desc = "A compact module capable of sensing extradimensional activity."
|
||||
origin_tech = "programming=2;magnets=3;materials=2;bluespace=1"
|
||||
origin_tech = "programming=2;magnets=2;materials=2;bluespace=1"
|
||||
materials = list(MAT_METAL=30, MAT_GLASS=10)
|
||||
|
||||
/obj/item/weapon/stock_parts/subspace/filter
|
||||
name = "hyperwave filter"
|
||||
icon_state = "hyperwave_filter"
|
||||
desc = "A tiny device capable of filtering and converting super-intense radiowaves."
|
||||
origin_tech = "programming=2;magnets=1"
|
||||
origin_tech = "programming=2;magnets=2"
|
||||
materials = list(MAT_METAL=30, MAT_GLASS=10)
|
||||
|
||||
/obj/item/weapon/stock_parts/subspace/amplifier
|
||||
name = "subspace amplifier"
|
||||
icon_state = "subspace_amplifier"
|
||||
desc = "A compact micro-machine capable of amplifying weak subspace transmissions."
|
||||
origin_tech = "programming=2;magnets=2;materials=1;bluespace=1"
|
||||
origin_tech = "programming=2;magnets=2;materials=2;bluespace=2"
|
||||
materials = list(MAT_METAL=30, MAT_GLASS=10)
|
||||
|
||||
/obj/item/weapon/stock_parts/subspace/treatment
|
||||
name = "subspace treatment disk"
|
||||
icon_state = "treatment_disk"
|
||||
desc = "A compact micro-machine capable of stretching out hyper-compressed radio waves."
|
||||
origin_tech = "programming=2;magnets=1;materials=3;bluespace=1"
|
||||
origin_tech = "programming=2;magnets=2;materials=2;bluespace=2"
|
||||
materials = list(MAT_METAL=30, MAT_GLASS=10)
|
||||
|
||||
/obj/item/weapon/stock_parts/subspace/analyzer
|
||||
name = "subspace wavelength analyzer"
|
||||
icon_state = "wavelength_analyzer"
|
||||
desc = "A sophisticated analyzer capable of analyzing cryptic subspace wavelengths."
|
||||
origin_tech = "programming=2;magnets=2;materials=2;bluespace=1"
|
||||
origin_tech = "programming=2;magnets=2;materials=2;bluespace=2"
|
||||
materials = list(MAT_METAL=30, MAT_GLASS=10)
|
||||
|
||||
/obj/item/weapon/stock_parts/subspace/crystal
|
||||
name = "ansible crystal"
|
||||
icon_state = "ansible_crystal"
|
||||
desc = "A crystal made from pure glass used to transmit laser databursts to subspace."
|
||||
origin_tech = "magnets=2;materials=2;bluespace=1"
|
||||
origin_tech = "magnets=2;materials=2;bluespace=2;plasmatech=2"
|
||||
materials = list(MAT_GLASS=50)
|
||||
|
||||
/obj/item/weapon/stock_parts/subspace/transmitter
|
||||
name = "subspace transmitter"
|
||||
icon_state = "subspace_transmitter"
|
||||
desc = "A large piece of equipment used to open a window into the subspace dimension."
|
||||
origin_tech = "magnets=3;materials=3;bluespace=2"
|
||||
origin_tech = "magnets=2;materials=2;bluespace=2"
|
||||
materials = list(MAT_METAL=50)
|
||||
|
||||
/obj/item/weapon/research//Makes testing much less of a pain -Sieve
|
||||
@@ -298,4 +297,4 @@
|
||||
icon = 'icons/obj/stock_parts.dmi'
|
||||
icon_state = "capacitor"
|
||||
desc = "A debug item for research."
|
||||
origin_tech = "materials=8;programming=8;magnets=8;powerstorage=8;bluespace=8;combat=8;biotech=8;syndicate=8"
|
||||
origin_tech = "materials=8;programming=8;magnets=8;powerstorage=8;bluespace=8;combat=8;biotech=8;syndicate=8;engineering=8;plasmatech=8;abductor=8"
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
desc = "His Grace."
|
||||
force = 5
|
||||
throwforce = 10
|
||||
origin_tech = "combat=4;engineering=4;syndicate=2"
|
||||
var/list/servantlinks = list()
|
||||
var/hunger = 0
|
||||
var/hunger_message_level = 0
|
||||
|
||||
@@ -33,55 +33,39 @@
|
||||
/obj/item/weapon/storage/backpack/holding
|
||||
name = "Bag of Holding"
|
||||
desc = "A backpack that opens into a localized pocket of Blue Space."
|
||||
origin_tech = "bluespace=4"
|
||||
origin_tech = "bluespace=5;materials=4;engineering=4;plasmatech=5"
|
||||
icon_state = "holdingpack"
|
||||
max_w_class = WEIGHT_CLASS_HUGE
|
||||
max_combined_w_class = 35
|
||||
burn_state = FIRE_PROOF
|
||||
|
||||
New()
|
||||
..()
|
||||
return
|
||||
/obj/item/weapon/storage/backpack/holding/New()
|
||||
..()
|
||||
return
|
||||
|
||||
attackby(obj/item/weapon/W as obj, mob/user as mob, params)
|
||||
if(crit_fail)
|
||||
to_chat(user, "<span class='warning'>The Bluespace generator isn't working.</span>")
|
||||
return
|
||||
else if(istype(W, /obj/item/weapon/storage/backpack/holding) && !W.crit_fail)
|
||||
var/response = alert(user, "Are you sure you want to put the bag of holding inside another bag of holding?","Are you sure you want to die?","Yes","No")
|
||||
if(response == "Yes")
|
||||
user.visible_message("<span class='warning'>[user] grins as \he begins to put a Bag of Holding into a Bag of Holding!</span>", "<span class='warning'>You begin to put the Bag of Holding into the Bag of Holding!</span>")
|
||||
if(do_after(user, 30, target=src))
|
||||
investigate_log("has become a singularity. Caused by [user.key]","singulo")
|
||||
user.visible_message("<span class='warning'>[user] erupts in evil laughter as \he puts the Bag of Holding into another Bag of Holding!</span>", "<span class='warning'>You can't help but laugh wildly as you put the Bag of Holding into another Bag of Holding, complete darkness surrounding you.</span>","<span class='warning'> You hear the sound of scientific evil brewing! </span>")
|
||||
qdel(W)
|
||||
var/obj/singularity/singulo = new /obj/singularity(get_turf(user))
|
||||
singulo.energy = 300 //To give it a small boost
|
||||
message_admins("[key_name_admin(user)] detonated a bag of holding <A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>)")
|
||||
log_game("[key_name(user)] detonated a bag of holding")
|
||||
qdel(src)
|
||||
else
|
||||
user.visible_message("After careful consideration, [user] has decided that putting a Bag of Holding inside another Bag of Holding would not yield the ideal outcome.","You come to the realization that this might not be the greatest idea.")
|
||||
else
|
||||
. = ..()
|
||||
|
||||
proc/failcheck(mob/user as mob)
|
||||
if(prob(src.reliability)) return 1 //No failure
|
||||
if(prob(src.reliability))
|
||||
to_chat(user, "<span class='warning'>The Bluespace portal resists your attempt to add another item.</span>")//light failure
|
||||
|
||||
else
|
||||
to_chat(user, "<span class='warning'>The Bluespace generator malfunctions!</span>")
|
||||
for(var/obj/O in src.contents) //it broke, delete what was in it
|
||||
qdel(O)
|
||||
crit_fail = 1
|
||||
icon_state = "brokenpack"
|
||||
|
||||
singularity_act(current_size)
|
||||
var/dist = max((current_size - 2),1)
|
||||
explosion(src.loc,(dist),(dist*2),(dist*4))
|
||||
return
|
||||
/obj/item/weapon/storage/backpack/holding/attackby(obj/item/weapon/W, mob/user, params)
|
||||
if(istype(W, /obj/item/weapon/storage/backpack/holding))
|
||||
var/response = alert(user, "Are you sure you want to put the bag of holding inside another bag of holding?","Are you sure you want to die?","Yes","No")
|
||||
if(response == "Yes")
|
||||
user.visible_message("<span class='warning'>[user] grins as \he begins to put a Bag of Holding into a Bag of Holding!</span>", "<span class='warning'>You begin to put the Bag of Holding into the Bag of Holding!</span>")
|
||||
if(do_after(user, 30, target=src))
|
||||
investigate_log("has become a singularity. Caused by [user.key]","singulo")
|
||||
user.visible_message("<span class='warning'>[user] erupts in evil laughter as \he puts the Bag of Holding into another Bag of Holding!</span>", "<span class='warning'>You can't help but laugh wildly as you put the Bag of Holding into another Bag of Holding, complete darkness surrounding you.</span>","<span class='warning'> You hear the sound of scientific evil brewing! </span>")
|
||||
qdel(W)
|
||||
var/obj/singularity/singulo = new /obj/singularity(get_turf(user))
|
||||
singulo.energy = 300 //To give it a small boost
|
||||
message_admins("[key_name_admin(user)] detonated a bag of holding <A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>)")
|
||||
log_game("[key_name(user)] detonated a bag of holding")
|
||||
qdel(src)
|
||||
else
|
||||
user.visible_message("After careful consideration, [user] has decided that putting a Bag of Holding inside another Bag of Holding would not yield the ideal outcome.","You come to the realization that this might not be the greatest idea.")
|
||||
else
|
||||
. = ..()
|
||||
|
||||
/obj/item/weapon/storage/backpack/holding/singularity_act(current_size)
|
||||
var/dist = max((current_size - 2),1)
|
||||
explosion(src.loc,(dist),(dist*2),(dist*4))
|
||||
return
|
||||
|
||||
/obj/item/weapon/storage/backpack/santabag
|
||||
name = "Santa's Gift Bag"
|
||||
|
||||
@@ -72,6 +72,7 @@
|
||||
name = "trash bag of holding"
|
||||
desc = "The latest and greatest in custodial convenience, a trashbag that is capable of holding vast quantities of garbage."
|
||||
icon_state = "bluetrashbag"
|
||||
origin_tech = "materials=4;bluespace=4;engineering=4;plasmatech=3"
|
||||
max_combined_w_class = 60
|
||||
storage_slots = 60
|
||||
|
||||
@@ -131,6 +132,7 @@
|
||||
desc = "This little bugger can be used to store and transport ores."
|
||||
icon = 'icons/obj/mining.dmi'
|
||||
icon_state = "satchel"
|
||||
origin_tech = "engineering=2"
|
||||
slot_flags = SLOT_BELT | SLOT_POCKET
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
storage_slots = 50
|
||||
@@ -147,7 +149,7 @@
|
||||
desc = "A revolution in convenience, this satchel allows for infinite ore storage. It's been outfitted with anti-malfunction safety measures."
|
||||
storage_slots = INFINITY
|
||||
max_combined_w_class = INFINITY
|
||||
origin_tech = "bluespace=3"
|
||||
origin_tech = "bluespace=4;materials=3;engineering=3"
|
||||
icon_state = "satchel_bspace"
|
||||
|
||||
/obj/item/weapon/storage/bag/ore/holding/cyborg
|
||||
|
||||
@@ -509,21 +509,9 @@
|
||||
w_class = WEIGHT_CLASS_BULKY
|
||||
max_w_class = WEIGHT_CLASS_SMALL
|
||||
max_combined_w_class = 21 // = 14 * 1.5, not 14 * 2. This is deliberate
|
||||
origin_tech = "bluespace=4"
|
||||
origin_tech = "bluespace=5;materials=4;engineering=4;plasmatech=5"
|
||||
can_hold = list()
|
||||
|
||||
proc/failcheck(mob/user as mob)
|
||||
if(prob(src.reliability)) return 1 //No failure
|
||||
if(prob(src.reliability))
|
||||
to_chat(user, "<span class='warning'>The Bluespace portal resists your attempt to add another item.</span>")//light failure
|
||||
|
||||
else
|
||||
to_chat(user, "<span class='warning'>The Bluespace generator malfunctions!</span>")
|
||||
for(var/obj/O in src.contents) //it broke, delete what was in it
|
||||
qdel(O)
|
||||
crit_fail = 1
|
||||
return 0
|
||||
|
||||
/obj/item/weapon/storage/belt/bluespace/owlman
|
||||
name = "Owlman's utility belt"
|
||||
desc = "Sometimes people choose justice. Sometimes, justice chooses you..."
|
||||
@@ -532,7 +520,7 @@
|
||||
storage_slots = 6
|
||||
max_w_class = WEIGHT_CLASS_NORMAL
|
||||
max_combined_w_class = 18
|
||||
origin_tech = "bluespace=4;syndicate=2"
|
||||
origin_tech = "bluespace=5;materials=4;engineering=4;plasmatech=5"
|
||||
allow_quick_empty = 1
|
||||
can_hold = list(
|
||||
/obj/item/weapon/grenade/smokebomb,
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
throw_range = 7
|
||||
w_class = WEIGHT_CLASS_BULKY
|
||||
materials = list(MAT_METAL = 500)
|
||||
origin_tech = "combat=1"
|
||||
origin_tech = "combat=1;engineering=1"
|
||||
attack_verb = list("robusted")
|
||||
hitsound = 'sound/weapons/smash.ogg'
|
||||
|
||||
@@ -71,7 +71,7 @@
|
||||
name = "suspicious looking toolbox"
|
||||
icon_state = "syndicate"
|
||||
item_state = "toolbox_syndi"
|
||||
origin_tech = "combat=1;syndicate=1"
|
||||
origin_tech = "combat=2;syndicate=1;engineering=2"
|
||||
silent = 1
|
||||
force = 15.0
|
||||
throwforce = 18.0
|
||||
|
||||
@@ -165,8 +165,6 @@
|
||||
/obj/item/weapon/melee/baton/emp_act(severity)
|
||||
if(bcell)
|
||||
deductcharge(1000 / severity)
|
||||
if(bcell.reliability != 100 && prob(50/severity))
|
||||
bcell.reliability -= 10 / severity
|
||||
..()
|
||||
|
||||
/obj/item/weapon/melee/baton/wash(mob/user, atom/source)
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
throw_speed = 4
|
||||
throw_range = 20
|
||||
materials = list(MAT_METAL=400)
|
||||
origin_tech = "magnets=1"
|
||||
origin_tech = "magnets=3;bluespace=2"
|
||||
|
||||
/obj/item/weapon/locator/attack_self(mob/user as mob)
|
||||
add_fingerprint(usr)
|
||||
@@ -102,7 +102,7 @@ Frequency:
|
||||
throw_speed = 3
|
||||
throw_range = 5
|
||||
materials = list(MAT_METAL=10000)
|
||||
origin_tech = "magnets=1;bluespace=3"
|
||||
origin_tech = "magnets=3;bluespace=4"
|
||||
var/active_portals = 0
|
||||
|
||||
/obj/item/weapon/hand_tele/attack_self(mob/user as mob)
|
||||
|
||||
@@ -205,7 +205,7 @@
|
||||
wieldsound = 'sound/weapons/saberon.ogg'
|
||||
unwieldsound = 'sound/weapons/saberoff.ogg'
|
||||
armour_penetration = 35
|
||||
origin_tech = "magnets=3;syndicate=4"
|
||||
origin_tech = "magnets=4;syndicate=5"
|
||||
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
||||
block_chance = 75
|
||||
sharp = 1
|
||||
@@ -547,7 +547,7 @@
|
||||
throw_range = 1
|
||||
w_class = WEIGHT_CLASS_HUGE
|
||||
var/charged = 5
|
||||
origin_tech = "combat=5;bluespace=4"
|
||||
origin_tech = "combat=4;bluespace=4;plasmatech=7"
|
||||
|
||||
/obj/item/weapon/twohanded/singularityhammer/New()
|
||||
..()
|
||||
@@ -612,7 +612,7 @@
|
||||
throw_range = 7
|
||||
w_class = WEIGHT_CLASS_HUGE
|
||||
//var/charged = 5
|
||||
origin_tech = "combat=5;powerstorage=5"
|
||||
origin_tech = "combat=4;powerstorage=7"
|
||||
|
||||
/obj/item/weapon/twohanded/mjollnir/proc/shock(mob/living/target as mob)
|
||||
var/datum/effect/system/spark_spread/s = new /datum/effect/system/spark_spread()
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
throwforce = 2
|
||||
throw_speed = 3
|
||||
throw_range = 10
|
||||
origin_tech = "magnets=1"
|
||||
origin_tech = "magnets=1;engineering=1"
|
||||
toolspeed = 1
|
||||
usesound = 'sound/items/Deconstruct.ogg'
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
desc = "Emits a visible or invisible beam and is triggered when the beam is interrupted."
|
||||
icon_state = "infrared"
|
||||
materials = list(MAT_METAL=1000, MAT_GLASS=500)
|
||||
origin_tech = "magnets=2"
|
||||
origin_tech = "magnets=2;materials=2"
|
||||
|
||||
bomb_name = "tripwire mine"
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
desc = "A handy little spring-loaded trap for catching pesty rodents."
|
||||
icon_state = "mousetrap"
|
||||
materials = list(MAT_METAL=100)
|
||||
origin_tech = "combat=1"
|
||||
origin_tech = "combat=1;materials=2;engineering=1"
|
||||
var/armed = 0
|
||||
|
||||
bomb_name = "contact mine"
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
desc = "Used for scanning and alerting when someone enters a certain proximity."
|
||||
icon_state = "prox"
|
||||
materials = list(MAT_METAL=800, MAT_GLASS=200)
|
||||
origin_tech = "magnets=1"
|
||||
origin_tech = "magnets=1;engineering=1"
|
||||
|
||||
secured = 0
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
icon_state = "signaller"
|
||||
item_state = "signaler"
|
||||
materials = list(MAT_METAL=400, MAT_GLASS=120)
|
||||
origin_tech = "magnets=1"
|
||||
origin_tech = "magnets=1;bluespace=1"
|
||||
wires = WIRE_RECEIVE | WIRE_PULSE | WIRE_RADIO_PULSE | WIRE_RADIO_RECEIVE
|
||||
|
||||
secured = 1
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
desc = "Used to time things. Works well with contraptions which has to count down. Tick tock."
|
||||
icon_state = "timer"
|
||||
materials = list(MAT_METAL=500, MAT_GLASS=50)
|
||||
origin_tech = "magnets=1"
|
||||
origin_tech = "magnets=1;engineering=1"
|
||||
|
||||
secured = 0
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
desc = "A small electronic device able to record a voice sample, and send a signal when that sample is repeated."
|
||||
icon_state = "voice"
|
||||
materials = list(MAT_METAL=500, MAT_GLASS=50)
|
||||
origin_tech = "magnets=1"
|
||||
origin_tech = "magnets=1;engineering=1"
|
||||
var/listening = 0
|
||||
var/recorded = null //the activation message
|
||||
var/recorded_type = 0 // 0 for say, 1 for emote
|
||||
@@ -18,10 +18,10 @@
|
||||
|
||||
hear_talk(mob/living/M as mob, msg)
|
||||
hear_input(M, msg, 0)
|
||||
|
||||
|
||||
hear_message(mob/living/M as mob, msg)
|
||||
hear_input(M, msg, 1)
|
||||
|
||||
|
||||
proc/hear_input(mob/living/M as mob, msg, type)
|
||||
if(!istype(M,/mob/living))
|
||||
return
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
desc = "Used for seeing walls, floors, and stuff through anything."
|
||||
icon_state = "meson"
|
||||
item_state = "glasses"
|
||||
origin_tech = "magnets=2;engineering=2"
|
||||
origin_tech = "magnets=1;engineering=2"
|
||||
vision_flags = SEE_TURFS
|
||||
invis_view = SEE_INVISIBLE_MINIMUM //don't render darkness while wearing these
|
||||
prescription_upgradable = 1
|
||||
@@ -51,6 +51,7 @@
|
||||
desc = "An Optical Meson Scanner fitted with an amplified visible light spectrum overlay, providing greater visual clarity in darkness."
|
||||
icon_state = "nvgmeson"
|
||||
item_state = "glasses"
|
||||
origin_tech = "magnets=4;engineering=5;plasmatech=4"
|
||||
darkness_view = 8
|
||||
prescription_upgradable = 0
|
||||
|
||||
@@ -84,6 +85,7 @@
|
||||
desc = "A pair of snazzy goggles used to protect against chemical spills. Fitted with an analyzer for scanning items and reagents."
|
||||
icon_state = "purple"
|
||||
item_state = "glasses"
|
||||
origin_tech = "magnets=2;engineering=1"
|
||||
prescription_upgradable = 0
|
||||
scan_reagents = 1 //You can see reagents while wearing science goggles
|
||||
species_fit = list("Vox")
|
||||
@@ -119,7 +121,7 @@
|
||||
desc = "You can totally see in the dark now!"
|
||||
icon_state = "night"
|
||||
item_state = "glasses"
|
||||
origin_tech = "magnets=2"
|
||||
origin_tech = "materials=4;magnets=4;plasmatech=4;engineering=4"
|
||||
darkness_view = 8
|
||||
invis_view = SEE_INVISIBLE_MINIMUM //don't render darkness while wearing these
|
||||
species_fit = list("Vox")
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
name = "\improper Health Scanner HUD"
|
||||
desc = "A heads-up display that scans the humans in view and provides accurate data about their health status."
|
||||
icon_state = "healthhud"
|
||||
origin_tech = "magnets=3;biotech=2"
|
||||
HUDType = DATA_HUD_MEDICAL_ADVANCED
|
||||
species_fit = list("Vox")
|
||||
sprite_sheets = list(
|
||||
@@ -48,6 +49,7 @@
|
||||
desc = "An advanced medical head-up display that allows doctors to find patients in complete darkness."
|
||||
icon_state = "healthhudnight"
|
||||
item_state = "glasses"
|
||||
origin_tech = "magnets=4;biotech=4;plasmatech=4;engineering=5"
|
||||
darkness_view = 8
|
||||
invis_view = SEE_INVISIBLE_MINIMUM //don't render darkness while wearing these
|
||||
prescription_upgradable = 0
|
||||
@@ -56,6 +58,7 @@
|
||||
name = "Diagnostic HUD"
|
||||
desc = "A heads-up display capable of analyzing the integrity and status of robotics and exosuits."
|
||||
icon_state = "diagnostichud"
|
||||
origin_tech = "magnets=2;engineering=2"
|
||||
HUDType = DATA_HUD_DIAGNOSTIC
|
||||
species_fit = list("Vox")
|
||||
sprite_sheets = list(
|
||||
@@ -67,6 +70,7 @@
|
||||
desc = "A robotics diagnostic HUD fitted with a light amplifier."
|
||||
icon_state = "diagnostichudnight"
|
||||
item_state = "glasses"
|
||||
origin_tech = "magnets=4;powerstorage=4;plasmatech=4;engineering=5"
|
||||
darkness_view = 8
|
||||
invis_view = SEE_INVISIBLE_MINIMUM //don't render darkness while wearing these
|
||||
prescription_upgradable = 0
|
||||
@@ -75,6 +79,7 @@
|
||||
name = "\improper Security HUD"
|
||||
desc = "A heads-up display that scans the humans in view and provides accurate data about their ID status and security records."
|
||||
icon_state = "securityhud"
|
||||
origin_tech = "magnets=3;combat=2"
|
||||
var/global/list/jobs[0]
|
||||
HUDType = DATA_HUD_SECURITY_ADVANCED
|
||||
species_fit = list("Vox")
|
||||
@@ -102,6 +107,7 @@
|
||||
name = "\improper Night Vision Security HUD"
|
||||
desc = "An advanced heads-up display which provides id data and vision in complete darkness."
|
||||
icon_state = "securityhudnight"
|
||||
origin_tech = "magnets=4;combat=4;plasmatech=4;engineering=5"
|
||||
darkness_view = 8
|
||||
invis_view = SEE_INVISIBLE_MINIMUM //don't render darkness while wearing these
|
||||
prescription_upgradable = 0
|
||||
@@ -110,6 +116,7 @@
|
||||
name = "HUDSunglasses"
|
||||
desc = "Sunglasses with a HUD."
|
||||
icon_state = "sunhud"
|
||||
origin_tech = "magnets=3;combat=3;engineering=3"
|
||||
darkness_view = 1
|
||||
flash_protect = 1
|
||||
tint = 1
|
||||
@@ -165,4 +172,4 @@
|
||||
up = 0
|
||||
|
||||
/obj/item/clothing/glasses/hud/health/tajblind/attack_self()
|
||||
toggle_veil()
|
||||
toggle_veil()
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
flash_protect = 2
|
||||
tint = 2
|
||||
armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0)
|
||||
origin_tech = "materials=2;engineering=2"
|
||||
origin_tech = "materials=2;engineering=3"
|
||||
actions_types = list(/datum/action/item_action/toggle)
|
||||
|
||||
/obj/item/clothing/mask/gas/welding/attack_self()
|
||||
|
||||
@@ -8,7 +8,6 @@
|
||||
name = "gas mask"
|
||||
// desc = "A face-covering mask that can be connected to an air supply. It seems to house some odd electronics."
|
||||
var/obj/item/voice_changer/changer
|
||||
origin_tech = "syndicate=4"
|
||||
burn_state = FIRE_PROOF
|
||||
|
||||
/obj/item/clothing/mask/gas/voice/verb/Toggle_Voice_Changer()
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user