mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 10:43:20 +00:00
Base features for Precursotech and Anomalotech Expansion
This commit is contained in:
@@ -17,7 +17,7 @@
|
||||
var/list/resource_field = list()
|
||||
var/obj/item/device/radio/intercom/faultreporter = new /obj/item/device/radio/intercom{channels=list("Supply")}(null)
|
||||
|
||||
var/ore_types = list(
|
||||
var/list/ore_types = list(
|
||||
"hematite" = /obj/item/weapon/ore/iron,
|
||||
"uranium" = /obj/item/weapon/ore/uranium,
|
||||
"gold" = /obj/item/weapon/ore/gold,
|
||||
@@ -34,8 +34,20 @@
|
||||
var/harvest_speed
|
||||
var/capacity
|
||||
var/charge_use
|
||||
var/exotic_drilling
|
||||
var/obj/item/weapon/cell/cell = null
|
||||
|
||||
// Found with an advanced laser. exotic_drilling >= 1
|
||||
var/list/ore_types_uncommon = list(
|
||||
MAT_MARBLE = /obj/item/weapon/ore/marble,
|
||||
MAT_LEAD = /obj/item/weapon/ore/lead
|
||||
)
|
||||
|
||||
// Found with an ultra laser. exotic_drilling >= 2
|
||||
var/list/ore_types_rare = list(
|
||||
MAT_VERDANTIUM = /obj/item/weapon/ore/verdantium
|
||||
)
|
||||
|
||||
//Flags
|
||||
var/need_update_field = 0
|
||||
var/need_player_check = 0
|
||||
@@ -127,7 +139,7 @@
|
||||
var/oretype = ore_types[metal]
|
||||
new oretype(src)
|
||||
|
||||
if(!found_resource)
|
||||
if(!found_resource) // If a drill can't see an advanced material, it will destroy it while going through.
|
||||
harvesting.has_resources = 0
|
||||
harvesting.resources = null
|
||||
resource_field -= harvesting
|
||||
@@ -219,6 +231,14 @@
|
||||
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
||||
if(istype(P, /obj/item/weapon/stock_parts/micro_laser))
|
||||
harvest_speed = P.rating
|
||||
exotic_drilling = P.rating - 1
|
||||
if(exotic_drilling >= 1)
|
||||
ore_types |= ore_types_uncommon
|
||||
if(exotic_drilling >= 2)
|
||||
ore_types |= ore_types_rare
|
||||
else
|
||||
ore_types -= ore_types_uncommon
|
||||
ore_types -= ore_types_rare
|
||||
if(istype(P, /obj/item/weapon/stock_parts/matter_bin))
|
||||
capacity = 200 * P.rating
|
||||
if(istype(P, /obj/item/weapon/stock_parts/capacitor))
|
||||
|
||||
@@ -18,7 +18,8 @@
|
||||
"surface minerals" = 0,
|
||||
"precious metals" = 0,
|
||||
"nuclear fuel" = 0,
|
||||
"exotic matter" = 0
|
||||
"exotic matter" = 0,
|
||||
"anomalous matter" = 0
|
||||
)
|
||||
|
||||
for(var/turf/simulated/T in range(2, get_turf(user)))
|
||||
@@ -30,10 +31,11 @@
|
||||
var/ore_type
|
||||
|
||||
switch(metal)
|
||||
if("silicates", "carbon", "hematite") ore_type = "surface minerals"
|
||||
if("gold", "silver", "diamond") ore_type = "precious metals"
|
||||
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]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user