class InvestigationReactionFilter extends EffectObjectSingleFilter_Scripted
{

	public function Process( ctx : EffectScriptContext, filterCtx : EffectSingleFilterScriptContext ) : Bool
	{
		var source : GameObject;
		var stimVariant : Variant;
		var stim : StimuliEvent;
		var stimType : gamedataStimType;
		var returnValue : Bool;
		returnValue = true;
		EffectData.GetVariant( EffectScriptContext.GetSharedData( ctx ), GetAllBlackboardDefs().EffectSharedData.stimuliEvent, stimVariant );
		stim = ( ( StimuliEvent )stimVariant );
		if( stim )
		{
			stimType = stim.GetStimType();
			if( stimType == gamedataStimType.Distract )
			{
				source = ( ( GameObject )( EffectScriptContext.GetSource( ctx ) ) );
				if( source != NULL )
				{
					returnValue = source.CanBeInvestigated();
				}
			}
		}
		return returnValue;
	}

}

