summaryrefslogtreecommitdiff
path: root/src/being
diff options
context:
space:
mode:
Diffstat (limited to 'src/being')
-rw-r--r--src/being/actorsprite.cpp25
-rw-r--r--src/being/actorsprite.h2
2 files changed, 25 insertions, 2 deletions
diff --git a/src/being/actorsprite.cpp b/src/being/actorsprite.cpp
index 5334bcb6a..b315a7c08 100644
--- a/src/being/actorsprite.cpp
+++ b/src/being/actorsprite.cpp
@@ -248,8 +248,8 @@ static void applyEffectByOption1(ActorSprite *const actor,
{
FOR_EACH (OptionsMapCIter, it, options)
{
- const int opt = (*it).first;
- const int id = (*it).second;
+ const uint32_t opt = (*it).first;
+ const uint32_t id = (*it).second;
if (opt == option)
{
actor->setStatusEffect(id, Enable_true);
@@ -544,3 +544,24 @@ void ActorSprite::cleanupTargetCursors()
}
end_foreach
}
+
+std::string ActorSprite::getStatusEffectsString() const
+{
+ std::string effectsStr;
+ if (!mStatusEffects.empty())
+ {
+ FOR_EACH (std::set<int>::const_iterator, it, mStatusEffects)
+ {
+ const StatusEffect *const effect =
+ StatusEffectDB::getStatusEffect(
+ *it,
+ Enable_true);
+ if (!effect)
+ continue;
+ if (!effectsStr.empty())
+ effectsStr.append(", ");
+ effectsStr.append(effect->mName);
+ }
+ }
+ return effectsStr;
+}
diff --git a/src/being/actorsprite.h b/src/being/actorsprite.h
index 0bc6eff00..06433628f 100644
--- a/src/being/actorsprite.h
+++ b/src/being/actorsprite.h
@@ -187,6 +187,8 @@ class ActorSprite notfinal : public CompoundSprite, public Actor
const std::set<int> &getStatusEffects() const A_WARN_UNUSED
{ return mStatusEffects; }
+ std::string getStatusEffectsString() const;
+
virtual void stopCast(const bool b A_UNUSED)
{ }