summaryrefslogtreecommitdiff
path: root/src/being
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-11-14 18:02:03 +0300
committerAndrei Karas <akaras@inbox.ru>2015-11-14 18:02:03 +0300
commit4edbdf124303f0e7c229f43a5054755e112ff6b4 (patch)
tree54d355cb568b07108c08db0f712c072d60c1a7ce /src/being
parent15424641cca695650f4b56c37711c12c81cf2c32 (diff)
downloadmanaplus-4edbdf124303f0e7c229f43a5054755e112ff6b4.tar.gz
manaplus-4edbdf124303f0e7c229f43a5054755e112ff6b4.tar.bz2
manaplus-4edbdf124303f0e7c229f43a5054755e112ff6b4.tar.xz
manaplus-4edbdf124303f0e7c229f43a5054755e112ff6b4.zip
Fix attack sprite actions. Add ride attack action.
Diffstat (limited to 'src/being')
-rw-r--r--src/being/being.cpp7
-rw-r--r--src/being/being.h8
2 files changed, 11 insertions, 4 deletions
diff --git a/src/being/being.cpp b/src/being/being.cpp
index dd06c918d..5a4da79fc 100644
--- a/src/being/being.cpp
+++ b/src/being/being.cpp
@@ -1309,7 +1309,7 @@ std::string Being::getMoveAction() const
std::string Being::getWeaponAttackAction(const ItemInfo *const weapon) const
{
if (!weapon)
- return SpriteAction::ATTACK;
+ return getAttackAction();
if (mHorseId != 0)
return weapon->getRideAttackAction();
@@ -1327,8 +1327,10 @@ std::string Being::getWeaponAttackAction(const ItemInfo *const weapon) const
std::string Being::getAttackAction(const Attack *const attack1) const
{
if (!attack1)
- return SpriteAction::ATTACK;
+ return getAttackAction();
+ if (mHorseId != 0)
+ return attack1->mRideAction;
if (mMap)
{
const unsigned char mask = mMap->getBlockMask(mX, mY);
@@ -1356,6 +1358,7 @@ std::string Being::getAttackAction(const Attack *const attack1) const
return SpriteAction::action; \
}
+getSpriteAction(Attack, ATTACK)
getSpriteAction(Dead, DEAD)
getSpriteAction(Spawn, SPAWN)
getSpriteAction(Cast, CAST)
diff --git a/src/being/being.h b/src/being/being.h
index 9c9fd6ade..a31f39be5 100644
--- a/src/being/being.h
+++ b/src/being/being.h
@@ -607,9 +607,13 @@ class Being notfinal : public ActorSprite,
std::string getSpawnAction() const A_WARN_UNUSED;
- std::string getWeaponAttackAction(const ItemInfo *const weapon) const;
+ std::string getWeaponAttackAction(const ItemInfo *const weapon) const
+ A_WARN_UNUSED;
- std::string getAttackAction(const Attack *const attack) const;
+ std::string getAttackAction() const A_WARN_UNUSED;
+
+ std::string getAttackAction(const Attack *const attack) const
+ A_WARN_UNUSED;
/**
* Whether or not this player is a GM.