summaryrefslogtreecommitdiff
path: root/tools/src/asset_processor/assets/spriteframe.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tools/src/asset_processor/assets/spriteframe.cpp')
-rw-r--r--tools/src/asset_processor/assets/spriteframe.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/tools/src/asset_processor/assets/spriteframe.cpp b/tools/src/asset_processor/assets/spriteframe.cpp
new file mode 100644
index 00000000..6aea52cf
--- /dev/null
+++ b/tools/src/asset_processor/assets/spriteframe.cpp
@@ -0,0 +1,25 @@
+#include "spriteframe.h"
+#include "reader.h"
+#include <fstream>
+#include <iostream>
+
+void SpriteFrameAsset::convertToHumanReadable(const std::vector<char>& baserom) {
+ Reader reader(baserom, this->start, this->size);
+ std::vector<std::string> lines;
+ while (reader.cursor < this->size) {
+ u8 num_gfx_tiles = reader.read_u8();
+ u8 unk = reader.read_u8();
+ u16 first_gfx_tile_index = reader.read_u16();
+
+ lines.push_back(string_format("\tsprite_frame first_tile_index=0x%x", first_gfx_tile_index));
+ lines.push_back(opt_param(", num_tiles=%d", 0, num_gfx_tiles));
+ lines.push_back(opt_param(", unknown=0x%x", 0, unk));
+ lines.push_back("\n");
+ }
+
+ std::ofstream out(this->assetPath);
+ for (const auto& line : lines) {
+ out << line;
+ }
+ out.close();
+} \ No newline at end of file