From a40c44d06a8efe0c074d7d7f615874cd8199dd27 Mon Sep 17 00:00:00 2001 From: KiritoDv Date: Sun, 18 Jan 2026 19:57:29 -0600 Subject: Added additional_info into AssetArrayFactory --- src/factories/AssetArrayFactory.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/factories/AssetArrayFactory.cpp') diff --git a/src/factories/AssetArrayFactory.cpp b/src/factories/AssetArrayFactory.cpp index 37ee325..9e01139 100644 --- a/src/factories/AssetArrayFactory.cpp +++ b/src/factories/AssetArrayFactory.cpp @@ -83,6 +83,7 @@ std::optional> AssetArrayFactory::parse(std::vector auto assetType = GetSafeNode(node, "assetType"); auto factoryType = GetSafeNode(node, "factoryType"); const auto count = GetSafeNode(node, "count"); + const auto additional_info = node["additional_info"]; auto [_, segment] = Decompressor::AutoDecode(node, buffer); LUS::BinaryReader reader(segment.data, segment.size); reader.SetEndianness(Torch::Endianness::Big); @@ -94,6 +95,17 @@ std::optional> AssetArrayFactory::parse(std::vector YAML::Node assetNode; assetNode["type"] = factoryType; assetNode["offset"] = ptr; + if(additional_info) { + for (const auto& it : additional_info) { + assetNode[it.first.as()] = it.second; + } + if (assetNode["symbol"]) { + std::string symbol = assetNode["symbol"].as(); + symbol = std::regex_replace(symbol, std::regex(R"(\{idx\})"), std::to_string(i)); + symbol = std::regex_replace(symbol, std::regex(R"(\{addr\})"), Torch::to_hex(ptr)); + assetNode["symbol"] = symbol; + } + } Companion::Instance->AddAsset(assetNode); } -- cgit v1.2.3