This commit is contained in:
@@ -13,8 +13,8 @@
|
||||
|
||||
namespace nostalgia::gfx {
|
||||
|
||||
static class: public keel::Module {
|
||||
public:
|
||||
static struct: keel::Module {
|
||||
|
||||
[[nodiscard]]
|
||||
ox::String id() const noexcept override {
|
||||
return ox::String{"net.drinkingtea.nostalgia.gfx"};
|
||||
@@ -59,31 +59,18 @@ static class: public keel::Module {
|
||||
ox::Vector<keel::PackTransform> packTransforms() const noexcept final {
|
||||
return {
|
||||
// convert tilesheets to CompactTileSheets
|
||||
[](keel::Context &ctx, ox::Buffer &buff, ox::StringViewCR typeId) -> ox::Result<bool> {
|
||||
if (typeId == ox::ModelTypeId_v<TileSheetV1> ||
|
||||
typeId == ox::ModelTypeId_v<TileSheetV2> ||
|
||||
typeId == ox::ModelTypeId_v<TileSheetV3> ||
|
||||
typeId == ox::ModelTypeId_v<TileSheetV4> ||
|
||||
typeId == ox::ModelTypeId_v<TileSheetV5>) {
|
||||
OX_RETURN_ERROR(keel::convertBuffToBuff<CompactTileSheet>(
|
||||
ctx, buff, ox::ClawFormat::Metal).moveTo(buff));
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
},
|
||||
[](keel::Context &ctx, ox::Buffer &buff, ox::StringViewCR typeId) -> ox::Result<bool> {
|
||||
if (typeId == ox::ModelTypeId_v<NostalgiaPalette> ||
|
||||
typeId == ox::ModelTypeId_v<PaletteV1> ||
|
||||
typeId == ox::ModelTypeId_v<PaletteV2> ||
|
||||
typeId == ox::ModelTypeId_v<PaletteV3> ||
|
||||
typeId == ox::ModelTypeId_v<PaletteV4> ||
|
||||
typeId == ox::ModelTypeId_v<PaletteV5>) {
|
||||
OX_RETURN_ERROR(keel::convertBuffToBuff<CompactPalette>(
|
||||
ctx, buff, ox::ClawFormat::Metal).moveTo(buff));
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
},
|
||||
keel::transformRule<TileSheetV1, CompactTileSheet>,
|
||||
keel::transformRule<TileSheetV2, CompactTileSheet>,
|
||||
keel::transformRule<TileSheetV3, CompactTileSheet>,
|
||||
keel::transformRule<TileSheetV4, CompactTileSheet>,
|
||||
keel::transformRule<TileSheetV5, CompactTileSheet>,
|
||||
// convert palettes to CompactPalettes
|
||||
keel::transformRule<NostalgiaPalette, CompactPalette>,
|
||||
keel::transformRule<PaletteV1, CompactPalette>,
|
||||
keel::transformRule<PaletteV2, CompactPalette>,
|
||||
keel::transformRule<PaletteV3, CompactPalette>,
|
||||
keel::transformRule<PaletteV4, CompactPalette>,
|
||||
keel::transformRule<PaletteV5, CompactPalette>,
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -109,8 +109,8 @@ static void convertSubsheet(
|
||||
dst.rows = src.rows;
|
||||
dst.pixels = std::move(src.pixels);
|
||||
++idIt;
|
||||
dst.subsheets.resize(src.subsheets.size());
|
||||
for (auto i = 0u; i < src.subsheets.size(); ++i) {
|
||||
dst.subsheets.reserveResize(src.subsheets.size());
|
||||
for (size_t i{}; i < src.subsheets.size(); ++i) {
|
||||
convertSubsheet(src.subsheets[i], dst.subsheets[i], idIt);
|
||||
}
|
||||
}
|
||||
@@ -136,8 +136,8 @@ static void convertSubsheet(
|
||||
dst.rows = src.rows;
|
||||
dst.pixels = std::move(src.pixels);
|
||||
++idIt;
|
||||
dst.subsheets.resize(src.subsheets.size());
|
||||
for (auto i = 0u; i < src.subsheets.size(); ++i) {
|
||||
dst.subsheets.reserveResize(src.subsheets.size());
|
||||
for (size_t i{}; i < src.subsheets.size(); ++i) {
|
||||
convertSubsheet(src.subsheets[i], dst.subsheets[i], idIt);
|
||||
}
|
||||
}
|
||||
@@ -173,8 +173,8 @@ static void convertSubsheet(
|
||||
} else {
|
||||
dst.pixels = std::move(src.pixels);
|
||||
}
|
||||
dst.subsheets.resize(src.subsheets.size());
|
||||
for (auto i = 0u; i < src.subsheets.size(); ++i) {
|
||||
dst.subsheets.reserveResize(src.subsheets.size());
|
||||
for (size_t i{}; i < src.subsheets.size(); ++i) {
|
||||
convertSubsheet(bpp, src.subsheets[i], dst.subsheets[i]);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user