From 5ba33f846129f3e6c0505b19f94634b24505e828 Mon Sep 17 00:00:00 2001 From: Vaxry <43317083+vaxerski@users.noreply.github.com> Date: Sun, 26 Apr 2026 15:16:36 +0100 Subject: config/lua: init lua config manager, use lua if available (#13817) Adds a new lua config manager, which will automatically be used if there is a lua config present. --- src/config/ConfigValue.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'src/config/ConfigValue.cpp') diff --git a/src/config/ConfigValue.cpp b/src/config/ConfigValue.cpp index 169bf29c..1c658b05 100644 --- a/src/config/ConfigValue.cpp +++ b/src/config/ConfigValue.cpp @@ -1,9 +1,18 @@ #include "ConfigValue.hpp" #include "ConfigManager.hpp" -void local__configValuePopulate(void* const** p, const std::string& val) { +void local__configValuePopulate(void* const** p, void* const** hlangp, std::type_index* ti, const std::string& val) { const auto BIGP = Config::mgr()->getConfigValue(val); - *p = BIGP.dataptr; + + RASSERT(BIGP.dataptr, "Something went really fucking wrong with config values"); + + *ti = std::type_index(*BIGP.type); + + if (std::type_index(*BIGP.type) == typeid(void*) || std::type_index(*BIGP.type) == typeid(const char*)) { + // this is a special, cursed case. ew. + *hlangp = BIGP.dataptr; + } else + *p = BIGP.dataptr; } std::type_index local__configValueTypeIdx(const std::string& val) { -- cgit v1.2.3