diff --git a/modular_chomp/code/game/turfs/simulated/outdoors/lava_land.dm b/modular_chomp/code/game/turfs/simulated/outdoors/lava_land.dm new file mode 100644 index 0000000000..6c06c44c69 --- /dev/null +++ b/modular_chomp/code/game/turfs/simulated/outdoors/lava_land.dm @@ -0,0 +1,70 @@ + +/turf/simulated/floor/outdoors/lavaland + icon = 'modular_chomp/icons/turf/lava_land.dmi' + icon_edge = 'modular_chomp/icons/turf/lava_land_edge.dmi' + name = "lavaland base turf" + desc = "This should not exist" + +/turf/simulated/floor/outdoors/lavaland/ash + name = "ash" + desc = "A thin soot of grey ash." + icon_state = "ash" + edge_blending_priority = 2 + +/turf/simulated/floor/outdoors/lavaland/ashrock + name = "ashen rock" + desc = "A rock wall covered in a thick layer of ash." + icon_state = "ashrock" + density = TRUE + opacity = TRUE + edge_blending_priority = 7 + initial_flooring = /decl/flooring/lavaland/ashrock + turf_layers = list(/turf/simulated/floor/outdoors/lavaland/ash) + var/last_act = 0 + +// Stolen from mineral turf code. +/turf/simulated/floor/outdoors/lavaland/ashrock/attackby(obj/item/weapon/W as obj, mob/user as mob) + if(!user.IsAdvancedToolUser()) + to_chat(user, "You don't have the dexterity to do this!") + return + + if(istype(W, /obj/item/weapon/pickaxe)) + if(!istype(user.loc, /turf)) + return + + var/obj/item/weapon/pickaxe/P = W + if(last_act + P.digspeed > world.time)//prevents message spam + return + last_act = world.time + + playsound(user, P.drill_sound, 20, 1) + to_chat(user, "You start [P.drill_verb].") + + if(do_after(user,P.digspeed)) + + to_chat(user, "You finish [P.drill_verb] \the [src].") + density = FALSE + opacity = FALSE + demote() // Converts the turf to the next layer in turf_layers. + ..() + +/decl/flooring/lavaland/ashrock + name = "ash covered stone" + desc = "Stone that's covered in a thin layer of ash." + icon_base = "ashrock" + icon = 'modular_chomp/icons/turf/lava_land.dmi' + +/turf/simulated/floor/outdoors/lavaland/basalt + icon_state = "basalt0" + edge_blending_priority = 3 + initial_flooring = /decl/flooring/basalt + turf_layers = list(/turf/simulated/floor/outdoors/lavaland/ash) + +/turf/simulated/floor/outdoors/lavaland/basalt/get_edge_icon_state() + return "basalt0" +/decl/flooring/basalt + name = "basalt" + desc = "A hard cracked black rock formed from rapidly cooling lava." + icon = 'modular_chomp/icons/turf/lava_land.dmi' + icon_base = "basalt" + has_base_range = 12 diff --git a/modular_chomp/icons/turf/lava_land.dmi b/modular_chomp/icons/turf/lava_land.dmi new file mode 100644 index 0000000000..e04952415f Binary files /dev/null and b/modular_chomp/icons/turf/lava_land.dmi differ diff --git a/modular_chomp/icons/turf/lava_land_edge.dmi b/modular_chomp/icons/turf/lava_land_edge.dmi new file mode 100644 index 0000000000..31784d21e2 Binary files /dev/null and b/modular_chomp/icons/turf/lava_land_edge.dmi differ diff --git a/vorestation.dme b/vorestation.dme index b02446e750..d17baa3e02 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -4545,6 +4545,7 @@ #include "modular_chomp\code\game\objects\structures\watercloset_ch.dm" #include "modular_chomp\code\game\objects\structures\crate_lockers\largecrate.dm" #include "modular_chomp\code\game\turfs\simulated\outdoors\desert_planet.dm" +#include "modular_chomp\code\game\turfs\simulated\outdoors\lava_land.dm" #include "modular_chomp\code\modules\admin\functions\modify_traits.dm" #include "modular_chomp\code\modules\artifice\deadringer.dm" #include "modular_chomp\code\modules\client\preferences.dm"