Replaced the outside turfs with exoplanet ones for the digsite (#20066)

Replaced the outside turfs with exoplanet ones for the digsite.
Fixed some exoplanet areas not having an exoplanet base turf.
Wrote a unit test for exoplanet areas to ensure they have an exoplanet
base turf.
This commit is contained in:
Fluffy
2024-10-20 18:49:39 +00:00
committed by GitHub
parent b1c8350a83
commit 404c90f688
69 changed files with 739 additions and 640 deletions
+2 -2
View File
@@ -90,8 +90,8 @@
return
//Drill through the flooring, if any.
if(istype(get_turf(src), /turf/unsimulated/floor/asteroid))
var/turf/unsimulated/floor/asteroid/T = get_turf(src)
if(istype(get_turf(src), /turf/simulated/floor/exoplanet/asteroid))
var/turf/simulated/floor/exoplanet/asteroid/T = get_turf(src)
if(!T.dug)
T.gets_dug()
for(var/obj/item/ore/ore in range(1, src)) // gets_dug causes ore to spawn, this picks that ore up as well
+8 -8
View File
@@ -77,7 +77,7 @@
update_icon(1)
// Special asteroid variant that goes with lava better.
/turf/unsimulated/floor/asteroid/basalt
/turf/simulated/floor/exoplanet/asteroid/basalt
name = "basalt"
icon = 'icons/turf/basalt.dmi'
icon_state = "basalt"
@@ -93,14 +93,14 @@
footstep_sound = /singleton/sound_category/asteroid_footstep
/turf/unsimulated/floor/asteroid/basalt/get_smooth_underlay_icon(mutable_appearance/underlay_appearance, turf/asking_turf, adjacency_dir)
/turf/simulated/floor/exoplanet/asteroid/basalt/get_smooth_underlay_icon(mutable_appearance/underlay_appearance, turf/asking_turf, adjacency_dir)
underlay_appearance.icon = icon
underlay_appearance.icon_state = "basalt"
if (prob(20))
underlay_appearance.icon_state += "[rand(0,12)]"
return TRUE
/turf/unsimulated/floor/asteroid/basalt/Initialize(mapload)
/turf/simulated/floor/exoplanet/asteroid/basalt/Initialize(mapload)
if (prob(20))
var/variant = rand(0,12)
icon_state = "basalt[variant]"
@@ -113,14 +113,14 @@
light_range = 2
. = ..()
/turf/unsimulated/floor/asteroid/ReplaceWithLattice()
/turf/simulated/floor/exoplanet/asteroid/ReplaceWithLattice()
ChangeTurf(baseturf)
new /obj/structure/lattice(src)
/turf/unsimulated/floor/asteroid/basalt/air
/turf/simulated/floor/exoplanet/asteroid/basalt/air
initial_gas = list("oxygen" = MOLES_O2STANDARD, "nitrogen" = MOLES_N2STANDARD)
/turf/unsimulated/floor/asteroid/ash
/turf/simulated/floor/exoplanet/asteroid/ash
name = "ash"
icon_state = "ash"
desc = "A fine grey ash. Looks pretty tightly packed."
@@ -132,12 +132,12 @@
footprint_color = COLOR_ASH
track_distance = 6
/turf/unsimulated/floor/asteroid/ash/Initialize()
/turf/simulated/floor/exoplanet/asteroid/ash/Initialize()
. = ..()
if (prob(20))
AddOverlays("asteroid[rand(0, 9)]", TRUE)
/turf/unsimulated/floor/asteroid/ash/rocky
/turf/simulated/floor/exoplanet/asteroid/ash/rocky
name = "rocky ash"
icon_state = "rockyash"
base_icon_state = "rockyash"
+14 -14
View File
@@ -40,7 +40,7 @@ var/list/mineral_can_smooth_with = list(
temperature = T0C
explosion_resistance = 2
var/mined_turf = /turf/unsimulated/floor/asteroid/ash/rocky
var/mined_turf = /turf/simulated/floor/exoplanet/asteroid/ash/rocky
var/ore/mineral
var/mined_ore = 0
var/last_act = 0
@@ -683,7 +683,7 @@ var/list/mineral_can_smooth_with = list(
// Some extra types for the surface to keep things pretty.
/turf/simulated/mineral/surface
mined_turf = /turf/unsimulated/floor/asteroid/ash
mined_turf = /turf/simulated/floor/exoplanet/asteroid/ash
/turf/simulated/mineral/planet
mined_turf = /turf/simulated/floor/exoplanet/mineral
@@ -707,7 +707,7 @@ var/list/mineral_can_smooth_with = list(
// Setting icon/icon_state initially will use these values when the turf is built on/replaced.
// This means you can put grass on the asteroid etc.
/turf/unsimulated/floor/asteroid
/turf/simulated/floor/exoplanet/asteroid
name = "coder's blight"
icon = 'icons/turf/map_placeholders.dmi'
icon_state = ""
@@ -730,13 +730,13 @@ var/list/mineral_can_smooth_with = list(
// Same as the other, this is a global so we don't have a lot of pointless lists floating around.
// Basalt is explicitly omitted so ash will spill onto basalt turfs.
var/list/asteroid_floor_smooth = list(
/turf/unsimulated/floor/asteroid/ash,
/turf/simulated/floor/exoplanet/asteroid/ash,
/turf/simulated/mineral,
/turf/simulated/wall
)
// Copypaste parent for performance.
/turf/unsimulated/floor/asteroid/Initialize(mapload)
/turf/simulated/floor/exoplanet/asteroid/Initialize(mapload)
if(flags_1 & INITIALIZED_1)
stack_trace("Warning: [src]([type]) initialized multiple times!")
flags_1 |= INITIALIZED_1
@@ -768,7 +768,7 @@ var/list/asteroid_floor_smooth = list(
return INITIALIZE_HINT_NORMAL
/turf/unsimulated/floor/asteroid/ex_act(severity)
/turf/simulated/floor/exoplanet/asteroid/ex_act(severity)
switch(severity)
if(3.0)
return
@@ -788,10 +788,10 @@ var/list/asteroid_floor_smooth = list(
gets_dug()
return
/turf/unsimulated/floor/asteroid/is_plating()
/turf/simulated/floor/exoplanet/asteroid/is_plating()
return FALSE
/turf/unsimulated/floor/asteroid/attackby(obj/item/attacking_item, mob/user)
/turf/simulated/floor/exoplanet/asteroid/attackby(obj/item/attacking_item, mob/user)
if(!attacking_item || !user)
return FALSE
@@ -841,13 +841,13 @@ var/list/asteroid_floor_smooth = list(
playsound(get_turf(user), 'sound/effects/stonedoor_openclose.ogg', 50, TRUE)
digging = TRUE
if(!attacking_item.use_tool(src, user, 60, volume = 50))
if(istype(src, /turf/unsimulated/floor/asteroid))
if(istype(src, /turf/simulated/floor/exoplanet/asteroid))
digging = FALSE
return
// Turfs are special. They don't delete. So we need to check if it's
// still the same turf as before the sleep.
if(!istype(src, /turf/unsimulated/floor/asteroid))
if(!istype(src, /turf/simulated/floor/exoplanet/asteroid))
return
playsound(get_turf(user), 'sound/effects/stonedoor_openclose.ogg', 50, TRUE)
@@ -890,13 +890,13 @@ var/list/asteroid_floor_smooth = list(
digging = TRUE
if(!do_after(user, 40))
if(istype(src, /turf/unsimulated/floor/asteroid))
if(istype(src, /turf/simulated/floor/exoplanet/asteroid))
digging = FALSE
return
// Turfs are special. They don't delete. So we need to check if it's
// still the same turf as before the sleep.
if(!istype(src, /turf/unsimulated/floor/asteroid))
if(!istype(src, /turf/simulated/floor/exoplanet/asteroid))
return
to_chat(user, SPAN_NOTICE("You dug a hole."))
@@ -922,7 +922,7 @@ var/list/asteroid_floor_smooth = list(
..()
return
/turf/unsimulated/floor/asteroid/proc/gets_dug(mob/user)
/turf/simulated/floor/exoplanet/asteroid/proc/gets_dug(mob/user)
AddOverlays("asteroid_dug", TRUE)
if(prob(75))
@@ -989,7 +989,7 @@ var/list/asteroid_floor_smooth = list(
else
ChangeTurf(/turf/space)
/turf/unsimulated/floor/asteroid/Entered(atom/movable/M as mob|obj)
/turf/simulated/floor/exoplanet/asteroid/Entered(atom/movable/M as mob|obj)
..()
if(istype(M,/mob/living/silicon/robot))
var/mob/living/silicon/robot/R = M