Merge pull request #12817 from Very-Soft/gbwilds

GBWilds
This commit is contained in:
Casey
2022-04-23 20:33:14 -04:00
committed by GitHub
23 changed files with 253477 additions and 20522 deletions
+17
View File
@@ -0,0 +1,17 @@
/obj/effect/wire_deleter
name = "wire deleter"
icon = 'icons/mob/screen1.dmi'
icon_state = "x2"
anchored = TRUE
unacidable = TRUE
simulated = FALSE
invisibility = 100
/obj/effect/wire_deleter/Initialize(mapload)
. = ..()
for(var/c in loc.contents)
if(istype(c, /obj/structure/cable))
if(prob(33))
qdel(c)
qdel(src)
+5
View File
@@ -537,6 +537,7 @@ VIRGO3C_TURF_CREATE(/turf/simulated/floor/outdoors/sidewalk)
VIRGO3C_TURF_CREATE(/turf/simulated/floor/outdoors/sidewalk/side)
VIRGO3C_TURF_CREATE(/turf/simulated/floor/outdoors/sidewalk/slab)
VIRGO3C_TURF_CREATE(/turf/simulated/floor/water)
VIRGO3C_TURF_CREATE(/turf/simulated/floor/water/deep)
VIRGO3C_TURF_CREATE(/turf/simulated/floor/tiled)
VIRGO3C_TURF_CREATE(/turf/simulated/floor/reinforced)
VIRGO3C_TURF_CREATE(/turf/simulated/floor/glass/reinforced)
@@ -545,6 +546,10 @@ VIRGO3C_TURF_CREATE(/turf/simulated/mineral)
VIRGO3C_TURF_CREATE(/turf/simulated/floor)
VIRGO3C_TURF_CREATE(/turf/simulated/floor/wood)
VIRGO3C_TURF_CREATE(/turf/simulated/floor/wood/sif)
VIRGO3C_TURF_CREATE(/turf/simulated/floor/beach/sand)
VIRGO3C_TURF_CREATE(/turf/simulated/floor/tiled/asteroid_steel/outdoors)
/turf/simulated/open/virgo3c
VIRGO3C_SET_ATMOS
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+68
View File
@@ -0,0 +1,68 @@
/obj/effect/map_effect/portal/master/side_a/gb_wilds/north
name = "to_north_wilds"
portal_id = "north_wilds_transition"
/obj/effect/map_effect/portal/master/side_b/gb_wilds/north
name = "from_north_wilds"
portal_id = "north_wilds_transition"
/obj/effect/map_effect/portal/master/side_a/gb_wilds/south
name = "to_south_wilds"
portal_id = "south_wilds_transition"
/obj/effect/map_effect/portal/master/side_b/gb_wilds/south
name = "from_south_wilds"
portal_id = "south_wilds_transition"
/obj/effect/map_effect/portal/master/side_a/gb_wilds/east
name = "to_east_wilds"
portal_id = "east_wilds_transition"
/obj/effect/map_effect/portal/master/side_b/gb_wilds/east
name = "from_east_wilds"
portal_id = "east_wilds_transition"
/obj/effect/map_effect/portal/master/side_a/gb_wilds/west
name = "to_west_wilds"
portal_id = "west_wilds_transition"
/obj/effect/map_effect/portal/master/side_b/gb_wilds/west
name = "from_west_wilds"
portal_id = "west_wilds_transition"
/obj/effect/map_effect/portal/master/side_a/gb_wilds/north_south
name = "to_south_wilds"
portal_id = "north_south_wilds_transition"
/obj/effect/map_effect/portal/master/side_b/gb_wilds/north_south
name = "to_north_wilds"
portal_id = "north_south_wilds_transition"
/obj/effect/map_effect/portal/master/side_a/gb_wilds/east_west
name = "to_west_wilds"
portal_id = "east_west_wilds_transition"
/obj/effect/map_effect/portal/master/side_b/gb_wilds/east_west
name = "to_east_wilds"
portal_id = "east_west_wilds_transition"
/area/groundbase/wilderness
name = "wilderness"
icon_state = "greblacir"
/area/groundbase/wilderness/north
/area/groundbase/wilderness/north/unexplored
icon_state = "orablacir"
/area/groundbase/wilderness/north/cave
icon_state = "yelblacir"
/area/groundbase/wilderness/south
/area/groundbase/wilderness/south/unexplored
icon_state = "orablacir"
/area/groundbase/wilderness/south/cave
icon_state = "yelblacir"
/area/groundbase/wilderness/east
/area/groundbase/wilderness/east/unexplored
icon_state = "orablacir"
/area/groundbase/wilderness/east/cave
icon_state = "yelblacir"
/area/groundbase/wilderness/west
/area/groundbase/wilderness/west/unexplored
icon_state = "orablacir"
/area/groundbase/wilderness/west/cave
icon_state = "yelblacir"
+748 -597
View File
File diff suppressed because it is too large Load Diff
+26 -23
View File
@@ -8937,6 +8937,9 @@
/obj/structure/disposalpipe/segment,
/turf/simulated/floor/tiled/dark,
/area/groundbase/science/hall)
"AD" = (
/turf/simulated/mineral/cave/virgo3c,
/area/groundbase/level2/westspur)
"AF" = (
/turf/simulated/floor/tiled/freezer/cold,
/area/groundbase/civilian/kitchen/freezer)
@@ -17996,6 +17999,9 @@ xE
xE
xE
xE
xE
xE
xE
eN
eN
eN
@@ -18017,17 +18023,14 @@ eN
eN
eN
eN
eN
eN
eN
eN
eN
eN
eN
eN
eN
eN
eN
AD
AD
AD
AD
AD
AD
AD
AD
Zx
Zx
Zx
@@ -18138,6 +18141,8 @@ xE
xE
bY
bY
xE
xE
eN
eN
eN
@@ -18161,14 +18166,12 @@ eN
eN
eN
eN
eN
eN
eN
eN
eN
eN
eN
eN
AD
AD
AD
AD
AD
AD
jG
jG
Zx
@@ -18307,10 +18310,10 @@ eN
eN
eN
eN
eN
eN
eN
eN
AD
AD
AD
AD
jG
jG
Zx
+1
View File
@@ -8,6 +8,7 @@
#include "..\offmap_vr\common_offmaps.dm"
#include "..\tether\tether_jobs.dm"
#include "groundbase_poi_stuff.dm"
#include "gb-wilds.dm"
#if !AWAY_MISSION_TEST //Don't include these for just testing away missions
#include "gb-z1.dmm"
+39
View File
@@ -130,6 +130,38 @@
name = "Science Break Room"
lightswitch = 1
/area/groundbase/science/outpost
name = "Science Outpost"
lightswitch = 1
/area/groundbase/science/outpost/substation
name = "Science Outpost Substation"
/area/groundbase/science/outpost/atmos
name = "Science Outpost Atmospherics"
lightswitch = 0
/area/groundbase/science/outpost/anomaly_lab
name = "Science Outpost Anomaly Lab"
lightswitch = 0
/area/groundbase/science/outpost/anomaly_storage
name = "Science Outpost Anomaly Storage"
lightswitch = 0
/area/groundbase/science/outpost/anomaly_testing
name = "Science Outpost Anomaly Testing"
lightswitch = 0
/area/groundbase/science/outpost/toxins_lab
name = "Science Outpost Toxins Lab"
lightswitch = 0
/area/groundbase/science/outpost/toxins_storage
name = "Science Outpost Toxins Storage"
lightswitch = 0
/area/groundbase/science/outpost/toxing_gasworks
name = "Science Outpost Toxins Gasworks"
lightswitch = 0
/area/groundbase/science/outpost/toxins_mixing
name = "Science Outpost Toxins Mixing"
lightswitch = 0
/area/groundbase/science/outpost/toxins_hallway
name = "Science Outpost Toxins Hallway"
/area/groundbase/command
name = "Command"
holomap_color = HOLOMAP_AREACOLOR_COMMAND
@@ -288,6 +320,13 @@
/area/groundbase/engineering/atmos/monitoring
name = "Atmospherics Monitoring"
lightswitch = 1
/area/groundbase/engineering/solarshed
name = "Solar Shed"
lightswitch = 1
/area/groundbase/engineering/solarfield
name = "Solar Field"
lightswitch = 1
sound_env = SOUND_ENVIRONMENT_MOUNTAINS
/area/groundbase/cargo
name = "Cargo"
+166 -17
View File
@@ -2,18 +2,22 @@
#define Z_LEVEL_GB_BOTTOM 1
#define Z_LEVEL_GB_MIDDLE 2
#define Z_LEVEL_GB_TOP 3
#define Z_LEVEL_CENTCOM 4
#define Z_LEVEL_MISC 5
#define Z_LEVEL_MINING 6
#define Z_LEVEL_BEACH 7
#define Z_LEVEL_BEACH_CAVE 8
#define Z_LEVEL_AEROSTAT 9
#define Z_LEVEL_AEROSTAT_SURFACE 10
#define Z_LEVEL_DEBRISFIELD 11
#define Z_LEVEL_FUELDEPOT 12
#define Z_LEVEL_OFFMAP1 13
#define Z_LEVEL_GATEWAY 14
#define Z_LEVEL_OM_ADVENTURE 15
#define Z_LEVEL_GB_WILD_N 4
#define Z_LEVEL_GB_WILD_S 5
#define Z_LEVEL_GB_WILD_E 6
#define Z_LEVEL_GB_WILD_W 7
#define Z_LEVEL_CENTCOM 8
#define Z_LEVEL_MISC 9
#define Z_LEVEL_MINING 10
#define Z_LEVEL_BEACH 11
#define Z_LEVEL_BEACH_CAVE 12
#define Z_LEVEL_AEROSTAT 13
#define Z_LEVEL_AEROSTAT_SURFACE 14
#define Z_LEVEL_DEBRISFIELD 15
#define Z_LEVEL_FUELDEPOT 16
#define Z_LEVEL_OFFMAP1 17
#define Z_LEVEL_GATEWAY 18
#define Z_LEVEL_OM_ADVENTURE 19
//Camera networks
#define NETWORK_HALLS "Halls"
@@ -161,7 +165,21 @@
/area/groundbase/poi/outdoor/cabin4,
/area/groundbase/poi/outdoor/cabin5,
/area/groundbase/unexplored/outdoors,
/area/groundbase/unexplored/rock
/area/groundbase/unexplored/rock,
/area/groundbase/engineering/solarshed,
/area/groundbase/engineering/solarfield,
/area/groundbase/wilderness/north,
/area/groundbase/wilderness/north/unexplored,
/area/groundbase/wilderness/north/cave,
/area/groundbase/wilderness/south,
/area/groundbase/wilderness/south/unexplored,
/area/groundbase/wilderness/south/cave,
/area/groundbase/wilderness/east,
/area/groundbase/wilderness/east/unexplored,
/area/groundbase/wilderness/east/cave,
/area/groundbase/wilderness/west,
/area/groundbase/wilderness/west/unexplored,
/area/groundbase/wilderness/west/cave
)
unit_test_exempt_from_atmos = list()
@@ -193,6 +211,23 @@
list("Grass Cave")
)
lateload_gb_north = list(
list("Northern Wilds 1"),
list("Northern Wilds 2")
)
lateload_gb_south = list(
list("Southern Wilds 1"),
list("Southern Wilds 2")
)
lateload_gb_east = list(
list("Eastern Wilds 1"),
list("Eastern Wilds 2")
)
lateload_gb_west = list(
list("Western Wilds 1"),
list("Western Wilds 2")
)
ai_shell_restricted = TRUE
ai_shell_allowed_levels = list(
Z_LEVEL_GB_BOTTOM,
@@ -229,7 +264,11 @@
expected_z_levels = list(
Z_LEVEL_GB_BOTTOM,
Z_LEVEL_GB_MIDDLE,
Z_LEVEL_GB_TOP
Z_LEVEL_GB_TOP,
Z_LEVEL_GB_WILD_N,
Z_LEVEL_GB_WILD_S,
Z_LEVEL_GB_WILD_E,
Z_LEVEL_GB_WILD_W
)
/datum/planet/virgo3b
expected_z_levels = list(
@@ -264,7 +303,7 @@
initial_generic_waypoints = list()
initial_restricted_waypoints = list()
extra_z_levels = list(Z_LEVEL_MINING)
extra_z_levels = list()
/obj/effect/overmap/visitable/sector/virgo3c
name = "Virgo 3C"
@@ -287,8 +326,13 @@
initial_generic_waypoints = list("groundbase", "gb_excursion_pad")
initial_restricted_waypoints = list()
extra_z_levels = list()
extra_z_levels = list(
Z_LEVEL_MINING,
Z_LEVEL_GB_WILD_N,
Z_LEVEL_GB_WILD_S,
Z_LEVEL_GB_WILD_E,
Z_LEVEL_GB_WILD_W
)
// For making the 6-in-1 holomap, we calculate some offsets
#define SHIP_MAP_SIZE 140 // Width and height of compiled in tether z levels.
@@ -393,3 +437,108 @@
desc = "The Virgo 2 Aerostat away mission."
mappath = 'maps/expedition_vr/aerostat/aerostat.dmm'
associated_map_datum = /datum/map_z_level/common_lateload/away_aerostat
////////////////////////////////////////////////////////////////////////
/datum/map_template/gb_lateload/wilds
name = "GB Wilderness Submap"
desc = "Please do not use this."
mappath = null
associated_map_datum = null
/datum/map_z_level/gb_lateload/gb_north_wilds
name = "GB North Wilderness"
z = Z_LEVEL_GB_WILD_N
flags = MAP_LEVEL_PLAYER|MAP_LEVEL_CONTACT|MAP_LEVEL_CONSOLES
/datum/map_z_level/gb_lateload/gb_south_wilds
name = "GB South Wilderness"
z = Z_LEVEL_GB_WILD_S
flags = MAP_LEVEL_PLAYER|MAP_LEVEL_CONTACT|MAP_LEVEL_CONSOLES
/datum/map_z_level/gb_lateload/gb_east_wilds
name = "GB East Wilderness"
z = Z_LEVEL_GB_WILD_E
flags = MAP_LEVEL_PLAYER|MAP_LEVEL_CONTACT|MAP_LEVEL_CONSOLES
/datum/map_z_level/gb_lateload/gb_west_wilds
name = "GB West Wilderness"
z = Z_LEVEL_GB_WILD_W
flags = MAP_LEVEL_PLAYER|MAP_LEVEL_CONTACT|MAP_LEVEL_CONSOLES
/datum/map_template/gb_lateload/wilds/north/on_map_loaded(z)
. = ..()
new /datum/random_map/automata/cave_system/no_cracks(null, 3, 3, Z_LEVEL_GB_WILD_N, world.maxx, world.maxy)
new /datum/random_map/noise/ore/mining(null, 1, 1, Z_LEVEL_GB_WILD_N, 64, 64)
/datum/map_template/gb_lateload/wilds/south/on_map_loaded(z)
. = ..()
new /datum/random_map/automata/cave_system/no_cracks(null, 3, 3, Z_LEVEL_GB_WILD_S, world.maxx, world.maxy)
new /datum/random_map/noise/ore/mining(null, 1, 1, Z_LEVEL_GB_WILD_N, 64, 64)
/datum/map_template/gb_lateload/wilds/east/on_map_loaded(z)
. = ..()
new /datum/random_map/automata/cave_system/no_cracks(null, 3, 3, Z_LEVEL_GB_WILD_E, world.maxx, world.maxy)
new /datum/random_map/noise/ore/mining(null, 1, 1, Z_LEVEL_GB_WILD_N, 64, 64)
/datum/map_template/gb_lateload/wilds/west/on_map_loaded(z)
. = ..()
new /datum/random_map/automata/cave_system/no_cracks(null, 3, 3, Z_LEVEL_GB_WILD_W, world.maxx, world.maxy)
new /datum/random_map/noise/ore/mining(null, 1, 1, Z_LEVEL_GB_WILD_N, 64, 64)
/datum/map_template/gb_lateload/wilds/north/type1
name = "Northern Wilds 1"
desc = "Wilderness"
mappath = 'maps/groundbase/northwilds/northwilds1.dmm'
associated_map_datum = /datum/map_z_level/gb_lateload/gb_north_wilds
/datum/map_template/gb_lateload/wilds/north/type2
name = "Northern Wilds 2"
desc = "Wilderness"
mappath = 'maps/groundbase/northwilds/northwilds2.dmm'
associated_map_datum = /datum/map_z_level/gb_lateload/gb_north_wilds
/datum/map_template/gb_lateload/wilds/south/type1
name = "Southern Wilds 1"
desc = "Wilderness"
mappath = 'maps/groundbase/southwilds/southwilds1.dmm'
associated_map_datum = /datum/map_z_level/gb_lateload/gb_south_wilds
/datum/map_template/gb_lateload/wilds/south/type2
name = "Southern Wilds 2"
desc = "Wilderness"
mappath = 'maps/groundbase/southwilds/southwilds2.dmm'
associated_map_datum = /datum/map_z_level/gb_lateload/gb_south_wilds
/datum/map_template/gb_lateload/wilds/east/type1
name = "Eastern Wilds 1"
desc = "Wilderness"
mappath = 'maps/groundbase/eastwilds/eastwilds1.dmm'
associated_map_datum = /datum/map_z_level/gb_lateload/gb_east_wilds
/datum/map_template/gb_lateload/wilds/east/type2
name = "Eastern Wilds 2"
desc = "Wilderness"
mappath = 'maps/groundbase/eastwilds/eastwilds2.dmm'
associated_map_datum = /datum/map_z_level/gb_lateload/gb_east_wilds
/datum/map_template/gb_lateload/wilds/west/type1
name = "Western Wilds 1"
desc = "Wilderness"
mappath = 'maps/groundbase/westwilds/westwilds1.dmm'
associated_map_datum = /datum/map_z_level/gb_lateload/gb_west_wilds
/datum/map_template/gb_lateload/wilds/west/type2
name = "Western Wilds 2"
desc = "Wilderness"
mappath = 'maps/groundbase/westwilds/westwilds2.dmm'
associated_map_datum = /datum/map_z_level/gb_lateload/gb_west_wilds
/*
/datum/map_template/gb_lateload/wilds/north1/on_map_loaded(z)
. = ..()
seed_submaps(list(z), 60, /area/om_adventure/grasscave/unexplored, /datum/map_template/om_adventure/outdoor)
seed_submaps(list(z), 60, /area/om_adventure/grasscave/rocks, /datum/map_template/om_adventure/cave)
new /datum/random_map/automata/cave_system/no_cracks(null, 3, 3, z, world.maxx - 4, world.maxy - 4)
new /datum/random_map/noise/ore/grasscave(null, 1, 1, z, 64, 64)
*/
////////////////////////////////////////////////////////////////////////
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+96
View File
@@ -0,0 +1,96 @@
/datum/map
var/list/lateload_gb_north = list()
var/list/lateload_gb_south = list()
var/list/lateload_gb_east = list()
var/list/lateload_gb_west = list()
/datum/controller/subsystem/mapping/loadLateMaps()
if(using_map.name == "RascalsPass")
var/list/gbn_load = using_map.lateload_gb_north
var/list/gbs_load = using_map.lateload_gb_south
var/list/gbe_load = using_map.lateload_gb_east
var/list/gbw_load = using_map.lateload_gb_west
if(LAZYLEN(gbn_load)) //Just copied from gateway picking, this is so we can have a kind of OM map version of the same concept.
var/picklist = pick(gbn_load)
if(!picklist) //No lateload maps at all
return
if(!islist(picklist)) //So you can have a 'chain' of z-levels that make up one away mission
error("Randompick Z level [picklist] is not a list! Must be in a list!")
return
for(var/map in picklist)
if(islist(map))
// TRIPLE NEST. In this situation we pick one at random from the choices in the list.
//This allows a sort of a1,a2,a3,b1,b2,b3,c1,c2,c3 setup where it picks one 'a', one 'b', one 'c'
map = pick(map)
var/datum/map_template/MT = map_templates[map]
if(!istype(MT))
error("Randompick Z level \"[map]\" is not a valid map!")
else
MT.load_new_z(centered = FALSE)
if(LAZYLEN(gbs_load)) //Just copied from gateway picking, this is so we can have a kind of OM map version of the same concept.
var/picklist = pick(gbs_load)
if(!picklist) //No lateload maps at all
return
if(!islist(picklist)) //So you can have a 'chain' of z-levels that make up one away mission
error("Randompick Z level [picklist] is not a list! Must be in a list!")
return
for(var/map in picklist)
if(islist(map))
// TRIPLE NEST. In this situation we pick one at random from the choices in the list.
//This allows a sort of a1,a2,a3,b1,b2,b3,c1,c2,c3 setup where it picks one 'a', one 'b', one 'c'
map = pick(map)
var/datum/map_template/MT = map_templates[map]
if(!istype(MT))
error("Randompick Z level \"[map]\" is not a valid map!")
else
MT.load_new_z(centered = FALSE)
if(LAZYLEN(gbe_load)) //Just copied from gateway picking, this is so we can have a kind of OM map version of the same concept.
var/picklist = pick(gbe_load)
if(!picklist) //No lateload maps at all
return
if(!islist(picklist)) //So you can have a 'chain' of z-levels that make up one away mission
error("Randompick Z level [picklist] is not a list! Must be in a list!")
return
for(var/map in picklist)
if(islist(map))
// TRIPLE NEST. In this situation we pick one at random from the choices in the list.
//This allows a sort of a1,a2,a3,b1,b2,b3,c1,c2,c3 setup where it picks one 'a', one 'b', one 'c'
map = pick(map)
var/datum/map_template/MT = map_templates[map]
if(!istype(MT))
error("Randompick Z level \"[map]\" is not a valid map!")
else
MT.load_new_z(centered = FALSE)
if(LAZYLEN(gbw_load)) //Just copied from gateway picking, this is so we can have a kind of OM map version of the same concept.
var/picklist = pick(gbw_load)
if(!picklist) //No lateload maps at all
return
if(!islist(picklist)) //So you can have a 'chain' of z-levels that make up one away mission
error("Randompick Z level [picklist] is not a list! Must be in a list!")
return
for(var/map in picklist)
if(islist(map))
// TRIPLE NEST. In this situation we pick one at random from the choices in the list.
//This allows a sort of a1,a2,a3,b1,b2,b3,c1,c2,c3 setup where it picks one 'a', one 'b', one 'c'
map = pick(map)
var/datum/map_template/MT = map_templates[map]
if(!istype(MT))
error("Randompick Z level \"[map]\" is not a valid map!")
else
MT.load_new_z(centered = FALSE)
. = ..()
+2
View File
@@ -1103,6 +1103,7 @@
#include "code\game\objects\effects\spiders.dm"
#include "code\game\objects\effects\spiders_vr.dm"
#include "code\game\objects\effects\step_triggers.dm"
#include "code\game\objects\effects\wire_deleter.dm"
#include "code\game\objects\effects\zone_divider.dm"
#include "code\game\objects\effects\alien\aliens.dm"
#include "code\game\objects\effects\chem\chemsmoke.dm"
@@ -4129,4 +4130,5 @@
#include "maps\submaps\surface_submaps\wilderness\wilderness.dm"
#include "maps\submaps\surface_submaps\wilderness\wilderness_areas.dm"
#include "maps\~map_system\maps.dm"
#include "maps\~map_system\maps_vr.dm"
// END_INCLUDE