Merge pull request #1070 from mrcheko/pathfinding

fix using potion as weapon
pull/62/head
scrawl 8 years ago committed by GitHub
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…
Cancel
Save