class BraindanceModule extends HUDModule
{

	protected override function Process( out task : HUDJob, mode : ActiveMode )
	{
		var instruction : BraindanceInstance;
		instruction = task.instruction.braindanceInstructions;
		if( !( instruction ) )
		{
			return;
		}
		if( m_hud.IsBraindanceActive() )
		{
			instruction.SetState( InstanceState.ON, DuplicateLastInstance( task.actor ) );
		}
		else
		{
			instruction.SetState( InstanceState.DISABLED, DuplicateLastInstance( task.actor ) );
		}
	}

	protected override function DuplicateLastInstance( actor : HUDActor ) : BraindanceInstance
	{
		return ( ( BraindanceInstance )( super.DuplicateLastInstance( actor ) ) );
	}

	protected override function Process( out jobs : array< HUDJob >, mode : ActiveMode )
	{
		var i : Int32;
		for( i = 0; i < jobs.Size(); i += 1 )
		{
			Process( jobs[ i ], mode );
		}
	}

}

class BraindanceInstance extends ModuleInstance
{
}

