Skip to content
This repository was archived by the owner on May 22, 2025. It is now read-only.

Commit 232ba8d

Browse files
e
1 parent c276f16 commit 232ba8d

File tree

3 files changed

+31
-9
lines changed

3 files changed

+31
-9
lines changed

code/game/mecha/mech_fabricator.dm

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -783,6 +783,7 @@
783783
link_on_init = FALSE
784784
authorization_override = TRUE
785785
hacked = TRUE
786+
circuit = /obj/item/circuitboard/machine/mechfab/ruin
786787

787788
/obj/machinery/mecha_part_fabricator/ruin/Initialize(mapload)
788789
. = ..()

code/game/objects/items/circuitboards/machine_circuitboards.dm

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -984,6 +984,10 @@
984984
/obj/item/stock_parts/micro_laser = 1,
985985
/obj/item/stack/sheet/glass = 1)
986986

987+
/obj/item/circuitboard/machine/mechfab/ruin
988+
desc = "This board is unofficial, and can be linked experimental R&D console, do not lose this because it's very expensive to accquire."
989+
build_path = /obj/machinery/mecha_part_fabricator/ruin
990+
987991
/obj/item/circuitboard/machine/monkey_recycler
988992
name = "Monkey Recycler (Machine Board)"
989993
greyscale_colors = CIRCUIT_COLOR_SCIENCE
@@ -1128,6 +1132,17 @@
11281132
req_components = list(
11291133
/obj/item/stock_parts/manipulator = 2,
11301134
/obj/item/reagent_containers/glass/beaker = 2)
1135+
var/unlocked = FALSE
1136+
1137+
/obj/item/circuitboard/machine/rack_creator/multitool_act(mob/living/user, obj/item/I)
1138+
. = ..()
1139+
user.visible_message(span_notice("[user] fiddles with [src]."), span_notice( "You fiddle with [src]."))
1140+
if(I.use_tool(src, user, 2 SECONDS, volume = 75))
1141+
var/datum/effect_system/spark_spread/p = new /datum/effect_system/spark_spread
1142+
p.set_up(6, 1, user)
1143+
p.start()
1144+
unlocked = !unlocked
1145+
to_chat(user, span_notice("You changed [src] to [unlocked? "unofficial type" : "official type"]."))
11311146

11321147
/obj/item/circuitboard/machine/plort
11331148
name = "Plort Redemption Machine (Machine Board)"

code/modules/mob/living/silicon/ai/decentralized/systech/rack_creator.dm

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,15 @@
1818

1919
var/datum/component/remote_materials/rmat
2020
var/efficiency_coeff = 1
21-
21+
var/datum/techweb/stored_research
2222

2323
/obj/machinery/rack_creator/Initialize(mapload)
24+
var/obj/item/circuitboard/machine/rack_creator/rack_creator = circuit
25+
if(rack_creator.unlocked)
26+
stored_research = SSresearch.ruin_tech
27+
desc += " This one is unofficial, you shouldn't let the NT officicals see this."
28+
else
29+
stored_research = SSresearch.science_tech
2430
rmat = AddComponent(/datum/component/remote_materials, "rackcreator", mapload)
2531
rmat.set_local_size(200000)
2632
RefreshParts()
@@ -104,7 +110,7 @@
104110
materials_string += "[M.name]: [D.materials[mat] / efficiency_coeff]"
105111
else
106112
materials_string += ", [M.name]: [D.materials[mat] / efficiency_coeff]"
107-
data["possible_ram"] += list(list("name" = D.name, "capacity" = D.capacity, "cost" = materials_string,"id" = D.id, "unlocked" = SSresearch.science_tech.isDesignResearchedID(D.id) ? TRUE : FALSE))
113+
data["possible_ram"] += list(list("name" = D.name, "capacity" = D.capacity, "cost" = materials_string,"id" = D.id, "unlocked" = stored_research.isDesignResearchedID(D.id) ? TRUE : FALSE))
108114

109115
data["unlocked_ram"] = 1
110116
data["unlocked_cpu"] = 1
@@ -192,23 +198,23 @@
192198
if(1)
193199
. = TRUE
194200
if(2)
195-
. = SSresearch.science_tech.isNodeResearchedID("ai_cpu_2")
201+
. = stored_research.isNodeResearchedID("ai_cpu_2")
196202
if(3)
197-
. = SSresearch.science_tech.isNodeResearchedID("ai_cpu_3")
203+
. = stored_research.isNodeResearchedID("ai_cpu_3")
198204

199205
if(4)
200-
. = SSresearch.science_tech.isNodeResearchedID("ai_cpu_4")
206+
. = stored_research.isNodeResearchedID("ai_cpu_4")
201207

202208
/obj/machinery/rack_creator/proc/slotUnlockedRAM(slot_number)
203209
switch(slot_number)
204210
if(1)
205211
. = TRUE
206212
if(2)
207-
. = SSresearch.science_tech.isNodeResearchedID("ai_ram_2")
213+
. = stored_research.isNodeResearchedID("ai_ram_2")
208214
if(3)
209-
. = SSresearch.science_tech.isNodeResearchedID("ai_ram_3")
215+
. = stored_research.isNodeResearchedID("ai_ram_3")
210216
if(4)
211-
. = SSresearch.science_tech.isNodeResearchedID("ai_ram_4")
217+
. = stored_research.isNodeResearchedID("ai_ram_4")
212218

213219

214220
/obj/machinery/rack_creator/ui_act(action, params)
@@ -252,7 +258,7 @@
252258
var/ram_type = params["ram_type"]
253259
if(!ram_type)
254260
return
255-
var/datum/design/ram/D = SSresearch.science_tech.isDesignResearchedID(ram_type)
261+
var/datum/design/ram/D = stored_research.isDesignResearchedID(ram_type)
256262
if(!D)
257263
return
258264
if(slotUnlockedRAM(ram_expansions.len + 1))

0 commit comments

Comments
 (0)