|
| | 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 |
| |
| 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...
|
| |
| osg::Vec3f | getDestination (const MWWorld::Ptr &actor) const |
| | Get the destination point of the AI package (not applicable to all AI packages, default return (0, 0, 0)) 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 clearPath=true) |
| |
| 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 | 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 | getNeighbouringNodes (ESM::Pathgrid::Point dest, const MWWorld::CellStore *currentCell, ESM::Pathgrid::PointList &points) |
| |
| 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 (const 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) |
| |
|
| enum | TypeId {
TypeIdNone = -1,
TypeIdWander = 0,
TypeIdTravel = 1,
TypeIdEscort = 2,
TypeIdFollow = 3,
TypeIdActivate = 4,
TypeIdCombat = 5,
TypeIdPursue = 6,
TypeIdAvoidDoor = 7,
TypeIdFace = 8,
TypeIdBreathe = 9,
TypeIdInternalTravel = 10,
TypeIdCast = 11
} |
| | Enumerates the various AITypes available. More...
|
| |
| 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 isPathClear) |
| |
| 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) |
| |
| void | openDoors (const MWWorld::Ptr &actor) |
| |
| const PathgridGraph & | getPathGridGraph (const MWWorld::CellStore *cell) |
| |
| PathFinder | mPathFinder |
| |
| ObstacleCheck | mObstacleCheck |
| |
| float | mTimer |
| |
| std::string | mTargetActorRefId |
| |
| int | mTargetActorId |
| |
| osg::Vec3f | mLastActorPos |
| |
| short | mRotateOnTheRunChecks |
| |
| bool | mIsShortcutting |
| |
| bool | mShortcutProhibited |
| |
| ESM::Pathgrid::Point | mShortcutFailPos |
| |
Causes the Actor to wander within a specified range.