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; }
//-------------------------------------------------------------- // 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; }
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; }