From 447637ee1f727a3ffee7d0e90ff50e3afab2e9bb Mon Sep 17 00:00:00 2001 From: przemek83 <4788832+przemek83@users.noreply.github.com> Date: Sat, 28 Sep 2024 08:22:44 +0200 Subject: [PATCH] Rework isTileSign method in Map class. --- src/Map.cpp | 12 ++++++++---- src/Map.h | 2 +- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/Map.cpp b/src/Map.cpp index b14ceae..86328b9 100644 --- a/src/Map.cpp +++ b/src/Map.cpp @@ -103,7 +103,7 @@ std::list Map::loadMap(std::iostream& stream) for (std::size_t x = 0; x < mapDimension_; ++x) { stream >> std::noskipws >> sign; - while ((sign != EOF) && (!isTileSign(sign))) + while ((sign != EOF) && (!isValidSign(sign))) stream >> std::noskipws >> sign; createTile(sign, tanks, {x, y}); @@ -282,8 +282,12 @@ void Map::drawForeground(const Screen& screen) bool Map::isBaseDestroyed() const { return baseDestroyed_; } -bool Map::isTileSign(char sign) const +bool Map::isValidSign(char sign) const { - return ((sign >= '0') && (sign < '7')) || (sign == 'T') || (sign == 'E') || - (sign == 'M') || (sign == 'S') || (sign == 'L') || (sign == 'A'); + const bool isPowerUp{(sign == 'S') || (sign == 'L') || (sign == 'A') || + (sign == 'T')}; + const bool isTile{(sign >= '0') && (sign < '7')}; + const bool isTank{(sign == 'E') || (sign == 'M')}; + + return isTile || isPowerUp || isTank; } diff --git a/src/Map.h b/src/Map.h index bcddd17..587269c 100644 --- a/src/Map.h +++ b/src/Map.h @@ -62,7 +62,7 @@ class Map static void shiftUp(Point& point, int tileSize); static void shiftDown(Point& point, int tileSize); - bool isTileSign(char sign) const; + bool isValidSign(char sign) const; void drawTile(const Screen& screen, TilePosition position);