Emit sprite UserData into data file

This commit is contained in:
Nycto 2024-05-30 18:27:39 -07:00
parent 0c9966df98
commit 5734d4b6c1
3 changed files with 9 additions and 3 deletions

View File

@ -267,6 +267,7 @@ Doc* generate_sprite_sheet_from_params(
exporter.setSplitTags(splitTags);
exporter.setIgnoreEmptyCels(ignoreEmpty);
exporter.setMergeDuplicates(mergeDuplicates);
exporter.setUserData(sprite->userData());
if (listLayers) exporter.setListLayers(true);
if (listTags) exporter.setListTags(true);
if (listSlices) exporter.setListSlices(true);

View File

@ -591,7 +591,8 @@ public:
};
DocExporter::DocExporter()
: m_docBuf(std::make_shared<doc::ImageBuffer>())
: WithUserData(ObjectType::Sprite)
, m_docBuf(std::make_shared<doc::ImageBuffer>())
, m_sampleBuf(std::make_shared<doc::ImageBuffer>())
{
m_cache.spriteId = doc::NullId;
@ -1256,6 +1257,8 @@ Doc* DocExporter::createEmptyTexture(const Samples& samples,
maxColors,
m_docBuf));
sprite->setUserData(userData());
if (palette.size() > 0)
sprite->setPalette(&palette, false);
@ -1421,7 +1424,8 @@ void DocExporter::createDataFile(const Samples& samples,
os << ",\n"
<< " \"meta\": {\n"
<< " \"app\": \"" << get_app_url() << "\",\n"
<< " \"version\": \"" << get_app_version() << "\",\n";
<< " \"version\": \"" << get_app_version() << "\""
<< texture->userData() << ",\n";
if (!m_textureFilename.empty())
os << " \"image\": \""

View File

@ -18,6 +18,7 @@
#include "doc/image_buffer.h"
#include "doc/object_id.h"
#include "doc/object_version.h"
#include "doc/with_user_data.h"
#include "gfx/fwd.h"
#include "gfx/rect.h"
@ -40,7 +41,7 @@ namespace app {
class Context;
class Doc;
class DocExporter {
class DocExporter : public doc::WithUserData {
public:
DocExporter();