#include <PathfinderProcess.h>
Inheritance diagram for PathfinderProcess:
Public Member Functions | |
PathfinderProcess () | |
PathfinderProcess (Actor *actor, ObjId item, bool hit=false) | |
PathfinderProcess (Actor *actor, sint32 x, sint32 y, sint32 z) | |
virtual | ~PathfinderProcess () |
ENABLE_RUNTIME_CLASSTYPE () | |
virtual bool | run (const uint32 framenum) |
virtual void | terminate () |
bool | loadData (IDataSource *ids, uint32 version) |
Protected Member Functions | |
virtual void | saveData (ODataSource *ods) |
Protected Attributes | |
sint32 | targetx |
sint32 | targety |
sint32 | targetz |
ObjId | targetitem |
bool | hitmode |
std::vector< PathfindingAction > | path |
unsigned int | currentstep |
Definition at line 27 of file PathfinderProcess.h.
PathfinderProcess::PathfinderProcess | ( | ) |
Definition at line 35 of file PathfinderProcess.cpp.
Definition at line 40 of file PathfinderProcess.cpp.
References Actor::ACT_PATHFINDING, currentstep, getItem(), Item::getLocation(), Object::getObjId(), hitmode, Pathfinder::init(), Process::item_num, path, PATH_FAILED, Pathfinder::pathfind(), perr, Process::result, Actor::setActorFlag(), Pathfinder::setTarget(), targetitem, targetx, targety, targetz, Process::terminateDeferred(), and Process::type.
Definition at line 82 of file PathfinderProcess.cpp.
References Actor::ACT_PATHFINDING, currentstep, Object::getObjId(), Pathfinder::init(), Process::item_num, path, PATH_FAILED, Pathfinder::pathfind(), perr, Process::result, Actor::setActorFlag(), Pathfinder::setTarget(), targetitem, targetx, targety, targetz, and Process::terminateDeferred().
PathfinderProcess::~PathfinderProcess | ( | ) | [virtual] |
Definition at line 114 of file PathfinderProcess.cpp.
PathfinderProcess::ENABLE_RUNTIME_CLASSTYPE | ( | ) |
Reimplemented from Process.
bool PathfinderProcess::loadData | ( | IDataSource * | ids, | |
uint32 | version | |||
) |
load Process data
Reimplemented from Process.
Definition at line 271 of file PathfinderProcess.cpp.
References currentstep, hitmode, Process::loadData(), path, targetitem, targetx, targety, and targetz.
bool PathfinderProcess::run | ( | const uint32 | framenum | ) | [virtual] |
Implements Process.
Definition at line 131 of file PathfinderProcess.cpp.
References Actor::ACT_ANIMLOCK, currentstep, Actor::doAnim(), Item::FLG_FASTAREA, getActor(), Actor::getActorFlags(), Item::getFlags(), getItem(), Item::getLocation(), Process::getPid(), hitmode, Pathfinder::init(), Actor::isInCombat(), Process::item_num, path, PATH_FAILED, PATH_OK, Pathfinder::pathfind(), perr, pout, Process::result, Pathfinder::setTarget(), Animation::SUCCESS, targetitem, targetx, targety, targetz, terminate(), Actor::tryAnim(), and Process::waitFor().
void PathfinderProcess::saveData | ( | ODataSource * | ods | ) | [protected, virtual] |
save the Process data
Reimplemented from Process.
Definition at line 253 of file PathfinderProcess.cpp.
References currentstep, hitmode, path, Process::saveData(), targetitem, targetx, targety, targetz, ODataSource::write1(), and ODataSource::write2().
void PathfinderProcess::terminate | ( | ) | [virtual] |
terminate the process. This wakes up all processes waiting for it.
Reimplemented from Process.
Definition at line 119 of file PathfinderProcess.cpp.
References Actor::ACT_PATHFINDING, Actor::clearActorFlag(), getActor(), Process::item_num, and Process::terminate().
Referenced by run().
unsigned int PathfinderProcess::currentstep [protected] |
Definition at line 52 of file PathfinderProcess.h.
Referenced by loadData(), PathfinderProcess(), run(), and saveData().
bool PathfinderProcess::hitmode [protected] |
Definition at line 49 of file PathfinderProcess.h.
Referenced by loadData(), PathfinderProcess(), run(), and saveData().
std::vector<PathfindingAction> PathfinderProcess::path [protected] |
Definition at line 51 of file PathfinderProcess.h.
Referenced by loadData(), PathfinderProcess(), run(), and saveData().
ObjId PathfinderProcess::targetitem [protected] |
Definition at line 48 of file PathfinderProcess.h.
Referenced by loadData(), PathfinderProcess(), run(), and saveData().
sint32 PathfinderProcess::targetx [protected] |
Definition at line 47 of file PathfinderProcess.h.
Referenced by loadData(), PathfinderProcess(), run(), and saveData().
sint32 PathfinderProcess::targety [protected] |
Definition at line 47 of file PathfinderProcess.h.
Referenced by loadData(), PathfinderProcess(), run(), and saveData().
sint32 PathfinderProcess::targetz [protected] |
Definition at line 47 of file PathfinderProcess.h.
Referenced by loadData(), PathfinderProcess(), run(), and saveData().