mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-26 09:03:37 +00:00
When lavaland got randomized atmos, these weren't changed to reflect that. None of these turfs are used on lavaland, but still generate whatever random atmos lavaland does.
103 lines
3.8 KiB
Plaintext
103 lines
3.8 KiB
Plaintext
// Base chasm, defaults to oblivion but can be overridden
|
|
/turf/open/chasm
|
|
name = "chasm"
|
|
desc = "Watch your step."
|
|
baseturfs = /turf/open/chasm
|
|
smooth = SMOOTH_TRUE | SMOOTH_BORDER | SMOOTH_MORE
|
|
icon = 'icons/turf/floors/chasms.dmi'
|
|
icon_state = "smooth"
|
|
canSmoothWith = list(/turf/open/floor/fakepit, /turf/open/chasm)
|
|
density = TRUE //This will prevent hostile mobs from pathing into chasms, while the canpass override will still let it function like an open turf
|
|
bullet_bounce_sound = null //abandon all hope ye who enter
|
|
|
|
/turf/open/chasm/Initialize()
|
|
. = ..()
|
|
AddComponent(/datum/component/chasm, SSmapping.get_turf_below(src))
|
|
|
|
/turf/open/chasm/proc/set_target(turf/target)
|
|
var/datum/component/chasm/chasm_component = GetComponent(/datum/component/chasm)
|
|
chasm_component.target_turf = target
|
|
|
|
/turf/open/chasm/proc/drop(atom/movable/AM)
|
|
var/datum/component/chasm/chasm_component = GetComponent(/datum/component/chasm)
|
|
chasm_component.drop(AM)
|
|
|
|
/turf/open/chasm/MakeSlippery(wet_setting, min_wet_time, wet_time_to_add, max_wet_time, permanent)
|
|
return
|
|
|
|
/turf/open/chasm/MakeDry()
|
|
return
|
|
|
|
/turf/open/chasm/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd)
|
|
switch(the_rcd.mode)
|
|
if(RCD_FLOORWALL)
|
|
return list("mode" = RCD_FLOORWALL, "delay" = 0, "cost" = 3)
|
|
return FALSE
|
|
|
|
/turf/open/chasm/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, passed_mode)
|
|
switch(passed_mode)
|
|
if(RCD_FLOORWALL)
|
|
to_chat(user, "<span class='notice'>You build a floor.</span>")
|
|
PlaceOnTop(/turf/open/floor/plating)
|
|
return TRUE
|
|
return FALSE
|
|
|
|
/turf/open/chasm/get_smooth_underlay_icon(mutable_appearance/underlay_appearance, turf/asking_turf, adjacency_dir)
|
|
underlay_appearance.icon = 'icons/turf/floors.dmi'
|
|
underlay_appearance.icon_state = "basalt"
|
|
return TRUE
|
|
|
|
/turf/open/chasm/attackby(obj/item/C, mob/user, params, area/area_restriction)
|
|
..()
|
|
if(istype(C, /obj/item/stack/rods))
|
|
var/obj/item/stack/rods/R = C
|
|
var/obj/structure/lattice/L = locate(/obj/structure/lattice, src)
|
|
if(!L)
|
|
if(R.use(1))
|
|
to_chat(user, "<span class='notice'>You construct a lattice.</span>")
|
|
playsound(src, 'sound/weapons/genhit.ogg', 50, 1)
|
|
// Create a lattice, without reverting to our baseturf
|
|
new /obj/structure/lattice(src)
|
|
else
|
|
to_chat(user, "<span class='warning'>You need one rod to build a lattice.</span>")
|
|
return
|
|
if(istype(C, /obj/item/stack/tile/plasteel))
|
|
var/obj/structure/lattice/L = locate(/obj/structure/lattice, src)
|
|
if(L)
|
|
var/obj/item/stack/tile/plasteel/S = C
|
|
if(S.use(1))
|
|
qdel(L)
|
|
playsound(src, 'sound/weapons/genhit.ogg', 50, 1)
|
|
to_chat(user, "<span class='notice'>You build a floor.</span>")
|
|
// Create a floor, which has this chasm underneath it
|
|
PlaceOnTop(/turf/open/floor/plating)
|
|
else
|
|
to_chat(user, "<span class='warning'>You need one floor tile to build a floor!</span>")
|
|
else
|
|
to_chat(user, "<span class='warning'>The plating is going to need some support! Place metal rods first.</span>")
|
|
|
|
/turf/open/chasm/CanPass(atom/movable/mover, turf/target)
|
|
return 1
|
|
|
|
// Chasms for Lavaland, with planetary atmos and lava glow
|
|
/turf/open/chasm/lavaland
|
|
initial_gas_mix = LAVALAND_DEFAULT_ATMOS
|
|
planetary_atmos = TRUE
|
|
baseturfs = /turf/open/chasm/lavaland
|
|
light_range = 1.9 //slightly less range than lava
|
|
light_power = 0.65 //less bright, too
|
|
light_color = LIGHT_COLOR_LAVA //let's just say you're falling into lava, that makes sense right
|
|
|
|
|
|
// Chasms for the jungle, with planetary atmos and a different icon
|
|
/turf/open/chasm/jungle
|
|
icon = 'icons/turf/floors/junglechasm.dmi'
|
|
initial_gas_mix = OPENTURF_LOW_PRESSURE
|
|
planetary_atmos = TRUE
|
|
baseturfs = /turf/open/chasm/jungle
|
|
|
|
/turf/open/chasm/jungle/get_smooth_underlay_icon(mutable_appearance/underlay_appearance, turf/asking_turf, adjacency_dir)
|
|
underlay_appearance.icon = 'icons/turf/floors.dmi'
|
|
underlay_appearance.icon_state = "dirt"
|
|
return TRUE
|