diff --git a/code/controllers/configuration/config_entry.dm b/code/controllers/configuration/config_entry.dm index 87fd78c4b5..329b41197a 100644 --- a/code/controllers/configuration/config_entry.dm +++ b/code/controllers/configuration/config_entry.dm @@ -217,12 +217,21 @@ vv_VAS = FALSE abstract_type = /datum/config_entry/multi_keyed_flag config_entry_value = list() + var/delimiter = "|" + +/datum/config_entry/multi_keyed_flag/vv_edit_var(var_name, var_value) + if(var_name == NAMEOF(src, delimiter)) + return FALSE + return ..() /datum/config_entry/multi_keyed_flag/ValidateAndSet(str_val) if(!VASProcCallGuard(str_val)) return FALSE str_val = trim(str_val) - var/list/keys = splittext(str_val, " ") + var/list/keys = splittext(str_val, delimiter) for(var/i in keys) - config_entry_value[i] = TRUE + config_entry_value[process_key(i)] = TRUE return length(keys)? TRUE : FALSE + +/datum/config_entry/multi_keyed_flag/process_key(key) + return trim(key)