diff --git a/code/game/gamemodes/clock_cult/clock_helpers/component_helpers.dm b/code/game/gamemodes/clock_cult/clock_helpers/component_helpers.dm
index 5862baab816..e8b4de725ab 100644
--- a/code/game/gamemodes/clock_cult/clock_helpers/component_helpers.dm
+++ b/code/game/gamemodes/clock_cult/clock_helpers/component_helpers.dm
@@ -37,6 +37,22 @@
else
return null
+//returns a component acronym from a component id
+/proc/get_component_acronym(id)
+ switch(id)
+ if(BELLIGERENT_EYE)
+ return "BE"
+ if(VANGUARD_COGWHEEL)
+ return "VC"
+ if(GUVAX_CAPACITOR)
+ return "GC"
+ if(REPLICANT_ALLOY)
+ return "RA"
+ if(HIEROPHANT_ANSIBLE)
+ return "HA"
+ else
+ return null
+
//returns a component id from a component name
/proc/get_component_id(name)
switch(name)
@@ -69,6 +85,13 @@
else
return null
+//returns a component color from a component id, but with a brighter replicant alloy color
+/proc/get_component_color_brightalloy(id)
+ if(id == REPLICANT_ALLOY)
+ return "#5A6068"
+ else
+ return get_component_color(id)
+
//returns a component color from a component id
/proc/get_component_color(id)
switch(id)
diff --git a/code/game/gamemodes/clock_cult/clock_items/clockwork_slab.dm b/code/game/gamemodes/clock_cult/clock_items/clockwork_slab.dm
index 75b595ef836..96826ec878a 100644
--- a/code/game/gamemodes/clock_cult/clock_items/clockwork_slab.dm
+++ b/code/game/gamemodes/clock_cult/clock_items/clockwork_slab.dm
@@ -300,11 +300,9 @@
Examine the slab for component amount information.
\
\
A complete list of scripture, its effects, and its requirements can be found below.
\
- Key:
BE = Belligerent Eyes
\
- VC = Vanguard Cogwheels
\
- GC = Guvax Capacitors
\
- RA = Replicant Alloy
\
- HA = Hierophant Ansibles
"
+ Key:
"
+ for(var/i in clockwork_component_cache)
+ text += "[get_component_acronym(i)] = [get_component_name(i)][i != REPLICANT_ALLOY ? "s":""]
"
var/text_to_add = ""
var/drivers = "
[SCRIPTURE_DRIVER]
These scriptures are always unlocked.
"
var/scripts = "
[SCRIPTURE_SCRIPT]
These scriptures require at least five servants and a tinkerer's cache.
"
@@ -319,22 +317,18 @@
var/list/cons_comps = S2.consumed_components
qdel(S2)
var/scripture_text = "
[initial(S.name)]:
[initial(S.desc)]
Invocation Time: [initial(S.channel_time) / 10] seconds
\
- Component Requirement: \
- [req_comps[BELLIGERENT_EYE] ? "[req_comps[BELLIGERENT_EYE]] BE" : ""] \
- [req_comps[VANGUARD_COGWHEEL] ? "[req_comps[VANGUARD_COGWHEEL]] VC" : ""] \
- [req_comps[GUVAX_CAPACITOR] ? "[req_comps[GUVAX_CAPACITOR]] GC" : ""] \
- [req_comps[REPLICANT_ALLOY] ? "[req_comps[REPLICANT_ALLOY]] RA" : ""] \
- [req_comps[HIEROPHANT_ANSIBLE] ? "[req_comps[HIEROPHANT_ANSIBLE]] HA" : ""]
"
- for(var/i in cons_comps)
- if(cons_comps[i])
- scripture_text += "Component Cost: \
- [cons_comps[BELLIGERENT_EYE] ? "[cons_comps[BELLIGERENT_EYE]] BE" : ""] \
- [cons_comps[VANGUARD_COGWHEEL] ? "[cons_comps[VANGUARD_COGWHEEL]] VC" : ""] \
- [cons_comps[GUVAX_CAPACITOR] ? "[cons_comps[GUVAX_CAPACITOR]] GC" : ""] \
- [cons_comps[REPLICANT_ALLOY] ? "[cons_comps[REPLICANT_ALLOY]] RA" : ""] \
- [cons_comps[HIEROPHANT_ANSIBLE] ? "[cons_comps[HIEROPHANT_ANSIBLE]] HA" : ""]
"
+ Component Requirement: "
+ for(var/i in req_comps)
+ if(req_comps[i])
+ scripture_text += "[req_comps[i]] [get_component_acronym(i)] "
+ for(var/a in cons_comps)
+ if(cons_comps[a])
+ scripture_text += "
Component Cost: "
+ for(var/i in cons_comps)
+ if(cons_comps[i])
+ scripture_text += "[cons_comps[i]] [get_component_acronym(i)] "
break //we want this to only show up if the scripture has a cost of some sort
- scripture_text += "Tip: [initial(S.usage_tip)]
"
+ scripture_text += "
Tip: [initial(S.usage_tip)]
"
switch(initial(S.tier))
if(SCRIPTURE_DRIVER)
drivers += scripture_text