From 2600371fe08bc92bc5f5f4e172c62f8a3050193c Mon Sep 17 00:00:00 2001 From: KorPhaeron Date: Sat, 28 Nov 2015 18:49:40 -0600 Subject: [PATCH] Updates mine turfs to be slightly more modular --- code/game/turfs/simulated/floor/plating.dm | 2 +- code/modules/mining/mine_turfs.dm | 38 ++++++++++------------ 2 files changed, 18 insertions(+), 22 deletions(-) diff --git a/code/game/turfs/simulated/floor/plating.dm b/code/game/turfs/simulated/floor/plating.dm index cb4d1a80d62..4848532b05c 100644 --- a/code/game/turfs/simulated/floor/plating.dm +++ b/code/game/turfs/simulated/floor/plating.dm @@ -177,7 +177,7 @@ /turf/simulated/floor/plating/basalt/New() ..() - icon_state = "basalt[rand(1,12)]" + icon_state = "basalt[rand(0,12)]" /turf/simulated/floor/plating/basalt/Destroy() return QDEL_HINT_LETMELIVE diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index 94f861751cc..0435502947c 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -17,6 +17,8 @@ var/global/list/rockTurfEdgeCache density = 1 blocks_air = 1 temperature = TCMB + var/environment_type = "asteroid" + var/turf/simulated/floor/plating/asteroid/turf_type = /turf/simulated/floor/plating/asteroid //For basalt vs normal asteroid var/mineralType = null var/mineralAmt = 3 var/spread = 0 //will the seam spread? @@ -25,6 +27,11 @@ var/global/list/rockTurfEdgeCache var/scan_state = null //Holder for the image we display when we're pinged by a mining scanner var/hidden = 1 +/turf/simulated/mineral/volcanic + environment_type = "basalt" + turf_type = /turf/simulated/floor/plating/asteroid/basalt + baseturf = /turf/simulated/floor/plating/asteroid/basalt + /turf/simulated/mineral/ex_act(severity, target) ..() switch(severity) @@ -128,6 +135,9 @@ var/global/list/rockTurfEdgeCache M = new/turf/simulated/mineral/adamantine(src)*/ if(M) M.mineralAmt = rand(1, 5) + M.environment_type = src.environment_type + M.turf_type = src.turf_type + M.baseturf = src.baseturf src = M M.levelupdate() return @@ -311,13 +321,9 @@ var/global/list/rockTurfEdgeCache if(det_time >= 1 && det_time <= 2) G.quality = 2 G.icon_state = "Gibtonite ore 2" - var/turf/simulated/floor/plating/asteroid/airless/gibtonite_remains/G = ChangeTurf(/turf/simulated/floor/plating/asteroid/airless/gibtonite_remains) + var/turf/simulated/floor/plating/asteroid/G = ChangeTurf(turf_type) G.fullUpdateMineralOverlays() -/turf/simulated/floor/plating/asteroid/airless/gibtonite_remains - var/det_time = 0 - var/stage = 0 - ////////////////////////////////End Gibtonite /turf/simulated/floor/plating/asteroid/airless/cave @@ -393,7 +399,7 @@ var/global/list/rockTurfEdgeCache return SpawnMonster(T) - var/turf/simulated/floor/t = new /turf/simulated/floor/plating/asteroid/airless(T) + var/turf/simulated/floor/t = new turf_type(T) spawn(2) t.fullUpdateMineralOverlays() @@ -448,7 +454,7 @@ var/global/list/rockTurfEdgeCache for (i=0;iYou tunnel into the rock." gets_drilled(M) -/* -/turf/simulated/mineral/proc/setRandomMinerals() - var/s = pickweight(list("uranium" = 5, "iron" = 50, "gold" = 5, "silver" = 5, "plasma" = 50, "diamond" = 1)) - if (s) - mineralName = s - - var/N = text2path("/turf/simulated/mineral/[s]") - if (N) - var/turf/simulated/mineral/M = new N - src = M - if (src.mineralName) - mineralAmt = 5 - return*/ - /turf/simulated/mineral/Bumped(AM as mob|obj) ..() if(istype(AM,/mob/living/carbon/human)) @@ -511,6 +503,7 @@ var/global/list/rockTurfEdgeCache icon_state = "asteroid" icon_plating = "asteroid" var/environment_type = "asteroid" + var/turf_type = /turf/simulated/floor/plating/asteroid //Because caves do whacky shit to revert to normal var/dug = 0 //0 = has not yet been dug, 1 = has already been dug /turf/simulated/floor/plating/asteroid/airless @@ -526,6 +519,9 @@ var/global/list/rockTurfEdgeCache icon_plating = "basalt" environment_type = "basalt" +/turf/simulated/floor/plating/asteroid/basalt/lava //lava underneath + baseturf = /turf/simulated/floor/plating/lava/smooth + /turf/simulated/floor/plating/asteroid/basalt/airless oxygen = 0.01 nitrogen = 0.01