summaryrefslogtreecommitdiff
path: root/src/resources
diff options
context:
space:
mode:
Diffstat (limited to 'src/resources')
-rw-r--r--src/resources/animation/animation.cpp14
-rw-r--r--src/resources/frame.h13
-rw-r--r--src/resources/sprite/animatedsprite.cpp16
3 files changed, 18 insertions, 25 deletions
diff --git a/src/resources/animation/animation.cpp b/src/resources/animation/animation.cpp
index 22ca96fd7..1a10f5224 100644
--- a/src/resources/animation/animation.cpp
+++ b/src/resources/animation/animation.cpp
@@ -45,7 +45,7 @@ void Animation::addFrame(Image *const image, const int delay,
const int rand) noexcept2
{
Frame frame
- = { image, delay, offsetX, offsetY, rand, Frame::ANIMATION, "" };
+ = { image, delay, offsetX, offsetY, rand, FrameType::ANIMATION, "" };
mFrames.push_back(frame);
mDuration += delay;
}
@@ -57,30 +57,30 @@ void Animation::addTerminator(const int rand) noexcept2
bool Animation::isTerminator(const Frame &candidate) noexcept2
{
- return (!candidate.image && candidate.type == Frame::ANIMATION);
+ return (!candidate.image && candidate.type == FrameType::ANIMATION);
}
void Animation::addJump(const std::string &name, const int rand) noexcept2
{
- Frame frame = { nullptr, 0, 0, 0, rand, Frame::JUMP, name };
+ Frame frame = { nullptr, 0, 0, 0, rand, FrameType::JUMP, name };
mFrames.push_back(frame);
}
void Animation::addLabel(const std::string &name) noexcept2
{
- Frame frame = { nullptr, 0, 0, 0, 100, Frame::LABEL, name };
+ Frame frame = { nullptr, 0, 0, 0, 100, FrameType::LABEL, name };
mFrames.push_back(frame);
}
void Animation::addGoto(const std::string &name, const int rand) noexcept2
{
- Frame frame = { nullptr, 0, 0, 0, rand, Frame::GOTO, name };
+ Frame frame = { nullptr, 0, 0, 0, rand, FrameType::GOTO, name };
mFrames.push_back(frame);
}
void Animation::addPause(const int delay, const int rand) noexcept2
{
- Frame frame = { nullptr, delay, 0, 0, rand, Frame::PAUSE, "" };
+ Frame frame = { nullptr, delay, 0, 0, rand, FrameType::PAUSE, "" };
mFrames.push_back(frame);
}
@@ -89,7 +89,7 @@ void Animation::setLastFrameDelay(const int delay) noexcept2
for (FramesRevIter it = mFrames.rbegin(), it_end = mFrames.rend();
it != it_end; ++ it)
{
- if ((*it).type == Frame::ANIMATION && (*it).image)
+ if ((*it).type == FrameType::ANIMATION && (*it).image)
{
(*it).delay = delay;
break;
diff --git a/src/resources/frame.h b/src/resources/frame.h
index 9359dba05..327a602a7 100644
--- a/src/resources/frame.h
+++ b/src/resources/frame.h
@@ -23,6 +23,8 @@
#ifndef RESOURCES_FRAME_H
#define RESOURCES_FRAME_H
+#include "enums/resources/frametype.h"
+
#include <string>
#include "localconsts.h"
@@ -34,21 +36,12 @@ class Image;
*/
struct Frame final
{
- enum FrameType
- {
- ANIMATION = 0,
- JUMP,
- GOTO,
- LABEL,
- PAUSE
- };
-
Image *image;
int delay;
int offsetX;
int offsetY;
int rand;
- FrameType type;
+ FrameTypeT type;
std::string nextAction;
};
diff --git a/src/resources/sprite/animatedsprite.cpp b/src/resources/sprite/animatedsprite.cpp
index 60a2d7f9d..546c3a415 100644
--- a/src/resources/sprite/animatedsprite.cpp
+++ b/src/resources/sprite/animatedsprite.cpp
@@ -215,7 +215,7 @@ bool AnimatedSprite::updateCurrentAnimation(const unsigned int time) restrict2
{
// move code from Animation::isTerminator(*mFrame)
if (!mFrame || !mAnimation || (!mFrame->image
- && mFrame->type == Frame::ANIMATION))
+ && mFrame->type == FrameType::ANIMATION))
{
return false;
}
@@ -224,8 +224,8 @@ bool AnimatedSprite::updateCurrentAnimation(const unsigned int time) restrict2
while ((mFrameTime > CAST_U32(mFrame->delay) &&
mFrame->delay > 0) ||
- (mFrame->type != Frame::ANIMATION &&
- mFrame->type != Frame::PAUSE))
+ (mFrame->type != FrameType::ANIMATION &&
+ mFrame->type != FrameType::PAUSE))
{
bool fail(true);
mFrameTime -= CAST_U32(mFrame->delay);
@@ -239,12 +239,12 @@ bool AnimatedSprite::updateCurrentAnimation(const unsigned int time) restrict2
{
fail = true;
}
- else if ((mFrame->type == Frame::LABEL
+ else if ((mFrame->type == FrameType::LABEL
&& !mFrame->nextAction.empty()))
{
fail = false;
}
- else if (mFrame->type == Frame::GOTO &&
+ else if (mFrame->type == FrameType::GOTO &&
!mFrame->nextAction.empty())
{
const int rand = mFrame->rand;
@@ -255,7 +255,7 @@ bool AnimatedSprite::updateCurrentAnimation(const unsigned int time) restrict2
{
const Frame *restrict const frame =
&mAnimation->mFrames[i];
- if (frame->type == Frame::LABEL &&
+ if (frame->type == FrameType::LABEL &&
mFrame->nextAction == frame->nextAction)
{
mFrameIndex = CAST_U32(i);
@@ -277,7 +277,7 @@ bool AnimatedSprite::updateCurrentAnimation(const unsigned int time) restrict2
fail = false;
}
}
- else if (mFrame->type == Frame::JUMP &&
+ else if (mFrame->type == FrameType::JUMP &&
!mFrame->nextAction.empty())
{
const int rand = mFrame->rand;
@@ -290,7 +290,7 @@ bool AnimatedSprite::updateCurrentAnimation(const unsigned int time) restrict2
}
// copy code from Animation::isTerminator(*mFrame)
else if (!mFrame->image &&
- mFrame->type == Frame::ANIMATION)
+ mFrame->type == FrameType::ANIMATION)
{
const int rand = mFrame->rand;
if (rand == 100 ||