|
| AiWander (int distance, int duration, int timeOfDay, const std::vector< unsigned char > &idle, bool repeat) |
| Constructor. More...
|
|
| AiWander (const ESM::AiSequence::AiWander *wander) |
|
virtual AiPackage * | clone () const |
| Clones the package. More...
|
|
virtual bool | execute (const MWWorld::Ptr &actor, CharacterController &characterController, AiState &state, float duration) |
|
virtual int | getTypeId () const |
|
void | setReturnPosition (const osg::Vec3f &position) |
| Set the position to return to for a stationary (non-wandering) actor. More...
|
|
virtual void | writeState (ESM::AiSequence::AiSequence &sequence) const |
|
virtual void | fastForward (const MWWorld::Ptr &actor, AiState &state) |
| Simulates the passing of time. More...
|
|
bool | getRepeat () const |
| Return true if this package should repeat. Currently only used for Wander packages. More...
|
|
| AiPackage () |
| Default constructor. More...
|
|
virtual | ~AiPackage () |
| Default Deconstructor. More...
|
|
virtual unsigned int | getPriority () const |
| Higher number is higher priority (0 being the lowest) More...
|
|
virtual MWWorld::Ptr | getTarget () const |
| Get the target actor the AI is targeted at (not applicable to all AI packages, default return empty Ptr) More...
|
|
virtual bool | sideWithTarget () const |
| Return true if having this AiPackage makes the actor side with the target in fights (default false) More...
|
|
virtual bool | followTargetThroughDoors () const |
| Return true if the actor should follow the target through teleport doors (default false) More...
|
|
virtual bool | canCancel () const |
| Can this Ai package be canceled? (default true) More...
|
|
virtual bool | shouldCancelPreviousAi () const |
| Upon adding this Ai package, should the Ai Sequence attempt to cancel previous Ai packages (default true)? More...
|
|
void | reset () |
| Reset pathfinding state. More...
|
|
bool | isTargetMagicallyHidden (const MWWorld::Ptr &target) |
|
|
void | init () |
|
void | stopWalking (const MWWorld::Ptr &actor, AiWanderStorage &storage) |
|
bool | playIdle (const MWWorld::Ptr &actor, unsigned short idleSelect) |
|
bool | checkIdle (const MWWorld::Ptr &actor, unsigned short idleSelect) |
|
short unsigned | getRandomIdle () |
|
void | setPathToAnAllowedNode (const MWWorld::Ptr &actor, AiWanderStorage &storage, const ESM::Position &actorPos) |
|
void | playGreetingIfPlayerGetsTooClose (const MWWorld::Ptr &actor, AiWanderStorage &storage) |
|
void | evadeObstacles (const MWWorld::Ptr &actor, AiWanderStorage &storage, float duration, ESM::Position &pos) |
|
void | playIdleDialogueRandomly (const MWWorld::Ptr &actor) |
|
void | turnActorToFacePlayer (const osg::Vec3f &actorPosition, const osg::Vec3f &playerPosition, AiWanderStorage &storage) |
|
void | doPerFrameActionsForState (const MWWorld::Ptr &actor, float duration, AiWanderStorage &storage, ESM::Position &pos) |
|
void | onIdleStatePerFrameActions (const MWWorld::Ptr &actor, float duration, AiWanderStorage &storage) |
|
void | onWalkingStatePerFrameActions (const MWWorld::Ptr &actor, float duration, AiWanderStorage &storage, ESM::Position &pos) |
|
void | onChooseActionStatePerFrameActions (const MWWorld::Ptr &actor, AiWanderStorage &storage) |
|
bool | reactionTimeActions (const MWWorld::Ptr &actor, AiWanderStorage &storage, const MWWorld::CellStore *¤tCell, bool cellChange, ESM::Position &pos, float duration) |
|
bool | isPackageCompleted (const MWWorld::Ptr &actor, AiWanderStorage &storage) |
|
void | returnToStartLocation (const MWWorld::Ptr &actor, AiWanderStorage &storage, ESM::Position &pos) |
|
void | wanderNearStart (const MWWorld::Ptr &actor, AiWanderStorage &storage, int wanderDistance) |
|
bool | destinationIsAtWater (const MWWorld::Ptr &actor, const osg::Vec3f &destination) |
|
bool | destinationThroughGround (const osg::Vec3f &startPoint, const osg::Vec3f &destination) |
|
void | completeManualWalking (const MWWorld::Ptr &actor, AiWanderStorage &storage) |
|
void | getAllowedNodes (const MWWorld::Ptr &actor, const ESM::Cell *cell, AiWanderStorage &storage) |
|
void | trimAllowedNodes (std::vector< ESM::Pathgrid::Point > &nodes, const PathFinder &pathfinder) |
|
void | ToWorldCoordinates (ESM::Pathgrid::Point &point, const ESM::Cell *cell) |
| convert point from local (i.e. cell) to world coordinates More...
|
|
void | SetCurrentNodeToClosestAllowedNode (osg::Vec3f npcPos, AiWanderStorage &storage) |
|
void | AddNonPathGridAllowedPoints (osg::Vec3f npcPos, const ESM::Pathgrid *pathGrid, int pointIndex, AiWanderStorage &storage) |
|
void | AddPointBetweenPathGridPoints (const ESM::Pathgrid::Point &start, const ESM::Pathgrid::Point &end, AiWanderStorage &storage) |
|
|
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. Otherwise actor should rotate while standing. More...
|
|
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. More...
|
|
bool | shortcutPath (const ESM::Pathgrid::Point &startPoint, const ESM::Pathgrid::Point &endPoint, const MWWorld::Ptr &actor, bool *destInLOS) |
|
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. More...
|
|
virtual bool | doesPathNeedRecalc (const ESM::Pathgrid::Point &newDest, const MWWorld::CellStore *currentCell) |
|
void | evadeObstacles (const MWWorld::Ptr &actor, float duration, const ESM::Position &pos) |
|
PathFinder | mPathFinder |
|
ObstacleCheck | mObstacleCheck |
|
float | mTimer |
|
osg::Vec3f | mLastActorPos |
|
short | mRotateOnTheRunChecks |
|
bool | mIsShortcutting |
|
bool | mShortcutProhibited |
|
ESM::Pathgrid::Point | mShortcutFailPos |
|
Causes the Actor to wander within a specified range.