Fixing stuff, it now should be ready.

This commit is contained in:
Ghommie
2020-04-24 23:00:31 +02:00
parent 58fc679cce
commit a9be1e06e2
6 changed files with 25 additions and 16 deletions

View File

@@ -288,6 +288,8 @@
/datum/config_entry/flag/roundstart_away //Will random away mission be loaded. /datum/config_entry/flag/roundstart_away //Will random away mission be loaded.
/datum/config_entry/flag/roundstart_vr //Will virtual reality missions be loaded?
/datum/config_entry/number/gateway_delay //How long the gateway takes before it activates. Default is half an hour. Only matters if roundstart_away is enabled. /datum/config_entry/number/gateway_delay //How long the gateway takes before it activates. Default is half an hour. Only matters if roundstart_away is enabled.
config_entry_value = 18000 config_entry_value = 18000
min_val = 0 min_val = 0

View File

@@ -1,3 +1,5 @@
#define INIT_ANNOUNCE(X) to_chat(world, "<span class='boldannounce'>[X]</span>"); log_world(X)
SUBSYSTEM_DEF(mapping) SUBSYSTEM_DEF(mapping)
name = "Mapping" name = "Mapping"
init_order = INIT_ORDER_MAPPING init_order = INIT_ORDER_MAPPING
@@ -183,7 +185,6 @@ SUBSYSTEM_DEF(mapping)
z_list = SSmapping.z_list z_list = SSmapping.z_list
#define INIT_ANNOUNCE(X) to_chat(world, "<span class='boldannounce'>[X]</span>"); log_world(X)
/datum/controller/subsystem/mapping/proc/LoadGroup(list/errorList, name, path, files, list/traits, list/default_traits, silent = FALSE) /datum/controller/subsystem/mapping/proc/LoadGroup(list/errorList, name, path, files, list/traits, list/default_traits, silent = FALSE)
. = list() . = list()
var/start_time = REALTIMEOFDAY var/start_time = REALTIMEOFDAY
@@ -267,7 +268,6 @@ SUBSYSTEM_DEF(mapping)
msg += ", [FailedZs[I]]" msg += ", [FailedZs[I]]"
msg += ". Yell at your server host!" msg += ". Yell at your server host!"
INIT_ANNOUNCE(msg) INIT_ANNOUNCE(msg)
#undef INIT_ANNOUNCE
GLOBAL_LIST_EMPTY(the_station_areas) GLOBAL_LIST_EMPTY(the_station_areas)
@@ -450,14 +450,12 @@ GLOBAL_LIST_EMPTY(the_station_areas)
lvl_name = "[mapfile] custom" lvl_name = "[mapfile] custom"
to_chat(usr,"<span class='notice'>Loading [lvl_name]...</span>") to_chat(usr,"<span class='notice'>Loading [lvl_name]...</span>")
var/datum/map_template/template = new(mapfile, choice, ztraits) var/datum/map_template/template = new(mapfile, choice, ztraits)
level = template.load_new_z() level = template.load_new_z(ztraits)
else else
lvl_name = answer lvl_name = answer
to_chat(usr,"<span class='notice'>Loading [lvl_name]...</span>") to_chat(usr,"<span class='notice'>Loading [lvl_name]...</span>")
var/datum/map_template/template = new(lvl_name, choice, ztraits) var/datum/map_template/template = new(lvl_name, choice)
level = template.load_new_z() level = template.load_new_z(ztraits)
else
return
message_admins("Admin [key_name_admin(usr)] has loaded [lvl_name] [choice].") message_admins("Admin [key_name_admin(usr)] has loaded [lvl_name] [choice].")
log_admin("Admin [key_name(usr)] has loaded [lvl_name] [choice].") log_admin("Admin [key_name(usr)] has loaded [lvl_name] [choice].")

View File

@@ -1,13 +1,19 @@
/proc/createRandomZlevel(name = AWAY_MISSION_NAME, list/traits = list(ZTRAIT_AWAY = TRUE), list/potential_levels = potential_away_levels) /proc/createRandomZlevel(name = AWAY_MISSION_NAME, list/traits = list(ZTRAIT_AWAY = TRUE), list/potential_levels = GLOB.potential_away_levels)
if(GLOB.random_zlevels_generated[name] || !length(potential_levels)) if(GLOB.random_zlevels_generated[name])
stack_trace("[name] level already generated.")
return
if(!length(potential_levels))
stack_trace("No potential [name] level to load has been found.")
return return
to_chat(world, "<span class='boldannounce'>Loading [name]...</span>") var/start_time = REALTIMEOFDAY
var/map = pick(potential_levels) var/map = pick(potential_levels)
load_new_z_level(map, name, traits) if(!load_new_z_level(map, name, traits))
to_chat(world, "<span class='boldannounce'>[name] loaded.</span>") INIT_ANNOUNCE("Failed to load [name]! map filepath: [map]!")
random_zlevels_generated[name] = TRUE return
INIT_ANNOUNCE("Loaded [name] in [(REALTIMEOFDAY - start_time)/10]s!")
GLOB.random_zlevels_generated[name] = TRUE
/proc/reset_gateway_spawns(reset = FALSE) /proc/reset_gateway_spawns(reset = FALSE)
for(var/obj/machinery/gateway/G in world) for(var/obj/machinery/gateway/G in world)

View File

@@ -123,4 +123,4 @@
//❤ - Cyberboss //❤ - Cyberboss
/proc/load_new_z_level(file, name, list/traits) /proc/load_new_z_level(file, name, list/traits)
var/datum/map_template/template = new(file, name) var/datum/map_template/template = new(file, name)
template.load_new_z(traits) return template.load_new_z(traits)

View File

@@ -288,6 +288,9 @@ MINIMUM_SECBORG_ALERT 3
## Uncomment to load one of the missions from awaymissionconfig.txt at roundstart. ## Uncomment to load one of the missions from awaymissionconfig.txt at roundstart.
#ROUNDSTART_AWAY #ROUNDSTART_AWAY
## Uncomment to load one of the virtual reality levels from vr_config at roundstart.
#ROUNDSTART_VR
## How long the delay is before the Away Mission gate opens. Default is half an hour. ## How long the delay is before the Away Mission gate opens. Default is half an hour.
## 600 is one minute. ## 600 is one minute.
GATEWAY_DELAY 18000 GATEWAY_DELAY 18000

View File

@@ -9,5 +9,5 @@
#DO tick the associated code file for the virtual reality levels you are enabling. Otherwise, the map will be trying to reference objects which do not exist, which will cause runtime errors! #DO tick the associated code file for the virtual reality levels you are enabling. Otherwise, the map will be trying to reference objects which do not exist, which will cause runtime errors!
_maps/RandomZLevels/VR/murderdome.dmm _maps/RandomZLevels/VR/murderdome.dmm
_maps/RandomZLevels/VR/snowdin_VR.dm _maps/RandomZLevels/VR/snowdin_VR.dmm
_maps/RandomZLevels/VR/syndicate_trainer.dm _maps/RandomZLevels/VR/syndicate_trainer.dmm