Merge pull request #3663 from CHOMPStation2/upstream-merge-12208

[MIRROR] Tether passage blockades
This commit is contained in:
Razgriz
2022-02-13 01:46:04 -07:00
committed by GitHub
5 changed files with 9 additions and 1 deletions

View File

@@ -10,6 +10,7 @@
#define MAP_LEVEL_VORESPAWN 0x100 //CHOMPedit Z-levels players are allowed to late join to via vorish means. Usually non-dangerous locations.
#define MAP_LEVEL_PERSIST 0x200 // Z-levels where SSpersistence should persist between rounds //CHOMPedit bumped to 0x200 because vorespawn, hopefully this doesn't break things
#define MAP_LEVEL_MAPPABLE 0x400 // Z-levels where mapping units will work fully //CHOMPedit bumped to 0x400, somethingsomething don't break
#define MAP_LEVEL_BELOW_BLOCKED 0x800 // Z-levels in multiz with level below not meant to be 'normally' accessible //CHOMPedit bumped to 0x800, please god do not break
// Misc map defines.
#define SUBMAP_MAP_EDGE_PAD 8 // Automatically created submaps are forbidden from being this close to the main map's edge. //VOREStation Edit

View File

@@ -28,7 +28,7 @@
if(N == /turf/space)
var/turf/below = GetBelow(src)
if(istype(below) && (air_master.has_valid_zone(below) || air_master.has_valid_zone(src)) && (!istype(below, /turf/unsimulated/wall) && !istype(below, /turf/simulated/sky))) // VOREStation Edit: Weird open space
if(istype(below) && (air_master.has_valid_zone(below) || air_master.has_valid_zone(src)) && !(src.z in using_map.below_blocked_levels) && (!istype(below, /turf/unsimulated/wall) && !istype(below, /turf/simulated/sky))) // VOREStation Edit: Weird open space
N = /turf/simulated/open
var/obj/fire/old_fire = fire

View File

@@ -89,6 +89,8 @@
if(!T) continue
var/obj/structure/ladder_assembly/LA = locate(/obj/structure/ladder_assembly, T)
if(!LA) continue
if(direction == DOWN && (src.z in using_map.below_blocked_levels)) continue
if(direction == UP && (LA.z in using_map.below_blocked_levels)) continue
if(LA.state != CONSTRUCTION_WELDED)
to_chat(user, "<span class='warning'>\The [LA] [direction == UP ? "above" : "below"] must be secured and welded.</span>")
return

View File

@@ -354,6 +354,7 @@
name = "Asteroid 1"
base_turf = /turf/space
transit_chance = 33
flags = MAP_LEVEL_STATION|MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER|MAP_LEVEL_CONSOLES|MAP_LEVEL_XENOARCH_EXEMPT|MAP_LEVEL_PERSIST|MAP_LEVEL_BELOW_BLOCKED
holomap_offset_x = TETHER_HOLOMAP_MARGIN_X + TETHER_HOLOMAP_CENTER_GUTTER + TETHER_MAP_SIZE
holomap_offset_y = TETHER_HOLOMAP_MARGIN_Y + TETHER_MAP_SIZE

View File

@@ -39,6 +39,7 @@ var/list/all_maps = list()
var/static/list/empty_levels = list() // Empty Z-levels that may be used for various things
var/static/list/vorespawn_levels = list() //Z-levels where players are allowed to vore latejoin to. //CHOMPedit: the number of missing chompedits is giving me an aneurysm
var/static/list/mappable_levels = list()// List of levels where mapping or other similar devices might work fully
var/static/list/below_blocked_levels = list()// List of levels where mapping or other similar devices might work fully
// End Static Lists
// Z-levels available to various consoles, such as the crew monitor. Defaults to station_levels if unset.
@@ -315,6 +316,9 @@ var/list/all_maps = list()
if(flags & MAP_LEVEL_CONSOLES)
if (!map.map_levels) map.map_levels = list()
map.map_levels += z
if(flags & MAP_LEVEL_BELOW_BLOCKED)
if (!map.below_blocked_levels) map.below_blocked_levels = list()
map.below_blocked_levels += z
if(base_turf)
map.base_turf_by_z["[z]"] = base_turf
if(transit_chance)