Exemple #1
0
BehaviorReturnCode_t GotoCurrentHelperNode::evaluateStateFindNode()
{
	BehaviorReturnCode_t result = BEHAVIOR_SUCCESS;
	str failureReason = "GotoCurrentHelperNode::evaluateStateFindNode -- could not find an appropriate node";

	if ( !_node )
	{
		failureStateFindNode( failureReason );
		result = BEHAVIOR_FAILED;
	}


	return result;
}
Exemple #2
0
//--------------------------------------------------------------
// Name:		evaluateStateFindNode()
// Class:		CorridorCombatWithRangedWeapon
//
// Description: Evaluates the Find Cover State
//
// Parameters:	None
//
// Returns:		BehaviorReturnCode_t
//--------------------------------------------------------------
BehaviorReturnCode_t CorridorCombatWithRangedWeapon::evaluateStateFindNode()
{
	if ( _node )
		_node->UnreserveNode();

	_node = HelperNode::FindClosestHelperNode( *_self , NODETYPE_COMBAT , DESCRIPTOR_CORRIDOR , _maxDistance );	

	if ( !_node )
		{		
		failureStateFindNode( "CorridorCombatWithRangedWeapon::evaluateStateFindCover() -- Cannot Find Suitable Cover Node" );
		return BEHAVIOR_FAILED;
		}

	_node->ReserveNode();
	return BEHAVIOR_SUCCESS;
}
Exemple #3
0
BehaviorReturnCode_t GotoHelperNode::evaluateStateFindNode()
{
	if ( _node )
		return BEHAVIOR_SUCCESS;

	BehaviorReturnCode_t result = BEHAVIOR_SUCCESS;
	str failureReason = "GotoHelperNode::evaluateStateFindNode -- could not find an appropriate node";

	unsigned int NodeMask = HelperNode::GetHelperNodeMask( _nodeType );

	_node = HelperNode::FindClosestHelperNode( *_self , NodeMask , _maxDistance );

	if ( !_node )
	{
		failureStateFindNode( failureReason );
		result = BEHAVIOR_FAILED;
	}


	return result;
}