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:
commit
c6ef26ba4b
@ -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
|
||||
|
@ -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; }
|
||||
|
Loading…
Reference in New Issue
Block a user