diff options
| author | petrie911 <69443847+petrie911@users.noreply.github.com> | 2024-03-26 18:02:12 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-03-26 17:02:12 -0600 |
| commit | 8196258d2b06afcb06bd71b4b95d4db6e9be0208 (patch) | |
| tree | b14cbdd8265ad5d45dbf3c908d1278c693537026 /src/Companion.cpp | |
| parent | b101ad14bf80730a30d67cfed974f77113a41ab6 (diff) | |
Add Vec3s factory, fix colpoly, add some support for palettes (#54)
* tlut?
* tlut
Diffstat (limited to 'src/Companion.cpp')
| -rw-r--r-- | src/Companion.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
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<SampleFactory>()); this->RegisterFactory("BANK", std::make_shared<BankFactory>()); this->RegisterFactory("VEC3F", std::make_shared<Vec3fFactory>()); + this->RegisterFactory("VEC3S", std::make_shared<Vec3sFactory>()); // SM64 specific this->RegisterFactory("SM64:DIALOG", std::make_shared<SM64::DialogFactory>()); @@ -1074,13 +1076,13 @@ std::optional<YAML::Node> Companion::AddAsset(YAML::Node asset) { const auto symbol = GetSafeNode<std::string>(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<YAML::Node> Companion::AddAsset(YAML::Node asset) { if(result.has_value()){ asset["path"] = std::get<0>(result.value()); + return std::get<1>(result.value()); } |
