mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-30 08:37:43 +01:00
[MIRROR] Save 0.13s (or more, it's hard to tell with Lavaland) by caching mineral spawn lists, and making effects not have integrity [MDB IGNORE] (#17397)
* Save 0.13s (or more, it's hard to tell with Lavaland) by caching mineral spawn lists, and making effects not have integrity (#71089) Decals calling `getArmor` was 50ms, gives them `uses_integrity = FALSE` to counter this. I don't think this should have any visible effects. Makes mineral spawn chances a proc that caches its results rather than a brand new list initialized on every single mineral (80+ms). Also calls `check_holidays` only once instead of over 30,000 times (which was 43.76ms). Also caches `smoothing_groups` and `canSmoothWith`. Numbers aren't wholly inaccurate Lavaland do be random. * Save 0.13s (or more, it's hard to tell with Lavaland) by caching mineral spawn lists, and making effects not have integrity * update modular/ Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com> Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
This commit is contained in:
co-authored by
Mothblocks
Tom
parent
f18f1e510b
commit
d83d2cc4b0
@@ -7,6 +7,7 @@
|
||||
move_resist = INFINITY
|
||||
obj_flags = NONE
|
||||
blocks_emissive = EMISSIVE_BLOCK_GENERIC
|
||||
uses_integrity = FALSE
|
||||
|
||||
/obj/effect/attackby(obj/item/weapon, mob/user, params)
|
||||
if(SEND_SIGNAL(weapon, COMSIG_ITEM_ATTACK_EFFECT, src, user, params) & COMPONENT_NO_AFTERATTACK)
|
||||
|
||||
@@ -9,8 +9,6 @@
|
||||
icon = MAP_SWITCH('modular_skyrat/modules/liquids/icons/turf/smoothrocks.dmi', 'icons/turf/mining.dmi') // SKYRAT EDIT CHANGE
|
||||
icon_state = "rock"
|
||||
smoothing_flags = SMOOTH_BITMASK | SMOOTH_BORDER
|
||||
smoothing_groups = list(SMOOTH_GROUP_CLOSED_TURFS, SMOOTH_GROUP_MINERAL_WALLS)
|
||||
canSmoothWith = list(SMOOTH_GROUP_MINERAL_WALLS)
|
||||
baseturfs = /turf/open/misc/asteroid/airless
|
||||
initial_gas_mix = AIRLESS_ATMOS
|
||||
opacity = TRUE
|
||||
@@ -41,6 +39,16 @@
|
||||
|
||||
#undef MINERAL_WALL_OFFSET
|
||||
|
||||
/turf/closed/mineral/Initialize(mapload)
|
||||
var/static/list/smoothing_groups = list(SMOOTH_GROUP_CLOSED_TURFS, SMOOTH_GROUP_MINERAL_WALLS)
|
||||
var/static/list/canSmoothWith = list(SMOOTH_GROUP_MINERAL_WALLS)
|
||||
|
||||
// The cost of the list() being in the type def is very large for something as common as minerals
|
||||
src.smoothing_groups = smoothing_groups
|
||||
src.canSmoothWith = canSmoothWith
|
||||
|
||||
return ..()
|
||||
|
||||
// Inlined version of the bump click element. way faster this way, the element's nice but it's too much overhead
|
||||
/turf/closed/mineral/Bumped(atom/movable/bumped_atom)
|
||||
. = ..()
|
||||
@@ -189,21 +197,34 @@
|
||||
gets_drilled(give_exp = FALSE)
|
||||
|
||||
/turf/closed/mineral/random
|
||||
var/list/mineralSpawnChanceList = list(/obj/item/stack/ore/uranium = 5, /obj/item/stack/ore/diamond = 1, /obj/item/stack/ore/gold = 10,
|
||||
/obj/item/stack/ore/silver = 12, /obj/item/stack/ore/plasma = 20, /obj/item/stack/ore/iron = 40, /obj/item/stack/ore/titanium = 11,
|
||||
/turf/closed/mineral/gibtonite = 4, /obj/item/stack/ore/bluespace_crystal = 1)
|
||||
//Currently, Adamantine won't spawn as it has no uses. -Durandan
|
||||
var/mineralChance = 13
|
||||
|
||||
/turf/closed/mineral/random/Initialize(mapload)
|
||||
if(check_holidays(APRIL_FOOLS))
|
||||
mineralSpawnChanceList[/obj/item/stack/ore/bananium] = 3
|
||||
/// Returns a list of the chances for minerals to spawn.
|
||||
/// Will only run once, and will then be cached.
|
||||
/turf/closed/mineral/random/proc/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/bananium = check_holidays(APRIL_FOOLS) ? 3 : 0,
|
||||
/obj/item/stack/ore/bluespace_crystal = 1,
|
||||
/obj/item/stack/ore/diamond = 1,
|
||||
/obj/item/stack/ore/gold = 10,
|
||||
/obj/item/stack/ore/iron = 40,
|
||||
/obj/item/stack/ore/plasma = 20,
|
||||
/obj/item/stack/ore/silver = 12,
|
||||
/obj/item/stack/ore/titanium = 11,
|
||||
/obj/item/stack/ore/uranium = 5,
|
||||
/turf/closed/mineral/gibtonite = 4,
|
||||
)
|
||||
|
||||
mineralSpawnChanceList = typelist("mineralSpawnChanceList", mineralSpawnChanceList)
|
||||
/turf/closed/mineral/random/Initialize(mapload)
|
||||
var/static/list/mineral_chances_by_type = list()
|
||||
|
||||
. = ..()
|
||||
if (prob(mineralChance))
|
||||
var/path = pick_weight(mineralSpawnChanceList)
|
||||
var/list/spawn_chance_list = mineral_chances_by_type[type]
|
||||
if (isnull(spawn_chance_list))
|
||||
mineral_chances_by_type[type] = expand_weights(mineral_chances())
|
||||
spawn_chance_list = mineral_chances_by_type[type]
|
||||
var/path = pick(spawn_chance_list)
|
||||
if(ispath(path, /turf))
|
||||
var/stored_flags = 0
|
||||
var/stored_color = color //SKYRAT EDIT ADDITION
|
||||
@@ -231,34 +252,67 @@
|
||||
/turf/closed/mineral/random/high_chance
|
||||
icon_state = "rock_highchance"
|
||||
mineralChance = 25
|
||||
mineralSpawnChanceList = list(
|
||||
/obj/item/stack/ore/uranium = 35, /obj/item/stack/ore/diamond = 30, /obj/item/stack/ore/gold = 45, /obj/item/stack/ore/titanium = 45,
|
||||
/obj/item/stack/ore/silver = 50, /obj/item/stack/ore/plasma = 50, /obj/item/stack/ore/bluespace_crystal = 20)
|
||||
|
||||
/turf/closed/mineral/random/high_chance/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/bluespace_crystal = 20,
|
||||
/obj/item/stack/ore/diamond = 30,
|
||||
/obj/item/stack/ore/gold = 45,
|
||||
/obj/item/stack/ore/plasma = 50,
|
||||
/obj/item/stack/ore/silver = 50,
|
||||
/obj/item/stack/ore/titanium = 45,
|
||||
/obj/item/stack/ore/uranium = 35,
|
||||
)
|
||||
|
||||
/turf/closed/mineral/random/high_chance/volcanic
|
||||
turf_type = /turf/open/misc/asteroid/basalt/lava_land_surface
|
||||
baseturfs = /turf/open/misc/asteroid/basalt/lava_land_surface
|
||||
initial_gas_mix = LAVALAND_DEFAULT_ATMOS
|
||||
defer_change = TRUE
|
||||
mineralSpawnChanceList = list(
|
||||
/obj/item/stack/ore/uranium = 35, /obj/item/stack/ore/diamond = 30, /obj/item/stack/ore/gold = 45, /obj/item/stack/ore/titanium = 45,
|
||||
/obj/item/stack/ore/silver = 50, /obj/item/stack/ore/plasma = 50, /obj/item/stack/ore/bluespace_crystal = 1)
|
||||
|
||||
/turf/closed/mineral/random/high_chance/volcanic/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/bluespace_crystal = 1,
|
||||
/obj/item/stack/ore/diamond = 30,
|
||||
/obj/item/stack/ore/gold = 45,
|
||||
/obj/item/stack/ore/plasma = 50,
|
||||
/obj/item/stack/ore/silver = 50,
|
||||
/obj/item/stack/ore/titanium = 45,
|
||||
/obj/item/stack/ore/uranium = 35,
|
||||
)
|
||||
|
||||
/turf/closed/mineral/random/low_chance
|
||||
icon_state = "rock_lowchance"
|
||||
mineralChance = 6
|
||||
mineralSpawnChanceList = list(
|
||||
/obj/item/stack/ore/uranium = 2, /obj/item/stack/ore/diamond = 1, /obj/item/stack/ore/gold = 4, /obj/item/stack/ore/titanium = 4,
|
||||
/obj/item/stack/ore/silver = 6, /obj/item/stack/ore/plasma = 15, /obj/item/stack/ore/iron = 40,
|
||||
/turf/closed/mineral/gibtonite = 2, /obj/item/stack/ore/bluespace_crystal = 1)
|
||||
|
||||
/turf/closed/mineral/random/low_chance/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/bluespace_crystal = 1,
|
||||
/obj/item/stack/ore/diamond = 1,
|
||||
/obj/item/stack/ore/gold = 4,
|
||||
/obj/item/stack/ore/iron = 40,
|
||||
/obj/item/stack/ore/plasma = 15,
|
||||
/obj/item/stack/ore/silver = 6,
|
||||
/obj/item/stack/ore/titanium = 4,
|
||||
/obj/item/stack/ore/uranium = 2,
|
||||
/turf/closed/mineral/gibtonite = 2,
|
||||
)
|
||||
|
||||
//extremely low chance of rare ores, meant mostly for populating stations with large amounts of asteroid
|
||||
/turf/closed/mineral/random/stationside
|
||||
icon_state = "rock_nochance"
|
||||
mineralChance = 4
|
||||
mineralSpawnChanceList = list(
|
||||
/obj/item/stack/ore/uranium = 1, /obj/item/stack/ore/diamond = 1, /obj/item/stack/ore/gold = 3, /obj/item/stack/ore/titanium = 5,
|
||||
/obj/item/stack/ore/silver = 4, /obj/item/stack/ore/plasma = 3, /obj/item/stack/ore/iron = 50)
|
||||
|
||||
/turf/closed/mineral/random/stationside/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/diamond = 1,
|
||||
/obj/item/stack/ore/gold = 3,
|
||||
/obj/item/stack/ore/iron = 50,
|
||||
/obj/item/stack/ore/plasma = 3,
|
||||
/obj/item/stack/ore/silver = 4,
|
||||
/obj/item/stack/ore/titanium = 5,
|
||||
/obj/item/stack/ore/uranium = 1,
|
||||
)
|
||||
|
||||
/turf/closed/mineral/random/volcanic
|
||||
turf_type = /turf/open/misc/asteroid/basalt/lava_land_surface
|
||||
@@ -267,10 +321,19 @@
|
||||
defer_change = TRUE
|
||||
|
||||
mineralChance = 10
|
||||
mineralSpawnChanceList = list(
|
||||
/obj/item/stack/ore/uranium = 5, /obj/item/stack/ore/diamond = 1, /obj/item/stack/ore/gold = 10, /obj/item/stack/ore/titanium = 11,
|
||||
/obj/item/stack/ore/silver = 12, /obj/item/stack/ore/plasma = 20, /obj/item/stack/ore/iron = 40,
|
||||
/turf/closed/mineral/gibtonite/volcanic = 4, /obj/item/stack/ore/bluespace_crystal = 1)
|
||||
|
||||
/turf/closed/mineral/random/volcanic/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/bluespace_crystal = 1,
|
||||
/obj/item/stack/ore/diamond = 1,
|
||||
/obj/item/stack/ore/gold = 10,
|
||||
/obj/item/stack/ore/iron = 40,
|
||||
/obj/item/stack/ore/plasma = 20,
|
||||
/obj/item/stack/ore/silver = 12,
|
||||
/obj/item/stack/ore/titanium = 11,
|
||||
/obj/item/stack/ore/uranium = 5,
|
||||
/turf/closed/mineral/gibtonite/volcanic = 4,
|
||||
)
|
||||
|
||||
/turf/closed/mineral/random/snow
|
||||
name = "snowy mountainside"
|
||||
@@ -293,42 +356,84 @@
|
||||
base_icon_state = "icerock_wall"
|
||||
smoothing_flags = SMOOTH_BITMASK | SMOOTH_BORDER
|
||||
|
||||
/turf/closed/mineral/random/snow
|
||||
mineralSpawnChanceList = list(
|
||||
/obj/item/stack/ore/uranium = 5, /obj/item/stack/ore/diamond = 1, /obj/item/stack/ore/gold = 10, /obj/item/stack/ore/titanium = 11,
|
||||
/obj/item/stack/ore/silver = 12, /obj/item/stack/ore/plasma = 20, /obj/item/stack/ore/iron = 40,
|
||||
/turf/closed/mineral/gibtonite/ice/icemoon = 4, /obj/item/stack/ore/bluespace_crystal = 1)
|
||||
/turf/closed/mineral/random/snow/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/bluespace_crystal = 1,
|
||||
/obj/item/stack/ore/diamond = 1,
|
||||
/obj/item/stack/ore/gold = 10,
|
||||
/obj/item/stack/ore/iron = 40,
|
||||
/obj/item/stack/ore/plasma = 20,
|
||||
/obj/item/stack/ore/silver = 12,
|
||||
/obj/item/stack/ore/titanium = 11,
|
||||
/obj/item/stack/ore/uranium = 5,
|
||||
/turf/closed/mineral/gibtonite/ice/icemoon = 4,
|
||||
)
|
||||
|
||||
/turf/closed/mineral/random/snow/underground
|
||||
baseturfs = /turf/open/misc/asteroid/snow/icemoon
|
||||
// abundant ore
|
||||
mineralChance = 20
|
||||
mineralSpawnChanceList = list(
|
||||
/obj/item/stack/ore/uranium = 10, /obj/item/stack/ore/diamond = 4, /obj/item/stack/ore/gold = 20, /obj/item/stack/ore/titanium = 22,
|
||||
/obj/item/stack/ore/silver = 24, /obj/item/stack/ore/plasma = 20, /obj/item/stack/ore/iron = 20, /obj/item/stack/ore/bananium = 1,
|
||||
/turf/closed/mineral/gibtonite/ice/icemoon = 8, /obj/item/stack/ore/bluespace_crystal = 2)
|
||||
|
||||
/turf/closed/mineral/random/snow/underground/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/bananium = 1,
|
||||
/obj/item/stack/ore/bluespace_crystal = 2,
|
||||
/obj/item/stack/ore/diamond = 4,
|
||||
/obj/item/stack/ore/gold = 20,
|
||||
/obj/item/stack/ore/iron = 20,
|
||||
/obj/item/stack/ore/plasma = 20,
|
||||
/obj/item/stack/ore/silver = 24,
|
||||
/obj/item/stack/ore/titanium = 22,
|
||||
/obj/item/stack/ore/uranium = 10,
|
||||
/turf/closed/mineral/gibtonite/ice/icemoon = 8,
|
||||
)
|
||||
|
||||
/turf/closed/mineral/random/snow/high_chance
|
||||
mineralSpawnChanceList = list(
|
||||
/obj/item/stack/ore/uranium = 35, /obj/item/stack/ore/diamond = 30, /obj/item/stack/ore/gold = 45, /obj/item/stack/ore/titanium = 45,
|
||||
/obj/item/stack/ore/silver = 50, /obj/item/stack/ore/plasma = 50, /obj/item/stack/ore/bluespace_crystal = 20)
|
||||
|
||||
/turf/closed/mineral/random/snow/high_chance/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/bluespace_crystal = 20,
|
||||
/obj/item/stack/ore/diamond = 30,
|
||||
/obj/item/stack/ore/gold = 45,
|
||||
/obj/item/stack/ore/plasma = 50,
|
||||
/obj/item/stack/ore/silver = 50,
|
||||
/obj/item/stack/ore/titanium = 45,
|
||||
/obj/item/stack/ore/uranium = 35,
|
||||
)
|
||||
|
||||
/turf/closed/mineral/random/labormineral
|
||||
icon_state = "rock_labor"
|
||||
mineralSpawnChanceList = list(
|
||||
/obj/item/stack/ore/uranium = 3, /obj/item/stack/ore/diamond = 1, /obj/item/stack/ore/gold = 8, /obj/item/stack/ore/titanium = 8,
|
||||
/obj/item/stack/ore/silver = 20, /obj/item/stack/ore/plasma = 30, /obj/item/stack/ore/iron = 95,
|
||||
/turf/closed/mineral/gibtonite = 2)
|
||||
|
||||
/turf/closed/mineral/random/labormineral/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/diamond = 1,
|
||||
/obj/item/stack/ore/gold = 8,
|
||||
/obj/item/stack/ore/iron = 95,
|
||||
/obj/item/stack/ore/plasma = 30,
|
||||
/obj/item/stack/ore/silver = 20,
|
||||
/obj/item/stack/ore/titanium = 8,
|
||||
/obj/item/stack/ore/uranium = 3,
|
||||
/turf/closed/mineral/gibtonite = 2,
|
||||
)
|
||||
|
||||
/turf/closed/mineral/random/labormineral/volcanic
|
||||
turf_type = /turf/open/misc/asteroid/basalt/lava_land_surface
|
||||
baseturfs = /turf/open/misc/asteroid/basalt/lava_land_surface
|
||||
initial_gas_mix = LAVALAND_DEFAULT_ATMOS
|
||||
defer_change = TRUE
|
||||
mineralSpawnChanceList = list(
|
||||
/obj/item/stack/ore/uranium = 3, /obj/item/stack/ore/diamond = 1, /obj/item/stack/ore/gold = 8, /obj/item/stack/ore/titanium = 8,
|
||||
/obj/item/stack/ore/silver = 20, /obj/item/stack/ore/plasma = 30, /obj/item/stack/ore/bluespace_crystal = 1, /turf/closed/mineral/gibtonite/volcanic = 2,
|
||||
/obj/item/stack/ore/iron = 95)
|
||||
|
||||
/turf/closed/mineral/random/labormineral/volcanic/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/bluespace_crystal = 1,
|
||||
/obj/item/stack/ore/diamond = 1,
|
||||
/obj/item/stack/ore/gold = 8,
|
||||
/obj/item/stack/ore/iron = 95,
|
||||
/obj/item/stack/ore/plasma = 30,
|
||||
/obj/item/stack/ore/silver = 20,
|
||||
/obj/item/stack/ore/titanium = 8,
|
||||
/obj/item/stack/ore/uranium = 3,
|
||||
/turf/closed/mineral/gibtonite/volcanic = 2,
|
||||
)
|
||||
|
||||
// Subtypes for mappers placing ores manually.
|
||||
/turf/closed/mineral/random/labormineral/ice
|
||||
@@ -343,10 +448,19 @@
|
||||
baseturfs = /turf/open/misc/asteroid/snow/icemoon
|
||||
initial_gas_mix = ICEMOON_DEFAULT_ATMOS
|
||||
defer_change = TRUE
|
||||
mineralSpawnChanceList = list(
|
||||
/obj/item/stack/ore/uranium = 3, /obj/item/stack/ore/diamond = 1, /obj/item/stack/ore/gold = 8, /obj/item/stack/ore/titanium = 8,
|
||||
/obj/item/stack/ore/silver = 20, /obj/item/stack/ore/plasma = 30, /obj/item/stack/ore/bluespace_crystal = 1, /turf/closed/mineral/gibtonite/volcanic = 2,
|
||||
/obj/item/stack/ore/iron = 95)
|
||||
|
||||
/turf/closed/mineral/random/labormineral/ice/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/bluespace_crystal = 1,
|
||||
/obj/item/stack/ore/diamond = 1,
|
||||
/obj/item/stack/ore/gold = 8,
|
||||
/obj/item/stack/ore/iron = 95,
|
||||
/obj/item/stack/ore/plasma = 30,
|
||||
/obj/item/stack/ore/silver = 20,
|
||||
/obj/item/stack/ore/titanium = 8,
|
||||
/obj/item/stack/ore/uranium = 3,
|
||||
/turf/closed/mineral/gibtonite/volcanic = 2,
|
||||
)
|
||||
|
||||
/turf/closed/mineral/random/labormineral/ice/Change_Ore(ore_type, random = 0)
|
||||
. = ..()
|
||||
|
||||
@@ -56,7 +56,16 @@
|
||||
smooth_icon = 'icons/turf/floors/junglegrass.dmi'
|
||||
|
||||
/turf/closed/mineral/random/jungle
|
||||
mineralSpawnChanceList = list(/obj/item/stack/ore/uranium = 5, /obj/item/stack/ore/diamond = 1, /obj/item/stack/ore/gold = 10,
|
||||
/obj/item/stack/ore/silver = 12, /obj/item/stack/ore/plasma = 20, /obj/item/stack/ore/iron = 40, /obj/item/stack/ore/titanium = 11,
|
||||
/obj/item/stack/ore/bluespace_crystal = 1)
|
||||
baseturfs = /turf/open/misc/dirt/dark
|
||||
|
||||
/turf/closed/mineral/random/jungle/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/bluespace_crystal = 1,
|
||||
/obj/item/stack/ore/diamond = 1,
|
||||
/obj/item/stack/ore/gold = 10,
|
||||
/obj/item/stack/ore/iron = 40,
|
||||
/obj/item/stack/ore/plasma = 20,
|
||||
/obj/item/stack/ore/silver = 12,
|
||||
/obj/item/stack/ore/titanium = 11,
|
||||
/obj/item/stack/ore/uranium = 5,
|
||||
)
|
||||
|
||||
@@ -144,14 +144,6 @@
|
||||
turf_type = /turf/open/floor/plating/ocean/rock/heavy
|
||||
color = "#58606b"
|
||||
|
||||
//extremely low chance of rare ores, meant mostly for populating stations with large amounts of asteroid
|
||||
/turf/closed/mineral/random/stationside
|
||||
icon_state = "rock_nochance"
|
||||
mineralChance = 4
|
||||
mineralSpawnChanceList = list(
|
||||
/obj/item/stack/ore/uranium = 1, /obj/item/stack/ore/diamond = 1, /obj/item/stack/ore/gold = 3, /obj/item/stack/ore/titanium = 5,
|
||||
/obj/item/stack/ore/silver = 4, /obj/item/stack/ore/plasma = 3, /obj/item/stack/ore/iron = 50)
|
||||
|
||||
/turf/closed/mineral/random/stationside/ocean
|
||||
baseturfs = /turf/open/floor/plating/ocean/rock/heavy
|
||||
turf_type = /turf/open/floor/plating/ocean/rock/heavy
|
||||
|
||||
@@ -92,8 +92,10 @@
|
||||
baseturfs = /turf/open/misc/asteroid/lowpressure
|
||||
initial_gas_mix = OPENTURF_LOW_PRESSURE
|
||||
defer_change = TRUE
|
||||
mineralChance = 25 //Higher mineral chance than normal
|
||||
|
||||
mineralSpawnChanceList = list(
|
||||
/turf/closed/mineral/random/asteroid/rockplanet/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/iron = 40,
|
||||
/obj/item/stack/ore/plasma = 20,
|
||||
/obj/item/stack/ore/silver = 12,
|
||||
@@ -104,11 +106,13 @@
|
||||
/obj/item/stack/ore/diamond = 1,
|
||||
/obj/item/stack/ore/bluespace_crystal = 1
|
||||
)
|
||||
mineralChance = 25 //Higher mineral chance than normal
|
||||
|
||||
|
||||
/turf/closed/mineral/random/asteroid/rockplanet/labor //No bluespace for the inmates!
|
||||
icon_state = "rock_labor"
|
||||
mineralSpawnChanceList = list(
|
||||
|
||||
/turf/closed/mineral/random/asteroid/rockplanet/labor/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/iron = 95,
|
||||
/obj/item/stack/ore/plasma = 30,
|
||||
/obj/item/stack/ore/silver = 20,
|
||||
|
||||
@@ -39,7 +39,10 @@
|
||||
/turf/closed/mineral/random/stationside/asteroid/rockplanet
|
||||
initial_gas_mix = OPENTURF_DEFAULT_ATMOS
|
||||
turf_type = /turf/open/misc/asteroid
|
||||
mineralSpawnChanceList = list(
|
||||
mineralChance = 30
|
||||
|
||||
/turf/closed/mineral/random/stationside/asteroid/rockplanet/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/uranium = 5,
|
||||
/obj/item/stack/ore/diamond = 1,
|
||||
/obj/item/stack/ore/gold = 10,
|
||||
@@ -50,4 +53,4 @@
|
||||
/turf/closed/mineral/gibtonite = 4,
|
||||
/obj/item/stack/ore/bluespace_crystal = 1
|
||||
)
|
||||
mineralChance = 30
|
||||
|
||||
|
||||
@@ -187,12 +187,21 @@
|
||||
baseturfs = /turf/open/misc/asteroid/basalt/lava_land_surface
|
||||
initial_gas_mix = LAVALAND_DEFAULT_ATMOS
|
||||
defer_change = TRUE
|
||||
|
||||
mineralChance = 10
|
||||
mineralSpawnChanceList = list(
|
||||
/obj/item/stack/ore/uranium = 5, /obj/item/stack/ore/diamond = 1, /obj/item/stack/ore/gold = 10, /obj/item/stack/ore/titanium = 11,
|
||||
/obj/item/stack/ore/silver = 12, /obj/item/stack/ore/plasma = 20, /obj/item/stack/ore/iron = 40, /turf/closed/mineral/strange_rock/volcanic = 10,
|
||||
/turf/closed/mineral/gibtonite/volcanic = 4, /obj/item/stack/ore/bluespace_crystal = 1)
|
||||
|
||||
/turf/closed/mineral/random/volcanic/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/iron = 40,
|
||||
/obj/item/stack/ore/plasma = 20,
|
||||
/obj/item/stack/ore/silver = 12,
|
||||
/obj/item/stack/ore/titanium = 11,
|
||||
/obj/item/stack/ore/gold = 10,
|
||||
/turf/closed/mineral/strange_rock/volcanic = 10,
|
||||
/obj/item/stack/ore/uranium = 5,
|
||||
/turf/closed/mineral/gibtonite/volcanic = 4,
|
||||
/obj/item/stack/ore/diamond = 1,
|
||||
/obj/item/stack/ore/bluespace_crystal = 1
|
||||
)
|
||||
|
||||
/turf/closed/mineral/strange_rock/ice
|
||||
icon = MAP_SWITCH('icons/turf/walls/icerock_wall.dmi', 'icons/turf/mining.dmi')
|
||||
@@ -209,20 +218,39 @@
|
||||
baseturfs = /turf/open/misc/asteroid/snow/ice/icemoon
|
||||
initial_gas_mix = ICEMOON_DEFAULT_ATMOS
|
||||
|
||||
/turf/closed/mineral/random/snow
|
||||
mineralSpawnChanceList = list(
|
||||
/obj/item/stack/ore/uranium = 5, /obj/item/stack/ore/diamond = 1, /obj/item/stack/ore/gold = 10, /obj/item/stack/ore/titanium = 11,
|
||||
/obj/item/stack/ore/silver = 12, /obj/item/stack/ore/plasma = 20, /obj/item/stack/ore/iron = 40, /turf/closed/mineral/strange_rock/ice/icemoon = 10,
|
||||
/turf/closed/mineral/gibtonite/ice/icemoon = 4, /obj/item/stack/ore/bluespace_crystal = 1)
|
||||
/turf/closed/mineral/random/snow/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/iron = 40,
|
||||
/obj/item/stack/ore/plasma = 20,
|
||||
/obj/item/stack/ore/silver = 12,
|
||||
/obj/item/stack/ore/titanium = 11,
|
||||
/obj/item/stack/ore/gold = 10,
|
||||
/turf/closed/mineral/strange_rock/ice/icemoon = 10,
|
||||
/obj/item/stack/ore/uranium = 5,
|
||||
/turf/closed/mineral/gibtonite/ice/icemoon = 4,
|
||||
/obj/item/stack/ore/diamond = 1,
|
||||
/obj/item/stack/ore/bluespace_crystal = 1,
|
||||
)
|
||||
|
||||
/turf/closed/mineral/random/snow/underground
|
||||
baseturfs = /turf/open/misc/asteroid/snow/icemoon
|
||||
// abundant ore
|
||||
mineralChance = 20
|
||||
mineralSpawnChanceList = list(
|
||||
/obj/item/stack/ore/uranium = 10, /obj/item/stack/ore/diamond = 4, /obj/item/stack/ore/gold = 20, /obj/item/stack/ore/titanium = 22,
|
||||
/obj/item/stack/ore/silver = 24, /obj/item/stack/ore/plasma = 20, /obj/item/stack/ore/iron = 20, /obj/item/stack/ore/bananium = 1,
|
||||
/turf/closed/mineral/gibtonite/ice/icemoon = 8, /turf/closed/mineral/strange_rock/ice/icemoon = 10, /obj/item/stack/ore/bluespace_crystal = 2)
|
||||
|
||||
/turf/closed/mineral/random/snow/underground/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/silver = 24,
|
||||
/obj/item/stack/ore/titanium = 22,
|
||||
/obj/item/stack/ore/gold = 20,
|
||||
/obj/item/stack/ore/plasma = 20,
|
||||
/obj/item/stack/ore/iron = 20,
|
||||
/obj/item/stack/ore/uranium = 10,
|
||||
/turf/closed/mineral/strange_rock/ice/icemoon = 10,
|
||||
/turf/closed/mineral/gibtonite/ice/icemoon = 8,
|
||||
/obj/item/stack/ore/diamond = 4,
|
||||
/obj/item/stack/ore/bluespace_crystal = 2,
|
||||
/obj/item/stack/ore/bananium = 1,
|
||||
)
|
||||
|
||||
//small gibonite fix
|
||||
/turf/closed/mineral/gibtonite/asteroid
|
||||
@@ -248,11 +276,22 @@
|
||||
/turf/closed/mineral/random/stationside/asteroid/rockplanet
|
||||
initial_gas_mix = OPENTURF_DEFAULT_ATMOS
|
||||
turf_type = /turf/open/misc/asteroid
|
||||
mineralSpawnChanceList = list(/obj/item/stack/ore/uranium = 5, /obj/item/stack/ore/diamond = 1, /obj/item/stack/ore/gold = 10,
|
||||
/obj/item/stack/ore/silver = 12, /obj/item/stack/ore/plasma = 20, /obj/item/stack/ore/iron = 40, /obj/item/stack/ore/titanium = 11,
|
||||
/turf/closed/mineral/gibtonite/asteroid = 4, /obj/item/stack/ore/bluespace_crystal = 1, /turf/closed/mineral/strange_rock/asteroid = 10)
|
||||
mineralChance = 30
|
||||
|
||||
/turf/closed/mineral/random/stationside/asteroid/rockplanet/mineral_chances()
|
||||
return list(
|
||||
/obj/item/stack/ore/iron = 40,
|
||||
/obj/item/stack/ore/plasma = 20,
|
||||
/obj/item/stack/ore/silver = 12,
|
||||
/obj/item/stack/ore/titanium = 11,
|
||||
/obj/item/stack/ore/gold = 10,
|
||||
/turf/closed/mineral/strange_rock/asteroid = 10,
|
||||
/obj/item/stack/ore/uranium = 5,
|
||||
/turf/closed/mineral/gibtonite/asteroid = 4,
|
||||
/obj/item/stack/ore/bluespace_crystal = 1,
|
||||
/obj/item/stack/ore/diamond = 1,
|
||||
)
|
||||
|
||||
#undef DIG_UNDEFINED
|
||||
#undef DIG_DELETE
|
||||
#undef DIG_ROCK
|
||||
|
||||
Reference in New Issue
Block a user