This commit is contained in:
vm-silicons
2025-12-19 21:53:57 -08:00
parent ada5c19928
commit c90f9d8a92
38 changed files with 158 additions and 127 deletions
+4 -4
View File
@@ -261,11 +261,11 @@
* Arguments:
* * ID- An ID card representing what access we have (and thus if we can open things like airlocks or windows to pass through them). The ID card's physical location does not matter, just the reference
* * to_dir- What direction we're trying to move in, relevant for things like directional windows that only block movement in certain directions
* * caller- The movable we're checking pass flags for, if we're making any such checks
* * caller1- The movable we're checking pass flags for, if we're making any such checks
**/
/obj/proc/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller)
if(ismovable(caller))
var/atom/movable/AM = caller
/obj/proc/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller1)
if(ismovable(caller1))
var/atom/movable/AM = caller1
if(AM.pass_flags & pass_flags_self)
return TRUE
. = !density
+3 -3
View File
@@ -301,10 +301,10 @@
if((mover.pass_flags & PASSGRILLE) || istype(mover, /obj/item/projectile))
return prob(girderpasschance)
/obj/structure/girder/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller)
/obj/structure/girder/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller1)
. = !density
if(istype(caller))
. = . || (caller.pass_flags & PASSGRILLE)
if(istype(caller1))
. = . || (caller1.pass_flags & PASSGRILLE)
/obj/structure/girder/deconstruct(disassembled = TRUE)
if(!(flags_1 & NODECONSTRUCT_1))
+3 -3
View File
@@ -130,10 +130,10 @@
if(!. && istype(mover, /obj/item/projectile))
return prob(30)
/obj/structure/grille/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller)
/obj/structure/grille/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller1)
. = !density
if(istype(caller))
. = . || (caller.pass_flags & PASSGRILLE)
if(istype(caller1))
. = . || (caller1.pass_flags & PASSGRILLE)
/obj/structure/grille/attackby(obj/item/W, mob/user, params)
user.DelayNextAction(CLICK_CD_MELEE)
+3 -3
View File
@@ -385,7 +385,7 @@ GLOBAL_LIST_EMPTY(crematoriums)
else
return FALSE
/obj/structure/tray/m_tray/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller)
/obj/structure/tray/m_tray/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller1)
. = !density
if(istype(caller))
. = . || (caller.pass_flags & PASSTABLE)
if(istype(caller1))
. = . || (caller1.pass_flags & PASSTABLE)
+7 -7
View File
@@ -56,17 +56,17 @@
return FALSE
return TRUE
/obj/structure/plasticflaps/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller)
if(isliving(caller))
if(isbot(caller))
/obj/structure/plasticflaps/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller1)
if(isliving(caller1))
if(isbot(caller1))
return TRUE
var/mob/living/living_caller = caller
if(!(SEND_SIGNAL(living_caller, COMSIG_CHECK_VENTCRAWL)) && living_caller.mob_size != MOB_SIZE_TINY)
var/mob/living/living_caller1 = caller1
if(!(SEND_SIGNAL(living_caller1, COMSIG_CHECK_VENTCRAWL)) && living_caller1.mob_size != MOB_SIZE_TINY)
return FALSE
if(caller?.pulling)
return CanAStarPass(ID, to_dir, caller.pulling)
if(caller1?.pulling)
return CanAStarPass(ID, to_dir, caller1.pulling)
return TRUE //diseases, stings, etc can pass
/obj/structure/plasticflaps/CanAllowThrough(atom/movable/A, turf/T)
+6 -6
View File
@@ -118,10 +118,10 @@
if(locate(/obj/structure/table) in get_turf(mover))
return TRUE
/obj/structure/table/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller)
/obj/structure/table/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller1)
. = !density
if(istype(caller))
. = . || (caller.pass_flags & PASSTABLE)
if(istype(caller1))
. = . || (caller1.pass_flags & PASSTABLE)
/obj/structure/table/proc/tableplace(mob/living/user, mob/living/pushed_mob)
pushed_mob.forceMove(loc)
@@ -747,10 +747,10 @@
else
return FALSE
/obj/structure/rack/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller)
/obj/structure/rack/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller1)
. = !density
if(istype(caller))
. = . || (caller.pass_flags & PASSTABLE)
if(istype(caller1))
. = . || (caller1.pass_flags & PASSTABLE)
/obj/structure/rack/MouseDrop_T(obj/O, mob/user)
. = ..()
+1 -1
View File
@@ -570,7 +570,7 @@ GLOBAL_LIST_EMPTY(electrochromatic_window_lookup)
/obj/structure/window/get_dumping_location(obj/item/storage/source,mob/user)
return null
/obj/structure/window/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller)
/obj/structure/window/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/)
if(!density)
return TRUE
if((dir == FULLTILE_WINDOW_DIR) || (dir == to_dir))