mirror of
				https://github.com/TES3MP/openmw-tes3mp.git
				synced 2025-10-31 19:56:42 +00:00 
			
		
		
		
	Sheath weapon in all Ai packages except for AiCombat
This commit is contained in:
		
							parent
							
								
									d956df83e4
								
							
						
					
					
						commit
						f67b7dae91
					
				
					 5 changed files with 14 additions and 0 deletions
				
			
		|  | @ -5,6 +5,8 @@ | |||
| #include "../mwbase/world.hpp" | ||||
| #include "../mwbase/environment.hpp" | ||||
| 
 | ||||
| #include "../mwmechanics/creaturestats.hpp" | ||||
| 
 | ||||
| #include "../mwworld/class.hpp" | ||||
| #include "../mwworld/cellstore.hpp" | ||||
| 
 | ||||
|  | @ -24,6 +26,8 @@ bool MWMechanics::AiActivate::execute (const MWWorld::Ptr& actor,float duration) | |||
|     ESM::Position pos = actor.getRefData().getPosition(); //position of the actor
 | ||||
|     const MWWorld::Ptr target = MWBase::Environment::get().getWorld()->searchPtr(mObjectId, false); //The target to follow
 | ||||
| 
 | ||||
|     actor.getClass().getCreatureStats(actor).setDrawState(DrawState_Nothing); | ||||
| 
 | ||||
|     if(target == MWWorld::Ptr()) | ||||
|         return true;   //Target doesn't exist
 | ||||
| 
 | ||||
|  |  | |||
|  | @ -9,6 +9,8 @@ | |||
| #include "../mwworld/cellstore.hpp" | ||||
| #include "../mwworld/class.hpp" | ||||
| 
 | ||||
| #include "../mwmechanics/creaturestats.hpp" | ||||
| 
 | ||||
| #include "steering.hpp" | ||||
| #include "movement.hpp" | ||||
| 
 | ||||
|  | @ -72,6 +74,8 @@ namespace MWMechanics | |||
|                 return true; | ||||
|         } | ||||
| 
 | ||||
|         actor.getClass().getCreatureStats(actor).setDrawState(DrawState_Nothing); | ||||
| 
 | ||||
|         const MWWorld::Ptr follower = MWBase::Environment::get().getWorld()->getPtr(mActorId, false); | ||||
|         const float* const leaderPos = actor.getRefData().getPosition().pos; | ||||
|         const float* const followerPos = follower.getRefData().getPosition().pos; | ||||
|  |  | |||
|  | @ -35,6 +35,8 @@ bool MWMechanics::AiFollow::execute (const MWWorld::Ptr& actor,float duration) | |||
| 
 | ||||
|     if(target == MWWorld::Ptr()) return true;   //Target doesn't exist
 | ||||
| 
 | ||||
|     actor.getClass().getCreatureStats(actor).setDrawState(DrawState_Nothing); | ||||
| 
 | ||||
|     ESM::Position pos = actor.getRefData().getPosition(); //position of the actor
 | ||||
| 
 | ||||
|     if(!mAlwaysFollow) //Update if you only follow for a bit
 | ||||
|  |  | |||
|  | @ -38,6 +38,8 @@ bool AiPursue::execute (const MWWorld::Ptr& actor, float duration) | |||
|     if(target == MWWorld::Ptr()) | ||||
|         return true; //Target doesn't exist
 | ||||
| 
 | ||||
|     actor.getClass().getCreatureStats(actor).setDrawState(DrawState_Nothing); | ||||
| 
 | ||||
|     //Set the target desition from the actor
 | ||||
|     ESM::Pathgrid::Point dest = target.getRefData().getPosition().pos; | ||||
| 
 | ||||
|  |  | |||
|  | @ -44,6 +44,8 @@ namespace MWMechanics | |||
| 
 | ||||
|         actor.getClass().getCreatureStats(actor).setMovementFlag(CreatureStats::Flag_Run, false); | ||||
| 
 | ||||
|         actor.getClass().getCreatureStats(actor).setDrawState(DrawState_Nothing); | ||||
| 
 | ||||
|         MWWorld::Ptr player = world->getPlayerPtr(); | ||||
|         if(cell->mData.mX != player.getCell()->getCell()->mData.mX) | ||||
|         { | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue