[nostalgia/core] Fix getTileIdx(TileSheet, SubSheetId)
This commit is contained in:
parent
f82db6905c
commit
8798d2d718
@ -52,7 +52,7 @@ TileSheet::SubSheet const *getSubsheet(TileSheet const&ts, SubSheetId const id)
|
||||
static ox::Optional<size_t> getPixelIdx(
|
||||
TileSheet::SubSheet const&ss,
|
||||
SubSheetId const id,
|
||||
size_t idx,
|
||||
size_t &idx,
|
||||
int8_t const bpp) noexcept {
|
||||
for (auto const&child: ss.subsheets) {
|
||||
if (child.id == id) {
|
||||
@ -63,11 +63,12 @@ static ox::Optional<size_t> getPixelIdx(
|
||||
}
|
||||
idx += pixelCnt(child, bpp);
|
||||
}
|
||||
return {};
|
||||
return ox::Optional<size_t>{};
|
||||
}
|
||||
|
||||
size_t getTileIdx(TileSheet const&ts, SubSheetId const id) noexcept {
|
||||
auto const out = getPixelIdx(ts.subsheet, id, 0, ts.bpp);
|
||||
size_t idx{};
|
||||
auto const out = getPixelIdx(ts.subsheet, id, idx, ts.bpp);
|
||||
return out.or_value(0) / PixelsPerTile;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user