diff options
| author | Nicholas Estelami <NEstelami@users.noreply.github.com> | 2023-11-11 22:40:18 -0500 |
|---|---|---|
| committer | louist103 <35883445+louist103@users.noreply.github.com> | 2025-03-29 13:50:21 -0400 |
| commit | 8af96b522da12f2b4893ffe4f289e0891b3815c1 (patch) | |
| tree | cadc58ab1d0b4450c607755043591b5927517ef0 | |
| parent | b5fdb5b95ee88b74c849d72b218c76abc4b6bca8 (diff) | |
MM Text Exporter
| -rw-r--r-- | OTRExporter/Main.cpp | 2 | ||||
| -rw-r--r-- | OTRExporter/TextMMExporter.cpp | 23 | ||||
| -rw-r--r-- | OTRExporter/TextMMExporter.h | 12 |
3 files changed, 37 insertions, 0 deletions
diff --git a/OTRExporter/Main.cpp b/OTRExporter/Main.cpp index bac4eab..42bfe76 100644 --- a/OTRExporter/Main.cpp +++ b/OTRExporter/Main.cpp @@ -14,6 +14,7 @@ #include "CutsceneExporter.h" #include "PathExporter.h" #include "TextExporter.h" +#include "TextMMExporter.h" #include "BlobExporter.h" #include "MtxExporter.h" #include "AudioExporter.h" @@ -384,6 +385,7 @@ void ImportExporters() exporterSet->exporters[ZResourceType::Array] = new OTRExporter_Array(); exporterSet->exporters[ZResourceType::Path] = new OTRExporter_Path(); exporterSet->exporters[ZResourceType::Text] = new OTRExporter_Text(); + exporterSet->exporters[ZResourceType::TextMM] = new OTRExporter_TextMM(); exporterSet->exporters[ZResourceType::Blob] = new OTRExporter_Blob(); exporterSet->exporters[ZResourceType::Mtx] = new OTRExporter_MtxExporter(); exporterSet->exporters[ZResourceType::Audio] = new OTRExporter_Audio(); diff --git a/OTRExporter/TextMMExporter.cpp b/OTRExporter/TextMMExporter.cpp new file mode 100644 index 0000000..b022b63 --- /dev/null +++ b/OTRExporter/TextMMExporter.cpp @@ -0,0 +1,23 @@ +#include "TextMMExporter.h" +#include "../ZAPD/ZFile.h" + +void OTRExporter_TextMM::Save(ZResource* res, const fs::path& outPath, BinaryWriter* writer) +{ + ZTextMM* txt = (ZTextMM*)res; + + WriteHeader(txt, outPath, writer, LUS::ResourceType::SOH_TextMM); + + writer->Write((uint32_t)txt->messages.size()); + + for (size_t i = 0; i < txt->messages.size(); i++) + { + writer->Write(txt->messages[i].id); + writer->Write(txt->messages[i].textboxType); + writer->Write(txt->messages[i].textboxYPos); + writer->Write(txt->messages[i].icon); + writer->Write(txt->messages[i].nextMessageID); + writer->Write(txt->messages[i].firstItemCost); + writer->Write(txt->messages[i].secondItemCost); + writer->Write(txt->messages[i].msg); + } +} diff --git a/OTRExporter/TextMMExporter.h b/OTRExporter/TextMMExporter.h new file mode 100644 index 0000000..4df80a1 --- /dev/null +++ b/OTRExporter/TextMMExporter.h @@ -0,0 +1,12 @@ +#pragma once + +#include "ZResource.h" +#include "ZTextMM.h" +#include "Exporter.h" +#include <Utils/BinaryWriter.h> + +class OTRExporter_TextMM : public OTRExporter +{ +public: + virtual void Save(ZResource* res, const fs::path& outPath, BinaryWriter* writer) override; +};
\ No newline at end of file |
