Allows building plating on most ground turfs

This commit is contained in:
Foopwo
2022-05-21 19:44:02 -07:00
parent 0a457fa38b
commit 3739d8f655
12 changed files with 35 additions and 36 deletions
+3 -2
View File
@@ -19,7 +19,8 @@
icon_base = "flesh_floor"
/decl/flooring/grass/outdoors
flags = TURF_REMOVE_SHOVEL
flags = 0
build_type = null
/decl/flooring/grass/outdoors/forest
icon = 'icons/turf/outdoors.dmi'
@@ -102,7 +103,7 @@
/obj/item/stack/tile/floor/milspec/sterile
name = "sterile milspec floor tile"
/decl/flooring/tiling/milspec/raised
name = "raised milspec floor"
icon_base = "milspec_tcomms"
+1
View File
@@ -27,6 +27,7 @@
var/initial_flooring
var/decl/flooring/flooring
var/mineral = DEFAULT_WALL_MATERIAL
var/can_be_plated = TRUE // This is here for inheritance's sake. Override to FALSE for turfs you don't want someone to simply slap a plating over such as hazards.
thermal_conductivity = 0.040
heat_capacity = 10000
+18 -4
View File
@@ -72,9 +72,23 @@
to_chat(user, "<span class='warning'>You must remove the [flooring.descriptor] first.</span>")
return
else if(istype(C, /obj/item/stack/tile))
try_replace_tile(C, user)
return
if(try_replace_tile(C, user))
return
else if(istype(C, /obj/item/stack/tile/floor)) // While we're at it, let's see if this is a raw patch of natural sand, dirt, or whatever that you're trying to put a plating on.
if(!flooring.build_type && can_be_plated && !((flooring.flags & TURF_REMOVE_WRENCH) || (flooring.flags & TURF_REMOVE_CROWBAR) || (flooring.flags & TURF_REMOVE_SCREWDRIVER) || (flooring.flags & TURF_REMOVE_SHOVEL)))
for(var/obj/structure/P in contents)
if(istype(P, /obj/structure/flora))
to_chat(user, "<span class='warning'>The [P.name] is in the way, you'll have to get rid of it first.</span>")
return
var/obj/item/stack/tile/floor/S = C
if (S.get_amount() < 1)
return
S.use(1)
playsound(src, 'sound/weapons/Genhit.ogg', 50, 1)
ChangeTurf(/turf/simulated/floor, preserve_outdoors = TRUE)
return
// Floor is plating (or no flooring)
else
// Placing wires on plating
@@ -136,7 +150,7 @@
return
if(!can_remove_plating(user))
return
user.visible_message("<span class='warning'>[user] begins cutting through [src].</span>", "<span class='warning'>You begin cutting through [src].</span>")
// This is slow because it's a potentially hostile action to just cut through places into space in the middle of the bar and such
// Presumably also the structural floor is thick?
+1
View File
@@ -13,6 +13,7 @@
light_on = TRUE
movement_cost = 2
can_build_into_floor = TRUE
can_be_plated = FALSE
can_dirty = FALSE
initial_flooring = /decl/flooring/lava // Defining this in case someone DOES step on lava and survive. Somehow.
flags = TURF_ACID_IMMUNE
@@ -8,7 +8,7 @@ var/list/turf_edge_cache = list()
var/outdoors = OUTDOORS_AREA
/area
// If a turf's `outdoors` variable is set to `OUTDOORS_AREA`,
// If a turf's `outdoors` variable is set to `OUTDOORS_AREA`,
// it will decide if it's outdoors or not when being initialized based on this var.
var/outdoors = OUTDOORS_NO
@@ -1,7 +0,0 @@
// this code here enables people to dig up worms from certain tiles.
/turf/simulated/floor/outdoors/grass/attackby(obj/item/weapon/S as obj, mob/user as mob)
if(istype(S, /obj/item/stack/tile/floor))
ChangeTurf(/turf/simulated/floor, preserve_outdoors = TRUE)
return
. = ..()
@@ -51,6 +51,7 @@
icon_state = "ice"
desc = "Looks slippery."
edge_blending_priority = 0
can_be_plated = FALSE
/turf/simulated/floor/outdoors/ice/dark
name = "black ice"
+1
View File
@@ -8,6 +8,7 @@
var/under_state = "rock"
edge_blending_priority = -1
movement_cost = 4
can_be_plated = FALSE
outdoors = OUTDOORS_YES
flags = TURF_ACID_IMMUNE
+6 -22
View File
@@ -403,30 +403,14 @@ var/list/mining_overlay_cache = list()
F.attackby(W,user)
return
else if(istype(W, /obj/item/stack/rods))
var/obj/structure/lattice/L = locate(/obj/structure/lattice, src)
if(L)
return
var/obj/item/stack/rods/R = W
if (R.use(1))
to_chat(user, "<span class='notice'>Constructing support lattice ...</span>")
playsound(src, 'sound/weapons/Genhit.ogg', 50, 1)
new /obj/structure/lattice(get_turf(src))
else if(istype(W, /obj/item/stack/tile/floor))
var/obj/structure/lattice/L = locate(/obj/structure/lattice, src)
if(L)
var/obj/item/stack/tile/floor/S = W
if (S.get_amount() < 1)
return
qdel(L)
playsound(src, 'sound/weapons/Genhit.ogg', 50, 1)
ChangeTurf(/turf/simulated/floor)
S.use(1)
return
else
to_chat(user, "<span class='warning'>The plating is going to need some support.</span>")
var/obj/item/stack/tile/floor/S = W
if (S.get_amount() < 1)
return
playsound(src, 'sound/weapons/Genhit.ogg', 50, 1)
ChangeTurf(/turf/simulated/floor)
S.use(1)
return
else
+1
View File
@@ -76,6 +76,7 @@ VIRGO3B_TURF_CREATE(/turf/simulated/floor/outdoors/rocks)
desc = "Magnetic levitation tram tracks. Caution! Electrified!"
icon = 'icons/turf/flooring/maglevs.dmi'
icon_state = "maglevup"
can_be_plated = FALSE
var/area/shock_area = /area/centcom/terminal/tramfluff
@@ -10,6 +10,7 @@
desc = "Magnetic levitation tram tracks. Caution! Electrified!"
icon = 'icons/turf/flooring/maglevs.dmi'
icon_state = "maglevup"
can_be_plated = FALSE
var/area/shock_area = /area/tether/surfacebase/tram
+1
View File
@@ -145,6 +145,7 @@
desc = "Magnetic levitation tram tracks. Caution! Electrified!"
icon = 'icons/turf/flooring/maglevs.dmi'
icon_state = "maglevup"
can_be_plated = FALSE
var/area/shock_area = /area/tether/surfacebase/tram