// Copyright Epic Games, Inc. All Rights Reserved.

using System.IO;
using UnrealBuildTool;

public class Faye : ModuleRules
{
	private string PluginsPath
	{
		get { return Path.GetFullPath( Path.Combine( ModuleDirectory, "../../Plugins/" ) ); }
	}
	
	protected void AddSUDS() {
		// Linker
		PrivateDependencyModuleNames.AddRange(new string[] { "SUDS" });
		// Headers
		PublicIncludePaths.Add(Path.Combine( PluginsPath, "SUDS", "Source", "SUDS", "Public"));
	}
	
	public Faye(ReadOnlyTargetRules Target) : base(Target)
	{
		PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs;
	
		PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "EnhancedInput", "UMG",
			"Slate",
			"SlateCore",
			"Niagara",
			"StateTreeModule",
			"DaySequence",
			"DeveloperSettings",
			"AIModule",
			"NavigationSystem",
			"StructUtils"
		});

		PrivateDependencyModuleNames.AddRange(new string[]
		{
			"InteractionSystem", 
			"GameplayStateTreeModule", 
			"StatForge", 
			"AsyncMessageSystem", 
			"GameplayTags"
		});
		
		AddSUDS();

		// Uncomment if you are using Slate UI
		// PrivateDependencyModuleNames.AddRange(new string[] { "Slate", "SlateCore" });
		
		// Uncomment if you are using online features
		// PrivateDependencyModuleNames.Add("OnlineSubsystem");

		// To include OnlineSubsystemSteam, add it to the plugins section in your uproject file with the Enabled attribute set to true
	}
}
