mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-01-30 10:53:24 +00:00
* Initial work * small fix * another fix * this better? * proper type * condensing this a bit * functioning * death reporting subsystemed * fixed * cleanup * use proper sql sending * listvar * add more climbable things * moving things while climbing them is considered shaking * tabbing fix * knockdown should stop climbing * no need to bother * spaces * more climbable objects * fix * small fixes * office climbables * yet more stuff * engineering things * a few more * it's funny * fixes * additional * Moved to element * some more stragglers * unneeded * more graceful * cliffs require special handling * don't do dumb init things * unneeded sanitization, mass insert sanitizes * some small condition fixes * return if climbable * incorporeal check * stop using numbers directly * . --------- Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
58 lines
1.5 KiB
Plaintext
58 lines
1.5 KiB
Plaintext
/obj/structure/ledge
|
|
name = "rock ledge"
|
|
desc = "An easily scaleable rocky ledge."
|
|
icon = 'icons/obj/ledges.dmi'
|
|
density = TRUE
|
|
throwpass = 1
|
|
anchored = TRUE
|
|
var/solidledge = 1
|
|
flags = ON_BORDER
|
|
layer = STAIRS_LAYER
|
|
icon_state = "ledge"
|
|
|
|
/obj/structure/ledge/Initialize(mapload)
|
|
. = ..()
|
|
AddElement(/datum/element/climbable, vaulting = TRUE)
|
|
|
|
/obj/structure/ledge_corner
|
|
icon_state = "ledge-corner"
|
|
flags = 0
|
|
name = "rock ledge"
|
|
desc = "An easily scaleable rocky ledge."
|
|
icon = 'icons/obj/ledges.dmi'
|
|
density = TRUE
|
|
throwpass = 1
|
|
anchored = TRUE
|
|
layer = STAIRS_LAYER
|
|
|
|
/obj/structure/ledge_corner/Initialize(mapload)
|
|
. = ..()
|
|
AddElement(/datum/element/climbable, vaulting = TRUE)
|
|
|
|
/obj/structure/ledge/ledge_nub
|
|
desc = "Part of a rocky ledge."
|
|
icon_state = "ledge-nub"
|
|
density = FALSE
|
|
solidledge = 0
|
|
|
|
/obj/structure/ledge/ledge_stairs
|
|
name = "rock stairs"
|
|
desc = "A colorful set of rocky stairs"
|
|
icon_state = "ledge-stairs"
|
|
density = FALSE
|
|
solidledge = 0
|
|
|
|
/obj/structure/ledge/CanPass(atom/movable/mover, turf/target)
|
|
if(istype(mover) && mover.checkpass(PASSTABLE))
|
|
return TRUE
|
|
if(solidledge && get_dir(mover, target) == GLOB.reverse_dir[dir]) // From elsewhere to here, can't move against our dir
|
|
return !density
|
|
return TRUE
|
|
|
|
/obj/structure/ledge/Uncross(atom/movable/mover, turf/target)
|
|
if(istype(mover) && mover.checkpass(PASSTABLE))
|
|
return TRUE
|
|
if(solidledge && get_dir(mover, target) == dir) // From here to elsewhere, can't move in our dir
|
|
return FALSE
|
|
return TRUE
|