Adds console screens (plus new upgrade types) to protolathes (#32800)

* Adds console screens (plus new upgrade types) to protolathes

* This should hopefully no longer be a problem

* Fourth tier

* Way it can be obtained

* Excludes it here

Co-authored-by: kanef <kanef9x@protonmail.com>
This commit is contained in:
kane-f
2022-07-03 16:13:59 +01:00
committed by GitHub
parent cf5883bc63
commit 03ae6fd44e
10 changed files with 67 additions and 16 deletions

View File

@@ -90,7 +90,9 @@
/obj/machinery/dna_scannernew/RefreshParts()
var/efficiency = 0
for(var/obj/item/weapon/stock_parts/SP in component_parts) efficiency += SP.rating-1
for(var/obj/item/weapon/stock_parts/SP in component_parts)
if(!istype(SP,/obj/item/weapon/stock_parts/console_screen))
efficiency += SP.rating-1
injector_cooldown = initial(injector_cooldown) - 15*(efficiency)
/obj/machinery/dna_scannernew/allow_drop()

View File

@@ -1364,10 +1364,6 @@ var/global/list/image/blood_overlays = list()
/obj/item/proc/get_rating()
return FALSE
// Like the above, but used for RPED sorting of parts.
/obj/item/proc/rped_rating()
return get_rating()
/obj/item/kick_act(mob/living/carbon/human/H) //Kick items around!
var/datum/organ/external/kickingfoot = H.pick_usable_organ(LIMB_RIGHT_FOOT, LIMB_LEFT_FOOT)
if(anchored || w_class > W_CLASS_MEDIUM + H.get_strength())

View File

@@ -24,10 +24,6 @@
starting_materials = list(MAT_GLASS = 200)
w_type = RECYK_GLASS
/obj/item/weapon/stock_parts/console_screen/rped_rating()
// Same as T4 parts so that you don't dump them along with T1 ones.
return 4
/obj/item/weapon/stock_parts/capacitor
name = "capacitor"
desc = "A basic capacitor used in the construction of a variety of devices."
@@ -100,6 +96,14 @@
//Rank 2
/obj/item/weapon/stock_parts/console_screen/reinforced
name = "reinforced console screen"
desc = "Used in the construction of computers and other devices with a interactive console."
icon_state = "rscreen"
origin_tech = Tc_MATERIALS + "=3"
rating = 2
starting_materials = list(MAT_IRON = 100, MAT_GLASS = 200)
/obj/item/weapon/stock_parts/capacitor/adv
name = "advanced capacitor"
desc = "An advanced capacitor used in the construction of a variety of devices."
@@ -143,6 +147,14 @@
//Rating 3
/obj/item/weapon/stock_parts/console_screen/reinforced/plasma
name = "plasma console screen"
desc = "Used in the construction of computers and other devices with a interactive console."
icon_state = "pscreen"
origin_tech = Tc_MATERIALS + "=5;" + Tc_PLASMATECH + "=3"
rating = 3
starting_materials = list(MAT_PLASMA = 100, MAT_GLASS = 200)
/obj/item/weapon/stock_parts/capacitor/adv/super
name = "super capacitor"
desc = "A super-high capacity capacitor used in the construction of a variety of devices."
@@ -187,6 +199,14 @@
//Rating 4
//Please don't make these too easily accessible to the station.
/obj/item/weapon/stock_parts/console_screen/reinforced/plasma/rplasma
name = "reinforced plasma console screen"
desc = "Used in the construction of computers and other devices with a interactive console."
icon_state = "pscreen"
origin_tech = Tc_MATERIALS + "=7;" + Tc_PLASMATECH + "=3"
rating = 4
starting_materials = list(MAT_PLASMA = 100, MAT_IRON = 100, MAT_GLASS = 200)
/obj/item/weapon/stock_parts/matter_bin/adv/super/bluespace
name = "bluespace matter bin"
desc = "A container linked to a small local subspace pocket that holds raw materials. Any machine equipped with this shares its materials pool."

View File

@@ -28,7 +28,7 @@
//Sorts items by their rating. Currently used by the RPED (did that need mentioning since this proc is in RPED.dm?)
//Only use /obj/item with this sort proc!
/proc/cmp_rped_sort(var/obj/item/A, var/obj/item/B)
return B.rped_rating() - A.rped_rating()
return B.get_rating() - A.get_rating()
/obj/item/weapon/storage/bag/gadgets/part_replacer/attackby(var/obj/item/weapon/W, var/mob/user)
if(istype(W, /obj/item/weapon/storage/bag/gadgets)) //I guess this allows for moving stuff between RPEDs, honk.

View File

@@ -549,11 +549,11 @@ var/global/list/plantbag_colour_choices = list("plantbag", "green red stripe", "
/obj/item/weapon/storage/bag/gadgets/mass_remove(atom/A)
var/lowest_rating = INFINITY //Get the lowest rating, so only mass drop the lowest parts.
for(var/obj/item/B in contents)
if(B.rped_rating() < lowest_rating)
lowest_rating = B.rped_rating()
if(B.get_rating() < lowest_rating)
lowest_rating = B.get_rating()
for(var/obj/item/B in contents) //Now that we have the lowest rating we can dump only parts at the lowest rating.
if(B.rped_rating() > lowest_rating)
if(B.get_rating() > lowest_rating)
continue
remove_from_storage(B, A)
@@ -701,4 +701,4 @@ var/global/list/plantbag_colour_choices = list("plantbag", "green red stripe", "
max_combined_w_class = 200
w_class = W_CLASS_TINY
can_only_hold = list("/obj/item/weapon/book","/obj/item/weapon/tome","/obj/item/weapon/tome_legacy","/obj/item/weapon/spellbook","/obj/item/weapon/paper","/obj/item/weapon/paper/nano","/obj/item/weapon/barcodescanner","obj/item/weapon/pen","obj/item/weapon/folder")

View File

@@ -136,6 +136,7 @@
/obj/item/weapon/bikehorn/baton = 300,
/obj/item/weapon/grenade/flashbang/clusterbang = 300,
/obj/item/cannonball/bananium = 200,
/obj/item/weapon/stock_parts/console_screen/reinforced/plasma/rplasma = 150,
/obj/item/weapon/stock_parts/micro_laser/high/ultra/giga = 200,
/obj/item/weapon/stock_parts/capacitor/adv/super/ultra = 250,
/obj/item/weapon/stock_parts/manipulator/nano/pico/femto = 200,

View File

@@ -143,6 +143,7 @@
/obj/item/weapon/stock_parts/manipulator/nano/pico/femto=3,
/obj/item/weapon/stock_parts/scanning_module/adv/phasic/bluespace=3,
/obj/item/weapon/stock_parts/matter_bin/adv/super/bluespace=3,
/obj/item/weapon/stock_parts/console_screen/reinforced/plasma/rplasma=3,
/obj/item/device/pda/clear=1
)
@@ -186,4 +187,4 @@
/obj/item/weapon/reagent_containers/syringe/antitoxin=2,
/obj/item/weapon/reagent_containers/glass/bottle/diethylamine=3,
/obj/item/weapon/reagent_containers/glass/bottle/ammonia=3
)
)

View File

@@ -49,6 +49,16 @@
category = "Stock Parts"
build_path = /obj/item/weapon/stock_parts/matter_bin
/datum/design/basic_console_screen
name = "Basic Console Screen"
desc = "A stock part used in the construction of various devices."
id = "basic_console_screen"
req_tech = list(Tc_MATERIALS = 1)
build_type = PROTOLATHE | AUTOLATHE
materials = list(MAT_GLASS = 200)
category = "Stock Parts"
build_path = /obj/item/weapon/stock_parts/console_screen
/datum/design/adv_capacitor
name = "Advanced Capacitor"
desc = "A stock part used in the construction of various devices."
@@ -100,6 +110,16 @@
category = "Stock Parts"
build_path = /obj/item/weapon/stock_parts/matter_bin/adv
/datum/design/reinforced_console_screen
name = "Reinforced Console Screen"
desc = "A stock part used in the construction of various devices."
id = "reinforced_console_screen"
req_tech = list(Tc_MATERIALS = 3)
build_type = PROTOLATHE | AUTOLATHE
materials = list(MAT_IRON = 100, MAT_GLASS = 200)
category = "Stock Parts"
build_path = /obj/item/weapon/stock_parts/console_screen/reinforced
/datum/design/super_capacitor
name = "Super Capacitor"
desc = "A stock part used in the construction of various devices."
@@ -155,7 +175,17 @@
reliability_base = 75
category = "Stock Parts"
build_path = /obj/item/weapon/stock_parts/matter_bin/adv/super
/datum/design/plasma_console_screen
name = "Plasma Console Screen"
desc = "A stock part used in the construction of various devices."
id = "plasma_console_screen"
req_tech = list(Tc_MATERIALS = 5, Tc_PLASMATECH = 3)
build_type = PROTOLATHE | AUTOLATHE
materials = list(MAT_PLASMA = 100, MAT_IRON = 100, MAT_GLASS = 200)
category = "Stock Parts"
build_path = /obj/item/weapon/stock_parts/console_screen/reinforced/plasma
/datum/design/bluespace_matter_bin
name = "Bluespace Matter Bin"
desc = "A stock part used to link material storage space between machines."

View File

@@ -546,6 +546,7 @@
/datum/find/stock_parts/spawn_item()
var/list/possible_spawns = list(
/obj/item/weapon/stock_parts/console_screen/reinforced/plasma/rplasma,
/obj/item/weapon/stock_parts/capacitor/adv/super/ultra,
/obj/item/weapon/stock_parts/micro_laser/high/ultra/giga,
/obj/item/weapon/stock_parts/manipulator/nano/pico/femto,

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB