Squashed 'deps/nostalgia/' changes from fae1e73e..c7bc2a95
c7bc2a95 [nostalgia/gfx] Style update 7372036a [nostalgia/gfx] Add function missing from header 7461d832 [nostalgia/gfx/studio,studio] Fix CLI tool output to only show usage if no args given 6052798f Merge commit 'dceeaaa9302b7e9ce85fa773fc187bc593f3c93c' 801d35c8 [keel] Make type converters work with functions that take const src arg git-subtree-dir: deps/nostalgia git-subtree-split: c7bc2a954fdf435127fb09896f32c5cb23c99f02
This commit is contained in:
@ -11,7 +11,7 @@
|
||||
namespace nostalgia::gfx {
|
||||
|
||||
[[nodiscard]]
|
||||
constexpr std::size_t ptToIdx(int x, int y, int c, int scale = 1) noexcept {
|
||||
constexpr std::size_t ptToIdx(int const x, int const y, int const c, int const scale = 1) noexcept {
|
||||
auto const tileWidth = TileWidth * scale;
|
||||
auto const tileHeight = TileHeight * scale;
|
||||
auto const pixelsPerTile = tileWidth * tileHeight;
|
||||
@ -25,12 +25,12 @@ constexpr std::size_t ptToIdx(int x, int y, int c, int scale = 1) noexcept {
|
||||
}
|
||||
|
||||
[[nodiscard]]
|
||||
constexpr std::size_t ptToIdx(const ox::Point &pt, int c, int scale = 1) noexcept {
|
||||
constexpr std::size_t ptToIdx(ox::Point const &pt, int const c, int const scale = 1) noexcept {
|
||||
return ptToIdx(pt.x, pt.y, c * TileWidth, scale);
|
||||
}
|
||||
|
||||
[[nodiscard]]
|
||||
constexpr ox::Point idxToPt(int i, int c, int scale = 1) noexcept {
|
||||
constexpr ox::Point idxToPt(int const i, int c, int const scale = 1) noexcept {
|
||||
auto const tileWidth = TileWidth * scale;
|
||||
auto const tileHeight = TileHeight * scale;
|
||||
auto const pixelsPerTile = tileWidth * tileHeight;
|
||||
|
@ -481,6 +481,8 @@ ox::Result<uint32_t> getTileOffset(TileSheet const&ts, SubSheetId pId) noexcept;
|
||||
|
||||
ox::Result<ox::StringView> getNameFor(TileSheet::SubSheet const &ss, SubSheetId pId) noexcept;
|
||||
|
||||
ox::Result<ox::StringView> getNameFor(TileSheet &ts, SubSheetId pId) noexcept;
|
||||
|
||||
ox::Result<ox::StringView> getNameFor(TileSheet const &ts, SubSheetId pId) noexcept;
|
||||
|
||||
[[nodiscard]]
|
||||
|
@ -133,6 +133,9 @@ ox::Error cmdExportTilesheet(studio::Project &project, ox::SpanView<ox::CString>
|
||||
"[-scale <int>]\n");
|
||||
}
|
||||
};
|
||||
if (args.empty()) {
|
||||
return {};
|
||||
}
|
||||
OX_REQUIRE(srcPath, clargs.getString("src-path").transformError(1, "no src path specified"));
|
||||
OX_REQUIRE(dstPath, clargs.getString("dst-path").transformError(2, "no dst path specified"));
|
||||
auto const palPath = clargs.getString("pal-path", "");
|
||||
|
@ -140,7 +140,7 @@ class ConverterFunc final: public BaseConverter {
|
||||
private:
|
||||
template<typename SrcType, typename DstType>
|
||||
struct ParamPack {
|
||||
using Src = SrcType;
|
||||
using Src = ox::remove_const_t<SrcType>;
|
||||
using Dst = DstType;
|
||||
};
|
||||
|
||||
|
@ -90,7 +90,10 @@ static ox::Error run(
|
||||
return ox::Error{2, "failed to load project directory"};
|
||||
}
|
||||
Project project{*kctx.value, projectDir, projectDataDir};
|
||||
return c.func(project, args + numCmdArgs);
|
||||
return c.func(
|
||||
project,
|
||||
args.size() > numCmdArgs ?
|
||||
args + numCmdArgs : ox::SpanView<ox::CString>{});
|
||||
}
|
||||
}
|
||||
return ox::Error{1, "command not found"};
|
||||
|
Reference in New Issue
Block a user