59 uint8_t mAnimDirection;
61 std::vector<uint16_t> mChunkCounts;
62 std::vector<std::pair<int16_t, int16_t>> mPositions;
63 std::vector<SpriteFrameHeader> mFrameHeaders;
64 std::vector<SpriteFrame> mFrames;
66 bool mWriteTextures =
false;
68 SpriteData(int16_t frameCount, int16_t formatCode, std::vector<uint16_t> chunkCounts,
69 std::vector<std::pair<int16_t, int16_t>> positions, std::vector<SpriteFrameHeader> frameHeaders = {},
70 int16_t unk4 = 0, int16_t unk6 = 0, int16_t unk8 = 0, int16_t unkA = 0, uint8_t animSpeed = 0,
71 uint8_t animType = 0, uint8_t animDirection = 0, uint8_t animFlip = 0)
72 : mFrameCount(frameCount), mFormatCode(formatCode), mUnk4(unk4), mUnk6(unk6), mUnk8(unk8), mUnkA(unkA),
73 mAnimSpeed(animSpeed), mAnimType(animType), mAnimDirection(animDirection), mAnimFlip(animFlip),
74 mChunkCounts(std::move(chunkCounts)), mPositions(std::move(positions)),
75 mFrameHeaders(std::move(frameHeaders)) {
94using SpriteFileReader = std::function<bool(
const std::string& name, std::vector<uint8_t>& out)>;
104std::shared_ptr<SpriteData> ReadSpriteRom(
const std::vector<uint8_t>& bytes, std::string& error);
107std::shared_ptr<SpriteData> ReadSpriteResource(
const std::vector<uint8_t>& resource,
const SpriteFileReader& textures,