From 1d185e20369138aa735525d98392d079df7a50f2 Mon Sep 17 00:00:00 2001 From: Gary Talent Date: Tue, 14 Jan 2025 00:36:06 -0600 Subject: [PATCH] [jasper/world] Cleanup types, add consts --- .../include/jasper/world/worldstatic.hpp | 27 ++++++++++--------- 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/src/jasper/modules/world/include/jasper/world/worldstatic.hpp b/src/jasper/modules/world/include/jasper/world/worldstatic.hpp index 80cadee..35c310b 100644 --- a/src/jasper/modules/world/include/jasper/world/worldstatic.hpp +++ b/src/jasper/modules/world/include/jasper/world/worldstatic.hpp @@ -16,37 +16,37 @@ namespace jasper::world { namespace ncore = nostalgia::core; -constexpr void setTopEdge(uint8_t &layerAttachments, unsigned const val) noexcept { +constexpr void setTopEdge(uint8_t &layerAttachments, uint8_t const val) noexcept { auto const val8 = static_cast(val); layerAttachments = (layerAttachments & 0b11111100) | val8; } -constexpr void setBottomEdge(uint8_t &layerAttachments, unsigned const val) noexcept { +constexpr void setBottomEdge(uint8_t &layerAttachments, uint8_t const val) noexcept { auto const val8 = static_cast(val); - layerAttachments = (layerAttachments & 0b11110011) | static_cast(val8 << 2); + layerAttachments = (layerAttachments & 0b11110011) | (val8 << 2); } -constexpr void setLeftEdge(uint8_t &layerAttachments, unsigned const val) noexcept { +constexpr void setLeftEdge(uint8_t &layerAttachments, uint8_t const val) noexcept { auto const val8 = static_cast(val); - layerAttachments = (layerAttachments & 0b11001111) | static_cast(val8 << 4); + layerAttachments = (layerAttachments & 0b11001111) | (val8 << 4); } -constexpr void setRightEdge(uint8_t &layerAttachments, unsigned const val) noexcept { +constexpr void setRightEdge(uint8_t &layerAttachments, uint8_t const val) noexcept { auto const val8 = static_cast(val); - layerAttachments = (layerAttachments & 0b00111111) | static_cast(val8 << 6); + layerAttachments = (layerAttachments & 0b00111111) | (val8 << 6); } [[nodiscard]] -constexpr unsigned topEdge(uint8_t layerAttachments) noexcept { +constexpr uint8_t topEdge(uint8_t const layerAttachments) noexcept { return layerAttachments & 0b11; } [[nodiscard]] -constexpr unsigned bottomEdge(uint8_t layerAttachments) noexcept { +constexpr uint8_t bottomEdge(uint8_t const layerAttachments) noexcept { return (layerAttachments >> 2) & 0b11; } [[nodiscard]] -constexpr unsigned leftEdge(uint8_t layerAttachments) noexcept { +constexpr uint8_t leftEdge(uint8_t const layerAttachments) noexcept { return (layerAttachments >> 4) & 0b11; } [[nodiscard]] -constexpr unsigned rightEdge(uint8_t layerAttachments) noexcept { +constexpr uint8_t rightEdge(uint8_t const layerAttachments) noexcept { return (layerAttachments >> 6) & 0b11; } @@ -90,6 +90,7 @@ struct ObjTileRefSet { uint8_t tilesheetId{}; uint8_t tileCnt{}; // each successive frame will use tileIdx[i] + tileCnt * frameNo for the tileIdx + uint8_t frameSets{}; uint8_t frames{}; uint16_t intervalMs{}; }; @@ -101,6 +102,7 @@ OX_MODEL_BEGIN(ObjTileRefSet) OX_MODEL_FIELD(palBank) OX_MODEL_FIELD(tilesheetId) OX_MODEL_FIELD(tileCnt) + OX_MODEL_FIELD(frameSets) OX_MODEL_FIELD(frames) OX_MODEL_FIELD(intervalMs) OX_MODEL_END() @@ -108,12 +110,13 @@ OX_MODEL_END() [[nodiscard]] constexpr bool operator==(ObjTileRefSet const&a, ObjTileRefSet const&b) noexcept { return - a.palBank == b.palBank && a.tilesheetIdx == b.tilesheetIdx && a.cbbIdx == b.cbbIdx && a.cbb == b.cbb && + a.palBank == b.palBank && a.tilesheetId == b.tilesheetId && a.tileCnt == b.tileCnt && + a.frameSets == b.frameSets && a.frames == b.frames && a.intervalMs == b.intervalMs; }