Files
Polaris/code/modules/mining/drilling/scanner.dm
Mechoid d363779800 Base features for Precursotech and Anomalotech Expansion
* Adds Imperion sprites.
* Adds more Xenoarch sprites (most from Schnayy)
* Adds Precursor tech and Anomaly tech.
* Adds Precursor and Anomaly machine components. Machines tweaked to allow usage.
* Bioprinter can print random-species organs with Precursor tech.
* Adds Verdantium, Lead, and Marble to mining.
* Marble rebalanced to compensate.
* Tweaks Xenoarch find spawning
* Xenoarch can now find Imperion circuits (useless for now).
* Xenoarch can now find boats, and sometimes an oar, of a random material.
* Particle smasher added to make Morphium, Valhollide, and Supermatter.
* Morphium and Verdantium coins added.
* RnD machines can accept more materials. No recipes tweaked.
2019-03-31 16:29:46 -07:00

52 lines
1.6 KiB
Plaintext

/obj/item/weapon/mining_scanner
name = "ore detector"
desc = "A complex device used to locate ore deep underground."
icon = 'icons/obj/device.dmi'
icon_state = "forensic0-old" //GET A BETTER SPRITE.
item_state = "electronic"
origin_tech = list(TECH_MAGNET = 1, TECH_ENGINEERING = 1)
matter = list(DEFAULT_WALL_MATERIAL = 150)
/obj/item/weapon/mining_scanner/attack_self(mob/user as mob)
user << "You begin sweeping \the [src] about, scanning for metal deposits."
playsound(loc, 'sound/items/goggles_charge.ogg', 50, 1, -6)
if(!do_after(user, 50))
return
var/list/metals = list(
"surface minerals" = 0,
"precious metals" = 0,
"nuclear fuel" = 0,
"exotic matter" = 0,
"anomalous matter" = 0
)
for(var/turf/simulated/T in range(2, get_turf(user)))
if(!T.has_resources)
continue
for(var/metal in T.resources)
var/ore_type
switch(metal)
if("silicates", "carbon", "hematite", "marble") ore_type = "surface minerals"
if("gold", "silver", "diamond", "lead") ore_type = "precious metals"
if("uranium") ore_type = "nuclear fuel"
if("phoron", "osmium", "hydrogen") ore_type = "exotic matter"
if("verdantium") ore_type = "anomalous matter"
if(ore_type) metals[ore_type] += T.resources[metal]
user << "\icon[src] <span class='notice'>The scanner beeps and displays a readout.</span>"
for(var/ore_type in metals)
var/result = "no sign"
switch(metals[ore_type])
if(1 to 25) result = "trace amounts"
if(26 to 75) result = "significant amounts"
if(76 to INFINITY) result = "huge quantities"
user << "- [result] of [ore_type]."