From 8196258d2b06afcb06bd71b4b95d4db6e9be0208 Mon Sep 17 00:00:00 2001 From: petrie911 <69443847+petrie911@users.noreply.github.com> Date: Tue, 26 Mar 2024 18:02:12 -0500 Subject: Add Vec3s factory, fix colpoly, add some support for palettes (#54) * tlut? * tlut --- src/Companion.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/Companion.cpp') diff --git a/src/Companion.cpp b/src/Companion.cpp index 225c4a1..e3d32d6 100644 --- a/src/Companion.cpp +++ b/src/Companion.cpp @@ -25,6 +25,7 @@ #include "factories/BlobFactory.h" #include "factories/LightsFactory.h" #include "factories/Vec3fFactory.h" +#include "factories/Vec3sFactory.h" #include "factories/sm64/AnimationFactory.h" #include "factories/sm64/DialogFactory.h" @@ -76,6 +77,7 @@ void Companion::Init(const ExportType type) { this->RegisterFactory("SAMPLE", std::make_shared()); this->RegisterFactory("BANK", std::make_shared()); this->RegisterFactory("VEC3F", std::make_shared()); + this->RegisterFactory("VEC3S", std::make_shared()); // SM64 specific this->RegisterFactory("SM64:DIALOG", std::make_shared()); @@ -1074,13 +1076,13 @@ std::optional Companion::AddAsset(YAML::Node asset) { const auto symbol = GetSafeNode(asset, "symbol", ""); const auto decl = this->GetNodeByAddr(offset); + if(decl.has_value()) { return std::get<1>(decl.value()); } auto rom = this->GetRomData(); auto factory = this->GetFactory(type); - if(!factory.has_value()) { return std::nullopt; } @@ -1102,6 +1104,7 @@ std::optional Companion::AddAsset(YAML::Node asset) { if(result.has_value()){ asset["path"] = std::get<0>(result.value()); + return std::get<1>(result.value()); } -- cgit v1.2.3