1 #ifndef GAME_MWMECHANICS_AIPACKAGE_H
2 #define GAME_MWMECHANICS_AIPACKAGE_H
ObstacleCheck mObstacleCheck
Definition: aipackage.hpp:123
Definition: aipackage.hpp:47
bool isNearInactiveCell(const ESM::Position &actorPos)
Definition: aipackage.cpp:282
float mTimer
Definition: aipackage.hpp:125
void reset()
Reset pathfinding state.
Definition: aipackage.cpp:64
static bool isReachableRotatingOnTheRun(const MWWorld::Ptr &actor, const ESM::Pathgrid::Point &dest)
Return if actor's rotation speed is sufficient to rotate to the destination pathpoint on the run...
Definition: aipackage.cpp:306
virtual AiPackage * clone() const =0
Clones the package.
Definition: aipackage.hpp:42
short mRotateOnTheRunChecks
Definition: aipackage.hpp:129
virtual int getTypeId() const =0
Definition: pathfinding.hpp:33
Base class for AI packages.
Definition: aipackage.hpp:32
Definition: aipackage.hpp:37
virtual bool doesPathNeedRecalc(const ESM::Pathgrid::Point &newDest, const MWWorld::CellStore *currentCell)
Definition: aipackage.cpp:270
Definition: obstacle.hpp:27
Definition: aipackage.hpp:39
bool checkWayIsClearForActor(const ESM::Pathgrid::Point &startPoint, const ESM::Pathgrid::Point &endPoint, const MWWorld::Ptr &actor)
Check if the way to the destination is clear, taking into account actor speed.
Definition: aipackage.cpp:233
Definition: character.hpp:145
virtual void writeState(ESM::AiSequence::AiSequence &sequence) const
Definition: aipackage.hpp:72
ESM::Pathgrid::Point mShortcutFailPos
Definition: aipackage.hpp:133
virtual bool execute(const MWWorld::Ptr &actor, CharacterController &characterController, AiState &state, float duration)=0
virtual bool followTargetThroughDoors() const
Return true if the actor should follow the target through teleport doors (default false) ...
Definition: aipackage.cpp:44
virtual ~AiPackage()
Default Deconstructor.
Definition: aipackage.cpp:24
Definition: aipackage.hpp:49
Definition: aipackage.hpp:48
bool mShortcutProhibited
Definition: aipackage.hpp:132
osg::Vec3f mLastActorPos
Definition: aipackage.hpp:127
Mutable state of a cell.
Definition: cellstore.hpp:53
virtual bool canCancel() const
Can this Ai package be canceled? (default true)
Definition: aipackage.cpp:49
virtual bool getRepeat() const
Return true if this package should repeat. Currently only used for Wander packages.
Definition: aipackage.cpp:59
void evadeObstacles(const MWWorld::Ptr &actor, float duration, const ESM::Position &pos)
Definition: aipackage.cpp:168
const float AI_REACTION_TIME
Definition: aipackage.hpp:27
virtual bool sideWithTarget() const
Return true if having this AiPackage makes the actor side with the target in fights (default false) ...
Definition: aipackage.cpp:39
bool pathTo(const MWWorld::Ptr &actor, const ESM::Pathgrid::Point &dest, float duration, float destTolerance=0.0f)
Handles path building and shortcutting with obstacles avoiding.
Definition: aipackage.cpp:76
bool mIsShortcutting
Definition: aipackage.hpp:131
Definition: aipackage.hpp:38
TypeId
Enumerates the various AITypes available.
Definition: aipackage.hpp:36
Definition: aisequence.hpp:148
virtual MWWorld::Ptr getTarget() const
Get the target actor the AI is targeted at (not applicable to all AI packages, default return empty P...
Definition: aipackage.cpp:34
PathFinder mPathFinder
Definition: aipackage.hpp:122
Definition: loadpgrd.hpp:30
bool isTargetMagicallyHidden(const MWWorld::Ptr &target)
Definition: aipackage.cpp:275
Definition: aipackage.hpp:41
Pointer to a LiveCellRef.
Definition: ptr.hpp:19
Definition: aipackage.hpp:46
virtual unsigned int getPriority() const
Higher number is higher priority (0 being the lowest)
Definition: aipackage.hpp:70
bool shortcutPath(const ESM::Pathgrid::Point &startPoint, const ESM::Pathgrid::Point &endPoint, const MWWorld::Ptr &actor, bool *destInLOS)
Definition: aipackage.cpp:194
AiPackage()
Default constructor.
Definition: aipackage.cpp:26
virtual void fastForward(const MWWorld::Ptr &actor, AiState &state)
Simulates the passing of time.
Definition: aipackage.hpp:75
virtual bool shouldCancelPreviousAi() const
Upon adding this Ai package, should the Ai Sequence attempt to cancel previous Ai packages (default t...
Definition: aipackage.cpp:54
Definition: aipackage.hpp:40