diff --git a/code/modules/mining/drilling/scanner.dm b/code/modules/mining/drilling/scanner.dm
index 8f9e25c69e..fdaf168ab4 100644
--- a/code/modules/mining/drilling/scanner.dm
+++ b/code/modules/mining/drilling/scanner.dm
@@ -30,6 +30,7 @@
"anomalous matter" = 0
)
+ var/list/reagents_found = list()
var/turf/Turf = get_turf(target)
for(var/turf/simulated/T in range(range, Turf))
@@ -49,9 +50,13 @@
if(ORE_PHORON, ORE_PLATINUM, ORE_MHYDROGEN) ore_type = "exotic matter"
if(ORE_VERDANTIUM, ORE_VOPAL) ore_type = "anomalous matter"
- if(ore_type) metals[ore_type] += T.resources[metal]
+ if(ore_type)
+ metals[ore_type] += T.resources[metal]
+ if(islist(GLOB.deepore_fracking_reagents[metal]))
+ for(var/reg_id in GLOB.deepore_fracking_reagents[metal])
+ reagents_found[reg_id] += 1
- var/message = "[icon2html(src, user.client)] " + span_notice("The scanner beeps and displays a readout.")
+ var/message = "[icon2html(src, user.client)] " + span_infoplain("The scanner beeps and displays a readout:")
for(var/ore_type in metals)
var/result = "no sign"
@@ -67,6 +72,24 @@
message += "
" + span_notice("- [result] of [ore_type].")
+ if(reagents_found.len)
+ message += "
" + span_infoplain("Sediment sample contains: ")
+ for(var/reg_id in reagents_found)
+ var/amnt = reagents_found[reg_id]
+ var/minimum = 25
+ if(amnt > minimum || exact)
+ var/datum/reagent/R = SSchemistry.chemical_reagents[reg_id]
+ var/ds = ""
+ if(amnt <= minimum && exact)
+ ds = "miniscule "
+ else if(amnt <= 40)
+ ds = "low "
+ else if(amnt >= 120 && exact)
+ ds = "massive "
+ else if(amnt >= 80)
+ ds = "high "
+ message += "
" + span_notice("- [ds][R.name]")
+
to_chat(user, message)
/obj/item/mining_scanner/advanced