Config dir again except this time it works

This commit is contained in:
Jordan Brown
2018-01-21 13:32:12 -05:00
committed by CitadelStationBot
parent f692ffaa0c
commit 8dead1da6a
14 changed files with 35 additions and 29 deletions

View File

@@ -1,9 +1,8 @@
GLOBAL_VAR_INIT(config_dir, "config/")
GLOBAL_PROTECT(config_dir)
/datum/controller/configuration
name = "Configuration"
var/directory = "config"
var/hiding_entries_by_type = TRUE //Set for readability, admins can set this to FALSE if they want to debug it
var/list/entries
var/list/entries_by_type
@@ -20,11 +19,12 @@ GLOBAL_PROTECT(config_dir)
var/motd
/datum/controller/configuration/New()
config = src
/datum/controller/configuration/proc/Load()
if(entries)
CRASH("[THIS_PROC_TYPE_WEIRD] called more than once!")
InitEntries()
LoadModes()
if(fexists("config/config.txt") && LoadEntries("config.txt") <= 1)
if(fexists("[directory]/config.txt") && LoadEntries("config.txt") <= 1)
log_config("No $include directives found in config.txt! Loading legacy game_options/dbconfig/comms files...")
LoadEntries("game_options.txt")
LoadEntries("dbconfig.txt")
@@ -74,7 +74,7 @@ GLOBAL_PROTECT(config_dir)
stack = stack + filename_to_test
log_config("Loading config file [filename]...")
var/list/lines = world.file2list("[GLOB.config_dir][filename]")
var/list/lines = world.file2list("[directory]/[filename]")
var/list/_entries = entries
for(var/L in lines)
if(!L)
@@ -131,10 +131,11 @@ GLOBAL_PROTECT(config_dir)
++.
/datum/controller/configuration/can_vv_get(var_name)
return (var_name != "entries_by_type" || !hiding_entries_by_type) && ..()
return (var_name != NAMEOF(src, entries_by_type) || !hiding_entries_by_type) && ..()
/datum/controller/configuration/vv_edit_var(var_name, var_value)
return !(var_name in list("entries_by_type", "entries")) && ..()
var/list/banned_edits = list(NAMEOF(src, entries_by_type), NAMEOF(src, entries), NAMEOF(src, directory))
return !(var_name in banned_edits) && ..()
/datum/controller/configuration/stat_entry()
if(!statclick)
@@ -196,14 +197,14 @@ GLOBAL_PROTECT(config_dir)
votable_modes += "secret"
/datum/controller/configuration/proc/LoadMOTD()
motd = file2text("[GLOB.config_dir]/motd.txt")
motd = file2text("[directory]/motd.txt")
var/tm_info = GLOB.revdata.GetTestMergeInfo()
if(motd || tm_info)
motd = motd ? "[motd]<br>[tm_info]" : tm_info
/datum/controller/configuration/proc/loadmaplist(filename)
log_config("Loading config file [filename]...")
filename = "[GLOB.config_dir][filename]"
filename = "[directory]/[filename]"
var/list/Lines = world.file2list(filename)
var/datum/map_config/currentmap = null