mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-29 16:18:01 +01:00
Venus human trap changes
* Venus human traps now obey the laws of physics when it comes to finding targets * Venus human traps will continue to grab hold of you even if you're through a wall SO LONG AS YOU WERE ORIGINALLY A VALID TARGET (headcannon: it can still feel you and grasp hold of you with it's vine)
This commit is contained in:
@@ -87,14 +87,20 @@
|
||||
L.Weaken(3) //you can't get away now~
|
||||
|
||||
if(grasping.len < max_grasps)
|
||||
for(var/mob/living/L in range(grasp_range,src))
|
||||
if(L == src || faction_check(L))
|
||||
continue
|
||||
if(!(L in grasping) && L != target && prob(grasp_chance))
|
||||
L << "<span class='userdanger'>\the [src] has you entangled!</span>"
|
||||
grasping[L] = Beam(L,"vine",'icons/effects/spacevines.dmi',INFINITY, 5,/obj/effect/ebeam/vine)
|
||||
grasping:
|
||||
for(var/mob/living/L in view(grasp_range, src))
|
||||
if(L == src || faction_check(L) || (L in grasping) || L == target)
|
||||
continue
|
||||
for(var/t in getline(user,L))
|
||||
for(var/a in t)
|
||||
var/atom/A = a
|
||||
if(A.density && A != L)
|
||||
break grasping
|
||||
if(prob(grasp_chance))
|
||||
L << "<span class='userdanger'>\the [src] has you entangled!</span>"
|
||||
grasping[L] = Beam(L,"vine",'icons/effects/spacevines.dmi',INFINITY, 5,/obj/effect/ebeam/vine)
|
||||
|
||||
break //only take 1 new victim per cycle
|
||||
break //only take 1 new victim per cycle
|
||||
|
||||
|
||||
/mob/living/simple_animal/hostile/venus_human_trap/OpenFire(atom/the_target)
|
||||
|
||||
Reference in New Issue
Block a user