mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-26 21:49:11 +01:00
Merge remote-tracking branch 'upstream/dev' into 150822-Intercoms
This commit is contained in:
@@ -198,6 +198,12 @@
|
||||
if(grown_seed.get_trait(TRAIT_TELEPORTING))
|
||||
dat += "<br>The fruit is temporal/spatially unstable."
|
||||
|
||||
if(grown_seed.get_trait(TRAIT_EXUDE_GASSES))
|
||||
dat += "<br>It will release gas into the environment."
|
||||
|
||||
if(grown_seed.get_trait(TRAIT_CONSUME_GASSES))
|
||||
dat += "<br>It will remove gas from the environment."
|
||||
|
||||
if(dat)
|
||||
last_data = dat
|
||||
dat += "<br><br>\[<a href='?src=\ref[src];print=1'>print report</a>\]"
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
slot_flags = SLOT_HEAD | SLOT_OCLOTHING
|
||||
|
||||
/obj/item/weapon/holder/drone
|
||||
origin_tech = list(TECH_MAGNET = 3, TECH_ENGINERING = 5)
|
||||
origin_tech = list(TECH_MAGNET = 3, TECH_ENGINEERING = 5)
|
||||
|
||||
/obj/item/weapon/holder/mouse
|
||||
w_class = 1
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
key = "6"
|
||||
|
||||
/datum/language/skrell/monkey
|
||||
name = "Neara"
|
||||
name = "Neaera"
|
||||
desc = "Squik squik squik."
|
||||
key = "8"
|
||||
|
||||
|
||||
@@ -25,10 +25,6 @@
|
||||
w_class = 3
|
||||
origin_tech = list(TECH_BIO = 3)
|
||||
|
||||
var/list/construction_cost = list(DEFAULT_WALL_MATERIAL=1000,"glass"=500)
|
||||
var/construction_time = 75
|
||||
//these vars are so the mecha fabricator doesn't shit itself anymore. --NEO
|
||||
|
||||
req_access = list(access_robotics)
|
||||
|
||||
//Revised. Brainmob is now contained directly within object of transfer. MMI in this case.
|
||||
|
||||
@@ -6,8 +6,6 @@
|
||||
w_class = 3
|
||||
origin_tech = list(TECH_ENGINEERING = 4, TECH_MATERIAL = 4, TECH_BLUESPACE = 2, TECH_DATA = 4)
|
||||
|
||||
construction_cost = list(DEFAULT_WALL_MATERIAL=500,"glass"=500,"silver"=200,"gold"=200,"phoron"=100,"diamond"=10)
|
||||
construction_time = 75
|
||||
var/searching = 0
|
||||
var/askDelay = 10 * 60 * 1
|
||||
req_access = list(access_robotics)
|
||||
|
||||
@@ -95,6 +95,8 @@
|
||||
g_hair = green
|
||||
b_hair = blue
|
||||
|
||||
force_update_limbs()
|
||||
update_body()
|
||||
update_hair()
|
||||
return 1
|
||||
|
||||
|
||||
@@ -1093,18 +1093,21 @@
|
||||
else
|
||||
dna.species = new_species
|
||||
|
||||
// No more invisible screaming wheelchairs because of set_species() typos.
|
||||
if(!all_species[new_species])
|
||||
new_species = "Human"
|
||||
|
||||
if(species)
|
||||
|
||||
if(species.name && species.name == new_species)
|
||||
return
|
||||
if(species.language)
|
||||
remove_language(species.language)
|
||||
|
||||
if(species.default_language)
|
||||
remove_language(species.default_language)
|
||||
|
||||
// Clear out their species abilities.
|
||||
species.remove_inherent_verbs(src)
|
||||
holder_type = null
|
||||
|
||||
species = all_species[new_species]
|
||||
|
||||
@@ -1124,6 +1127,11 @@
|
||||
g_skin = 0
|
||||
b_skin = 0
|
||||
|
||||
if(species.holder_type)
|
||||
holder_type = species.holder_type
|
||||
|
||||
icon_state = lowertext(species.name)
|
||||
|
||||
species.create_organs(src)
|
||||
|
||||
species.handle_post_spawn(src)
|
||||
@@ -1384,3 +1392,10 @@
|
||||
return 0
|
||||
return 1
|
||||
return 0
|
||||
|
||||
/mob/living/carbon/human/MouseDrop(var/atom/over_object)
|
||||
var/mob/living/carbon/human/H = over_object
|
||||
if(holder_type && a_intent == "help" && H.a_intent == "help" && istype(H) && !issmall(H) && Adjacent(H))
|
||||
get_scooped(H)
|
||||
return
|
||||
return ..()
|
||||
|
||||
@@ -31,8 +31,8 @@
|
||||
/mob/living/carbon/human/farwa/New(var/new_loc)
|
||||
..(new_loc, "Farwa")
|
||||
|
||||
/mob/living/carbon/human/neara/New(var/new_loc)
|
||||
..(new_loc, "Neara")
|
||||
/mob/living/carbon/human/neaera/New(var/new_loc)
|
||||
..(new_loc, "Neaera")
|
||||
|
||||
/mob/living/carbon/human/stok/New(var/new_loc)
|
||||
..(new_loc, "Stok")
|
||||
|
||||
@@ -108,6 +108,7 @@
|
||||
var/slowdown = 0 // Passive movement speed malus (or boost, if negative)
|
||||
var/primitive_form // Lesser form, if any (ie. monkey for humans)
|
||||
var/greater_form // Greater form, if any, ie. human for monkeys.
|
||||
var/holder_type
|
||||
var/gluttonous // Can eat some mobs. 1 for mice, 2 for monkeys, 3 for people.
|
||||
var/rarity_value = 1 // Relative rarity/collector value for this species.
|
||||
// Determines the organs that the species spawns with and
|
||||
|
||||
@@ -63,14 +63,14 @@
|
||||
tail = "farwatail"
|
||||
|
||||
/datum/species/monkey/skrell
|
||||
name = "Neara"
|
||||
name_plural = "Neara"
|
||||
name = "Neaera"
|
||||
name_plural = "Neaera"
|
||||
|
||||
icobase = 'icons/mob/human_races/monkeys/r_neara.dmi'
|
||||
deform = 'icons/mob/human_races/monkeys/r_neara.dmi'
|
||||
icobase = 'icons/mob/human_races/monkeys/r_neaera.dmi'
|
||||
deform = 'icons/mob/human_races/monkeys/r_neaera.dmi'
|
||||
|
||||
greater_form = "Skrell"
|
||||
default_language = "Neara"
|
||||
default_language = "Neaera"
|
||||
flesh_color = "#8CD7A3"
|
||||
blood_color = "#1D2CBF"
|
||||
reagent_tag = IS_SKRELL
|
||||
|
||||
@@ -126,7 +126,7 @@
|
||||
icobase = 'icons/mob/human_races/r_skrell.dmi'
|
||||
deform = 'icons/mob/human_races/r_def_skrell.dmi'
|
||||
eyes = "skrell_eyes_s"
|
||||
primitive_form = "Neara"
|
||||
primitive_form = "Neaera"
|
||||
unarmed_types = list(/datum/unarmed_attack/punch)
|
||||
blurb = "An amphibious species, Skrell come from the star system known as Qerr'Vallis, which translates to 'Star of \
|
||||
the royals' or 'Light of the Crown'.<br/><br/>Skrell are a highly advanced and logical race who live under the rule \
|
||||
|
||||
@@ -271,8 +271,13 @@ var/global/list/damage_icon_parts = list()
|
||||
icon_key += "[part.species.race_key]"
|
||||
icon_key += "[part.dna.GetUIState(DNA_UI_GENDER)]"
|
||||
icon_key += "[part.dna.GetUIValue(DNA_UI_SKIN_TONE)]"
|
||||
if(part.s_col)
|
||||
if(part.s_col && part.s_col.len >= 3)
|
||||
icon_key += "[rgb(part.s_col[1],part.s_col[2],part.s_col[3])]"
|
||||
if(part.body_hair && part.h_col && part.h_col.len >= 3)
|
||||
icon_key += "[rgb(part.h_col[1],part.h_col[2],part.h_col[3])]"
|
||||
else
|
||||
icon_key += "#000000"
|
||||
|
||||
icon_key = "[icon_key][husk ? 1 : 0][fat ? 1 : 0][hulk ? 1 : 0][skeleton ? 1 : 0]"
|
||||
|
||||
var/icon/base_icon
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -152,6 +152,8 @@
|
||||
generate_data()
|
||||
|
||||
/datum/nano_module/appearance_changer/proc/generate_data()
|
||||
if(!owner)
|
||||
return
|
||||
if(!valid_species.len)
|
||||
valid_species = owner.generate_valid_species(check_whitelist, whitelist, blacklist)
|
||||
if(!valid_hairstyles.len || !valid_facial_hairstyles.len)
|
||||
|
||||
@@ -35,6 +35,7 @@
|
||||
var/cannot_break
|
||||
var/s_tone
|
||||
var/list/s_col
|
||||
var/list/h_col
|
||||
var/list/wounds = list()
|
||||
var/number_wounds = 0 // cache the number of wounds, which is NOT wounds.len!
|
||||
var/perma_injury = 0
|
||||
@@ -55,6 +56,7 @@
|
||||
var/dislocated = 0 // If you target a joint, you can dislocate the limb, causing temporary damage to the organ.
|
||||
var/can_grasp //It would be more appropriate if these two were named "affects_grasp" and "affects_stand" at this point
|
||||
var/can_stand
|
||||
var/body_hair
|
||||
|
||||
/obj/item/organ/external/Destroy()
|
||||
if(parent && parent.children)
|
||||
@@ -258,7 +260,7 @@
|
||||
createwound(BURN, min(burn,can_inflict))
|
||||
//How much burn damage is left to inflict
|
||||
spillover += max(0, burn - can_inflict)
|
||||
|
||||
|
||||
//If there are still hurties to dispense
|
||||
if (spillover)
|
||||
owner.shock_stage += spillover * config.organ_damage_spillover_multiplier
|
||||
@@ -275,7 +277,7 @@
|
||||
//2. If the damage amount dealt exceeds the disintegrate threshold, the organ is completely obliterated.
|
||||
//3. If the organ has already reached or would be put over it's max damage amount (currently redundant),
|
||||
// and the brute damage dealt exceeds the tearoff threshold, the organ is torn off.
|
||||
|
||||
|
||||
//Check edge eligibility
|
||||
var/edge_eligible = 0
|
||||
if(edge)
|
||||
|
||||
@@ -15,6 +15,7 @@ var/global/list/limb_icon_cache = list()
|
||||
/obj/item/organ/external/proc/sync_colour_to_human(var/mob/living/carbon/human/human)
|
||||
s_tone = null
|
||||
s_col = null
|
||||
h_col = null
|
||||
if(status & ORGAN_ROBOT)
|
||||
return
|
||||
if(species && human.species && species.name != human.species.name)
|
||||
@@ -23,16 +24,19 @@ var/global/list/limb_icon_cache = list()
|
||||
s_tone = human.s_tone
|
||||
if(human.species.appearance_flags & HAS_SKIN_COLOR)
|
||||
s_col = list(human.r_skin, human.g_skin, human.b_skin)
|
||||
h_col = list(human.r_hair, human.g_hair, human.b_hair)
|
||||
|
||||
/obj/item/organ/external/proc/sync_colour_to_dna()
|
||||
s_tone = null
|
||||
s_col = null
|
||||
h_col = null
|
||||
if(status & ORGAN_ROBOT)
|
||||
return
|
||||
if(!isnull(dna.GetUIValue(DNA_UI_SKIN_TONE)) && (species.appearance_flags & HAS_SKIN_TONE))
|
||||
s_tone = dna.GetUIValue(DNA_UI_SKIN_TONE)
|
||||
if(species.appearance_flags & HAS_SKIN_COLOR)
|
||||
s_col = list(dna.GetUIValue(DNA_UI_SKIN_R), dna.GetUIValue(DNA_UI_SKIN_G), dna.GetUIValue(DNA_UI_SKIN_B))
|
||||
h_col = list(dna.GetUIValue(DNA_UI_HAIR_R),dna.GetUIValue(DNA_UI_HAIR_G),dna.GetUIValue(DNA_UI_HAIR_B))
|
||||
|
||||
/obj/item/organ/external/head/sync_colour_to_human(var/mob/living/carbon/human/human)
|
||||
..()
|
||||
@@ -77,8 +81,8 @@ var/global/list/limb_icon_cache = list()
|
||||
var/datum/sprite_accessory/hair_style = hair_styles_list[owner.h_style]
|
||||
if(hair_style && (species.get_bodytype() in hair_style.species_allowed))
|
||||
var/icon/hair_s = new/icon("icon" = hair_style.icon, "icon_state" = "[hair_style.icon_state]_s")
|
||||
if(hair_style.do_colouration)
|
||||
hair_s.Blend(rgb(owner.r_hair, owner.g_hair, owner.b_hair), ICON_ADD)
|
||||
if(hair_style.do_colouration && islist(h_col) && h_col.len >= 3)
|
||||
hair_s.Blend(rgb(h_col[1], h_col[2], h_col[3]), ICON_ADD)
|
||||
overlays |= hair_s
|
||||
|
||||
return mob_icon
|
||||
@@ -121,6 +125,14 @@ var/global/list/limb_icon_cache = list()
|
||||
else if(s_col && s_col.len >= 3)
|
||||
mob_icon.Blend(rgb(s_col[1], s_col[2], s_col[3]), ICON_ADD)
|
||||
|
||||
if(body_hair && islist(h_col) && h_col.len >= 3)
|
||||
var/cache_key = "[body_hair]-[icon_name]-[h_col[1]][h_col[2]][h_col[3]]"
|
||||
if(!limb_icon_cache[cache_key])
|
||||
var/icon/I = icon(species.icobase, "[icon_name]_[body_hair]")
|
||||
I.Blend(rgb(h_col[1],h_col[2],h_col[3]), ICON_ADD)
|
||||
limb_icon_cache[cache_key] = I
|
||||
mob_icon.Blend(limb_icon_cache[cache_key], ICON_OVERLAY)
|
||||
|
||||
dir = EAST
|
||||
icon = mob_icon
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
var/list/obj/machinery/photocopier/faxmachine/allfaxes = list()
|
||||
var/list/admin_departments = list("[boss_name]", "Sol Government")
|
||||
var/list/admin_departments = list("[boss_name]", "Sol Government", "Supply")
|
||||
var/list/alldepartments = list()
|
||||
|
||||
var/list/adminfaxes = list() //cache for faxes that have been sent to admins
|
||||
@@ -9,7 +9,7 @@ var/list/adminfaxes = list() //cache for faxes that have been sent to admins
|
||||
icon = 'icons/obj/library.dmi'
|
||||
icon_state = "fax"
|
||||
insert_anim = "faxsend"
|
||||
req_one_access = list(access_lawyer, access_heads, access_armory) //Warden needs to be able to Fax solgov too.
|
||||
req_one_access = list(access_lawyer, access_heads, access_armory, access_qm)
|
||||
|
||||
use_power = 1
|
||||
idle_power_usage = 30
|
||||
@@ -201,6 +201,8 @@ var/list/adminfaxes = list() //cache for faxes that have been sent to admins
|
||||
if ("Sol Government")
|
||||
message_admins(sender, "SOL GOVERNMENT FAX", rcvdcopy, "CentcommFaxReply", "#1F66A0")
|
||||
//message_admins(sender, "SOL GOVERNMENT FAX", rcvdcopy, "SolGovFaxReply", "#1F66A0")
|
||||
if ("Supply")
|
||||
message_admins(sender, "[uppertext(boss_short)] SUPPLY FAX", rcvdcopy, "CentcommFaxReply", "#5F4519")
|
||||
|
||||
sendcooldown = 1800
|
||||
sleep(50)
|
||||
|
||||
@@ -126,27 +126,16 @@
|
||||
//need to calculate the power per shot as the emitter doesn't fire continuously.
|
||||
var/burst_time = (min_burst_delay + max_burst_delay)/2 + 2*(burst_shots-1)
|
||||
var/power_per_shot = active_power_usage * (burst_time/10) / burst_shots
|
||||
var/obj/item/projectile/beam/emitter/A = new /obj/item/projectile/beam/emitter( src.loc )
|
||||
A.damage = round(power_per_shot/EMITTER_DAMAGE_POWER_TRANSFER)
|
||||
|
||||
playsound(src.loc, 'sound/weapons/emitter.ogg', 25, 1)
|
||||
if(prob(35))
|
||||
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
|
||||
s.set_up(5, 1, src)
|
||||
s.start()
|
||||
A.set_dir(src.dir)
|
||||
A.starting = get_turf(src)
|
||||
switch(dir)
|
||||
if(NORTH)
|
||||
A.original = locate(x, y+1, z)
|
||||
if(EAST)
|
||||
A.original = locate(x+1, y, z)
|
||||
if(WEST)
|
||||
A.original = locate(x-1, y, z)
|
||||
else // Any other
|
||||
A.original = locate(x, y-1, z)
|
||||
A.process()
|
||||
|
||||
var/obj/item/projectile/beam/emitter/A = new /obj/item/projectile/beam/emitter( src.loc )
|
||||
A.damage = round(power_per_shot/EMITTER_DAMAGE_POWER_TRANSFER)
|
||||
A.launch( get_step(src.loc, src.dir) )
|
||||
|
||||
/obj/machinery/power/emitter/attackby(obj/item/W, mob/user)
|
||||
|
||||
@@ -225,7 +214,7 @@
|
||||
return
|
||||
..()
|
||||
return
|
||||
|
||||
|
||||
/obj/machinery/power/emitter/emag_act(var/remaining_charges, var/mob/user)
|
||||
if(!emagged)
|
||||
locked = 0
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
//how far the reaction proceeds each time it is processed. Used with either REACTION_RATE or HALF_LIFE macros.
|
||||
var/reaction_rate = HALF_LIFE(0)
|
||||
|
||||
//if less than 1, the reaction will be inhibited if the ratio of products/reagents is too high.
|
||||
//if less than 1, the reaction will be inhibited if the ratio of products/reagents is too high.
|
||||
//0.5 = 50% yield -> reaction will only proceed halfway until products are removed.
|
||||
var/yield = 1.0
|
||||
|
||||
@@ -70,22 +70,22 @@
|
||||
|
||||
/datum/chemical_reaction/proc/calc_reaction_progress(var/datum/reagents/holder, var/reaction_limit)
|
||||
var/progress = reaction_limit * reaction_rate //simple exponential progression
|
||||
|
||||
|
||||
//calculate yield
|
||||
if(1-yield > 0.001) //if yield ratio is big enough just assume it goes to completion
|
||||
/*
|
||||
Determine the max amount of product by applying the yield condition:
|
||||
(max_product/result_amount) / reaction_limit == yield/(1-yield)
|
||||
|
||||
|
||||
We make use of the fact that:
|
||||
reaction_limit = (holder.get_reagent_amount(reactant) / required_reagents[reactant]) of the limiting reagent.
|
||||
*/
|
||||
var/yield_ratio = yield/(1-yield)
|
||||
var/max_product = yield_ratio * reaction_limit * result_amount //rearrange to obtain max_product
|
||||
var/yield_limit = max(0, max_product - holder.get_reagent_amount(result))/result_amount
|
||||
|
||||
|
||||
progress = min(progress, yield_limit) //apply yield limit
|
||||
|
||||
|
||||
//apply min reaction progress - wasn't sure if this should go before or after applying yield
|
||||
//I guess people can just have their miniscule reactions go to completion regardless of yield.
|
||||
for(var/reactant in required_reagents)
|
||||
@@ -93,7 +93,7 @@
|
||||
if(remainder <= min_reaction*required_reagents[reactant])
|
||||
progress = reaction_limit
|
||||
break
|
||||
|
||||
|
||||
return progress
|
||||
|
||||
/datum/chemical_reaction/proc/process(var/datum/reagents/holder)
|
||||
@@ -101,28 +101,28 @@
|
||||
var/list/reaction_limits = list()
|
||||
for(var/reactant in required_reagents)
|
||||
reaction_limits += holder.get_reagent_amount(reactant) / required_reagents[reactant]
|
||||
|
||||
|
||||
//determine how far the reaction proceeds
|
||||
var/reaction_limit = min(reaction_limits)
|
||||
var/progress_limit = calc_reaction_progress(holder, reaction_limit)
|
||||
|
||||
|
||||
var/reaction_progress = min(reaction_limit, progress_limit) //no matter what, the reaction progress cannot exceed the stoichiometric limit.
|
||||
|
||||
|
||||
//need to obtain the new reagent's data before anything is altered
|
||||
var/data = send_data(holder, reaction_progress)
|
||||
|
||||
|
||||
//remove the reactants
|
||||
for(var/reactant in required_reagents)
|
||||
var/amt_used = required_reagents[reactant] * reaction_progress
|
||||
holder.remove_reagent(reactant, amt_used, safety = 1)
|
||||
|
||||
|
||||
//add the product
|
||||
var/amt_produced = result_amount * reaction_progress
|
||||
if(result)
|
||||
holder.add_reagent(result, amt_produced, data, safety = 1)
|
||||
|
||||
|
||||
on_reaction(holder, amt_produced)
|
||||
|
||||
|
||||
return reaction_progress
|
||||
|
||||
//called when a reaction processes
|
||||
@@ -314,9 +314,9 @@
|
||||
/datum/chemical_reaction/dexalin
|
||||
name = "Dexalin"
|
||||
id = "dexalin"
|
||||
result = "dexalin"
|
||||
result = "dexalin"
|
||||
required_reagents = list("acetone" = 2, "phoron" = 0.1)
|
||||
catalysts = list("phoron" = 1)
|
||||
catalysts = list("phoron" = 1)
|
||||
inhibitors = list("water" = 1) // Messes with cryox
|
||||
result_amount = 1
|
||||
|
||||
@@ -1470,22 +1470,22 @@
|
||||
name = "Iced Tea"
|
||||
id = "icetea"
|
||||
result = "icetea"
|
||||
required_reagents = list("ice" = 1, "tea" = 3)
|
||||
required_reagents = list("ice" = 1, "tea" = 4)
|
||||
result_amount = 4
|
||||
|
||||
/datum/chemical_reaction/icecoffee
|
||||
name = "Iced Coffee"
|
||||
id = "icecoffee"
|
||||
result = "icecoffee"
|
||||
required_reagents = list("ice" = 1, "coffee" = 3)
|
||||
required_reagents = list("ice" = 1, "coffee" = 4)
|
||||
result_amount = 4
|
||||
|
||||
/datum/chemical_reaction/nuka_cola
|
||||
name = "Nuka Cola"
|
||||
id = "nuka_cola"
|
||||
result = "nuka_cola"
|
||||
required_reagents = list("uranium" = 1, "cola" = 6)
|
||||
result_amount = 6
|
||||
required_reagents = list("uranium" = 1, "cola" = 5)
|
||||
result_amount = 5
|
||||
|
||||
/datum/chemical_reaction/moonshine
|
||||
name = "Moonshine"
|
||||
@@ -1599,8 +1599,8 @@
|
||||
name = "White Russian"
|
||||
id = "whiterussian"
|
||||
result = "whiterussian"
|
||||
required_reagents = list("blackrussian" = 3, "cream" = 2)
|
||||
result_amount = 5
|
||||
required_reagents = list("blackrussian" = 2, "cream" = 1)
|
||||
result_amount = 3
|
||||
|
||||
/datum/chemical_reaction/whiskey_cola
|
||||
name = "Whiskey Cola"
|
||||
@@ -1620,8 +1620,8 @@
|
||||
name = "Bloody Mary"
|
||||
id = "bloodymary"
|
||||
result = "bloodymary"
|
||||
required_reagents = list("vodka" = 1, "tomatojuice" = 2, "limejuice" = 1)
|
||||
result_amount = 4
|
||||
required_reagents = list("vodka" = 2, "tomatojuice" = 3, "limejuice" = 1)
|
||||
result_amount = 6
|
||||
|
||||
/datum/chemical_reaction/gargle_blaster
|
||||
name = "Pan-Galactic Gargle Blaster"
|
||||
@@ -1648,22 +1648,22 @@
|
||||
name = "Toxins Special"
|
||||
id = "phoronspecial"
|
||||
result = "phoronspecial"
|
||||
required_reagents = list("rum" = 2, "vermouth" = 1, "phoron" = 2)
|
||||
result_amount = 5
|
||||
required_reagents = list("rum" = 2, "vermouth" = 2, "phoron" = 2)
|
||||
result_amount = 6
|
||||
|
||||
/datum/chemical_reaction/beepsky_smash
|
||||
name = "Beepksy Smash"
|
||||
id = "beepksysmash"
|
||||
result = "beepskysmash"
|
||||
required_reagents = list("limejuice" = 2, "whiskey" = 2, "iron" = 1)
|
||||
result_amount = 4
|
||||
required_reagents = list("limejuice" = 1, "whiskey" = 1, "iron" = 1)
|
||||
result_amount = 2
|
||||
|
||||
/datum/chemical_reaction/doctor_delight
|
||||
name = "The Doctor's Delight"
|
||||
id = "doctordelight"
|
||||
result = "doctorsdelight"
|
||||
required_reagents = list("limejuice" = 1, "tomatojuice" = 1, "orangejuice" = 1, "cream" = 1, "tricordrazine" = 1)
|
||||
result_amount = 5
|
||||
required_reagents = list("limejuice" = 1, "tomatojuice" = 1, "orangejuice" = 1, "cream" = 2, "tricordrazine" = 1)
|
||||
result_amount = 6
|
||||
|
||||
/datum/chemical_reaction/irish_cream
|
||||
name = "Irish Cream"
|
||||
@@ -1718,15 +1718,15 @@
|
||||
name = "Long Island Iced Tea"
|
||||
id = "longislandicedtea"
|
||||
result = "longislandicedtea"
|
||||
required_reagents = list("vodka" = 1, "gin" = 1, "tequilla" = 1, "cubalibre" = 1)
|
||||
result_amount = 4
|
||||
required_reagents = list("vodka" = 1, "gin" = 1, "tequilla" = 1, "cubalibre" = 3)
|
||||
result_amount = 6
|
||||
|
||||
/datum/chemical_reaction/icedtea
|
||||
name = "Long Island Iced Tea"
|
||||
id = "longislandicedtea"
|
||||
result = "longislandicedtea"
|
||||
required_reagents = list("vodka" = 1, "gin" = 1, "tequilla" = 1, "cubalibre" = 1)
|
||||
result_amount = 4
|
||||
required_reagents = list("vodka" = 1, "gin" = 1, "tequilla" = 1, "cubalibre" = 3)
|
||||
result_amount = 6
|
||||
|
||||
/datum/chemical_reaction/threemileisland
|
||||
name = "Three Mile Island Iced Tea"
|
||||
@@ -1746,8 +1746,8 @@
|
||||
name = "Black Russian"
|
||||
id = "blackrussian"
|
||||
result = "blackrussian"
|
||||
required_reagents = list("vodka" = 3, "kahlua" = 2)
|
||||
result_amount = 5
|
||||
required_reagents = list("vodka" = 2, "kahlua" = 1)
|
||||
result_amount = 3
|
||||
|
||||
/datum/chemical_reaction/manhattan
|
||||
name = "Manhattan"
|
||||
@@ -1774,8 +1774,8 @@
|
||||
name = "Gin Fizz"
|
||||
id = "ginfizz"
|
||||
result = "ginfizz"
|
||||
required_reagents = list("gin" = 2, "sodawater" = 1, "limejuice" = 1)
|
||||
result_amount = 4
|
||||
required_reagents = list("gin" = 1, "sodawater" = 1, "limejuice" = 1)
|
||||
result_amount = 3
|
||||
|
||||
/datum/chemical_reaction/bahama_mama
|
||||
name = "Bahama mama"
|
||||
@@ -1802,22 +1802,22 @@
|
||||
name = "Demons Blood"
|
||||
id = "demonsblood"
|
||||
result = "demonsblood"
|
||||
required_reagents = list("rum" = 1, "spacemountainwind" = 1, "blood" = 1, "dr_gibb" = 1)
|
||||
result_amount = 4
|
||||
required_reagents = list("rum" = 3, "spacemountainwind" = 1, "blood" = 1, "dr_gibb" = 1)
|
||||
result_amount = 6
|
||||
|
||||
/datum/chemical_reaction/booger
|
||||
name = "Booger"
|
||||
id = "booger"
|
||||
result = "booger"
|
||||
required_reagents = list("cream" = 1, "banana" = 1, "rum" = 1, "watermelonjuice" = 1)
|
||||
result_amount = 4
|
||||
required_reagents = list("cream" = 2, "banana" = 1, "rum" = 1, "watermelonjuice" = 1)
|
||||
result_amount = 5
|
||||
|
||||
/datum/chemical_reaction/antifreeze
|
||||
name = "Anti-freeze"
|
||||
id = "antifreeze"
|
||||
result = "antifreeze"
|
||||
required_reagents = list("vodka" = 2, "cream" = 1, "ice" = 1)
|
||||
result_amount = 4
|
||||
required_reagents = list("vodka" = 1, "cream" = 1, "ice" = 1)
|
||||
result_amount = 3
|
||||
|
||||
/datum/chemical_reaction/barefoot
|
||||
name = "Barefoot"
|
||||
@@ -1909,14 +1909,14 @@
|
||||
id = "changelingsting"
|
||||
result = "changelingsting"
|
||||
required_reagents = list("screwdrivercocktail" = 1, "limejuice" = 1, "lemonjuice" = 1)
|
||||
result_amount = 5
|
||||
result_amount = 3
|
||||
|
||||
/datum/chemical_reaction/aloe
|
||||
name = "Aloe"
|
||||
id = "aloe"
|
||||
result = "aloe"
|
||||
required_reagents = list("cream" = 1, "whiskey" = 1, "watermelonjuice" = 1)
|
||||
result_amount = 2
|
||||
result_amount = 3
|
||||
|
||||
/datum/chemical_reaction/andalusia
|
||||
name = "Andalusia"
|
||||
@@ -1957,8 +1957,8 @@
|
||||
name = "Erika Surprise"
|
||||
id = "erikasurprise"
|
||||
result = "erikasurprise"
|
||||
required_reagents = list("ale" = 1, "limejuice" = 1, "whiskey" = 1, "banana" = 1, "ice" = 1)
|
||||
result_amount = 5
|
||||
required_reagents = list("ale" = 2, "limejuice" = 1, "whiskey" = 1, "banana" = 1, "ice" = 1)
|
||||
result_amount = 6
|
||||
|
||||
/datum/chemical_reaction/devilskiss
|
||||
name = "Devils Kiss"
|
||||
@@ -2007,14 +2007,14 @@
|
||||
id = "kiraspecial"
|
||||
result = "kiraspecial"
|
||||
required_reagents = list("orangejuice" = 1, "limejuice" = 1, "sodawater" = 1)
|
||||
result_amount = 2
|
||||
result_amount = 3
|
||||
|
||||
/datum/chemical_reaction/brownstar
|
||||
name = "Brown Star"
|
||||
id = "brownstar"
|
||||
result = "brownstar"
|
||||
required_reagents = list("orangejuice" = 2, "cola" = 1)
|
||||
result_amount = 2
|
||||
result_amount = 3
|
||||
|
||||
/datum/chemical_reaction/milkshake
|
||||
name = "Milkshake"
|
||||
@@ -2034,8 +2034,8 @@
|
||||
name = "Sui Dream"
|
||||
id = "suidream"
|
||||
result = "suidream"
|
||||
required_reagents = list("space_up" = 2, "bluecuracao" = 1, "melonliquor" = 1)
|
||||
result_amount = 4
|
||||
required_reagents = list("space_up" = 1, "bluecuracao" = 1, "melonliquor" = 1)
|
||||
result_amount = 3
|
||||
|
||||
/* Removed xenoarcheology stuff
|
||||
datum
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#define CELLS 4
|
||||
#define CELLS 8
|
||||
#define CELLSIZE (32/CELLS)
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -347,6 +347,33 @@
|
||||
..()
|
||||
reagents.add_reagent("grenadine", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/cola
|
||||
name = "\improper Space Cola"
|
||||
desc = "Cola. in space"
|
||||
icon_state = "colabottle"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
New()
|
||||
..()
|
||||
reagents.add_reagent("cola", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/space_up
|
||||
name = "\improper Space-Up"
|
||||
desc = "Tastes like a hull breach in your mouth."
|
||||
icon_state = "space-up_bottle"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
New()
|
||||
..()
|
||||
reagents.add_reagent("space_up", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/space_mountain_wind
|
||||
name = "\improper Space Mountain Wind"
|
||||
desc = "Blows right through you like a space wind."
|
||||
icon_state = "space_mountain_wind_bottle"
|
||||
center_of_mass = list("x"=16, "y"=6)
|
||||
New()
|
||||
..()
|
||||
reagents.add_reagent("spacemountainwind", 100)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/pwine
|
||||
name = "Warlock's Velvet"
|
||||
desc = "What a delightful packaging for a surely high quality wine! The vintage must be amazing!"
|
||||
|
||||
@@ -1616,11 +1616,11 @@
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/monkeycube/neaeracube
|
||||
name = "neaera cube"
|
||||
monkey_type = "Neara"
|
||||
monkey_type = "Neaera"
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/neaeracube
|
||||
name = "neaera cube"
|
||||
monkey_type = "Neara"
|
||||
monkey_type = "Neaera"
|
||||
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/spellburger
|
||||
|
||||
@@ -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,114 +90,114 @@ 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"
|
||||
|
||||
/datum/design/item/stock_part/RPED
|
||||
name = "Rapid Part Exchange Device"
|
||||
desc = "Special mechanical module made to store, sort, and apply standard machine parts."
|
||||
id = "rped"
|
||||
id = "rped"
|
||||
req_tech = list(TECH_ENGINEERING = 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()
|
||||
..()
|
||||
@@ -277,9 +277,9 @@ other types of metals and chemistry for reagents).
|
||||
/datum/design/item/mesons
|
||||
name = "Optical meson scanners design"
|
||||
desc = "Using the meson-scanning technology those glasses allow you to see through walls, floor or anything else."
|
||||
id = "mesons"
|
||||
id = "mesons"
|
||||
req_tech = list(TECH_MAGNET = 2, TECH_ENGINEERING = 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"
|
||||
|
||||
@@ -288,23 +288,23 @@ other types of metals and chemistry for reagents).
|
||||
name = "Mining equipment design ([item_name])"
|
||||
|
||||
/datum/design/item/weapon/mining/jackhammer
|
||||
id = "jackhammer"
|
||||
id = "jackhammer"
|
||||
req_tech = list(TECH_MATERIAL = 3, TECH_POWER = 2, TECH_ENGINEERING = 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"
|
||||
id = "drill"
|
||||
req_tech = list(TECH_MATERIAL = 2, TECH_POWER = 3, TECH_ENGINEERING = 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"
|
||||
id = "plasmacutter"
|
||||
req_tech = list(TECH_MATERIAL = 4, TECH_PHORON = 3, TECH_ENGINEERING = 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"
|
||||
|
||||
@@ -316,9 +316,9 @@ other types of metals and chemistry for reagents).
|
||||
sort_string = "KAAAD"
|
||||
|
||||
/datum/design/item/weapon/mining/drill_diamond
|
||||
id = "drill_diamond"
|
||||
id = "drill_diamond"
|
||||
req_tech = list(TECH_MATERIAL = 6, TECH_POWER = 4, TECH_ENGINEERING = 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 @@ other types of metals and chemistry for reagents).
|
||||
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()
|
||||
..()
|
||||
@@ -337,9 +337,9 @@ other types of metals and chemistry for reagents).
|
||||
|
||||
/datum/design/item/medical/robot_scanner
|
||||
desc = "A hand-held scanner able to diagnose robotic injuries."
|
||||
id = "robot_scanner"
|
||||
id = "robot_scanner"
|
||||
req_tech = list(TECH_MAGNET = 3, TECH_BIO = 2, TECH_ENGINEERING = 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 @@ other types of metals and chemistry for reagents).
|
||||
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,15 +388,15 @@ other types of metals and chemistry for reagents).
|
||||
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"
|
||||
|
||||
/datum/design/item/medical/nanopaste
|
||||
desc = "A tube of paste containing swarms of repair nanites. Very effective in repairing robotic machinery."
|
||||
id = "nanopaste"
|
||||
id = "nanopaste"
|
||||
req_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 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 @@ other types of metals and chemistry for reagents).
|
||||
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 @@ other types of metals and chemistry for reagents).
|
||||
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 @@ other types of metals and chemistry for reagents).
|
||||
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 @@ other types of metals and chemistry for reagents).
|
||||
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 @@ other types of metals and chemistry for reagents).
|
||||
/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 @@ other types of metals and chemistry for reagents).
|
||||
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 @@ other types of metals and chemistry for reagents).
|
||||
/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,22 +522,22 @@ other types of metals and chemistry for reagents).
|
||||
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"
|
||||
|
||||
/datum/design/item/weapon/chemsprayer
|
||||
desc = "An advanced chem spraying device."
|
||||
id = "chemsprayer"
|
||||
id = "chemsprayer"
|
||||
req_tech = list(TECH_MATERIAL = 3, TECH_ENGINEERING = 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"
|
||||
id = "rapidsyringe"
|
||||
req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3, TECH_ENGINEERING = 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 @@ other types of metals and chemistry for reagents).
|
||||
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 @@ other types of metals and chemistry for reagents).
|
||||
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 @@ other types of metals and chemistry for reagents).
|
||||
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"
|
||||
|
||||
@@ -639,26 +639,31 @@ other types of metals and chemistry for reagents).
|
||||
sort_string = "VACAA"
|
||||
|
||||
/datum/design/item/posibrain
|
||||
id = "posibrain"
|
||||
name = "Positronic brain"
|
||||
id = "posibrain"
|
||||
req_tech = list(TECH_ENGINEERING = 4, TECH_MATERIAL = 6, TECH_BLUESPACE = 2, TECH_DATA = 4)
|
||||
materials = list("metal" = 2000, "glass" = 1000, "silver" = 1000, "gold" = 500, "phoron" = 500, "diamond" = 100)
|
||||
build_type = PROTOLATHE | MECHFAB
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 1000, "silver" = 1000, "gold" = 500, "phoron" = 500, "diamond" = 100)
|
||||
build_path = /obj/item/device/mmi/digital/posibrain
|
||||
category = "Misc"
|
||||
sort_string = "VACAB"
|
||||
|
||||
/datum/design/item/medical/mmi
|
||||
/datum/design/item/mmi
|
||||
name = "Man-machine interface"
|
||||
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"
|
||||
|
||||
/datum/design/item/medical/mmi_radio
|
||||
/datum/design/item/mmi_radio
|
||||
name = "Radio-enabled man-machine interface"
|
||||
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 +672,7 @@ other types of metals and chemistry for reagents).
|
||||
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 +690,7 @@ other types of metals and chemistry for reagents).
|
||||
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 +699,7 @@ other types of metals and chemistry for reagents).
|
||||
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"
|
||||
|
||||
@@ -1349,16 +1354,16 @@ CIRCUITS BELOW
|
||||
/datum/design/item/pda
|
||||
name = "PDA design"
|
||||
desc = "Cheaper than whiny non-digital assistants."
|
||||
id = "pda"
|
||||
id = "pda"
|
||||
req_tech = list(TECH_ENGINEERING = 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
|
||||
/datum/design/item/pda_cartridge
|
||||
req_tech = list(TECH_ENGINEERING = 2, TECH_POWER = 3)
|
||||
materials = list("metal" = 50, "glass" = 50)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50)
|
||||
|
||||
/datum/design/item/pda_cartridge/AssembleDesignName()
|
||||
..()
|
||||
@@ -1438,155 +1443,7 @@ CIRCUITS BELOW
|
||||
id = "cart_captain"
|
||||
build_path = /obj/item/weapon/cartridge/captain
|
||||
sort_string = "VBAAO"
|
||||
|
||||
/*
|
||||
MECHAS BELOW
|
||||
*/
|
||||
|
||||
/datum/design/item/mecha
|
||||
build_type = MECHFAB
|
||||
req_tech = list(TECH_COMBAT = 3)
|
||||
category = "Exosuit Equipment"
|
||||
|
||||
/datum/design/item/mecha/AssembleDesignName()
|
||||
..()
|
||||
name = "Exosuit module design ([item_name])"
|
||||
|
||||
/datum/design/item/mecha/weapon/AssembleDesignName()
|
||||
..()
|
||||
name = "Exosuit weapon design ([item_name])"
|
||||
|
||||
/datum/design/item/mecha/AssembleDesignDesc()
|
||||
if(!desc)
|
||||
desc = "Allows for the construction of \a '[item_name]' exosuit module."
|
||||
|
||||
// *** Weapon modules
|
||||
/datum/design/item/mecha/weapon/scattershot
|
||||
id = "mech_scattershot"
|
||||
req_tech = list(TECH_COMBAT = 4)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot
|
||||
|
||||
/datum/design/item/mecha/weapon/laser
|
||||
id = "mech_laser"
|
||||
req_tech = list(TECH_COMBAT = 3, TECH_MAGNET = 3)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser
|
||||
|
||||
/datum/design/item/mecha/weapon/laser_rigged
|
||||
desc = "Allows for the construction of a welder-laser assembly package for non-combat exosuits."
|
||||
id = "mech_laser_rigged"
|
||||
req_tech = list(TECH_COMBAT = 2, TECH_MAGNET = 2)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/riggedlaser
|
||||
|
||||
/datum/design/item/mecha/weapon/laser_heavy
|
||||
id = "mech_laser_heavy"
|
||||
req_tech = list(TECH_COMBAT = 4, TECH_MAGNET = 4)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/heavy
|
||||
|
||||
/datum/design/item/mecha/weapon/ion
|
||||
id = "mech_ion"
|
||||
req_tech = list(TECH_COMBAT = 4, TECH_MAGNET = 4)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/ion
|
||||
|
||||
/datum/design/item/mecha/weapon/grenade_launcher
|
||||
id = "mech_grenade_launcher"
|
||||
req_tech = list(TECH_COMBAT = 3)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang
|
||||
|
||||
/datum/design/item/mecha/weapon/clusterbang_launcher
|
||||
desc = "A weapon that violates the Geneva Convention at 6 rounds per minute."
|
||||
id = "clusterbang_launcher"
|
||||
req_tech = list(TECH_COMBAT= 5, TECH_MATERIAL = 5, TECH_ILLEGAL = 3)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang/clusterbang/limited
|
||||
|
||||
// *** Nonweapon modules
|
||||
/datum/design/item/mecha/wormhole_gen
|
||||
desc = "An exosuit module that can generate small quasi-stable wormholes."
|
||||
id = "mech_wormhole_gen"
|
||||
req_tech = list(TECH_BLUESPACE = 3, TECH_MAGNET = 2)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/wormhole_generator
|
||||
|
||||
/datum/design/item/mecha/teleporter
|
||||
desc = "An exosuit module that allows teleportation to any position in view."
|
||||
id = "mech_teleporter"
|
||||
req_tech = list(TECH_BLUESPACE = 10, TECH_MAGNET = 5)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/teleporter
|
||||
|
||||
/datum/design/item/mecha/rcd
|
||||
desc = "An exosuit-mounted rapid construction device."
|
||||
id = "mech_rcd"
|
||||
req_tech = list(TECH_MATERIAL = 4, TECH_BLUESPACE = 3, TECH_MAGNET = 4, TECH_POWER=4, TECH_ENGINEERING = 4)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/tool/rcd
|
||||
|
||||
/datum/design/item/mecha/gravcatapult
|
||||
desc = "An exosuit-mounted gravitational catapult."
|
||||
id = "mech_gravcatapult"
|
||||
req_tech = list(TECH_BLUESPACE = 2, TECH_MAGNET = 3, TECH_ENGINEERING = 3)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/gravcatapult
|
||||
|
||||
/datum/design/item/mecha/repair_droid
|
||||
desc = "Automated repair droid, exosuits' best companion. BEEP BOOP"
|
||||
id = "mech_repair_droid"
|
||||
req_tech = list(TECH_MAGNET = 3, TECH_DATA = 3, TECH_ENGINEERING = 3)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/repair_droid
|
||||
|
||||
/datum/design/item/mecha/phoron_generator
|
||||
desc = "Exosuit-mounted phoron generator."
|
||||
id = "mech_phoron_generator"
|
||||
req_tech = list(TECH_PHORON = 2, TECH_POWER= 2, TECH_ENGINEERING = 2)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/generator
|
||||
|
||||
/datum/design/item/mecha/energy_relay
|
||||
id = "mech_energy_relay"
|
||||
req_tech = list(TECH_MAGNET = 4, TECH_POWER = 3)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/tesla_energy_relay
|
||||
|
||||
/datum/design/item/mecha/ccw_armor
|
||||
desc = "Exosuit close-combat armor booster."
|
||||
id = "mech_ccw_armor"
|
||||
req_tech = list(TECH_MATERIAL = 5, TECH_COMBAT = 4)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/anticcw_armor_booster
|
||||
|
||||
/datum/design/item/mecha/proj_armor
|
||||
desc = "Exosuit projectile armor booster."
|
||||
id = "mech_proj_armor"
|
||||
req_tech = list(TECH_MATERIAL = 5, TECH_COMBAT = 5, TECH_ENGINEERING=3)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/antiproj_armor_booster
|
||||
|
||||
/datum/design/item/mecha/syringe_gun
|
||||
desc = "Exosuit-mounted syringe gun and chemical synthesizer."
|
||||
id = "mech_syringe_gun"
|
||||
req_tech = list(TECH_MATERIAL = 3, TECH_BIO=4, TECH_MAGNET=4, TECH_DATA=3)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/tool/syringe_gun
|
||||
|
||||
/datum/design/item/mecha/diamond_drill
|
||||
desc = "A diamond version of the exosuit drill. It's harder, better, faster, stronger."
|
||||
id = "mech_diamond_drill"
|
||||
req_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 3)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/tool/drill/diamonddrill
|
||||
|
||||
/datum/design/item/mecha/generator_nuclear
|
||||
desc = "Exosuit-held nuclear reactor. Converts uranium and everyone's health to energy."
|
||||
id = "mech_generator_nuclear"
|
||||
req_tech = list(TECH_POWER= 3, TECH_ENGINEERING = 3, TECH_MATERIAL = 3)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/generator/nuclear
|
||||
|
||||
/datum/design/item/synthetic_flash
|
||||
id = "sflash"
|
||||
req_tech = list(TECH_MAGNET = 3, TECH_COMBAT = 2)
|
||||
build_type = MECHFAB
|
||||
materials = list("metal" = 750, "glass" = 750)
|
||||
build_path = /obj/item/device/flash/synthetic
|
||||
category = "Misc"
|
||||
|
||||
/datum/design/item/borg_syndicate_module
|
||||
name = "Cyborg lethal weapons upgrade"
|
||||
desc = "Allows for the construction of lethal upgrades for cyborgs."
|
||||
id = "borg_syndicate_module"
|
||||
build_type = MECHFAB
|
||||
req_tech = list(TECH_COMBAT = 4, TECH_ILLEGAL = 3)
|
||||
build_path = /obj/item/borg/upgrade/syndicate
|
||||
category = "Cyborg Upgrade Modules"
|
||||
|
||||
|
||||
/* Uncomment if someone makes these buildable
|
||||
/datum/design/circuit/general_alert
|
||||
name = "general alert console"
|
||||
@@ -1598,7 +1455,7 @@ MECHAS 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
|
||||
|
||||
@@ -0,0 +1,589 @@
|
||||
/datum/design/item/mechfab
|
||||
build_type = MECHFAB
|
||||
category = "Misc"
|
||||
req_tech = list(TECH_MATERIAL = 1)
|
||||
|
||||
/datum/design/item/mechfab/robot
|
||||
category = "Robot"
|
||||
|
||||
/datum/design/item/mechfab/robot/exoskeleton
|
||||
name = "Robot exoskeleton"
|
||||
id = "robot_exoskeleton"
|
||||
build_path = /obj/item/robot_parts/robot_suit
|
||||
time = 50
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 50000)
|
||||
|
||||
/datum/design/item/mechfab/robot/torso
|
||||
name = "Robot torso"
|
||||
id = "robot_torso"
|
||||
build_path = /obj/item/robot_parts/chest
|
||||
time = 35
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 40000)
|
||||
|
||||
/datum/design/item/mechfab/robot/head
|
||||
name = "Robot head"
|
||||
id = "robot_head"
|
||||
build_path = /obj/item/robot_parts/head
|
||||
time = 35
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 25000)
|
||||
|
||||
/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)
|
||||
|
||||
/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)
|
||||
|
||||
/datum/design/item/robot_upgrade
|
||||
build_type = MECHFAB
|
||||
time = 12
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10000)
|
||||
category = "Cyborg Upgrade Modules"
|
||||
|
||||
/datum/design/item/robot_upgrade/rename
|
||||
name = "Rename module"
|
||||
desc = "Used to rename a cyborg."
|
||||
id = "borg_rename_module"
|
||||
build_path = /obj/item/borg/upgrade/rename
|
||||
|
||||
/datum/design/item/robot_upgrade/reset
|
||||
name = "Reset module"
|
||||
desc = "Used to reset a cyborg's module. Destroys any other upgrades applied to the robot."
|
||||
id = "borg_reset_module"
|
||||
build_path = /obj/item/borg/upgrade/reset
|
||||
|
||||
/datum/design/item/robot_upgrade/restart
|
||||
name = "Emergency restart module"
|
||||
desc = "Used to force a restart of a disabled-but-repaired robot, bringing it back online."
|
||||
id = "borg_restart_module"
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 60000, "glass" = 5000)
|
||||
build_path = /obj/item/borg/upgrade/restart
|
||||
|
||||
/datum/design/item/robot_upgrade/vtec
|
||||
name = "VTEC module"
|
||||
desc = "Used to kick in a robot's VTEC systems, increasing their speed."
|
||||
id = "borg_vtec_module"
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 80000, "glass" = 6000, "gold" = 5000)
|
||||
build_path = /obj/item/borg/upgrade/vtec
|
||||
|
||||
/datum/design/item/robot_upgrade/tasercooler
|
||||
name = "Rapid taser cooling module"
|
||||
desc = "Used to cool a mounted taser, increasing the potential current in it and thus its recharge rate."
|
||||
id = "borg_taser_module"
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 80000, "glass" = 6000, "gold" = 2000, "diamond" = 500)
|
||||
build_path = /obj/item/borg/upgrade/tasercooler
|
||||
|
||||
/datum/design/item/robot_upgrade/jetpack
|
||||
name = "Jetpack module"
|
||||
desc = "A carbon dioxide jetpack suitable for low-gravity mining operations."
|
||||
id = "borg_jetpack_module"
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10000, "phoron" = 15000, "uranium" = 20000)
|
||||
build_path = /obj/item/borg/upgrade/jetpack
|
||||
|
||||
/datum/design/item/robot_upgrade/syndicate
|
||||
name = "Illegal upgrade"
|
||||
desc = "Allows for the construction of lethal upgrades for cyborgs."
|
||||
id = "borg_syndicate_module"
|
||||
req_tech = list(TECH_COMBAT = 4, TECH_ILLEGAL = 3)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10000, "glass" = 15000, "diamond" = 10000)
|
||||
build_path = /obj/item/borg/upgrade/syndicate
|
||||
|
||||
/datum/design/item/mecha_tracking
|
||||
name = "Exosuit tracking beacon"
|
||||
build_type = MECHFAB
|
||||
time = 5
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 500)
|
||||
build_path = /obj/item/mecha_parts/mecha_tracking
|
||||
category = "Misc"
|
||||
|
||||
/datum/design/item/mecha
|
||||
build_type = MECHFAB
|
||||
category = "Exosuit Equipment"
|
||||
time = 10
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10000)
|
||||
|
||||
/datum/design/item/mecha/AssembleDesignDesc()
|
||||
if(!desc)
|
||||
desc = "Allows for the construction of \a '[item_name]' exosuit module."
|
||||
|
||||
/datum/design/item/mecha/hydraulic_clamp
|
||||
name = "Hydraulic clamp"
|
||||
id = "hydraulic_clamp"
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/tool/hydraulic_clamp
|
||||
|
||||
/datum/design/item/mecha/drill
|
||||
name = "Drill"
|
||||
id = "drill"
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/tool/drill
|
||||
|
||||
/datum/design/item/mecha/extinguisher
|
||||
name = "Extinguisher"
|
||||
id = "extinguisher"
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/tool/extinguisher
|
||||
|
||||
/datum/design/item/mecha/cable_layer
|
||||
name = "Cable layer"
|
||||
id = "mech_cable_layer"
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/tool/cable_layer
|
||||
|
||||
/datum/design/item/mecha/sleeper
|
||||
name = "Sleeper"
|
||||
id = "mech_sleeper"
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/tool/sleeper
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 10000)
|
||||
|
||||
/datum/design/item/mecha/syringe_gun
|
||||
name = "Syringe gun"
|
||||
id = "mech_syringe_gun"
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/tool/syringe_gun
|
||||
time = 20
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 3000, "glass" = 2000)
|
||||
|
||||
/*
|
||||
/datum/design/item/mecha/syringe_gun
|
||||
desc = "Exosuit-mounted syringe gun and chemical synthesizer."
|
||||
id = "mech_syringe_gun"
|
||||
req_tech = list(TECH_MATERIAL = 3, TECH_BIO = 4, TECH_MAGNET = 4, TECH_DATA = 3)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/tool/syringe_gun
|
||||
*/
|
||||
|
||||
/datum/design/item/mecha/passenger
|
||||
name = "Passenger compartment"
|
||||
id = "mech_passenger"
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/tool/passenger
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 5000)
|
||||
|
||||
//obj/item/mecha_parts/mecha_equipment/repair_droid,
|
||||
//obj/item/mecha_parts/mecha_equipment/jetpack, //TODO MECHA JETPACK SPRITE MISSING
|
||||
|
||||
/datum/design/item/mecha/generator
|
||||
name = "Phoron generator"
|
||||
id = "mech_generator"
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/generator
|
||||
|
||||
/datum/design/item/mecha/taser
|
||||
name = "PBT \"Pacifier\" mounted taser"
|
||||
id = "mech_taser"
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/taser
|
||||
|
||||
/datum/design/item/mecha/lmg
|
||||
name = "Ultra AC 2"
|
||||
id = "mech_lmg"
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg
|
||||
|
||||
/datum/design/item/mecha/weapon
|
||||
req_tech = list(TECH_COMBAT = 3)
|
||||
|
||||
// *** Weapon modules
|
||||
/datum/design/item/mecha/weapon/scattershot
|
||||
name = "LBX AC 10 \"Scattershot\""
|
||||
id = "mech_scattershot"
|
||||
req_tech = list(TECH_COMBAT = 4)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot
|
||||
|
||||
/datum/design/item/mecha/weapon/laser
|
||||
name = "CH-PS \"Immolator\" laser"
|
||||
id = "mech_laser"
|
||||
req_tech = list(TECH_COMBAT = 3, TECH_MAGNET = 3)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser
|
||||
|
||||
/datum/design/item/mecha/weapon/laser_rigged
|
||||
name = "Jury-rigged welder-laser"
|
||||
desc = "Allows for the construction of a welder-laser assembly package for non-combat exosuits."
|
||||
id = "mech_laser_rigged"
|
||||
req_tech = list(TECH_COMBAT = 2, TECH_MAGNET = 2)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/riggedlaser
|
||||
|
||||
/datum/design/item/mecha/weapon/laser_heavy
|
||||
name = "CH-LC \"Solaris\" laser cannon"
|
||||
id = "mech_laser_heavy"
|
||||
req_tech = list(TECH_COMBAT = 4, TECH_MAGNET = 4)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/heavy
|
||||
|
||||
/datum/design/item/mecha/weapon/ion
|
||||
name = "mkIV ion heavy cannon"
|
||||
id = "mech_ion"
|
||||
req_tech = list(TECH_COMBAT = 4, TECH_MAGNET = 4)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/ion
|
||||
|
||||
/datum/design/item/mecha/weapon/grenade_launcher
|
||||
name = "SGL-6 grenade launcher"
|
||||
id = "mech_grenade_launcher"
|
||||
req_tech = list(TECH_COMBAT = 3)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang
|
||||
|
||||
/datum/design/item/mecha/weapon/clusterbang_launcher
|
||||
name = "SOP-6 grenade launcher"
|
||||
desc = "A weapon that violates the Geneva Convention at 6 rounds per minute."
|
||||
id = "clusterbang_launcher"
|
||||
req_tech = list(TECH_COMBAT= 5, TECH_MATERIAL = 5, TECH_ILLEGAL = 3)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 20000, "gold" = 6000, "uranium" = 6000)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang/clusterbang/limited
|
||||
|
||||
// *** Nonweapon modules
|
||||
/datum/design/item/mecha/wormhole_gen
|
||||
name = "Wormhole generator"
|
||||
desc = "An exosuit module that can generate small quasi-stable wormholes."
|
||||
id = "mech_wormhole_gen"
|
||||
req_tech = list(TECH_BLUESPACE = 3, TECH_MAGNET = 2)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/wormhole_generator
|
||||
|
||||
/datum/design/item/mecha/teleporter
|
||||
name = "Teleporter"
|
||||
desc = "An exosuit module that allows teleportation to any position in view."
|
||||
id = "mech_teleporter"
|
||||
req_tech = list(TECH_BLUESPACE = 10, TECH_MAGNET = 5)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/teleporter
|
||||
|
||||
/datum/design/item/mecha/rcd
|
||||
name = "RCD"
|
||||
desc = "An exosuit-mounted rapid construction device."
|
||||
id = "mech_rcd"
|
||||
time = 120
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 30000, "phoron" = 25000, "silver" = 20000, "gold" = 20000)
|
||||
req_tech = list(TECH_MATERIAL = 4, TECH_BLUESPACE = 3, TECH_MAGNET = 4, TECH_POWER = 4, TECH_ENGINEERING = 4)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/tool/rcd
|
||||
|
||||
/datum/design/item/mecha/gravcatapult
|
||||
name = "Gravitational catapult"
|
||||
desc = "An exosuit-mounted gravitational catapult."
|
||||
id = "mech_gravcatapult"
|
||||
req_tech = list(TECH_BLUESPACE = 2, TECH_MAGNET = 3, TECH_ENGINEERING = 3)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/gravcatapult
|
||||
|
||||
/datum/design/item/mecha/repair_droid
|
||||
name = "Repair droid"
|
||||
desc = "Automated repair droid, exosuits' best companion. BEEP BOOP"
|
||||
id = "mech_repair_droid"
|
||||
req_tech = list(TECH_MAGNET = 3, TECH_DATA = 3, TECH_ENGINEERING = 3)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10000, "gold" = 1000, "silver" = 2000, "glass" = 5000)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/repair_droid
|
||||
|
||||
/datum/design/item/mecha/phoron_generator
|
||||
desc = "Phoron reactor."
|
||||
id = "mech_phoron_generator"
|
||||
req_tech = list(TECH_PHORON = 2, TECH_POWER= 2, TECH_ENGINEERING = 2)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/generator
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10000, "silver" = 500, "glass" = 1000)
|
||||
|
||||
/datum/design/item/mecha/energy_relay
|
||||
name = "Energy relay"
|
||||
id = "mech_energy_relay"
|
||||
req_tech = list(TECH_MAGNET = 4, TECH_POWER = 3)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10000, "gold" = 2000, "silver" = 3000, "glass" = 2000)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/tesla_energy_relay
|
||||
|
||||
/datum/design/item/mecha/ccw_armor
|
||||
name = "CCW armor booster"
|
||||
desc = "Exosuit close-combat armor booster."
|
||||
id = "mech_ccw_armor"
|
||||
req_tech = list(TECH_MATERIAL = 5, TECH_COMBAT = 4)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 20000, "silver" = 5000)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/anticcw_armor_booster
|
||||
|
||||
/datum/design/item/mecha/proj_armor
|
||||
desc = "Exosuit projectile armor booster."
|
||||
id = "mech_proj_armor"
|
||||
req_tech = list(TECH_MATERIAL = 5, TECH_COMBAT = 5, TECH_ENGINEERING = 3)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 20000, "gold" = 5000)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/antiproj_armor_booster
|
||||
|
||||
/datum/design/item/mecha/diamond_drill
|
||||
name = "Diamond drill"
|
||||
desc = "A diamond version of the exosuit drill. It's harder, better, faster, stronger."
|
||||
id = "mech_diamond_drill"
|
||||
req_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 3)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10000, "diamond" = 6500)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/tool/drill/diamonddrill
|
||||
|
||||
/datum/design/item/mecha/generator_nuclear
|
||||
name = "Nuclear reactor"
|
||||
desc = "Exosuit-held nuclear reactor. Converts uranium and everyone's health to energy."
|
||||
id = "mech_generator_nuclear"
|
||||
req_tech = list(TECH_POWER= 3, TECH_ENGINEERING = 3, TECH_MATERIAL = 3)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 10000, "silver" = 500, "glass" = 1000)
|
||||
build_path = /obj/item/mecha_parts/mecha_equipment/generator/nuclear
|
||||
|
||||
/datum/design/item/synthetic_flash
|
||||
name = "Synthetic flash"
|
||||
id = "sflash"
|
||||
req_tech = list(TECH_MAGNET = 3, TECH_COMBAT = 2)
|
||||
build_type = MECHFAB
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 750, "glass" = 750)
|
||||
build_path = /obj/item/device/flash/synthetic
|
||||
category = "Misc"
|
||||
@@ -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)
|
||||
|
||||
@@ -98,7 +98,7 @@ research holder datum.
|
||||
var/datum/design/A = known_designs[i]
|
||||
if(A.id == D.id) // We are guaranteed to reach this if the ids are the same, because sort_string will also be the same
|
||||
return
|
||||
if(A.sort_string >= D.sort_string)
|
||||
if(A.sort_string > D.sort_string)
|
||||
known_designs.Insert(i, D)
|
||||
return
|
||||
known_designs.Add(D)
|
||||
|
||||
Reference in New Issue
Block a user