diff options
author | Haru <haru@dotalux.com> | 2016-08-20 18:44:02 +0200 |
---|---|---|
committer | Haru <haru@dotalux.com> | 2016-08-20 18:44:02 +0200 |
commit | 7a276976948fa39e2d329de3b622c34dd0c572ad (patch) | |
tree | 887387c0aaedb88c609a945514669cbba457e307 /src/map | |
parent | f77278551b125da51b6917c53e608abdecdd146c (diff) | |
download | hercules-7a276976948fa39e2d329de3b622c34dd0c572ad.tar.gz hercules-7a276976948fa39e2d329de3b622c34dd0c572ad.tar.bz2 hercules-7a276976948fa39e2d329de3b622c34dd0c572ad.tar.xz hercules-7a276976948fa39e2d329de3b622c34dd0c572ad.zip |
Re-added HPM support for configuration settings
Plugin settings should be relative to the the libconfig file root. For
example, a configuration setting of type HPCT_CHAR will be relative to
the root of conf/char/char-server.conf. In order to add a configuration
entry inside the char_configuration block, the full configuration path
(slash-delimited) should be passed to addCharConf(), as in the
following example:
`addCharConf("char_configuration/my_setting", my_parser_function);`
Signed-off-by: Haru <haru@dotalux.com>
Diffstat (limited to 'src/map')
-rw-r--r-- | src/map/battle.c | 2 | ||||
-rw-r--r-- | src/map/log.c | 3 | ||||
-rw-r--r-- | src/map/map.c | 3 | ||||
-rw-r--r-- | src/map/script.c | 3 |
4 files changed, 7 insertions, 4 deletions
diff --git a/src/map/battle.c b/src/map/battle.c index c564b81cd..01072702d 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -7438,7 +7438,7 @@ bool battle_set_value(const char *param, const char *value) ARR_FIND(0, ARRAYLENGTH(battle_data), i, strcmpi(param, battle_data[i].str) == 0); if (i == ARRAYLENGTH(battle_data)) { - if (HPM->parseConf(param, value, HPCT_BATTLE)) /* if plugin-owned, succeed */ + if (HPM->parse_conf_entry(param, value, HPCT_BATTLE)) /* if plugin-owned, succeed */ return true; return false; // not found } diff --git a/src/map/log.c b/src/map/log.c index 6131f9cf4..902d428a7 100644 --- a/src/map/log.c +++ b/src/map/log.c @@ -685,7 +685,8 @@ bool log_config_read(const char *filename, bool imported) if (!log_config_read_filter(filename, &config, imported)) retval = false; - // TODO HPM->parseConf(w1, w2, HPCT_LOG); + if (!HPM->parse_conf(&config, filename, HPCT_LOG, imported)) + retval = false; target = logs->config.sql_logs ? "table" : "file"; diff --git a/src/map/map.c b/src/map/map.c index 40bcd9263..58d2a0803 100644 --- a/src/map/map.c +++ b/src/map/map.c @@ -4255,7 +4255,8 @@ bool inter_config_read(const char *filename, bool imported) if (!map->inter_config_read_connection(filename, &config, imported)) retval = false; - // TODO HPM->parseConf(w1, w2, HPCT_MAP_INTER); + if (!HPM->parse_conf(&config, filename, HPCT_MAP_INTER, imported)) + retval = false; // import should overwrite any previous configuration, so it should be called last if (libconfig->lookup_string(&config, "import", &import) == CONFIG_TRUE) { diff --git a/src/map/script.c b/src/map/script.c index 09cefa500..df6a8d159 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -4556,7 +4556,8 @@ bool script_config_read(const char *filename, bool imported) libconfig->setting_lookup_int(setting, "input_min_value", &script->config.input_min_value); libconfig->setting_lookup_int(setting, "input_max_value", &script->config.input_max_value); - // TODO HPM->parseConf(w1, w2, HPCT_SCRIPT)); + if (!HPM->parse_conf(&config, filename, HPCT_SCRIPT, imported)) + retval = false; // import should overwrite any previous configuration, so it should be called last if (libconfig->lookup_string(&config, "import", &import) == CONFIG_TRUE) { |