summaryrefslogtreecommitdiff
path: root/src/map
diff options
context:
space:
mode:
authorHaru <haru@dotalux.com>2016-08-20 18:44:02 +0200
committerHaru <haru@dotalux.com>2016-08-20 18:44:02 +0200
commit7a276976948fa39e2d329de3b622c34dd0c572ad (patch)
tree887387c0aaedb88c609a945514669cbba457e307 /src/map
parentf77278551b125da51b6917c53e608abdecdd146c (diff)
downloadhercules-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.c2
-rw-r--r--src/map/log.c3
-rw-r--r--src/map/map.c3
-rw-r--r--src/map/script.c3
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) {