//----------------------------------------------------------------------- void CAIEntityPathFindingMoveAndGuardInAdvance::update( Flt delta ) { if(mCharacterSceneEntity->getDynamicData()->isDied) { return; } switch(mState) { case MAGAS_MOVE: updateMoveTo(delta); break; case MAGAS_SEARCH: updateSearch(delta); break; case MAGAS_PURSUEATTACK: updatePursueAttack(delta); break; } stopThink(5); }
void Monster::onCreatureDisappear(const Creature* creature, uint32_t stackpos, bool isLogout) { if(creature == this || getMaster() == creature){ stopThink(); } else if(targetCreature == creature){ //select other target from targetList /* TargetList::iterator it = std::find(targetList.begin(), targetList.end(), creature); if(it != targetList.end()){ targetList.erase(it); } */ } }