1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-01-01 03:21:41 +00:00

Merge pull request #1070 from mrcheko/pathfinding

fix using potion as weapon
This commit is contained in:
scrawl 2016-09-20 22:58:54 +02:00 committed by GitHub
commit c6ef26ba4b
2 changed files with 3 additions and 1 deletions

View File

@ -229,7 +229,7 @@ namespace MWMechanics
osg::Vec3f vAimDir = MWBase::Environment::get().getWorld()->aimToTarget(actor, target);
float distToTarget = MWBase::Environment::get().getWorld()->getHitDistance(actor, target);
storage.mReadyToAttack = (distToTarget <= rangeAttack);
storage.mReadyToAttack = (currentAction->isAttackingOrSpell() && distToTarget <= rangeAttack);
// can't fight if attacker can't go where target is. E.g. A fish can't attack person on land.
if (distToTarget > rangeAttack

View File

@ -19,6 +19,7 @@ namespace MWMechanics
virtual float getCombatRange (bool& isRanged) const = 0;
virtual float getActionCooldown() { return 0.f; }
virtual const ESM::Weapon* getWeapon() const { return NULL; };
virtual bool isAttackingOrSpell() const { return true; }
};
class ActionSpell : public Action
@ -53,6 +54,7 @@ namespace MWMechanics
/// Drinks the given potion.
virtual void prepare(const MWWorld::Ptr& actor);
virtual float getCombatRange (bool& isRanged) const;
virtual bool isAttackingOrSpell() const { return false; }
/// Since this action has no animation, apply a small cool down for using it
virtual float getActionCooldown() { return 1.f; }