summaryrefslogtreecommitdiff
path: root/src/being
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-05-30 00:27:14 +0300
committerAndrei Karas <akaras@inbox.ru>2015-05-30 00:27:14 +0300
commit478ffec82dae4f55c38ccd424079166ec8c38905 (patch)
tree96f9c597164c4bed24b5ab2040dcfffd1df624d7 /src/being
parent67dd1ac770ed04fc7cbbbaa160c00f648d490858 (diff)
downloadmv-478ffec82dae4f55c38ccd424079166ec8c38905.tar.gz
mv-478ffec82dae4f55c38ccd424079166ec8c38905.tar.bz2
mv-478ffec82dae4f55c38ccd424079166ec8c38905.tar.xz
mv-478ffec82dae4f55c38ccd424079166ec8c38905.zip
Convert TargetCursorSize enum into strong typed enum.
Diffstat (limited to 'src/being')
-rw-r--r--src/being/actorsprite.cpp20
-rw-r--r--src/being/actorsprite.h5
-rw-r--r--src/being/being.cpp2
-rw-r--r--src/being/being.h4
4 files changed, 16 insertions, 15 deletions
diff --git a/src/being/actorsprite.cpp b/src/being/actorsprite.cpp
index b7e30cacd..eb2268eb9 100644
--- a/src/being/actorsprite.cpp
+++ b/src/being/actorsprite.cpp
@@ -42,18 +42,18 @@
#include "debug.h"
#define for_each_cursors() \
- for (int size = TargetCursorSize::SMALL; \
- size < TargetCursorSize::NUM_TC; \
+ for (int size = static_cast<int>(TargetCursorSize::SMALL); \
+ size < static_cast<int>(TargetCursorSize::NUM_TC); \
size ++) \
{ \
- for (int type = TargetCursorType::NORMAL; \
- type < TargetCursorType::NUM_TCT; \
+ for (int type = static_cast<int>(TargetCursorType::NORMAL); \
+ type < static_cast<int>(TargetCursorType::NUM_TCT); \
type ++) \
#define end_foreach }
AnimatedSprite *ActorSprite::targetCursor[TargetCursorType::NUM_TCT]
- [TargetCursorSize::NUM_TC];
+ [static_cast<size_t>(TargetCursorSize::NUM_TC)];
bool ActorSprite::loaded = false;
ActorSprite::ActorSprite(const BeingId id) :
@@ -157,9 +157,11 @@ void ActorSprite::setTargetType(const TargetCursorType::Type type)
mUsedTargetCursor = targetCursor[static_cast<int>(type)][sz];
if (mUsedTargetCursor)
{
- static const int targetWidths[TargetCursorSize::NUM_TC]
+ static const int targetWidths[static_cast<size_t>(
+ TargetCursorSize::NUM_TC)]
= {0, 0, 0};
- static const int targetHeights[TargetCursorSize::NUM_TC]
+ static const int targetHeights[static_cast<size_t>(
+ TargetCursorSize::NUM_TC)]
= {-mapTileSize / 2, -mapTileSize / 2, -mapTileSize};
mCursorPaddingX = static_cast<int>(targetWidths[sz]);
@@ -361,7 +363,7 @@ static const char *cursorType(const int type)
}
}
-static const char *cursorSize(const int size)
+static const char *cursorSize(const TargetCursorSizeT size)
{
switch (size)
{
@@ -386,7 +388,7 @@ void ActorSprite::initTargetCursor()
Theme::resolveThemePath(strprintf(
targetCursorFile.c_str(),
cursorType(type),
- cursorSize(size))));
+ cursorSize(static_cast<TargetCursorSizeT>(size)))));
}
end_foreach
}
diff --git a/src/being/actorsprite.h b/src/being/actorsprite.h
index 97553171a..9ba16a64c 100644
--- a/src/being/actorsprite.h
+++ b/src/being/actorsprite.h
@@ -90,8 +90,7 @@ class ActorSprite notfinal : public CompoundSprite, public Actor
/**
* Returns the required size of a target cursor for this being.
*/
- virtual TargetCursorSize::Size getTargetCursorSize() const
- A_WARN_UNUSED
+ virtual TargetCursorSizeT getTargetCursorSize() const A_WARN_UNUSED
{ return TargetCursorSize::MEDIUM; }
virtual int getTargetOffsetX() const A_WARN_UNUSED
@@ -216,7 +215,7 @@ class ActorSprite notfinal : public CompoundSprite, public Actor
/** Animated target cursors. */
static AnimatedSprite *targetCursor[TargetCursorType::NUM_TCT]
- [TargetCursorSize::NUM_TC];
+ [static_cast<size_t>(TargetCursorSize::NUM_TC)];
static bool loaded;
diff --git a/src/being/being.cpp b/src/being/being.cpp
index f433ec964..95d7330ed 100644
--- a/src/being/being.cpp
+++ b/src/being/being.cpp
@@ -442,7 +442,7 @@ void Being::setSubtype(const BeingTypeId subtype,
}
}
-TargetCursorSize::Size Being::getTargetCursorSize() const
+TargetCursorSizeT Being::getTargetCursorSize() const
{
if (!mInfo)
return TargetCursorSize::SMALL;
diff --git a/src/being/being.h b/src/being/being.h
index 63b531ff3..1837f9cbe 100644
--- a/src/being/being.h
+++ b/src/being/being.h
@@ -372,8 +372,8 @@ class Being notfinal : public ActorSprite,
const BeingInfo *getInfo() const A_WARN_UNUSED
{ return mInfo; }
- TargetCursorSize::Size getTargetCursorSize() const override final
- A_WARN_UNUSED;
+ TargetCursorSizeT getTargetCursorSize() const override final
+ A_WARN_UNUSED;
int getTargetOffsetX() const override A_WARN_UNUSED
{