Merge branch 'master' into fuckyougit

This commit is contained in:
monster860
2016-03-11 06:17:16 -05:00
232 changed files with 2926 additions and 1769 deletions
+1
View File
@@ -17,6 +17,7 @@ The currently supporting non-reagent materials:
- MAT_URANIUM (/obj/item/stack/uranium).
- MAT_DIAMOND (/obj/item/stack/diamond).
- MAT_BANANIUM (/obj/item/stack/bananium).
- MAT_TRANQUILLITE (/obj/item/stack/tranquillite).
(Insert new ones here)
Don't add new keyword/IDs if they are made from an existing one (such as rods which are made from metal). Only add raw materials.
@@ -166,3 +166,33 @@
materials = list(MAT_GLASS = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/mecha/honker/targeting
category = list("Exosuit Modules")
/datum/design/recitence_main
name = "Exosuit Module (\"Recitence\" Central Control module)"
desc = "Allows for the construction of a \"Recitence\" Central Control module."
id = "recitence_main"
req_tech = list("programming" = 3)
build_type = IMPRINTER
materials = list(MAT_GLASS = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/mecha/recitence/main
category = list("Exosuit Modules")
/datum/design/recitence_peri
name = "Exosuit Module (\"Recitence\" Peripherals Control module)"
desc = "Allows for the construction of a \"Recitence\" Peripheral Control module."
id = "recitence_peri"
req_tech = list("programming" = 3)
build_type = IMPRINTER
materials = list(MAT_GLASS = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/mecha/recitence/peripherals
category = list("Exosuit Modules")
/datum/design/recitence_targ
name = "Exosuit Module (\"Recitence\" Weapons & Targeting Control module)"
desc = "Allows for the construction of a \"Recitence\" Weapons & Targeting Control module."
id = "recitence_targ"
req_tech = list("programming" = 3)
build_type = IMPRINTER
materials = list(MAT_GLASS = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/mecha/recitence/targeting
category = list("Exosuit Modules")
@@ -459,6 +459,70 @@
construction_time = 200
category = list("H.O.N.K")
//Recitence
/datum/design/recitence_chassis
name = "Exosuit Chassis (\"Recitence\")"
id = "recitence_chassis"
build_type = MECHFAB
build_path = /obj/item/mecha_parts/chassis/recitence
materials = list(MAT_METAL=20000)
construction_time = 100
category = list("Recitence")
/datum/design/recitence_torso
name = "Exosuit Torso (\"Recitence\")"
id = "recitence_torso"
build_type = MECHFAB
build_path = /obj/item/mecha_parts/part/recitence_torso
materials = list(MAT_METAL=20000,MAT_GLASS=10000,MAT_TRANQUILLITE=10000)
construction_time = 300
category = list("Recitence")
/datum/design/recitence_head
name = "Exosuit Head (\"Recitence\")"
id = "recitence_head"
build_type = MECHFAB
build_path = /obj/item/mecha_parts/part/recitence_head
materials = list(MAT_METAL=10000,MAT_GLASS=5000,MAT_TRANQUILLITE=5000)
construction_time = 200
category = list("Recitence")
/datum/design/recitence_left_arm
name = "Exosuit Left Arm (\"Recitence\")"
id = "recitence_left_arm"
build_type = MECHFAB
build_path = /obj/item/mecha_parts/part/recitence_left_arm
materials = list(MAT_METAL=15000,MAT_TRANQUILLITE=5000)
construction_time = 200
category = list("Recitence")
/datum/design/recitence_right_arm
name = "Exosuit Right Arm (\"Recitence\")"
id = "recitence_right_arm"
build_type = MECHFAB
build_path = /obj/item/mecha_parts/part/recitence_right_arm
materials = list(MAT_METAL=15000,MAT_TRANQUILLITE=5000)
construction_time = 200
category = list("Recitence")
/datum/design/recitence_left_leg
name = "Exosuit Left Leg (\"Recitence\")"
id = "recitence_left_leg"
build_type = MECHFAB
build_path =/obj/item/mecha_parts/part/recitence_left_leg
materials = list(MAT_METAL=20000,MAT_TRANQUILLITE=5000)
construction_time = 200
category = list("Recitence")
/datum/design/recitence_right_leg
name = "Exosuit Right Leg (\"Recitence\")"
id = "recitence_right_leg"
build_type = MECHFAB
build_path = /obj/item/mecha_parts/part/recitence_right_leg
materials = list(MAT_METAL=20000,MAT_TRANQUILLITE=5000)
construction_time = 200
category = list("Recitence")
//Phazon
/datum/design/phazon_chassis
name = "Exosuit Chassis (\"Phazon\")"
@@ -573,6 +637,7 @@
name = "Exosuit Medical Equipment (Mounted Sleeper)"
id = "mech_sleeper"
build_type = MECHFAB
req_tech = list("biotech" = 2)
build_path = /obj/item/mecha_parts/mecha_equipment/tool/sleeper
materials = list(MAT_METAL=5000,MAT_GLASS=10000)
construction_time = 100
@@ -582,6 +647,7 @@
name = "Exosuit Medical Equipment (Syringe Gun)"
id = "mech_syringe_gun"
build_type = MECHFAB
req_tech = list("magnets" = 3,"biotech" = 3)
build_path = /obj/item/mecha_parts/mecha_equipment/tool/syringe_gun
materials = list(MAT_METAL=3000,MAT_GLASS=2000)
construction_time = 200
@@ -600,6 +666,7 @@
name = "Exosuit Weapon (PBT \"Pacifier\" Mounted Taser)"
id = "mech_taser"
build_type = MECHFAB
req_tech = list("combat" = 2)
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/taser
materials = list(MAT_METAL=10000)
construction_time = 100
@@ -609,6 +676,7 @@
name = "Exosuit Weapon (\"Ultra AC 2\" LMG)"
id = "mech_lmg"
build_type = MECHFAB
req_tech = list("combat" = 2)
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg
materials = list(MAT_METAL=10000)
construction_time = 100
@@ -641,6 +709,25 @@
construction_time = 300
category = list("Exosuit Equipment")
/datum/design/mech_silentgun
name = "S.H.H. \"Quietus\" Carbine"
id = "mech_silentgun"
build_type = MECHFAB
build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/carbine/silenced
materials = list(MAT_METAL=20000,MAT_TRANQUILLITE=10000)
construction_time = 500
category = list("Exosuit Equipment")
/datum/design/mech_mimercd
name = "Exosuit Module (Mime RCD Module)"
desc = "An exosuit-mounted Mime Rapid Construction Device."
id = "mech_mrcd"
build_type = MECHFAB
build_path = /obj/item/mecha_parts/mecha_equipment/tool/mimercd
materials = list(MAT_METAL=30000,MAT_TRANQUILLITE=10000)
construction_time = 700
category = list("Exosuit Equipment")
// Exosuit Modules
/datum/design/mech_diamond_drill
name = "Exosuit Module (Diamond Mining Drill)"
@@ -129,7 +129,7 @@
name = "Nanopaste"
desc = "A tube of paste containing swarms of repair nanites. Very effective in repairing robotic machinery."
id = "nanopaste"
req_tech = list("materials" = 4, "engineering" = 3)
req_tech = list("materials" = 3, "engineering" = 2)
build_type = PROTOLATHE
materials = list(MAT_METAL = 7000, MAT_GLASS = 7000)
build_path = /obj/item/stack/nanopaste
@@ -209,9 +209,10 @@
id = "ci-welding"
req_tech = list("materials" = 4, "biotech" = 2)
build_type = PROTOLATHE | MECHFAB
construction_time = 40
materials = list(MAT_METAL = 200, MAT_GLASS = 400)
build_path = /obj/item/organ/internal/cyberimp/eyes/shield
category = list("Misc", "Medical Designs")
category = list("Misc", "Medical")
/datum/design/cyberimp_medical_hud
name = "Medical HUD implant"
@@ -219,9 +220,10 @@
id = "ci-medhud"
req_tech = list("materials" = 6, "programming" = 4, "biotech" = 4)
build_type = PROTOLATHE | MECHFAB
construction_time = 50
materials = list(MAT_METAL = 200, MAT_GLASS = 200, MAT_SILVER = 500, MAT_GOLD = 500)
build_path = /obj/item/organ/internal/cyberimp/eyes/hud/medical
category = list("Misc", "Medical Designs")
category = list("Misc", "Medical")
/datum/design/cyberimp_security_hud
name = "Security HUD implant"
@@ -229,9 +231,10 @@
id = "ci-sechud"
req_tech = list("materials" = 6, "programming" = 5, "biotech" = 4, "combat" = 2)
build_type = PROTOLATHE | MECHFAB
construction_time = 50
materials = list(MAT_METAL = 200, MAT_GLASS = 200, MAT_SILVER = 750, MAT_GOLD = 750)
build_path = /obj/item/organ/internal/cyberimp/eyes/hud/security
category = list("Misc", "Medical Designs")
category = list("Misc", "Medical")
/datum/design/cyberimp_xray
name = "X-Ray implant"
@@ -239,9 +242,10 @@
id = "ci-xray"
req_tech = list("materials" = 7, "programming" = 5, "biotech" = 6, "magnets" = 5)
build_type = PROTOLATHE | MECHFAB
construction_time = 60
materials = list(MAT_METAL = 200, MAT_GLASS = 200, MAT_SILVER = 600, MAT_GOLD = 600, MAT_PLASMA = 1000, MAT_URANIUM = 1000, MAT_DIAMOND = 2000)
build_path = /obj/item/organ/internal/cyberimp/eyes/xray
category = list("Misc", "Medical Designs")
category = list("Misc", "Medical")
/datum/design/cyberimp_thermals
name = "Thermals implant"
@@ -249,9 +253,10 @@
id = "ci-thermals"
req_tech = list("materials" = 7, "programming" = 5, "biotech" = 5, "magnets" = 5, "syndicate" = 5)
build_type = PROTOLATHE | MECHFAB
construction_time = 60
materials = list(MAT_METAL = 200, MAT_GLASS = 200, MAT_SILVER = 600, MAT_GOLD = 600, MAT_PLASMA = 1000, MAT_DIAMOND = 2000)
build_path = /obj/item/organ/internal/cyberimp/eyes/thermals
category = list("Misc", "Medical Designs")
category = list("Misc", "Medical")
/datum/design/cyberimp_antidrop
name = "Anti-Drop implant"
@@ -259,9 +264,10 @@
id = "ci-antidrop"
req_tech = list("materials" = 7, "programming" = 5, "biotech" = 5)
build_type = PROTOLATHE | MECHFAB
construction_time = 60
materials = list(MAT_METAL = 200, MAT_GLASS = 200, MAT_SILVER = 400, MAT_GOLD = 400)
build_path = /obj/item/organ/internal/cyberimp/brain/anti_drop
category = list("Medical Designs")
category = list("Misc", "Medical")
/datum/design/cyberimp_antistun
name = "CNS Rebooter implant"
@@ -269,9 +275,10 @@
id = "ci-antistun"
req_tech = list("materials" = 7, "programming" = 5, "biotech" = 6)
build_type = PROTOLATHE | MECHFAB
construction_time = 60
materials = list(MAT_METAL = 200, MAT_GLASS = 200, MAT_SILVER = 500, MAT_GOLD = 1000)
build_path = /obj/item/organ/internal/cyberimp/brain/anti_stun
category = list("Medical Designs")
category = list("Misc", "Medical")
/datum/design/cyberimp_nutriment
name = "Nutriment pump implant"
@@ -279,9 +286,10 @@
id = "ci-nutriment"
req_tech = list("materials" = 6, "programming" = 4, "biotech" = 5)
build_type = PROTOLATHE | MECHFAB
construction_time = 40
materials = list(MAT_METAL = 200, MAT_GLASS = 200, MAT_GOLD = 500, MAT_URANIUM = 500)
build_path = /obj/item/organ/internal/cyberimp/chest/nutriment
category = list("Medical Designs")
category = list("Misc", "Medical")
/datum/design/cyberimp_nutriment_plus
name = "Nutriment pump implant PLUS"
@@ -289,9 +297,10 @@
id = "ci-nutrimentplus"
req_tech = list("materials" = 6, "programming" = 4, "biotech" = 6)
build_type = PROTOLATHE | MECHFAB
construction_time = 50
materials = list(MAT_METAL = 200, MAT_GLASS = 200, MAT_GOLD = 500, MAT_URANIUM = 750)
build_path = /obj/item/organ/internal/cyberimp/chest/nutriment/plus
category = list("Medical Designs")
category = list("Misc", "Medical")
/datum/design/cyberimp_reviver
name = "Reviver implant"
@@ -299,9 +308,10 @@
id = "ci-reviver"
req_tech = list("materials" = 6, "programming" = 4, "biotech" = 7, "syndicate" = 4)
build_type = PROTOLATHE | MECHFAB
construction_time = 60
materials = list(MAT_METAL = 200, MAT_GLASS = 200, MAT_GOLD = 500, MAT_URANIUM = 1000, MAT_DIAMOND = 2000)
build_path = /obj/item/organ/internal/cyberimp/chest/reviver
category = list("Misc", "Medical Designs")
category = list("Misc", "Medical")
/////////////////////////////////////////
////////////Regular Implants/////////////
@@ -18,7 +18,7 @@
name = "Decloner"
desc = "Your opponent will bubble into a messy pile of goop."
id = "decloner"
req_tech = list("combat" = 6, "materials" = 7, "biotech" = 5, "powerstorage" = 6)
req_tech = list("combat" = 8, "materials" = 7, "biotech" = 5, "powerstorage" = 6)
build_type = PROTOLATHE
materials = list(MAT_GOLD = 5000,MAT_URANIUM = 10000)
reagents = list("mutagen" = 40)
@@ -118,7 +118,7 @@
name = "Plasma Pistol"
desc = "A specialized firearm designed to fire lethal bolts of toxins."
id = "ppistol"
req_tech = list("combat" = 5, "plasmatech" = 4)
req_tech = list("combat" = 4, "plasmatech" = 3)
build_type = PROTOLATHE
materials = list(MAT_METAL = 5000, MAT_GLASS = 1000, MAT_PLASMA = 3000)
build_path = /obj/item/weapon/gun/energy/toxgun
+2
View File
@@ -76,6 +76,8 @@ var/global/list/obj/machinery/message_server/message_servers = list()
if(active && (stat & (BROKEN|NOPOWER)))
active = 0
return
if(prob(3))
playsound(loc, "computer_ambience", 50, 1)
update_icon()
return
+13
View File
@@ -90,6 +90,8 @@ proc/CallMaterialName(ID)
return_name = "Diamond"
if("clown")
return_name = "Bananium"
if("mime")
return_name = "Tranquillite"
else
for(var/R in subtypesof(/datum/reagent))
temp_reagent = null
@@ -535,6 +537,8 @@ proc/CallMaterialName(ID)
MAT = MAT_DIAMOND
if("clown")
MAT = MAT_BANANIUM
if("mime")
MAT = "Tranquillite"
linked_lathe.materials.retrieve_sheets(desired_num_sheets, MAT)
else if(href_list["imprinter_ejectsheet"] && linked_imprinter) //Causes the protolathe to eject a sheet of material
@@ -1011,6 +1015,15 @@ proc/CallMaterialName(ID)
if(bananium_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "<A href='?src=\ref[src];lathe_ejectsheet=clown;lathe_ejectsheet_amt=5'>5x</A> "
if(bananium_amount >= MINERAL_MATERIAL_AMOUNT) dat += "<A href='?src=\ref[src];lathe_ejectsheet=clown;lathe_ejectsheet_amt=50'>All</A>"
dat += "</div>"
//Tranquillite
var/tranquillite_amount = linked_lathe.materials.amount(MAT_TRANQUILLITE)
dat += "* [tranquillite_amount] of Tranquillite, [round(tranquillite_amount / MINERAL_MATERIAL_AMOUNT,0.1)] sheets: "
if(tranquillite_amount >= MINERAL_MATERIAL_AMOUNT)
dat += "<A href='?src=\ref[src];lathe_ejectsheet=mime;lathe_ejectsheet_amt=1'>Eject</A> "
dat += "<A href='?src=\ref[src];lathe_ejectsheet=mime;lathe_ejectsheet_amt=custom'>C</A> "
if(tranquillite_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "<A href='?src=\ref[src];lathe_ejectsheet=mime;lathe_ejectsheet_amt=5'>5x</A> "
if(tranquillite_amount >= MINERAL_MATERIAL_AMOUNT) dat += "<A href='?src=\ref[src];lathe_ejectsheet=mime;lathe_ejectsheet_amt=50'>All</A>"
dat += "</div>"
if(3.3)
dat += "<A href='?src=\ref[src];menu=1.0'>Main Menu</A>"
+5
View File
@@ -13,6 +13,7 @@
var/heating_power = 40000
var/delay = 10
req_access = list(access_rd) //Only the R&D can change server settings.
var/plays_sound = 0
/obj/machinery/r_n_d/server/New()
..()
@@ -58,6 +59,9 @@
id_with_download += text2num(N)
/obj/machinery/r_n_d/server/process()
if(prob(3) && plays_sound)
playsound(loc, "computer_ambience", 50, 1)
var/datum/gas_mixture/environment = loc.return_air()
switch(environment.temperature)
if(0 to T0C)
@@ -341,6 +345,7 @@
id_with_upload_string = "1;3"
id_with_download_string = "1;3"
server_id = 1
plays_sound = 1
/obj/machinery/r_n_d/server/robotics
name = "Robotics and Mechanic R&D Server"
@@ -300,7 +300,7 @@ datum/genesequence
/obj/item/weapon/circuitboard/reconstitutor
name = "Circuit board (Flora Reconstitution Console)"
build_path = "/obj/machinery/computer/reconstitutor"
origin_tech = "programming=2;biotech=4;materials=6"
origin_tech = "programming=2;biotech=3;materials=4"
frame_desc = "Requires 2 Advanced Scanning Module, 1 Nano Manipulator, 1 Matter Bin and 1 Advanced Capacitor."
req_components = list(
"/obj/item/weapon/stock_parts/scanning_module/adv" = 2,
@@ -73,6 +73,7 @@
results = get_scan_info(scanned_object)
src.visible_message("<b>[name]</b> states, \"Scanning complete.\"")
playsound(loc, "sound/goonstation/machines/printer_dotmatrix.ogg", 50, 1)
var/obj/item/weapon/paper/P = new(src.loc)
P.name = "[src] report #[++report_num]"
P.info = "<b>[src] analysis report #[report_num]</b><br>"
@@ -259,6 +259,7 @@
if(scanned_item)
//create report
playsound(loc, "sound/goonstation/machines/printer_dotmatrix.ogg", 50, 1)
var/obj/item/weapon/paper/P = new(src)
P.name = "[src] report #[++report_num]: [scanned_item.name]"
P.stamped = list(/obj/item/weapon/stamp)
@@ -215,39 +215,13 @@
user << "<span class='notice'>You offer the sentience potion to [M]...</span>"
being_used = 1
var/list/candidates = get_candidates(ROLE_SENTIENT, ALIEN_AFK_BRACKET)
shuffle(candidates)
var/time_passed = world.time
var/list/consenting_candidates = list()
for(var/candidate in candidates)
if(candidate in not_interested)
continue
spawn(0)
switch(alert(candidate, "Would you like to play as [M.name]? Please choose quickly!","Confirmation","Yes","No"))
if("Yes")
if((world.time-time_passed)>=50 || !src)
return
consenting_candidates += candidate
if("No")
if(!src)
return
not_interested += candidate
sleep(50)
var/list/candidates = pollCandidates("Do you want to play as [M.name]?", ROLE_SENTIENT, 0, 100)
if(!src)
return
listclearnulls(consenting_candidates) //some candidates might have left during sleep(50)
if(consenting_candidates.len)
var/client/C = null
C = pick(consenting_candidates)
if(candidates.len)
var/mob/C = pick(candidates)
M.key = C.key
M.universal_speak = 1
M.faction |= "sentient"