mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-13 10:23:15 +00:00
* Fixes eigen lockers bypassing TP protection (#74722) ## About The Pull Request Fixes eigenlockers bypassing teleport protections.  Tested w/ one and multiple lockers, prevents entering or exiting from a tp-prot eigenlocker ## Why It's Good For The Game This came up in an away mission designed to be a "one-way-trip", the only exit being at the very end of the away mission. However, people are able to bypass this with eigenlockers, thanks to them performing no teleportation checks, which I believe is an oversight. ## Changelog 🆑 fix: Eigenstasium lockers no longer bypass teleport protection /🆑 --------- Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com> Co-authored-by: san7890 <the@ san7890.com> * Fixes eigen lockers bypassing TP protection --------- Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com> Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com> Co-authored-by: san7890 <the@ san7890.com>
30 lines
1.0 KiB
Plaintext
30 lines
1.0 KiB
Plaintext
/obj/effect/blessing
|
|
name = "holy blessing"
|
|
desc = "Holy energies interfere with ethereal travel at this location."
|
|
icon = 'icons/effects/effects.dmi'
|
|
icon_state = null
|
|
anchored = TRUE
|
|
density = FALSE
|
|
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
|
|
|
|
/obj/effect/blessing/Initialize(mapload)
|
|
. = ..()
|
|
for(var/obj/effect/blessing/B in loc)
|
|
if(B != src)
|
|
return INITIALIZE_HINT_QDEL
|
|
var/image/I = image(icon = 'icons/effects/effects.dmi', icon_state = "blessed", layer = ABOVE_OPEN_TURF_LAYER, loc = src)
|
|
I.alpha = 64
|
|
I.appearance_flags = RESET_ALPHA
|
|
add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/blessed_aware, "blessing", I)
|
|
RegisterSignal(loc, COMSIG_ATOM_INTERCEPT_TELEPORTING, PROC_REF(block_cult_teleport))
|
|
|
|
/obj/effect/blessing/Destroy()
|
|
UnregisterSignal(loc, COMSIG_ATOM_INTERCEPT_TELEPORTING)
|
|
return ..()
|
|
|
|
/obj/effect/blessing/proc/block_cult_teleport(datum/source, channel, turf/origin, turf/destination)
|
|
SIGNAL_HANDLER
|
|
|
|
if(channel == TELEPORT_CHANNEL_CULT)
|
|
return COMPONENT_BLOCK_TELEPORT
|