diff --git a/code/game/turfs/space/space.dm b/code/game/turfs/space/space.dm index cdddbeb62b5..cd25b28b774 100644 --- a/code/game/turfs/space/space.dm +++ b/code/game/turfs/space/space.dm @@ -76,11 +76,14 @@ /turf/open/space/attack_paw(mob/user) return src.attack_hand(user) -/turf/open/space/attackby(obj/item/C, mob/user, params, area/area_restriction) +/turf/open/space/proc/CanBuildHere() + return TRUE + +/turf/open/space/attackby(obj/item/C, mob/user, params) ..() + if(!CanBuildHere()) + return if(istype(C, /obj/item/stack/rods)) - if(istype(area_restriction) && !istype(get_area(src), area_restriction)) - return var/obj/item/stack/rods/R = C var/obj/structure/lattice/L = locate(/obj/structure/lattice, src) var/obj/structure/lattice/catwalk/W = locate(/obj/structure/lattice/catwalk, src) @@ -194,6 +197,8 @@ /turf/open/space/rcd_vals(mob/user, obj/item/weapon/rcd/the_rcd) + if(!CanBuildHere()) + return FALSE switch(the_rcd.mode) if(RCD_FLOORWALL) return list("mode" = RCD_FLOORWALL, "delay" = 0, "cost" = 2) diff --git a/code/game/turfs/space/transit.dm b/code/game/turfs/space/transit.dm index 5cea451da26..b3a322d4073 100644 --- a/code/game/turfs/space/transit.dm +++ b/code/game/turfs/space/transit.dm @@ -58,9 +58,8 @@ AM.loc = T AM.newtonian_move(dir) -//Overwrite because we dont want people building rods -/turf/open/space/transit/attackby(obj/item/C, mob/user, params) - ..(C, user, params, /area/shuttle) +/turf/open/space/transit/CanBuildHere() + return istype(get_area(src), /area/shuttle) /turf/open/space/transit/Initialize() ..() @@ -90,4 +89,4 @@ state = ((p*x+y) % 15) + 1 icon_state = "speedspace_ns_[state]" - transform = turn(matrix(), angle) + transform = turn(matrix(), angle) \ No newline at end of file