92 lines
2.6 KiB
C#
92 lines
2.6 KiB
C#
// Gameplay: actors, components, subsystems, abilities, UI. Depends on SaltyCore, never the reverse.
|
|
// The Variant_* folders are the engine template's reference code (D-41); nothing new is built on them.
|
|
|
|
using UnrealBuildTool;
|
|
|
|
public class Salty : ModuleRules
|
|
{
|
|
public Salty(ReadOnlyTargetRules Target) : base(Target)
|
|
{
|
|
PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs;
|
|
|
|
PublicDependencyModuleNames.AddRange(new string[] {
|
|
"Core",
|
|
"CoreUObject",
|
|
"SaltyCore",
|
|
"GameplayTags",
|
|
"GameplayAbilities",
|
|
"GameplayTasks",
|
|
"NetCore",
|
|
"Engine",
|
|
"InputCore",
|
|
"EnhancedInput",
|
|
"AIModule",
|
|
"StateTreeModule",
|
|
"GameplayStateTreeModule",
|
|
"UMG",
|
|
"Slate",
|
|
"SlateCore" // SWorldMap is a Slate widget: SLeafWidget, FSlateBrush, the draw elements
|
|
});
|
|
|
|
PrivateDependencyModuleNames.AddRange(new string[] { "Json" });
|
|
|
|
// The telemetry envelope's build string carries the git hash. Read here at build time; a new commit
|
|
// changes the definition and rebuilds this module, which is the price of never lying about the build.
|
|
PrivateDefinitions.Add("SALTY_GIT_HASH=\"" + ReadGitHash() + "\"");
|
|
|
|
PublicIncludePaths.AddRange(new string[] {
|
|
"Salty",
|
|
"Salty/Core",
|
|
"Salty/Variant_Platforming",
|
|
"Salty/Variant_Platforming/Animation",
|
|
"Salty/Variant_Combat",
|
|
"Salty/Variant_Combat/AI",
|
|
"Salty/Variant_Combat/Animation",
|
|
"Salty/Variant_Combat/Gameplay",
|
|
"Salty/Variant_Combat/Interfaces",
|
|
"Salty/Variant_Combat/UI",
|
|
"Salty/Variant_SideScrolling",
|
|
"Salty/Variant_SideScrolling/AI",
|
|
"Salty/Variant_SideScrolling/Gameplay",
|
|
"Salty/Variant_SideScrolling/Interfaces",
|
|
"Salty/Variant_SideScrolling/UI"
|
|
});
|
|
|
|
// 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
|
|
}
|
|
|
|
private string ReadGitHash()
|
|
{
|
|
try
|
|
{
|
|
var StartInfo = new System.Diagnostics.ProcessStartInfo("git", "rev-parse --short HEAD")
|
|
{
|
|
WorkingDirectory = ModuleDirectory,
|
|
RedirectStandardOutput = true,
|
|
RedirectStandardError = true,
|
|
UseShellExecute = false,
|
|
CreateNoWindow = true
|
|
};
|
|
using (var Process = System.Diagnostics.Process.Start(StartInfo))
|
|
{
|
|
string Output = Process.StandardOutput.ReadToEnd().Trim();
|
|
Process.WaitForExit();
|
|
if (Process.ExitCode == 0 && Output.Length > 0)
|
|
{
|
|
return Output;
|
|
}
|
|
}
|
|
}
|
|
catch (System.Exception)
|
|
{
|
|
}
|
|
return "nogit";
|
|
}
|
|
}
|