mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-12 03:02:54 +00:00
Allows restriction of Z-levels for xenoarch spawning
This commit is contained in:
1
code/__defines/map_vr.dm
Normal file
1
code/__defines/map_vr.dm
Normal file
@@ -0,0 +1 @@
|
|||||||
|
#define MAP_LEVEL_XENOARCH_EXEMPT 0x080 // Z-levels exempt from xenoarch digsite generation.
|
||||||
@@ -31,7 +31,7 @@ SUBSYSTEM_DEF(xenoarch)
|
|||||||
|
|
||||||
/datum/controller/subsystem/xenoarch/proc/SetupXenoarch()
|
/datum/controller/subsystem/xenoarch/proc/SetupXenoarch()
|
||||||
for(var/turf/simulated/mineral/M in turfs)
|
for(var/turf/simulated/mineral/M in turfs)
|
||||||
if(!M.density)
|
if(!M.density || M.z in using_map.xenoarch_exempt_levels) //VOREStation Edit: exclude some Z-levels from xenoarch spawns
|
||||||
continue
|
continue
|
||||||
|
|
||||||
if(isnull(M.geologic_data))
|
if(isnull(M.geologic_data))
|
||||||
|
|||||||
@@ -175,14 +175,14 @@
|
|||||||
|
|
||||||
// We have a bunch of stuff common to the station z levels
|
// We have a bunch of stuff common to the station z levels
|
||||||
/datum/map_z_level/tether/station
|
/datum/map_z_level/tether/station
|
||||||
flags = MAP_LEVEL_STATION|MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER|MAP_LEVEL_CONSOLES
|
flags = MAP_LEVEL_STATION|MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER|MAP_LEVEL_CONSOLES|MAP_LEVEL_XENOARCH_EXEMPT
|
||||||
holomap_legend_x = 220
|
holomap_legend_x = 220
|
||||||
holomap_legend_y = 160
|
holomap_legend_y = 160
|
||||||
|
|
||||||
/datum/map_z_level/tether/station/surface_low
|
/datum/map_z_level/tether/station/surface_low
|
||||||
z = Z_LEVEL_SURFACE_LOW
|
z = Z_LEVEL_SURFACE_LOW
|
||||||
name = "Surface 1"
|
name = "Surface 1"
|
||||||
flags = MAP_LEVEL_STATION|MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER|MAP_LEVEL_CONSOLES|MAP_LEVEL_SEALED
|
flags = MAP_LEVEL_STATION|MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER|MAP_LEVEL_CONSOLES|MAP_LEVEL_SEALED|MAP_LEVEL_XENOARCH_EXEMPT
|
||||||
base_turf = /turf/simulated/floor/outdoors/rocks/virgo3b
|
base_turf = /turf/simulated/floor/outdoors/rocks/virgo3b
|
||||||
holomap_offset_x = TETHER_HOLOMAP_MARGIN_X
|
holomap_offset_x = TETHER_HOLOMAP_MARGIN_X
|
||||||
holomap_offset_y = TETHER_HOLOMAP_MARGIN_Y + TETHER_MAP_SIZE*0
|
holomap_offset_y = TETHER_HOLOMAP_MARGIN_Y + TETHER_MAP_SIZE*0
|
||||||
@@ -190,7 +190,7 @@
|
|||||||
/datum/map_z_level/tether/station/surface_mid
|
/datum/map_z_level/tether/station/surface_mid
|
||||||
z = Z_LEVEL_SURFACE_MID
|
z = Z_LEVEL_SURFACE_MID
|
||||||
name = "Surface 2"
|
name = "Surface 2"
|
||||||
flags = MAP_LEVEL_STATION|MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER|MAP_LEVEL_CONSOLES|MAP_LEVEL_SEALED
|
flags = MAP_LEVEL_STATION|MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER|MAP_LEVEL_CONSOLES|MAP_LEVEL_SEALED|MAP_LEVEL_XENOARCH_EXEMPT
|
||||||
base_turf = /turf/simulated/open
|
base_turf = /turf/simulated/open
|
||||||
holomap_offset_x = TETHER_HOLOMAP_MARGIN_X
|
holomap_offset_x = TETHER_HOLOMAP_MARGIN_X
|
||||||
holomap_offset_y = TETHER_HOLOMAP_MARGIN_Y + TETHER_MAP_SIZE*1
|
holomap_offset_y = TETHER_HOLOMAP_MARGIN_Y + TETHER_MAP_SIZE*1
|
||||||
@@ -198,7 +198,7 @@
|
|||||||
/datum/map_z_level/tether/station/surface_high
|
/datum/map_z_level/tether/station/surface_high
|
||||||
z = Z_LEVEL_SURFACE_HIGH
|
z = Z_LEVEL_SURFACE_HIGH
|
||||||
name = "Surface 3"
|
name = "Surface 3"
|
||||||
flags = MAP_LEVEL_STATION|MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER|MAP_LEVEL_CONSOLES|MAP_LEVEL_SEALED
|
flags = MAP_LEVEL_STATION|MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER|MAP_LEVEL_CONSOLES|MAP_LEVEL_SEALED|MAP_LEVEL_XENOARCH_EXEMPT
|
||||||
base_turf = /turf/simulated/open
|
base_turf = /turf/simulated/open
|
||||||
holomap_offset_x = TETHER_HOLOMAP_MARGIN_X
|
holomap_offset_x = TETHER_HOLOMAP_MARGIN_X
|
||||||
holomap_offset_y = TETHER_HOLOMAP_MARGIN_Y + TETHER_MAP_SIZE*2
|
holomap_offset_y = TETHER_HOLOMAP_MARGIN_Y + TETHER_MAP_SIZE*2
|
||||||
@@ -206,14 +206,14 @@
|
|||||||
/datum/map_z_level/tether/transit
|
/datum/map_z_level/tether/transit
|
||||||
z = Z_LEVEL_TRANSIT
|
z = Z_LEVEL_TRANSIT
|
||||||
name = "Transit"
|
name = "Transit"
|
||||||
flags = MAP_LEVEL_SEALED|MAP_LEVEL_PLAYER|MAP_LEVEL_CONTACT
|
flags = MAP_LEVEL_SEALED|MAP_LEVEL_PLAYER|MAP_LEVEL_CONTACT|MAP_LEVEL_XENOARCH_EXEMPT
|
||||||
|
|
||||||
/datum/map_z_level/tether/station/space_low
|
/datum/map_z_level/tether/station/space_low
|
||||||
z = Z_LEVEL_SPACE_LOW
|
z = Z_LEVEL_SPACE_LOW
|
||||||
name = "Asteroid 1"
|
name = "Asteroid 1"
|
||||||
base_turf = /turf/space
|
base_turf = /turf/space
|
||||||
transit_chance = 33
|
transit_chance = 33
|
||||||
holomap_offset_x = HOLOMAP_ICON_SIZE - TETHER_HOLOMAP_MARGIN_X - TETHER_MAP_SIZE
|
holomap_offset_x = HOLOMAP_ICON_SIZE - TETHER_HOLOMAP_MARGIN_X - TETHER_MAP_SIZE|MAP_LEVEL_XENOARCH_EXEMPT
|
||||||
holomap_offset_y = TETHER_HOLOMAP_MARGIN_Y + TETHER_MAP_SIZE*0
|
holomap_offset_y = TETHER_HOLOMAP_MARGIN_Y + TETHER_MAP_SIZE*0
|
||||||
|
|
||||||
/datum/map_z_level/tether/station/space_mid
|
/datum/map_z_level/tether/station/space_mid
|
||||||
@@ -221,7 +221,7 @@
|
|||||||
name = "Asteroid 2"
|
name = "Asteroid 2"
|
||||||
base_turf = /turf/simulated/open
|
base_turf = /turf/simulated/open
|
||||||
transit_chance = 33
|
transit_chance = 33
|
||||||
holomap_offset_x = HOLOMAP_ICON_SIZE - TETHER_HOLOMAP_MARGIN_X - TETHER_MAP_SIZE
|
holomap_offset_x = HOLOMAP_ICON_SIZE - TETHER_HOLOMAP_MARGIN_X - TETHER_MAP_SIZE|MAP_LEVEL_XENOARCH_EXEMPT
|
||||||
holomap_offset_y = TETHER_HOLOMAP_MARGIN_Y + TETHER_MAP_SIZE*1
|
holomap_offset_y = TETHER_HOLOMAP_MARGIN_Y + TETHER_MAP_SIZE*1
|
||||||
|
|
||||||
/datum/map_z_level/tether/station/space_high
|
/datum/map_z_level/tether/station/space_high
|
||||||
@@ -229,7 +229,7 @@
|
|||||||
name = "Asteroid 3"
|
name = "Asteroid 3"
|
||||||
base_turf = /turf/simulated/open
|
base_turf = /turf/simulated/open
|
||||||
transit_chance = 33
|
transit_chance = 33
|
||||||
holomap_offset_x = HOLOMAP_ICON_SIZE - TETHER_HOLOMAP_MARGIN_X - TETHER_MAP_SIZE
|
holomap_offset_x = HOLOMAP_ICON_SIZE - TETHER_HOLOMAP_MARGIN_X - TETHER_MAP_SIZE|MAP_LEVEL_XENOARCH_EXEMPT
|
||||||
holomap_offset_y = TETHER_HOLOMAP_MARGIN_Y + TETHER_MAP_SIZE*2
|
holomap_offset_y = TETHER_HOLOMAP_MARGIN_Y + TETHER_MAP_SIZE*2
|
||||||
|
|
||||||
/datum/map_z_level/tether/mine
|
/datum/map_z_level/tether/mine
|
||||||
@@ -247,12 +247,12 @@
|
|||||||
/datum/map_z_level/tether/colony
|
/datum/map_z_level/tether/colony
|
||||||
z = Z_LEVEL_CENTCOM
|
z = Z_LEVEL_CENTCOM
|
||||||
name = "Colony"
|
name = "Colony"
|
||||||
flags = MAP_LEVEL_ADMIN|MAP_LEVEL_CONTACT
|
flags = MAP_LEVEL_ADMIN|MAP_LEVEL_CONTACT|MAP_LEVEL_XENOARCH_EXEMPT
|
||||||
|
|
||||||
/datum/map_z_level/tether/misc
|
/datum/map_z_level/tether/misc
|
||||||
z = Z_LEVEL_MISC
|
z = Z_LEVEL_MISC
|
||||||
name = "Misc"
|
name = "Misc"
|
||||||
flags = MAP_LEVEL_ADMIN
|
flags = MAP_LEVEL_ADMIN|MAP_LEVEL_XENOARCH_EXEMPT
|
||||||
|
|
||||||
/*
|
/*
|
||||||
/datum/map_z_level/tether/wilderness
|
/datum/map_z_level/tether/wilderness
|
||||||
|
|||||||
@@ -185,6 +185,7 @@ var/list/all_maps = list()
|
|||||||
if(flags & MAP_LEVEL_CONTACT) map.contact_levels += z
|
if(flags & MAP_LEVEL_CONTACT) map.contact_levels += z
|
||||||
if(flags & MAP_LEVEL_PLAYER) map.player_levels += z
|
if(flags & MAP_LEVEL_PLAYER) map.player_levels += z
|
||||||
if(flags & MAP_LEVEL_SEALED) map.sealed_levels += z
|
if(flags & MAP_LEVEL_SEALED) map.sealed_levels += z
|
||||||
|
if(flags & MAP_LEVEL_XENOARCH_EXEMPT) map.xenoarch_exempt_levels += z //VOREStation Edit : excluse some z-levels from xenoarch spawns
|
||||||
if(flags & MAP_LEVEL_EMPTY)
|
if(flags & MAP_LEVEL_EMPTY)
|
||||||
if(!map.empty_levels) map.empty_levels = list()
|
if(!map.empty_levels) map.empty_levels = list()
|
||||||
map.empty_levels += z
|
map.empty_levels += z
|
||||||
|
|||||||
2
maps/~map_system/maps_vr.dm
Normal file
2
maps/~map_system/maps_vr.dm
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
/datum/map
|
||||||
|
var/list/xenoarch_exempt_levels = list() //Z-levels exempt from xenoarch finds and digsites spawning.
|
||||||
@@ -50,6 +50,7 @@
|
|||||||
#include "code\__defines\lighting.dm"
|
#include "code\__defines\lighting.dm"
|
||||||
#include "code\__defines\machinery.dm"
|
#include "code\__defines\machinery.dm"
|
||||||
#include "code\__defines\map.dm"
|
#include "code\__defines\map.dm"
|
||||||
|
#include "code\__defines\map_vr.dm"
|
||||||
#include "code\__defines\math.dm"
|
#include "code\__defines\math.dm"
|
||||||
#include "code\__defines\math_physics.dm"
|
#include "code\__defines\math_physics.dm"
|
||||||
#include "code\__defines\MC.dm"
|
#include "code\__defines\MC.dm"
|
||||||
@@ -3109,4 +3110,5 @@
|
|||||||
#include "maps\submaps\surface_submaps\wilderness\wilderness_areas.dm"
|
#include "maps\submaps\surface_submaps\wilderness\wilderness_areas.dm"
|
||||||
#include "maps\tether\tether.dm"
|
#include "maps\tether\tether.dm"
|
||||||
#include "maps\~map_system\maps.dm"
|
#include "maps\~map_system\maps.dm"
|
||||||
|
#include "maps\~map_system\maps_vr.dm"
|
||||||
// END_INCLUDE
|
// END_INCLUDE
|
||||||
|
|||||||
Reference in New Issue
Block a user