mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-29 15:08:34 +01:00
Updates mechfab interface
Fixes all bugs I found.
This commit is contained in:
@@ -7,8 +7,8 @@
|
||||
icon_state = "mecha_equip"
|
||||
force = 5
|
||||
origin_tech = list(TECH_MATERIAL = 2)
|
||||
construction_time = 100
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=10000)
|
||||
//construction_time = 100
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=10000)
|
||||
var/equip_cooldown = 0
|
||||
var/equip_ready = 1
|
||||
var/energy_drain = 0
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
origin_tech = list(TECH_DATA = 2, TECH_BIO = 3)
|
||||
energy_drain = 20
|
||||
range = MELEE
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=5000,"glass"=10000)
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=5000,"glass"=10000)
|
||||
equip_cooldown = 20
|
||||
var/mob/living/carbon/occupant = null
|
||||
var/datum/global_iterator/pr_mech_sleeper
|
||||
@@ -386,8 +386,8 @@
|
||||
range = MELEE|RANGED
|
||||
equip_cooldown = 10
|
||||
origin_tech = list(TECH_MATERIAL = 3, TECH_BIO = 4, TECH_MAGNET = 4, TECH_DATA = 3)
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=3000,"glass"=2000)
|
||||
//construction_time = 200
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=3000,"glass"=2000)
|
||||
required_type = /obj/mecha/medical
|
||||
|
||||
New()
|
||||
|
||||
@@ -128,7 +128,7 @@
|
||||
desc = "This is an upgraded version of the drill that'll pierce the heavens! (Can be attached to: Combat and Engineering Exosuits)"
|
||||
icon_state = "mecha_diamond_drill"
|
||||
origin_tech = list(TECH_MATERIAL = 4, TECH_ENGINERING = 3)
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"diamond"=6500)
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"diamond"=6500)
|
||||
equip_cooldown = 20
|
||||
force = 15
|
||||
|
||||
@@ -255,8 +255,8 @@
|
||||
equip_cooldown = 10
|
||||
energy_drain = 250
|
||||
range = MELEE|RANGED
|
||||
construction_time = 1200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=30000,"phoron"=25000,"silver"=20000,"gold"=20000)
|
||||
//construction_time = 1200
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=30000,"phoron"=25000,"silver"=20000,"gold"=20000)
|
||||
var/mode = 0 //0 - deconstruct, 1 - wall or floor, 2 - airlock.
|
||||
var/disabled = 0 //malf
|
||||
|
||||
@@ -506,7 +506,7 @@
|
||||
equip_cooldown = 10
|
||||
energy_drain = 50
|
||||
range = 0
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"silver"=5000)
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"silver"=5000)
|
||||
var/deflect_coeff = 1.15
|
||||
var/damage_coeff = 0.8
|
||||
|
||||
@@ -556,7 +556,7 @@
|
||||
equip_cooldown = 10
|
||||
energy_drain = 50
|
||||
range = 0
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"gold"=5000)
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"gold"=5000)
|
||||
var/deflect_coeff = 1.15
|
||||
var/damage_coeff = 0.8
|
||||
|
||||
@@ -627,7 +627,7 @@
|
||||
equip_cooldown = 20
|
||||
energy_drain = 100
|
||||
range = 0
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"gold"=1000,"silver"=2000,"glass"=5000)
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"gold"=1000,"silver"=2000,"glass"=5000)
|
||||
var/health_boost = 2
|
||||
var/datum/global_iterator/pr_repair_droid
|
||||
var/icon/droid_overlay
|
||||
@@ -722,7 +722,7 @@
|
||||
equip_cooldown = 10
|
||||
energy_drain = 0
|
||||
range = 0
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"gold"=2000,"silver"=3000,"glass"=2000)
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"gold"=2000,"silver"=3000,"glass"=2000)
|
||||
var/datum/global_iterator/pr_energy_relay
|
||||
var/coeff = 100
|
||||
var/list/use_channels = list(EQUIP,ENVIRON,LIGHT)
|
||||
@@ -839,7 +839,7 @@
|
||||
equip_cooldown = 10
|
||||
energy_drain = 0
|
||||
range = MELEE
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"silver"=500,"glass"=1000)
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"silver"=500,"glass"=1000)
|
||||
var/datum/global_iterator/pr_mech_generator
|
||||
var/coeff = 100
|
||||
var/obj/item/stack/material/fuel
|
||||
@@ -974,7 +974,7 @@
|
||||
desc = "Generates power using uranium. Pollutes the environment."
|
||||
icon_state = "tesla"
|
||||
origin_tech = list(TECH_POWER = 3, TECH_ENGINERING = 3)
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"silver"=500,"glass"=1000)
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"silver"=500,"glass"=1000)
|
||||
max_fuel = 50000
|
||||
fuel_per_cycle_idle = 10
|
||||
fuel_per_cycle_active = 30
|
||||
@@ -1072,7 +1072,7 @@
|
||||
origin_tech = list(TECH_ENGINERING = 1, TECH_BIO = 1)
|
||||
energy_drain = 10
|
||||
range = MELEE
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=5000,"glass"=5000)
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=5000,"glass"=5000)
|
||||
equip_cooldown = 20
|
||||
var/mob/living/carbon/occupant = null
|
||||
var/door_locked = 1
|
||||
|
||||
@@ -274,7 +274,7 @@
|
||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang/clusterbang//Because I am a heartless bastard -Sieve
|
||||
name = "\improper SOP-6 grenade launcher"
|
||||
projectile = /obj/item/weapon/grenade/flashbang/clusterbang
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"gold"=6000,"uranium"=6000)
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"gold"=6000,"uranium"=6000)
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang/clusterbang/limited/get_equip_info()//Limited version of the clusterbang launcher that can't reload
|
||||
return "<span style=\"color:[equip_ready?"#0f0":"#f00"];\">*</span> [chassis.selected==src?"<b>":"<a href='?src=\ref[chassis];select_equip=\ref[src]'>"][src.name][chassis.selected==src?"</b>":"</a>"]\[[src.projectiles]\]"
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
active_power_usage = 5000
|
||||
req_access = list(access_robotics)
|
||||
|
||||
var/current_manufacturer
|
||||
var/speed = 1
|
||||
var/mat_efficiency = 1
|
||||
var/list/materials = list(DEFAULT_WALL_MATERIAL = 0, "glass" = 0, "gold" = 0, "silver" = 0, "diamond" = 0, "phoron" = 0, "uranium" = 0)
|
||||
@@ -23,6 +22,8 @@
|
||||
|
||||
var/list/categories = list()
|
||||
var/category = null
|
||||
var/manufacturer = null
|
||||
var/sync_message = ""
|
||||
|
||||
/obj/machinery/mecha_part_fabricator/New()
|
||||
..()
|
||||
@@ -40,7 +41,7 @@
|
||||
return
|
||||
|
||||
/obj/machinery/mecha_part_fabricator/initialize()
|
||||
current_manufacturer = basic_robolimb.company
|
||||
manufacturer = basic_robolimb.company
|
||||
update_categories()
|
||||
|
||||
/obj/machinery/mecha_part_fabricator/process()
|
||||
@@ -50,7 +51,7 @@
|
||||
if(busy)
|
||||
use_power = 2
|
||||
progress += speed
|
||||
finalize()
|
||||
check_build()
|
||||
else
|
||||
use_power = 1
|
||||
update_icon()
|
||||
@@ -64,6 +65,11 @@
|
||||
if(busy)
|
||||
overlays += "fab-active"
|
||||
|
||||
/obj/machinery/mecha_part_fabricator/dismantle()
|
||||
for(var/f in materials)
|
||||
eject_materials(f, -1)
|
||||
..()
|
||||
|
||||
/obj/machinery/mecha_part_fabricator/RefreshParts()
|
||||
res_max_amount = 0
|
||||
for(var/obj/item/weapon/stock_parts/matter_bin/M in component_parts)
|
||||
@@ -93,8 +99,12 @@
|
||||
data["buildable"] = get_build_options()
|
||||
data["category"] = category
|
||||
data["categories"] = categories
|
||||
if(all_robolimbs)
|
||||
data["manufacturers"] = all_robolimbs
|
||||
data["manufacturer"] = manufacturer
|
||||
data["materials"] = get_materials()
|
||||
data["maxres"] = res_max_amount
|
||||
data["sync"] = sync_message
|
||||
if(current)
|
||||
data["builtperc"] = round((progress / current.time) * 100)
|
||||
|
||||
@@ -119,9 +129,18 @@
|
||||
if(href_list["category"] in categories)
|
||||
category = href_list["category"]
|
||||
|
||||
if(href_list["manufacturer"])
|
||||
if(href_list["manufacturer"] in all_robolimbs)
|
||||
manufacturer = href_list["manufacturer"]
|
||||
|
||||
if(href_list["eject"])
|
||||
eject_materials(href_list["eject"], text2num(href_list["amount"]))
|
||||
//TODO: sync
|
||||
|
||||
if(href_list["sync"])
|
||||
sync()
|
||||
else
|
||||
sync_message = ""
|
||||
|
||||
return 1
|
||||
|
||||
/obj/machinery/mecha_part_fabricator/attackby(var/obj/item/I, var/mob/user)
|
||||
@@ -218,20 +237,26 @@
|
||||
return 0
|
||||
return 1
|
||||
|
||||
/obj/machinery/mecha_part_fabricator/proc/finalize()
|
||||
/obj/machinery/mecha_part_fabricator/proc/check_build()
|
||||
if(!queue.len)
|
||||
progress = 0
|
||||
return
|
||||
var/datum/design/D = queue[1]
|
||||
if(D.time > progress)
|
||||
return
|
||||
if(!can_build(D))
|
||||
progress = 0
|
||||
return
|
||||
if(D.time > progress)
|
||||
return
|
||||
for(var/M in D.materials)
|
||||
materials[M] = max(0, materials[M] - D.materials[M] * mat_efficiency)
|
||||
if(D.build_path)
|
||||
new D.build_path(loc)//var/obj/new_item = //TODO
|
||||
queue.Cut(1, 2)
|
||||
update_busy()
|
||||
var/obj/new_item = new D.build_path(loc, manufacturer)
|
||||
visible_message("\The [src] pings, indicating that \the [D] is complete.", "You hear a ping.")
|
||||
if(mat_efficiency != 1)
|
||||
if(new_item.matter && new_item.matter.len > 0)
|
||||
for(var/i in new_item.matter)
|
||||
new_item.matter[i] = new_item.matter[i] * mat_efficiency
|
||||
remove_from_queue(1)
|
||||
|
||||
/obj/machinery/mecha_part_fabricator/proc/get_queue_names()
|
||||
. = list()
|
||||
@@ -270,7 +295,8 @@
|
||||
for(var/T in materials)
|
||||
. += list(list("mat" = capitalize(T), "amt" = materials[T]))
|
||||
|
||||
/obj/machinery/mecha_part_fabricator/proc/eject_materials(var/material, var/amount)
|
||||
/obj/machinery/mecha_part_fabricator/proc/eject_materials(var/material, var/amount) // 0 amount = 0 means ejecting a full stack; -1 means eject everything
|
||||
var/recursive = amount == -1 ? 1 : 0
|
||||
material = lowertext(material)
|
||||
var/mattype
|
||||
switch(material)
|
||||
@@ -291,12 +317,27 @@
|
||||
else
|
||||
return
|
||||
var/obj/item/stack/material/S = new mattype(loc)
|
||||
if(amount == 0)
|
||||
if(amount <= 0)
|
||||
amount = S.max_amount
|
||||
world << "[materials[material]] | [S.perunit]"
|
||||
var/ejected = min(round(materials[material] / S.perunit), amount)
|
||||
S.amount = min(ejected, amount)
|
||||
if(S.amount <= 0)
|
||||
qdel(S)
|
||||
return
|
||||
materials[material] -= ejected * S.perunit
|
||||
if(recursive && materials[material] >= S.perunit)
|
||||
eject_materials(material, -1)
|
||||
update_busy()
|
||||
|
||||
/obj/machinery/mecha_part_fabricator/proc/sync()
|
||||
sync_message = "Error: no console found."
|
||||
for(var/obj/machinery/computer/rdconsole/RDC in get_area_all_atoms(get_area(src)))
|
||||
if(!RDC.sync)
|
||||
continue
|
||||
for(var/datum/tech/T in RDC.files.known_tech)
|
||||
files.AddTech2Known(T)
|
||||
for(var/datum/design/D in RDC.files.known_designs)
|
||||
files.AddDesign2Known(D)
|
||||
files.RefreshResearch()
|
||||
sync_message = "Sync complete."
|
||||
update_categories()
|
||||
|
||||
@@ -69,8 +69,8 @@
|
||||
icon = 'icons/obj/device.dmi'
|
||||
icon_state = "motion2"
|
||||
origin_tech = list(TECH_DATA = 2, TECH_MAGNET = 2)
|
||||
construction_time = 50
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=500)
|
||||
//construction_time = 50
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=500)
|
||||
|
||||
proc/get_mecha_info()
|
||||
if(!in_mecha())
|
||||
|
||||
@@ -11,15 +11,12 @@
|
||||
w_class = 5
|
||||
flags = CONDUCT
|
||||
origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 2)
|
||||
var/construction_time = 100
|
||||
var/list/construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"glass"=5000)
|
||||
|
||||
|
||||
/obj/item/mecha_parts/chassis
|
||||
name="Mecha Chassis"
|
||||
icon_state = "backbone"
|
||||
var/datum/construction/construct
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=20000)
|
||||
flags = CONDUCT
|
||||
|
||||
attackby(obj/item/W as obj, mob/user as mob)
|
||||
@@ -44,46 +41,35 @@
|
||||
desc="A torso part of Ripley APLU. Contains power unit, processing core and life support systems."
|
||||
icon_state = "ripley_harness"
|
||||
origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 2, TECH_BIO = 2, TECH_ENGINERING = 2)
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=40000,"glass"=15000)
|
||||
|
||||
/obj/item/mecha_parts/part/ripley_left_arm
|
||||
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 = list(TECH_DATA = 2, TECH_MATERIAL = 2, TECH_ENGINERING = 2)
|
||||
construction_time = 150
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=25000)
|
||||
|
||||
/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 = list(TECH_DATA = 2, TECH_MATERIAL = 2, TECH_ENGINERING = 2)
|
||||
construction_time = 150
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=25000)
|
||||
|
||||
/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 = list(TECH_DATA = 2, TECH_MATERIAL = 2, TECH_ENGINERING = 2)
|
||||
construction_time = 150
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=30000)
|
||||
|
||||
/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 = list(TECH_DATA = 2, TECH_MATERIAL = 2, TECH_ENGINERING = 2)
|
||||
construction_time = 150
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=30000)
|
||||
|
||||
///////// Gygax
|
||||
|
||||
/obj/item/mecha_parts/chassis/gygax
|
||||
name = "Gygax Chassis"
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=25000)
|
||||
|
||||
New()
|
||||
..()
|
||||
@@ -94,60 +80,45 @@
|
||||
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 = list(TECH_DATA = 2, TECH_MATERIAL = 2, TECH_BIO = 3, TECH_ENGINERING = 3)
|
||||
construction_time = 300
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=50000,"glass"=20000)
|
||||
|
||||
/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 = list(TECH_DATA = 2, TECH_MATERIAL = 2, TECH_MAGNET = 3, TECH_ENGINERING = 3)
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"glass"=10000)
|
||||
|
||||
/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 = list(TECH_DATA = 2, TECH_MATERIAL = 2, TECH_ENGINERING = 3)
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=30000)
|
||||
|
||||
/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 = list(TECH_DATA = 2, TECH_MATERIAL = 2, TECH_ENGINERING = 3)
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=30000)
|
||||
|
||||
/obj/item/mecha_parts/part/gygax_left_leg
|
||||
name="Gygax Left Leg"
|
||||
icon_state = "gygax_l_leg"
|
||||
origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 2, TECH_ENGINERING = 3)
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=35000)
|
||||
|
||||
/obj/item/mecha_parts/part/gygax_right_leg
|
||||
name="Gygax Right Leg"
|
||||
icon_state = "gygax_r_leg"
|
||||
origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 2, TECH_ENGINERING = 3)
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=35000)
|
||||
|
||||
/obj/item/mecha_parts/part/gygax_armour
|
||||
name="Gygax Armour Plates"
|
||||
icon_state = "gygax_armour"
|
||||
origin_tech = list(TECH_MATERIAL = 6, TECH_COMBAT = 4, TECH_ENGINERING = 5)
|
||||
construction_time = 600
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=50000,"diamond"=10000)
|
||||
|
||||
|
||||
//////////// Durand
|
||||
|
||||
/obj/item/mecha_parts/chassis/durand
|
||||
name = "Durand Chassis"
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=25000)
|
||||
|
||||
New()
|
||||
..()
|
||||
@@ -157,50 +128,36 @@
|
||||
name="Durand Torso"
|
||||
icon_state = "durand_harness"
|
||||
origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 3, TECH_BIO = 3, TECH_ENGINERING = 3)
|
||||
construction_time = 300
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=55000,"glass"=20000,"silver"=10000)
|
||||
|
||||
/obj/item/mecha_parts/part/durand_head
|
||||
name="Durand Head"
|
||||
icon_state = "durand_head"
|
||||
origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 3, TECH_MAGNET = 3, TECH_ENGINERING = 3)
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=25000,"glass"=10000,"silver"=3000)
|
||||
|
||||
/obj/item/mecha_parts/part/durand_left_arm
|
||||
name="Durand Left Arm"
|
||||
icon_state = "durand_l_arm"
|
||||
origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 3, TECH_ENGINERING = 3)
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=35000,"silver"=3000)
|
||||
|
||||
/obj/item/mecha_parts/part/durand_right_arm
|
||||
name="Durand Right Arm"
|
||||
icon_state = "durand_r_arm"
|
||||
origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 3, TECH_ENGINERING = 3)
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=35000,"silver"=3000)
|
||||
|
||||
/obj/item/mecha_parts/part/durand_left_leg
|
||||
name="Durand Left Leg"
|
||||
icon_state = "durand_l_leg"
|
||||
origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 3, TECH_ENGINERING = 3)
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=40000,"silver"=3000)
|
||||
|
||||
/obj/item/mecha_parts/part/durand_right_leg
|
||||
name="Durand Right Leg"
|
||||
icon_state = "durand_r_leg"
|
||||
origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 3, TECH_ENGINERING = 3)
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=40000,"silver"=3000)
|
||||
|
||||
/obj/item/mecha_parts/part/durand_armour
|
||||
name="Durand Armour Plates"
|
||||
icon_state = "durand_armour"
|
||||
origin_tech = list(TECH_MATERIAL = 5, TECH_COMBAT = 4, TECH_ENGINERING = 5)
|
||||
construction_time = 600
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=50000,"uranium"=10000)
|
||||
|
||||
|
||||
|
||||
@@ -247,43 +204,43 @@
|
||||
/obj/item/mecha_parts/part/phazon_torso
|
||||
name="Phazon Torso"
|
||||
icon_state = "phazon_harness"
|
||||
construction_time = 300
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=35000,"glass"=10000,"phoron"=20000)
|
||||
//construction_time = 300
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=35000,"glass"=10000,"phoron"=20000)
|
||||
origin_tech = list(TECH_DATA = 5, TECH_MATERIAL = 7, TECH_BLUESPACE = 6, TECH_POWER = 6)
|
||||
|
||||
/obj/item/mecha_parts/part/phazon_head
|
||||
name="Phazon Head"
|
||||
icon_state = "phazon_head"
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=15000,"glass"=5000,"phoron"=10000)
|
||||
//construction_time = 200
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=15000,"glass"=5000,"phoron"=10000)
|
||||
origin_tech = list(TECH_DATA = 4, TECH_MATERIAL = 5, TECH_MAGNET = 6)
|
||||
|
||||
/obj/item/mecha_parts/part/phazon_left_arm
|
||||
name="Phazon Left Arm"
|
||||
icon_state = "phazon_l_arm"
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"phoron"=10000)
|
||||
//construction_time = 200
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"phoron"=10000)
|
||||
origin_tech = list(TECH_MATERIAL = 5, TECH_BLUESPACE = 2, TECH_MAGNET = 2)
|
||||
|
||||
/obj/item/mecha_parts/part/phazon_right_arm
|
||||
name="Phazon Right Arm"
|
||||
icon_state = "phazon_r_arm"
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"phoron"=10000)
|
||||
//construction_time = 200
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"phoron"=10000)
|
||||
origin_tech = list(TECH_MATERIAL = 5, TECH_BLUESPACE = 2, TECH_MAGNET = 2)
|
||||
|
||||
/obj/item/mecha_parts/part/phazon_left_leg
|
||||
name="Phazon Left Leg"
|
||||
icon_state = "phazon_l_leg"
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"phoron"=10000)
|
||||
//construction_time = 200
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"phoron"=10000)
|
||||
origin_tech = list(TECH_MATERIAL = 5, TECH_BLUESPACE = 3, TECH_MAGNET = 3)
|
||||
|
||||
/obj/item/mecha_parts/part/phazon_right_leg
|
||||
name="Phazon Right Leg"
|
||||
icon_state = "phazon_r_leg"
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"phoron"=10000)
|
||||
//construction_time = 200
|
||||
//construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"phoron"=10000)
|
||||
origin_tech = list(TECH_MATERIAL = 5, TECH_BLUESPACE = 3, TECH_MAGNET = 3)
|
||||
|
||||
///////// Odysseus
|
||||
@@ -299,8 +256,6 @@
|
||||
/obj/item/mecha_parts/part/odysseus_head
|
||||
name="Odysseus Head"
|
||||
icon_state = "odysseus_head"
|
||||
construction_time = 100
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=2000,"glass"=10000)
|
||||
origin_tech = list(TECH_DATA = 3, TECH_MATERIAL = 2)
|
||||
|
||||
/obj/item/mecha_parts/part/odysseus_torso
|
||||
@@ -308,40 +263,30 @@
|
||||
desc="A torso part of Odysseus. Contains power unit, processing core and life support systems."
|
||||
icon_state = "odysseus_torso"
|
||||
origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 2, TECH_BIO = 2, TECH_ENGINERING = 2)
|
||||
construction_time = 180
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=25000)
|
||||
|
||||
/obj/item/mecha_parts/part/odysseus_left_arm
|
||||
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 = list(TECH_DATA = 2, TECH_MATERIAL = 2, TECH_ENGINERING = 2)
|
||||
construction_time = 120
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=10000)
|
||||
|
||||
/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 = list(TECH_DATA = 2, TECH_MATERIAL = 2, TECH_ENGINERING = 2)
|
||||
construction_time = 120
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=10000)
|
||||
|
||||
/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 = list(TECH_DATA = 2, TECH_MATERIAL = 2, TECH_ENGINERING = 2)
|
||||
construction_time = 130
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=15000)
|
||||
|
||||
/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 = list(TECH_DATA = 2, TECH_MATERIAL = 2, TECH_ENGINERING = 2)
|
||||
construction_time = 130
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=15000)
|
||||
|
||||
/*/obj/item/mecha_parts/part/odysseus_armour
|
||||
name="Odysseus Carapace"
|
||||
|
||||
@@ -32,8 +32,6 @@
|
||||
name = "left arm"
|
||||
desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case."
|
||||
icon_state = "l_arm"
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=18000)
|
||||
part = list("l_arm","l_hand")
|
||||
model_info = 1
|
||||
|
||||
@@ -41,8 +39,6 @@
|
||||
name = "right arm"
|
||||
desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case."
|
||||
icon_state = "r_arm"
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=18000)
|
||||
part = list("r_arm","r_hand")
|
||||
model_info = 1
|
||||
|
||||
@@ -50,8 +46,6 @@
|
||||
name = "left leg"
|
||||
desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case."
|
||||
icon_state = "l_leg"
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=15000)
|
||||
part = list("l_leg","l_foot")
|
||||
model_info = 1
|
||||
|
||||
@@ -59,8 +53,6 @@
|
||||
name = "right leg"
|
||||
desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case."
|
||||
icon_state = "r_leg"
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=15000)
|
||||
part = list("r_leg","r_foot")
|
||||
model_info = 1
|
||||
|
||||
|
||||
@@ -217,8 +217,6 @@
|
||||
/obj/item/robot_parts/robot_component
|
||||
icon = 'icons/obj/robot_component.dmi'
|
||||
icon_state = "working"
|
||||
construction_time = 200
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=5000)
|
||||
var/brute = 0
|
||||
var/burn = 0
|
||||
var/icon_state_broken = "broken"
|
||||
|
||||
@@ -63,7 +63,7 @@ other types of metals and chemistry for reagents).
|
||||
desc = "Produce additional disks for storing device designs."
|
||||
id = "design_disk"
|
||||
req_tech = list(TECH_DATA = 1)
|
||||
materials = list("metal" = 30, "glass" = 10)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 30, "glass" = 10)
|
||||
build_path = /obj/item/weapon/disk/design_disk
|
||||
sort_string = "GAAAA"
|
||||
|
||||
@@ -72,7 +72,7 @@ other types of metals and chemistry for reagents).
|
||||
desc = "Produce additional disks for storing technology data."
|
||||
id = "tech_disk"
|
||||
req_tech = list(TECH_DATA = 1)
|
||||
materials = list("metal" = 30, "glass" = 10)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 30, "glass" = 10)
|
||||
build_path = /obj/item/weapon/disk/tech_disk
|
||||
sort_string = "GAAAB"
|
||||
|
||||
@@ -90,105 +90,105 @@ other types of metals and chemistry for reagents).
|
||||
/datum/design/item/stock_part/basic_capacitor
|
||||
id = "basic_capacitor"
|
||||
req_tech = list(TECH_POWER = 1)
|
||||
materials = list("metal" = 50, "glass" = 50)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50)
|
||||
build_path = /obj/item/weapon/stock_parts/capacitor
|
||||
sort_string = "CAAAA"
|
||||
|
||||
/datum/design/item/stock_part/adv_capacitor
|
||||
id = "adv_capacitor"
|
||||
req_tech = list(TECH_POWER = 3)
|
||||
materials = list("metal" = 50, "glass" = 50)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50)
|
||||
build_path = /obj/item/weapon/stock_parts/capacitor/adv
|
||||
sort_string = "CAAAB"
|
||||
|
||||
/datum/design/item/stock_part/super_capacitor
|
||||
id = "super_capacitor"
|
||||
req_tech = list(TECH_POWER = 5, TECH_MATERIAL = 4)
|
||||
materials = list("metal" = 50, "glass" = 50, "gold" = 20)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, "gold" = 20)
|
||||
build_path = /obj/item/weapon/stock_parts/capacitor/super
|
||||
sort_string = "CAAAC"
|
||||
|
||||
/datum/design/item/stock_part/micro_mani
|
||||
id = "micro_mani"
|
||||
req_tech = list(TECH_MATERIAL = 1, TECH_DATA = 1)
|
||||
materials = list("metal" = 30)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 30)
|
||||
build_path = /obj/item/weapon/stock_parts/manipulator
|
||||
sort_string = "CAABA"
|
||||
|
||||
/datum/design/item/stock_part/nano_mani
|
||||
id = "nano_mani"
|
||||
req_tech = list(TECH_MATERIAL = 3, TECH_DATA = 2)
|
||||
materials = list("metal" = 30)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 30)
|
||||
build_path = /obj/item/weapon/stock_parts/manipulator/nano
|
||||
sort_string = "CAABB"
|
||||
|
||||
/datum/design/item/stock_part/pico_mani
|
||||
id = "pico_mani"
|
||||
req_tech = list(TECH_MATERIAL = 5, TECH_DATA = 2)
|
||||
materials = list("metal" = 30)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 30)
|
||||
build_path = /obj/item/weapon/stock_parts/manipulator/pico
|
||||
sort_string = "CAABC"
|
||||
|
||||
/datum/design/item/stock_part/basic_matter_bin
|
||||
id = "basic_matter_bin"
|
||||
req_tech = list(TECH_MATERIAL = 1)
|
||||
materials = list("metal" = 80)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 80)
|
||||
build_path = /obj/item/weapon/stock_parts/matter_bin
|
||||
sort_string = "CAACA"
|
||||
|
||||
/datum/design/item/stock_part/adv_matter_bin
|
||||
id = "adv_matter_bin"
|
||||
req_tech = list(TECH_MATERIAL = 3)
|
||||
materials = list("metal" = 80)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 80)
|
||||
build_path = /obj/item/weapon/stock_parts/matter_bin/adv
|
||||
sort_string = "CAACB"
|
||||
|
||||
/datum/design/item/stock_part/super_matter_bin
|
||||
id = "super_matter_bin"
|
||||
req_tech = list(TECH_MATERIAL = 5)
|
||||
materials = list("metal" = 80)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 80)
|
||||
build_path = /obj/item/weapon/stock_parts/matter_bin/super
|
||||
sort_string = "CAACC"
|
||||
|
||||
/datum/design/item/stock_part/basic_micro_laser
|
||||
id = "basic_micro_laser"
|
||||
req_tech = list(TECH_MAGNET = 1)
|
||||
materials = list("metal" = 10, "glass" = 20)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10, "glass" = 20)
|
||||
build_path = /obj/item/weapon/stock_parts/micro_laser
|
||||
sort_string = "CAADA"
|
||||
|
||||
/datum/design/item/stock_part/high_micro_laser
|
||||
id = "high_micro_laser"
|
||||
req_tech = list(TECH_MAGNET = 3)
|
||||
materials = list("metal" = 10, "glass" = 20)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10, "glass" = 20)
|
||||
build_path = /obj/item/weapon/stock_parts/micro_laser/high
|
||||
sort_string = "CAADB"
|
||||
|
||||
/datum/design/item/stock_part/ultra_micro_laser
|
||||
id = "ultra_micro_laser"
|
||||
req_tech = list(TECH_MAGNET = 5, TECH_MATERIAL = 5)
|
||||
materials = list("metal" = 10, "glass" = 20, "uranium" = 10)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10, "glass" = 20, "uranium" = 10)
|
||||
build_path = /obj/item/weapon/stock_parts/micro_laser/ultra
|
||||
sort_string = "CAADC"
|
||||
|
||||
/datum/design/item/stock_part/basic_sensor
|
||||
id = "basic_sensor"
|
||||
req_tech = list(TECH_MAGNET = 1)
|
||||
materials = list("metal" = 50, "glass" = 20)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 20)
|
||||
build_path = /obj/item/weapon/stock_parts/scanning_module
|
||||
sort_string = "CAAEA"
|
||||
|
||||
/datum/design/item/stock_part/adv_sensor
|
||||
id = "adv_sensor"
|
||||
req_tech = list(TECH_MAGNET = 3)
|
||||
materials = list("metal" = 50, "glass" = 20)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 20)
|
||||
build_path = /obj/item/weapon/stock_parts/scanning_module/adv
|
||||
sort_string = "CAAEB"
|
||||
|
||||
/datum/design/item/stock_part/phasic_sensor
|
||||
id = "phasic_sensor"
|
||||
req_tech = list(TECH_MAGNET = 5, TECH_MATERIAL = 3)
|
||||
materials = list("metal" = 50, "glass" = 20, "silver" = 10)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 20, "silver" = 10)
|
||||
build_path = /obj/item/weapon/stock_parts/scanning_module/phasic
|
||||
sort_string = "CAAEC"
|
||||
|
||||
@@ -197,7 +197,7 @@ other types of metals and chemistry for reagents).
|
||||
desc = "Special mechanical module made to store, sort, and apply standard machine parts."
|
||||
id = "rped"
|
||||
req_tech = list(TECH_ENGINERING = 3, TECH_MATERIAL = 3)
|
||||
materials = list("metal" = 15000, "glass" = 5000)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 15000, "glass" = 5000)
|
||||
build_path = /obj/item/weapon/storage/part_replacer
|
||||
sort_string = "CBAAA"
|
||||
|
||||
@@ -217,7 +217,7 @@ other types of metals and chemistry for reagents).
|
||||
build_type = PROTOLATHE | MECHFAB
|
||||
id = "basic_cell"
|
||||
req_tech = list(TECH_POWER = 1)
|
||||
materials = list("metal" = 700, "glass" = 50)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 50)
|
||||
build_path = /obj/item/weapon/cell
|
||||
category = "Misc"
|
||||
sort_string = "DAAAA"
|
||||
@@ -227,7 +227,7 @@ other types of metals and chemistry for reagents).
|
||||
build_type = PROTOLATHE | MECHFAB
|
||||
id = "high_cell"
|
||||
req_tech = list(TECH_POWER = 2)
|
||||
materials = list("metal" = 700, "glass" = 60)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 60)
|
||||
build_path = /obj/item/weapon/cell/high
|
||||
category = "Misc"
|
||||
sort_string = "DAAAB"
|
||||
@@ -236,7 +236,7 @@ other types of metals and chemistry for reagents).
|
||||
name = "super-capacity"
|
||||
id = "super_cell"
|
||||
req_tech = list(TECH_POWER = 3, TECH_MATERIAL = 2)
|
||||
materials = list("metal" = 700, "glass" = 70)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 70)
|
||||
build_path = /obj/item/weapon/cell/super
|
||||
category = "Misc"
|
||||
sort_string = "DAAAC"
|
||||
@@ -245,13 +245,13 @@ other types of metals and chemistry for reagents).
|
||||
name = "hyper-capacity"
|
||||
id = "hyper_cell"
|
||||
req_tech = list(TECH_POWER = 5, TECH_MATERIAL = 4)
|
||||
materials = list("metal" = 400, "gold" = 150, "silver" = 150, "glass" = 70)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 400, "gold" = 150, "silver" = 150, "glass" = 70)
|
||||
build_path = /obj/item/weapon/cell/hyper
|
||||
category = "Misc"
|
||||
sort_string = "DAAAD"
|
||||
|
||||
/datum/design/item/hud
|
||||
materials = list("metal" = 50, "glass" = 50)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50)
|
||||
|
||||
/datum/design/item/hud/AssembleDesignName()
|
||||
..()
|
||||
@@ -279,7 +279,7 @@ other types of metals and chemistry for reagents).
|
||||
desc = "Using the meson-scanning technology those glasses allow you to see through walls, floor or anything else."
|
||||
id = "mesons"
|
||||
req_tech = list(TECH_MAGNET = 2, TECH_ENGINERING = 2)
|
||||
materials = list("metal" = 50, "glass" = 50)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50)
|
||||
build_path = /obj/item/clothing/glasses/meson
|
||||
sort_string = "GAAAC"
|
||||
|
||||
@@ -290,21 +290,21 @@ other types of metals and chemistry for reagents).
|
||||
/datum/design/item/weapon/mining/jackhammer
|
||||
id = "jackhammer"
|
||||
req_tech = list(TECH_MATERIAL = 3, TECH_POWER = 2, TECH_ENGINERING = 2)
|
||||
materials = list("metal" = 2000, "glass" = 500, "silver" = 500)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 500, "silver" = 500)
|
||||
build_path = /obj/item/weapon/pickaxe/jackhammer
|
||||
sort_string = "KAAAA"
|
||||
|
||||
/datum/design/item/weapon/mining/drill
|
||||
id = "drill"
|
||||
req_tech = list(TECH_MATERIAL = 2, TECH_POWER = 3, TECH_ENGINERING = 2)
|
||||
materials = list("metal" = 6000, "glass" = 1000) //expensive, but no need for miners.
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 6000, "glass" = 1000) //expensive, but no need for miners.
|
||||
build_path = /obj/item/weapon/pickaxe/drill
|
||||
sort_string = "KAAAB"
|
||||
|
||||
/datum/design/item/weapon/mining/plasmacutter
|
||||
id = "plasmacutter"
|
||||
req_tech = list(TECH_MATERIAL = 4, TECH_PHORON = 3, TECH_ENGINERING = 3)
|
||||
materials = list("metal" = 1500, "glass" = 500, "gold" = 500, "phoron" = 500)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 1500, "glass" = 500, "gold" = 500, "phoron" = 500)
|
||||
build_path = /obj/item/weapon/pickaxe/plasmacutter
|
||||
sort_string = "KAAAC"
|
||||
|
||||
@@ -318,7 +318,7 @@ other types of metals and chemistry for reagents).
|
||||
/datum/design/item/weapon/mining/drill_diamond
|
||||
id = "drill_diamond"
|
||||
req_tech = list(TECH_MATERIAL = 6, TECH_POWER = 4, TECH_ENGINERING = 4)
|
||||
materials = list("metal" = 3000, "glass" = 1000, "diamond" = 2000)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 3000, "glass" = 1000, "diamond" = 2000)
|
||||
build_path = /obj/item/weapon/pickaxe/diamonddrill
|
||||
sort_string = "KAAAE"
|
||||
///////////////////////////////////
|
||||
@@ -329,7 +329,7 @@ datum/design/circuit/shield
|
||||
materials = list("$glass" = 2000, "sacid" = 20, "$phoron" = 10000, "$diamond" = 5000, "$gold" = 10000)
|
||||
|
||||
/datum/design/item/medical
|
||||
materials = list("metal" = 30, "glass" = 20)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 30, "glass" = 20)
|
||||
|
||||
/datum/design/item/medical/AssembleDesignName()
|
||||
..()
|
||||
@@ -339,7 +339,7 @@ datum/design/circuit/shield
|
||||
desc = "A hand-held scanner able to diagnose robotic injuries."
|
||||
id = "robot_scanner"
|
||||
req_tech = list(TECH_MAGNET = 3, TECH_BIO = 2, TECH_ENGINERING = 3)
|
||||
materials = list("metal" = 500, "glass" = 200)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 200)
|
||||
build_path = /obj/item/device/robotanalyzer
|
||||
sort_string = "MACFA"
|
||||
|
||||
@@ -379,7 +379,7 @@ datum/design/circuit/shield
|
||||
desc = "A cryostasis beaker that allows for chemical storage without reactions. Can hold up to 50 units."
|
||||
id = "splitbeaker"
|
||||
req_tech = list(TECH_MATERIAL = 2)
|
||||
materials = list("metal" = 3000)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 3000)
|
||||
build_path = /obj/item/weapon/reagent_containers/glass/beaker/noreact
|
||||
sort_string = "MADAA"
|
||||
|
||||
@@ -388,7 +388,7 @@ datum/design/circuit/shield
|
||||
desc = "A bluespace beaker, powered by experimental bluespace technology and Element Cuban combined with the Compound Pete. Can hold up to 300 units."
|
||||
id = "bluespacebeaker"
|
||||
req_tech = list(TECH_BLUESPACE = 2, TECH_MATERIAL = 6)
|
||||
materials = list("metal" = 3000, "phoron" = 3000, "diamond" = 500)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 3000, "phoron" = 3000, "diamond" = 500)
|
||||
build_path = /obj/item/weapon/reagent_containers/glass/beaker/bluespace
|
||||
sort_string = "MADAB"
|
||||
|
||||
@@ -396,7 +396,7 @@ datum/design/circuit/shield
|
||||
desc = "A tube of paste containing swarms of repair nanites. Very effective in repairing robotic machinery."
|
||||
id = "nanopaste"
|
||||
req_tech = list(TECH_MATERIAL = 4, TECH_ENGINERING = 3)
|
||||
materials = list("metal" = 7000, "glass" = 7000)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 7000, "glass" = 7000)
|
||||
build_path = /obj/item/stack/nanopaste
|
||||
sort_string = "MBAAA"
|
||||
|
||||
@@ -405,7 +405,7 @@ datum/design/circuit/shield
|
||||
desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks basic and could be improved."
|
||||
id = "scalpel_laser1"
|
||||
req_tech = list(TECH_BIO = 2, TECH_MATERIAL = 2, TECH_MAGNET = 2)
|
||||
materials = list("metal" = 12500, "glass" = 7500)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 12500, "glass" = 7500)
|
||||
build_path = /obj/item/weapon/scalpel/laser1
|
||||
sort_string = "MBBAA"
|
||||
|
||||
@@ -414,7 +414,7 @@ datum/design/circuit/shield
|
||||
desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks somewhat advanced."
|
||||
id = "scalpel_laser2"
|
||||
req_tech = list(TECH_BIO = 3, TECH_MATERIAL = 4, TECH_MAGNET = 4)
|
||||
materials = list("metal" = 12500, "glass" = 7500, "silver" = 2500)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 12500, "glass" = 7500, "silver" = 2500)
|
||||
build_path = /obj/item/weapon/scalpel/laser2
|
||||
sort_string = "MBBAB"
|
||||
|
||||
@@ -423,7 +423,7 @@ datum/design/circuit/shield
|
||||
desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks to be the pinnacle of precision energy cutlery!"
|
||||
id = "scalpel_laser3"
|
||||
req_tech = list(TECH_BIO = 4, TECH_MATERIAL = 6, TECH_MAGNET = 5)
|
||||
materials = list("metal" = 12500, "glass" = 7500, "silver" = 2000, "gold" = 1500)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 12500, "glass" = 7500, "silver" = 2000, "gold" = 1500)
|
||||
build_path = /obj/item/weapon/scalpel/laser3
|
||||
sort_string = "MBBAC"
|
||||
|
||||
@@ -432,12 +432,12 @@ datum/design/circuit/shield
|
||||
desc = "A true extension of the surgeon's body, this marvel instantly and completely prepares an incision allowing for the immediate commencement of therapeutic steps."
|
||||
id = "scalpel_manager"
|
||||
req_tech = list(TECH_BIO = 4, TECH_MATERIAL = 7, TECH_MAGNET = 5, TECH_DATA = 4)
|
||||
materials = list ("metal" = 12500, "glass" = 7500, "silver" = 1500, "gold" = 1500, "diamond" = 750)
|
||||
materials = list (DEFAULT_WALL_MATERIAL = 12500, "glass" = 7500, "silver" = 1500, "gold" = 1500, "diamond" = 750)
|
||||
build_path = /obj/item/weapon/scalpel/manager
|
||||
sort_string = "MBBAD"
|
||||
|
||||
/datum/design/item/implant
|
||||
materials = list("metal" = 50, "glass" = 50)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50)
|
||||
|
||||
/datum/design/item/implant/AssembleDesignName()
|
||||
..()
|
||||
@@ -471,14 +471,14 @@ datum/design/circuit/shield
|
||||
/datum/design/item/weapon/stunrevolver
|
||||
id = "stunrevolver"
|
||||
req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3, TECH_POWER = 2)
|
||||
materials = list("metal" = 4000)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 4000)
|
||||
build_path = /obj/item/weapon/gun/energy/stunrevolver
|
||||
sort_string = "TAAAA"
|
||||
|
||||
/datum/design/item/weapon/nuclear_gun
|
||||
id = "nuclear_gun"
|
||||
req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 5, TECH_POWER = 3)
|
||||
materials = list("metal" = 5000, "glass" = 1000, "uranium" = 500)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 1000, "uranium" = 500)
|
||||
build_path = /obj/item/weapon/gun/energy/gun/nuclear
|
||||
sort_string = "TAAAB"
|
||||
|
||||
@@ -486,14 +486,14 @@ datum/design/circuit/shield
|
||||
desc = "The lasing medium of this prototype is enclosed in a tube lined with uranium-235 and subjected to high neutron flux in a nuclear reactor core."
|
||||
id = "lasercannon"
|
||||
req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 3, TECH_POWER = 3)
|
||||
materials = list("metal" = 10000, "glass" = 1000, "diamond" = 2000)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10000, "glass" = 1000, "diamond" = 2000)
|
||||
build_path = /obj/item/weapon/gun/energy/lasercannon
|
||||
sort_string = "TAAAC"
|
||||
|
||||
/datum/design/item/weapon/phoronpistol
|
||||
id = "ppistol"
|
||||
req_tech = list(TECH_COMBAT = 5, TECH_PHORON = 4)
|
||||
materials = list("metal" = 5000, "glass" = 1000, "phoron" = 3000)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 1000, "phoron" = 3000)
|
||||
build_path = /obj/item/weapon/gun/energy/toxgun
|
||||
sort_string = "TAAAD"
|
||||
|
||||
@@ -507,14 +507,14 @@ datum/design/circuit/shield
|
||||
/datum/design/item/weapon/smg
|
||||
id = "smg"
|
||||
req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 3)
|
||||
materials = list("metal" = 8000, "silver" = 2000, "diamond" = 1000)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 8000, "silver" = 2000, "diamond" = 1000)
|
||||
build_path = /obj/item/weapon/gun/projectile/automatic
|
||||
sort_string = "TAABA"
|
||||
|
||||
/datum/design/item/weapon/ammo_9mm
|
||||
id = "ammo_9mm"
|
||||
req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 3)
|
||||
materials = list("metal" = 3750, "silver" = 100)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 3750, "silver" = 100)
|
||||
build_path = /obj/item/ammo_magazine/c9mm
|
||||
sort_string = "TAACA"
|
||||
|
||||
@@ -522,7 +522,7 @@ datum/design/circuit/shield
|
||||
desc = "A stunning shell for a shotgun."
|
||||
id = "stunshell"
|
||||
req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3)
|
||||
materials = list("metal" = 4000)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 4000)
|
||||
build_path = /obj/item/ammo_casing/shotgun/stunshell
|
||||
sort_string = "TAACB"
|
||||
|
||||
@@ -530,14 +530,14 @@ datum/design/circuit/shield
|
||||
desc = "An advanced chem spraying device."
|
||||
id = "chemsprayer"
|
||||
req_tech = list(TECH_MATERIAL = 3, TECH_ENGINERING = 3, TECH_BIO = 2)
|
||||
materials = list("metal" = 5000, "glass" = 1000)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 1000)
|
||||
build_path = /obj/item/weapon/reagent_containers/spray/chemsprayer
|
||||
sort_string = "TABAA"
|
||||
|
||||
/datum/design/item/weapon/rapidsyringe
|
||||
id = "rapidsyringe"
|
||||
req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3, TECH_ENGINERING = 3, TECH_BIO = 2)
|
||||
materials = list("metal" = 5000, "glass" = 1000)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 1000)
|
||||
build_path = /obj/item/weapon/gun/launcher/syringe/rapid
|
||||
sort_string = "TABAB"
|
||||
|
||||
@@ -545,56 +545,56 @@ datum/design/circuit/shield
|
||||
desc = "A gun that shoots high-powered glass-encased energy temperature bullets."
|
||||
id = "temp_gun"
|
||||
req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 4, TECH_POWER = 3, TECH_MAGNET = 2)
|
||||
materials = list("metal" = 5000, "glass" = 500, "silver" = 3000)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 500, "silver" = 3000)
|
||||
build_path = /obj/item/weapon/gun/energy/temperature
|
||||
sort_string = "TABAC"
|
||||
|
||||
/datum/design/item/weapon/large_grenade
|
||||
id = "large_Grenade"
|
||||
req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 2)
|
||||
materials = list("metal" = 3000)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 3000)
|
||||
build_path = /obj/item/weapon/grenade/chem_grenade/large
|
||||
sort_string = "TACAA"
|
||||
|
||||
/datum/design/item/weapon/flora_gun
|
||||
id = "flora_gun"
|
||||
req_tech = list(TECH_MATERIAL = 2, TECH_BIO = 3, TECH_POWER = 3)
|
||||
materials = list("metal" = 2000, "glass" = 500, "uranium" = 500)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 500, "uranium" = 500)
|
||||
build_path = /obj/item/weapon/gun/energy/floragun
|
||||
sort_string = "TBAAA"
|
||||
|
||||
/datum/design/item/stock_part/subspace_ansible
|
||||
id = "s-ansible"
|
||||
req_tech = list(TECH_DATA = 3, TECH_MAGNET = 4, TECH_MATERIAL = 4, TECH_BLUESPACE = 2)
|
||||
materials = list("metal" = 80, "silver" = 20)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 80, "silver" = 20)
|
||||
build_path = /obj/item/weapon/stock_parts/subspace/ansible
|
||||
sort_string = "UAAAA"
|
||||
|
||||
/datum/design/item/stock_part/hyperwave_filter
|
||||
id = "s-filter"
|
||||
req_tech = list(TECH_DATA = 3, TECH_MAGNET = 3)
|
||||
materials = list("metal" = 40, "silver" = 10)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 40, "silver" = 10)
|
||||
build_path = /obj/item/weapon/stock_parts/subspace/filter
|
||||
sort_string = "UAAAB"
|
||||
|
||||
/datum/design/item/stock_part/subspace_amplifier
|
||||
id = "s-amplifier"
|
||||
req_tech = list(TECH_DATA = 3, TECH_MAGNET = 4, TECH_MATERIAL = 4, TECH_BLUESPACE = 2)
|
||||
materials = list("metal" = 10, "gold" = 30, "uranium" = 15)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10, "gold" = 30, "uranium" = 15)
|
||||
build_path = /obj/item/weapon/stock_parts/subspace/amplifier
|
||||
sort_string = "UAAAC"
|
||||
|
||||
/datum/design/item/stock_part/subspace_treatment
|
||||
id = "s-treatment"
|
||||
req_tech = list(TECH_DATA = 3, TECH_MAGNET = 2, TECH_MATERIAL = 4, TECH_BLUESPACE = 2)
|
||||
materials = list("metal" = 10, "silver" = 20)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10, "silver" = 20)
|
||||
build_path = /obj/item/weapon/stock_parts/subspace/treatment
|
||||
sort_string = "UAAAD"
|
||||
|
||||
/datum/design/item/stock_part/subspace_analyzer
|
||||
id = "s-analyzer"
|
||||
req_tech = list(TECH_DATA = 3, TECH_MAGNET = 4, TECH_MATERIAL = 4, TECH_BLUESPACE = 2)
|
||||
materials = list("metal" = 10, "gold" = 15)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10, "gold" = 15)
|
||||
build_path = /obj/item/weapon/stock_parts/subspace/analyzer
|
||||
sort_string = "UAAAE"
|
||||
|
||||
@@ -617,7 +617,7 @@ datum/design/circuit/shield
|
||||
desc = "A device to automatically replace lights. Refill with working lightbulbs."
|
||||
id = "light_replacer"
|
||||
req_tech = list(TECH_MAGNET = 3, TECH_MATERIAL = 4)
|
||||
materials = list("metal" = 1500, "silver" = 150, "glass" = 3000)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 1500, "silver" = 150, "glass" = 3000)
|
||||
build_path = /obj/item/device/lightreplacer
|
||||
sort_string = "VAAAH"
|
||||
|
||||
@@ -625,7 +625,7 @@ datum/design/circuit/shield
|
||||
name = "'pAI', personal artificial intelligence device"
|
||||
id = "paicard"
|
||||
req_tech = list(TECH_DATA = 2)
|
||||
materials = list("glass" = 500, "metal" = 500)
|
||||
materials = list("glass" = 500, DEFAULT_WALL_MATERIAL = 500)
|
||||
build_path = /obj/item/device/paicard
|
||||
sort_string = "VABAI"
|
||||
|
||||
@@ -641,7 +641,7 @@ datum/design/circuit/shield
|
||||
/datum/design/item/posibrain
|
||||
id = "posibrain"
|
||||
req_tech = list(TECH_ENGINERING = 4, TECH_MATERIAL = 6, TECH_BLUESPACE = 2, TECH_DATA = 4)
|
||||
materials = list("metal" = 2000, "glass" = 1000, "silver" = 1000, "gold" = 500, "phoron" = 500, "diamond" = 100)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 1000, "silver" = 1000, "gold" = 500, "phoron" = 500, "diamond" = 100)
|
||||
build_path = /obj/item/device/mmi/digital/posibrain
|
||||
sort_string = "VACAB"
|
||||
|
||||
@@ -649,7 +649,7 @@ datum/design/circuit/shield
|
||||
id = "mmi"
|
||||
req_tech = list(TECH_DATA = 2, TECH_BIO = 3)
|
||||
build_type = PROTOLATHE | MECHFAB
|
||||
materials = list("metal" = 1000, "glass" = 500)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 1000, "glass" = 500)
|
||||
build_path = /obj/item/device/mmi
|
||||
category = "Misc"
|
||||
sort_string = "VACBA"
|
||||
@@ -658,7 +658,7 @@ datum/design/circuit/shield
|
||||
id = "mmi_radio"
|
||||
req_tech = list(TECH_DATA = 2, TECH_BIO = 4)
|
||||
build_type = PROTOLATHE | MECHFAB
|
||||
materials = list("metal" = 1200, "glass" = 500)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 1200, "glass" = 500)
|
||||
build_path = /obj/item/device/mmi/radio_enabled
|
||||
category = "Misc"
|
||||
sort_string = "VACBB"
|
||||
@@ -667,7 +667,7 @@ datum/design/circuit/shield
|
||||
name = "Bluespace tracking beacon design"
|
||||
id = "beacon"
|
||||
req_tech = list(TECH_BLUESPACE = 1)
|
||||
materials = list ("metal" = 20, "glass" = 10)
|
||||
materials = list (DEFAULT_WALL_MATERIAL = 20, "glass" = 10)
|
||||
build_path = /obj/item/device/radio/beacon
|
||||
sort_string = "VADAA"
|
||||
|
||||
@@ -685,7 +685,7 @@ datum/design/circuit/shield
|
||||
desc = "Allows for deciphering the binary channel on-the-fly."
|
||||
id = "binaryencrypt"
|
||||
req_tech = list(TECH_ILLEGAL = 2)
|
||||
materials = list("metal" = 300, "glass" = 300)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 300, "glass" = 300)
|
||||
build_path = /obj/item/device/encryptionkey/binary
|
||||
sort_string = "VASAA"
|
||||
|
||||
@@ -694,7 +694,7 @@ datum/design/circuit/shield
|
||||
desc = "A kit of dangerous, high-tech equipment with changeable looks."
|
||||
id = "chameleon"
|
||||
req_tech = list(TECH_ILLEGAL = 2)
|
||||
materials = list("metal" = 500)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 500)
|
||||
build_path = /obj/item/weapon/storage/box/syndie_kit/chameleon
|
||||
sort_string = "VASBA"
|
||||
|
||||
@@ -1350,14 +1350,14 @@ CIRCUITS BELOW
|
||||
desc = "Cheaper than whiny non-digital assistants."
|
||||
id = "pda"
|
||||
req_tech = list(TECH_ENGINERING = 2, TECH_POWER = 3)
|
||||
materials = list("metal" = 50, "glass" = 50)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50)
|
||||
build_path = /obj/item/device/pda
|
||||
sort_string = "VAAAA"
|
||||
|
||||
// Cartridges
|
||||
/datum/design/item/pda_cartridge
|
||||
req_tech = list(TECH_ENGINERING = 2, TECH_POWER = 3)
|
||||
materials = list("metal" = 50, "glass" = 50)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50)
|
||||
|
||||
/datum/design/item/pda_cartridge/AssembleDesignName()
|
||||
..()
|
||||
@@ -1449,7 +1449,7 @@ CIRCUITS BELOW
|
||||
name = "loyalty"
|
||||
id = "implant_loyal"
|
||||
req_tech = list(TECH_MATERIAL = 2, TECH_BIO = 3)
|
||||
materials = list("metal" = 7000, "glass" = 7000)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 7000, "glass" = 7000)
|
||||
build_path = /obj/item/weapon/implantcase/loyalty"
|
||||
|
||||
/datum/design/rust_core_control
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
/datum/design/item/mechfab
|
||||
build_type = MECHFAB
|
||||
category = "Misc"
|
||||
req_tech = list(TECH_MATERIAL = 1)
|
||||
|
||||
/datum/design/item/mechfab/robot
|
||||
category = "Robot"
|
||||
req_tech = list(TECH_MATERIAL = 1)
|
||||
|
||||
/datum/design/item/mechfab/robot/exoskeleton
|
||||
name = "Robot Exoskeleton"
|
||||
@@ -27,61 +27,289 @@
|
||||
time = 35
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 25000)
|
||||
|
||||
/*
|
||||
var/list/part_sets = list( //set names must be unique
|
||||
"Robot"=list(
|
||||
/obj/item/robot_parts/robot_suit,
|
||||
/obj/item/robot_parts/chest,
|
||||
/obj/item/robot_parts/head,
|
||||
/obj/item/robot_parts/l_arm,
|
||||
/obj/item/robot_parts/r_arm,
|
||||
/obj/item/robot_parts/l_leg,
|
||||
/obj/item/robot_parts/r_leg,
|
||||
/obj/item/robot_parts/robot_component/binary_communication_device,
|
||||
/obj/item/robot_parts/robot_component/radio,
|
||||
/obj/item/robot_parts/robot_component/actuator,
|
||||
/obj/item/robot_parts/robot_component/diagnosis_unit,
|
||||
/obj/item/robot_parts/robot_component/camera,
|
||||
/obj/item/robot_parts/robot_component/armour
|
||||
),
|
||||
"Ripley"=list(
|
||||
/obj/item/mecha_parts/chassis/ripley,
|
||||
/obj/item/mecha_parts/part/ripley_torso,
|
||||
/obj/item/mecha_parts/part/ripley_left_arm,
|
||||
/obj/item/mecha_parts/part/ripley_right_arm,
|
||||
/obj/item/mecha_parts/part/ripley_left_leg,
|
||||
/obj/item/mecha_parts/part/ripley_right_leg
|
||||
),
|
||||
"Odysseus"=list(
|
||||
/obj/item/mecha_parts/chassis/odysseus,
|
||||
/obj/item/mecha_parts/part/odysseus_torso,
|
||||
/obj/item/mecha_parts/part/odysseus_head,
|
||||
/obj/item/mecha_parts/part/odysseus_left_arm,
|
||||
/obj/item/mecha_parts/part/odysseus_right_arm,
|
||||
/obj/item/mecha_parts/part/odysseus_left_leg,
|
||||
/obj/item/mecha_parts/part/odysseus_right_leg
|
||||
),
|
||||
/datum/design/item/mechfab/robot/l_arm
|
||||
name = "Robot Left Arm"
|
||||
id = "robot_l_arm"
|
||||
build_path = /obj/item/robot_parts/l_arm
|
||||
time = 20
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 18000)
|
||||
|
||||
"Gygax"=list(
|
||||
/obj/item/mecha_parts/chassis/gygax,
|
||||
/obj/item/mecha_parts/part/gygax_torso,
|
||||
/obj/item/mecha_parts/part/gygax_head,
|
||||
/obj/item/mecha_parts/part/gygax_left_arm,
|
||||
/obj/item/mecha_parts/part/gygax_right_arm,
|
||||
/obj/item/mecha_parts/part/gygax_left_leg,
|
||||
/obj/item/mecha_parts/part/gygax_right_leg,
|
||||
/obj/item/mecha_parts/part/gygax_armour
|
||||
),
|
||||
"Durand"=list(
|
||||
/obj/item/mecha_parts/chassis/durand,
|
||||
/obj/item/mecha_parts/part/durand_torso,
|
||||
/obj/item/mecha_parts/part/durand_head,
|
||||
/obj/item/mecha_parts/part/durand_left_arm,
|
||||
/obj/item/mecha_parts/part/durand_right_arm,
|
||||
/obj/item/mecha_parts/part/durand_left_leg,
|
||||
/obj/item/mecha_parts/part/durand_right_leg,
|
||||
/obj/item/mecha_parts/part/durand_armour
|
||||
),
|
||||
/datum/design/item/mechfab/robot/r_arm
|
||||
name = "Robot Right Arm"
|
||||
id = "robot_r_arm"
|
||||
build_path = /obj/item/robot_parts/r_arm
|
||||
time = 20
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 18000)
|
||||
|
||||
/datum/design/item/mechfab/robot/l_leg
|
||||
name = "Robot Left LeG"
|
||||
id = "robot_l_leg"
|
||||
build_path = /obj/item/robot_parts/l_leg
|
||||
time = 20
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 15000)
|
||||
|
||||
/datum/design/item/mechfab/robot/r_leg
|
||||
name = "Robot Right Leg"
|
||||
id = "robot_r_leg"
|
||||
build_path = /obj/item/robot_parts/r_leg
|
||||
time = 20
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 15000)
|
||||
|
||||
/datum/design/item/mechfab/robot/component
|
||||
time = 20
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 5000)
|
||||
|
||||
/datum/design/item/mechfab/robot/component/binary_communication_device
|
||||
name = "Binary Communication Device"
|
||||
id = "binary_communication_device"
|
||||
build_path = /obj/item/robot_parts/robot_component/binary_communication_device
|
||||
|
||||
/datum/design/item/mechfab/robot/component/radio
|
||||
name = "Radio"
|
||||
id = "radio"
|
||||
build_path = /obj/item/robot_parts/robot_component/radio
|
||||
|
||||
/datum/design/item/mechfab/robot/component/actuator
|
||||
name = "Actuator"
|
||||
id = "actuator"
|
||||
build_path = /obj/item/robot_parts/robot_component/actuator
|
||||
|
||||
/datum/design/item/mechfab/robot/component/diagnosis_unit
|
||||
name = "Diagnosis Unit"
|
||||
id = "diagnosis_unit"
|
||||
build_path = /obj/item/robot_parts/robot_component/diagnosis_unit
|
||||
|
||||
/datum/design/item/mechfab/robot/component/camera
|
||||
name = "Camera"
|
||||
id = "camera"
|
||||
build_path = /obj/item/robot_parts/robot_component/camera
|
||||
|
||||
/datum/design/item/mechfab/robot/component/armour
|
||||
name = "Armour Plating"
|
||||
id = "armour"
|
||||
build_path = /obj/item/robot_parts/robot_component/armour
|
||||
|
||||
/datum/design/item/mechfab/ripley
|
||||
category = "Ripley"
|
||||
|
||||
/datum/design/item/mechfab/ripley/chassis
|
||||
name = "Ripley Chassis"
|
||||
id = "ripley_chassis"
|
||||
build_path = /obj/item/mecha_parts/chassis/ripley
|
||||
time = 10
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 20000)
|
||||
|
||||
/datum/design/item/mechfab/ripley/chassis/firefighter
|
||||
name = "Firefigher Chassis"
|
||||
id = "firefighter_chassis"
|
||||
build_path = /obj/item/mecha_parts/chassis/firefighter
|
||||
|
||||
/datum/design/item/mechfab/ripley/torso
|
||||
name = "Ripley Torso"
|
||||
id = "ripley_torso"
|
||||
build_path = /obj/item/mecha_parts/part/ripley_torso
|
||||
time = 20
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 40000, "glass" = 15000)
|
||||
|
||||
/datum/design/item/mechfab/ripley/left_arm
|
||||
name = "Ripley Left Arm"
|
||||
id = "ripley_left_arm"
|
||||
build_path = /obj/item/mecha_parts/part/ripley_left_arm
|
||||
time = 15
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 25000)
|
||||
|
||||
/datum/design/item/mechfab/ripley/right_arm
|
||||
name = "Ripley Right Arm"
|
||||
id = "ripley_right_arm"
|
||||
build_path = /obj/item/mecha_parts/part/ripley_right_arm
|
||||
time = 15
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 25000)
|
||||
|
||||
/datum/design/item/mechfab/ripley/left_leg
|
||||
name = "Ripley Left Leg"
|
||||
id = "ripley_left_leg"
|
||||
build_path = /obj/item/mecha_parts/part/ripley_left_leg
|
||||
time = 15
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 30000)
|
||||
|
||||
/datum/design/item/mechfab/ripley/right_leg
|
||||
name = "Ripley Right Leg"
|
||||
id = "ripley_right_leg"
|
||||
build_path = /obj/item/mecha_parts/part/ripley_right_leg
|
||||
time = 15
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 30000)
|
||||
|
||||
/datum/design/item/mechfab/odysseus
|
||||
category = "Odysseus"
|
||||
|
||||
/datum/design/item/mechfab/odysseus/chassis
|
||||
name = "Odysseus Chassis"
|
||||
id = "odysseus_chassis"
|
||||
build_path = /obj/item/mecha_parts/chassis/odysseus
|
||||
time = 10
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 20000)
|
||||
|
||||
/datum/design/item/mechfab/odysseus/torso
|
||||
name = "Odysseus Torso"
|
||||
id = "odysseus_torso"
|
||||
build_path = /obj/item/mecha_parts/part/odysseus_torso
|
||||
time = 18
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 25000)
|
||||
|
||||
/datum/design/item/mechfab/odysseus/head
|
||||
name = "Odysseus Head"
|
||||
id = "odysseus_head"
|
||||
build_path = /obj/item/mecha_parts/part/odysseus_head
|
||||
time = 10
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 10000)
|
||||
|
||||
/datum/design/item/mechfab/odysseus/left_arm
|
||||
name = "Odysseus Left Arm"
|
||||
id = "odysseus_left_arm"
|
||||
build_path = /obj/item/mecha_parts/part/odysseus_left_arm
|
||||
time = 12
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10000)
|
||||
|
||||
/datum/design/item/mechfab/odysseus/right_arm
|
||||
name = "Odysseus Right Arm"
|
||||
id = "odysseus_right_arm"
|
||||
build_path = /obj/item/mecha_parts/part/odysseus_right_arm
|
||||
time = 12
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10000)
|
||||
|
||||
/datum/design/item/mechfab/odysseus/left_leg
|
||||
name = "Odysseus Left Leg"
|
||||
id = "odysseus_left_leg"
|
||||
build_path = /obj/item/mecha_parts/part/odysseus_left_leg
|
||||
time = 13
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 15000)
|
||||
|
||||
/datum/design/item/mechfab/odysseus/right_leg
|
||||
name = "Odysseus Right Leg"
|
||||
id = "odysseus_right_leg"
|
||||
build_path = /obj/item/mecha_parts/part/odysseus_right_leg
|
||||
time = 13
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 15000)
|
||||
|
||||
/datum/design/item/mechfab/gygax
|
||||
category = "Gygax"
|
||||
|
||||
/datum/design/item/mechfab/gygax/chassis
|
||||
name = "Gygax Chassis"
|
||||
id = "gygax_chassis"
|
||||
build_path = /obj/item/mecha_parts/chassis/gygax
|
||||
time = 10
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 25000)
|
||||
|
||||
/datum/design/item/mechfab/gygax/torso
|
||||
name = "Gygax Torso"
|
||||
id = "gygax_torso"
|
||||
build_path = /obj/item/mecha_parts/part/gygax_torso
|
||||
time = 30
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 50000, "glass" = 20000)
|
||||
|
||||
/datum/design/item/mechfab/gygax/head
|
||||
name = "Gygax Head"
|
||||
id = "gygax_head"
|
||||
build_path = /obj/item/mecha_parts/part/gygax_head
|
||||
time = 20
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 20000, "glass" = 10000)
|
||||
|
||||
/datum/design/item/mechfab/gygax/left_arm
|
||||
name = "Gygax Left Arm"
|
||||
id = "gygax_left_arm"
|
||||
build_path = /obj/item/mecha_parts/part/gygax_left_arm
|
||||
time = 20
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 30000)
|
||||
|
||||
/datum/design/item/mechfab/gygax/right_arm
|
||||
name = "Gygax Right Arm"
|
||||
id = "gygax_right_arm"
|
||||
build_path = /obj/item/mecha_parts/part/gygax_right_arm
|
||||
time = 20
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 30000)
|
||||
|
||||
/datum/design/item/mechfab/gygax/left_leg
|
||||
name = "Gygax Left Leg"
|
||||
id = "gygax_left_leg"
|
||||
build_path = /obj/item/mecha_parts/part/gygax_left_leg
|
||||
time = 20
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 35000)
|
||||
|
||||
/datum/design/item/mechfab/gygax/right_leg
|
||||
name = "Gygax Right Leg"
|
||||
id = "gygax_right_leg"
|
||||
build_path = /obj/item/mecha_parts/part/gygax_right_leg
|
||||
time = 20
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 35000)
|
||||
|
||||
/datum/design/item/mechfab/gygax/armour
|
||||
name = "Gygax Armour Plates"
|
||||
id = "gygax_armour"
|
||||
build_path = /obj/item/mecha_parts/part/gygax_armour
|
||||
time = 60
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 50000, "diamond" = 10000)
|
||||
|
||||
/datum/design/item/mechfab/durand
|
||||
category = "Durand"
|
||||
|
||||
/datum/design/item/mechfab/durand/chassis
|
||||
name = "Durand Chassis"
|
||||
id = "durand_chassis"
|
||||
build_path = /obj/item/mecha_parts/chassis/durand
|
||||
time = 10
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 25000)
|
||||
|
||||
/datum/design/item/mechfab/durand/torso
|
||||
name = "Durand Torso"
|
||||
id = "durand_torso"
|
||||
build_path = /obj/item/mecha_parts/part/durand_torso
|
||||
time = 30
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 55000, "glass" = 20000, "silver" = 10000)
|
||||
|
||||
/datum/design/item/mechfab/durand/head
|
||||
name = "Durand Head"
|
||||
id = "durand_head"
|
||||
build_path = /obj/item/mecha_parts/part/durand_head
|
||||
time = 20
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 25000, "glass" = 10000, "silver" = 3000)
|
||||
|
||||
/datum/design/item/mechfab/durand/left_arm
|
||||
name = "Durand Left Arm"
|
||||
id = "durand_left_arm"
|
||||
build_path = /obj/item/mecha_parts/part/durand_left_arm
|
||||
time = 20
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 35000, "silver" = 3000)
|
||||
|
||||
/datum/design/item/mechfab/durand/right_arm
|
||||
name = "Durand Right Arm"
|
||||
id = "durand_right_arm"
|
||||
build_path = /obj/item/mecha_parts/part/durand_right_arm
|
||||
time = 20
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 35000, "silver" = 3000)
|
||||
|
||||
/datum/design/item/mechfab/durand/left_leg
|
||||
name = "Durand Left Leg"
|
||||
id = "durand_left_leg"
|
||||
build_path = /obj/item/mecha_parts/part/durand_left_leg
|
||||
time = 20
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 40000, "silver" = 3000)
|
||||
|
||||
/datum/design/item/mechfab/durand/right_leg
|
||||
name = "Durand Right Leg"
|
||||
id = "durand_right_leg"
|
||||
build_path = /obj/item/mecha_parts/part/durand_right_leg
|
||||
time = 20
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 40000, "silver" = 3000)
|
||||
|
||||
/datum/design/item/mechfab/durand/armour
|
||||
//name = "Durand Armour Plates"
|
||||
id = "durand_armour"
|
||||
build_path = /obj/item/mecha_parts/part/durand_armour
|
||||
time = 60
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 50000, "uranium" = 10000)
|
||||
|
||||
/*
|
||||
"Exosuit Equipment"=list(
|
||||
/obj/item/mecha_parts/mecha_equipment/tool/hydraulic_clamp,
|
||||
/obj/item/mecha_parts/mecha_equipment/tool/drill,
|
||||
@@ -90,7 +318,6 @@
|
||||
/obj/item/mecha_parts/mecha_equipment/tool/sleeper,
|
||||
/obj/item/mecha_parts/mecha_equipment/tool/syringe_gun,
|
||||
/obj/item/mecha_parts/mecha_equipment/tool/passenger,
|
||||
/obj/item/mecha_parts/chassis/firefighter,
|
||||
///obj/item/mecha_parts/mecha_equipment/repair_droid,
|
||||
/obj/item/mecha_parts/mecha_equipment/generator,
|
||||
///obj/item/mecha_parts/mecha_equipment/jetpack, //TODO MECHA JETPACK SPRITE MISSING
|
||||
@@ -114,7 +341,6 @@
|
||||
|
||||
/datum/design/item/mecha
|
||||
build_type = MECHFAB
|
||||
req_tech = list(TECH_COMBAT = 3)
|
||||
category = "Exosuit Equipment"
|
||||
|
||||
/datum/design/item/mecha/AssembleDesignName()
|
||||
@@ -129,6 +355,9 @@
|
||||
if(!desc)
|
||||
desc = "Allows for the construction of \a '[item_name]' exosuit module."
|
||||
|
||||
/datum/design/item/mecha/weapon
|
||||
req_tech = list(TECH_COMBAT = 3)
|
||||
|
||||
// *** Weapon modules
|
||||
/datum/design/item/mecha/weapon/scattershot
|
||||
id = "mech_scattershot"
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
active_power_usage = 5000
|
||||
|
||||
var/max_material_storage = 100000
|
||||
var/list/materials = list("metal" = 0, "glass" = 0, "gold" = 0, "silver" = 0, "phoron" = 0, "uranium" = 0, "diamond" = 0)
|
||||
var/list/materials = list(DEFAULT_WALL_MATERIAL = 0, "glass" = 0, "gold" = 0, "silver" = 0, "phoron" = 0, "uranium" = 0, "diamond" = 0)
|
||||
|
||||
var/list/datum/design/queue = list()
|
||||
var/progress = 0
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
/obj/machinery/r_n_d/proc/getMaterialType(var/name)
|
||||
switch(name)
|
||||
if("metal")
|
||||
if(DEFAULT_WALL_MATERIAL)
|
||||
return /obj/item/stack/material/steel
|
||||
if("glass")
|
||||
return /obj/item/stack/material/glass
|
||||
@@ -35,7 +35,7 @@
|
||||
/obj/machinery/r_n_d/proc/getMaterialName(var/type)
|
||||
switch(type)
|
||||
if(/obj/item/stack/material/steel)
|
||||
return "metal"
|
||||
return DEFAULT_WALL_MATERIAL
|
||||
if(/obj/item/stack/material/glass)
|
||||
return "glass"
|
||||
if(/obj/item/stack/material/gold)
|
||||
|
||||
+34
-21
@@ -1,14 +1,23 @@
|
||||
<h3>Exosuit Fabricator</h3>
|
||||
<div style="float: left; width: 50%;">
|
||||
{{for data.categories}}
|
||||
<div style="float: left; width: 60%;">
|
||||
<div class="item">
|
||||
{{:helper.link("Sync", null, {'sync' : 1})}}
|
||||
{{:data.sync}}
|
||||
</div>
|
||||
{{if data.manufacturers}}
|
||||
<div class="item">
|
||||
{{for data.manufacturers}}
|
||||
{{:helper.link(value, null, {'manufacturer' : value}, value == data.manufacturer ? 'selected' : null)}}
|
||||
{{/for}}
|
||||
</div>
|
||||
{{/if}}
|
||||
<div class="item">
|
||||
{{for data.categories}}
|
||||
{{:helper.link(value, null, {'category' : value}, value == data.category ? 'selected' : null)}}
|
||||
</div>
|
||||
{{empty}}
|
||||
<div class="item">
|
||||
There are no known designs
|
||||
</div>
|
||||
{{/for}}
|
||||
{{empty}}
|
||||
There are no known designs
|
||||
{{/for}}
|
||||
</div>
|
||||
{{for data.buildable}}
|
||||
{{if value.category == data.category}}
|
||||
<div class="item">
|
||||
@@ -17,17 +26,26 @@
|
||||
{{/if}}
|
||||
{{/for}}
|
||||
</div>
|
||||
<div style="float: right; width: 50%">
|
||||
<div style="float: right; width: 40%">
|
||||
<div class="item">
|
||||
<b>Queue contains:</b>
|
||||
</div>
|
||||
{{if data.current}}
|
||||
<div class="item">
|
||||
<b>Now: {{:data.current}}</b> ({{:data.builtperc}}% ready) - {{:helper.link('Cancel', null, {'remove' : 1})}}
|
||||
<div class="itemLabelWide">
|
||||
<b>Now: {{:data.current}}</b> ({{:data.builtperc}}% ready)
|
||||
</div>
|
||||
<div class="itemContentMedium">
|
||||
{{:helper.link('Cancel', null, {'remove' : 1})}}
|
||||
</div>
|
||||
</div>
|
||||
{{for data.queue}}
|
||||
<div class="item">
|
||||
{{:index + 2}}: {{:value}} - {{:helper.link('Remove', null, {'remove' : index + 2})}}
|
||||
<div class="itemLabelWide">
|
||||
{{:index + 2}}: {{:value}}
|
||||
</div>
|
||||
<div class="itemContentMedium">
|
||||
{{:helper.link('Remove', null, {'remove' : index + 2})}}
|
||||
</div>
|
||||
{{empty}}
|
||||
<div class="item">
|
||||
@@ -46,16 +64,11 @@
|
||||
{{:value.mat}}: {{:value.amt}}/{{:data.maxres}}
|
||||
</div>
|
||||
<div class="itemContentMedium">
|
||||
{{if value.amt > 2000}}
|
||||
{{:helper.link('x1', null, {'eject' : value.mat, 'amount' : 1})}}
|
||||
{{if value.amt > 10000}}
|
||||
{{:helper.link('x5', null, {'eject' : value.mat, 'amount' : 5})}}
|
||||
{{if value.amt > 20000}}
|
||||
{{:helper.link('x10', null, {'eject' : value.mat, 'amount' : 10})}}
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
{{:helper.link('All', null, {'eject' : value.mat, 'amount' : 0})}}
|
||||
{{:helper.link('x1', null, {'eject' : value.mat, 'amount' : 1}, value.amt > 2000 ? null : 'disabled')}}
|
||||
{{:helper.link('x5', null, {'eject' : value.mat, 'amount' : 5}, value.amt > 10000 ? null : 'disabled')}}
|
||||
{{:helper.link('x10', null, {'eject' : value.mat, 'amount' : 10}, value.amt > 20000 ? null : 'disabled')}}
|
||||
{{:helper.link('Stack', null, {'eject' : value.mat, 'amount' : 0})}}
|
||||
{{:helper.link('All', null, {'eject' : value.mat, 'amount' : -1})}}
|
||||
</div>
|
||||
</div>
|
||||
{{/for}}
|
||||
|
||||
Reference in New Issue
Block a user