From 9e55e5f63cf96b86567139806d26383eea208fd2 Mon Sep 17 00:00:00 2001 From: Gary Talent Date: Wed, 13 Mar 2019 20:22:08 -0500 Subject: [PATCH] [nostalgia/world] Cleanup field counts for models --- src/nostalgia/world/world.cpp | 3 --- src/nostalgia/world/world.hpp | 19 +++++++++---------- 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/src/nostalgia/world/world.cpp b/src/nostalgia/world/world.cpp index 17dbb4e7..7179cd60 100644 --- a/src/nostalgia/world/world.cpp +++ b/src/nostalgia/world/world.cpp @@ -13,9 +13,6 @@ namespace nostalgia::world { using namespace common; using namespace core; -const int Zone::FIELDS = 1; - - Zone::Zone(Context *ctx, Bounds bnds, InodeId_t tileSheet) { const auto size = bnds.width * bnds.height; m_tiles = new Tile[size]; diff --git a/src/nostalgia/world/world.hpp b/src/nostalgia/world/world.hpp index e45c3531..47214e96 100644 --- a/src/nostalgia/world/world.hpp +++ b/src/nostalgia/world/world.hpp @@ -17,6 +17,8 @@ namespace nostalgia::world { struct Tile { + static constexpr auto Fields = 3; + uint8_t bgTile = 0; uint8_t type = 0; void *occupant = nullptr; @@ -25,7 +27,7 @@ struct Tile { template ox::Error ioOpRead(T *io, Tile *obj) { ox::Error err = 0; - io->setTypeInfo("nostalgia::world::Tile", 2); + io->setTypeInfo("nostalgia::world::Tile", Tile::Fields); err |= io->op("bgTile", &obj->bgTile); err |= io->op("type", &obj->type); return err; @@ -41,7 +43,7 @@ struct Zone { friend ox::Error ioOpWrite(T*, Zone*); protected: - static const int FIELDS; + static constexpr auto Fields = 2; common::Bounds m_bounds; Tile *m_tiles = nullptr; @@ -61,7 +63,7 @@ struct Zone { template ox::Error ioOpRead(T *io, Zone *obj) { ox::Error err = 0; - io->setTypeInfo("nostalgia::world::Zone", Zone::FIELDS); + io->setTypeInfo("nostalgia::world::Zone", Zone::Fields); err |= io->op("bounds", &obj->m_bounds); return err; } @@ -69,7 +71,7 @@ ox::Error ioOpRead(T *io, Zone *obj) { template ox::Error ioOpWrite(T *io, Zone *obj) { ox::Error err = 0; - io->setTypeInfo("nostalgia::world::Zone", Zone::FIELDS); + io->setTypeInfo("nostalgia::world::Zone", Zone::Fields); err |= io->op("bounds", &obj->m_bounds); return err; } @@ -83,11 +85,8 @@ struct Region { template friend ox::Error ioOpWrite(T*, Region*); - enum { - FIELDS = 1 - }; - protected: + static constexpr auto Fields = 1; ox::Vector m_zones; public: @@ -97,14 +96,14 @@ struct Region { template ox::Error ioOpRead(T *io, Region *obj) { ox::Error err = 0; - io->setTypeInfo("nostalgia::World::Region", Region::FIELDS); + io->setTypeInfo("nostalgia::World::Region", Region::Fields); return err; } template ox::Error ioOpWrite(T *io, Region *obj) { ox::Error err = 0; - io->setTypeInfo("nostalgia::World::Region", Region::FIELDS); + io->setTypeInfo("nostalgia::World::Region", Region::Fields); return err; }