Files
siliconsGitHubVM_USER <VM_USER>silicons
dd2e201d4a [MDB IGNORE] engineering 1/4: dynamic / procedural gases, XGM touchups (#5674)
Co-authored-by: VM_USER <VM_USER>
Co-authored-by: silicons <no@you.cat>
2023-08-18 21:18:13 +02:00

21 lines
782 B
Plaintext

// This artificially splits a ZAS zone, useful if you wish to prevent massive super-zones which can cause lag.
/obj/effect/zone_divider
name = "zone divider"
icon = 'icons/mob/screen1.dmi'
icon_state = "x3"
invisibility = INVISIBILITY_MAXIMUM
anchored = TRUE
density = FALSE
opacity = FALSE
/obj/effect/zone_divider/CanAtmosPass(turf/T, d)
// Special case to prevent us from being part of a zone during the first air master tick.
// We must merge ourselves into a zone on next tick. This will cause a bit of lag on
// startup, but it can't really be helped you know?
if(SSair.current_cycle == 0)
if(!isturf(loc))
return
SSticker.OnRoundstart(CALLBACK(loc, TYPE_PROC_REF(/turf, queue_zone_update)))
return ATMOS_PASS_AIR_BLOCKED
return ATMOS_PASS_ZONE_BLOCKED