Finishes seperating ZAS logic from CanPass().

This commit is contained in:
Neerti
2019-02-10 01:46:38 -05:00
parent d880379bbf
commit 76b077af4a
47 changed files with 153 additions and 260 deletions

View File

@@ -46,30 +46,19 @@ var/list/blobs = list()
color = null
set_light(0)
/obj/structure/blob/CanPass(atom/movable/mover, turf/target, height=0, air_group=0)
world << "/obj/structure/blob/CanPass(mover=[mover], target=[target], height=[height], air_group=[air_group]) called on [src]."
if(air_group || (height==0))
world << "Returned true due to being air group or having height=0"
return TRUE
// Blob tiles are not actually dense so we need Special Code(tm).
/obj/structure/blob/CanPass(atom/movable/mover, turf/target)
if(istype(mover) && mover.checkpass(PASSBLOB))
world << "Returned true due to having PASSBLOB."
return TRUE
else if(istype(mover, /mob/living))
var/mob/living/L = mover
if(L.faction == "blob")
world << "Returned true due to being in blob faction."
return TRUE
else if(istype(mover, /obj/item/projectile))
var/obj/item/projectile/P = mover
if(P.firer && P.firer.faction == "blob")
world << "Returned true due to being a projectile fired by someone in blob faction."
if(istype(P.firer) && P.firer.faction == "blob")
return TRUE
world << "Returned false due to being a projectile, with firer not in faction."
return FALSE
else
world << "Returned false."
return FALSE
// return ..()
return FALSE
/obj/structure/blob/examine(mob/user)
..()
@@ -264,7 +253,7 @@ var/list/blobs = list()
if(!P)
return
if(P.firer && P.firer.faction == "blob")
if(istype(P.firer) && P.firer.faction == "blob")
return
var/damage = P.get_structure_damage() // So tasers don't hurt the blob.

View File

@@ -6,6 +6,7 @@
desc = "A solid wall of slightly twitching tendrils."
max_integrity = 100
point_return = 4
can_atmos_pass = ATMOS_PASS_NO
/obj/structure/blob/shield/core
point_return = 0