Refactors beams. Adds tethering. IV drips/bags are now tethered. (#29570)

* refactor

* tether

* tetherrrs

* logic fix (i hope)

* ci fix

* ok please work
This commit is contained in:
Contrabang
2025-07-09 14:49:40 +00:00
committed by GitHub
parent 6c2aa06eb3
commit 1f124ac835
15 changed files with 404 additions and 106 deletions
@@ -22,8 +22,7 @@
anchors += locate(x + 2, y - 2, z)
for(var/turf/T in anchors)
var/datum/beam/B = Beam(T, "vine", time=INFINITY, maxdistance=5, beam_type=/obj/effect/ebeam/vine)
B.sleep_time = 10 //these shouldn't move, so let's slow down updates to 1 second (any slower and the deletion of the vines would be too slow)
Beam(T, "vine", time = INFINITY, maxdistance = 5, beam_type = /obj/effect/ebeam/vine)
addtimer(CALLBACK(src, PROC_REF(bear_fruit)), growth_time)
/obj/structure/alien/resin/flower_bud_enemy/proc/bear_fruit()
@@ -76,8 +75,7 @@
for(var/mob/living/L in grasping)
if(L.stat == DEAD)
var/datum/beam/B = grasping[L]
if(B)
B.End()
qdel(B)
grasping -= L
//Can attack+pull multiple times per cycle