& AutoCompleteList); protected: UFUNCTION(exec) void SetSomethingFunction(EEnumName EnumName) const; };"> & AutoCompleteList); protected: UFUNCTION(exec) void SetSomethingFunction(EEnumName EnumName) const; };"> & AutoCompleteList); protected: UFUNCTION(exec) void SetSomethingFunction(EEnumName EnumName) const; };">
#include "CoreMinimal.h"
#include "GameFramework/CheatManager.h"
#include "CheatManagerName.generated.h"
struct FAutoCompleteCommand;
enum class EEnumName : uint8;
/**
*
*/
UCLASS()
class Name_API UCheatManagerName : public UCheatManager
{
GENERATED_BODY()
public:
static void PopulateAutoCompleteEntries(TArray<FAutoCompleteCommand>& AutoCompleteList);
protected:
UFUNCTION(exec)
void SetSomethingFunction(EEnumName EnumName) const;
};
#include "CheatManagerName.h"
#include "ConsoleSettings.h"
void UCheatManagerName::PopulateAutoCompleteEntries(TArray<FAutoCompleteCommand>& AutoCompleteList)
{
#if UE_WITH_CHEAT_MANAGER
const UConsoleSettings* ConsoleSettings = GetDefault<UConsoleSettings>();
UEnum* LocalEnumName = StaticEnum<EEnumName>();
for (int32 i = 0; i < LocalEnumName->NumEnums() - 1; ++i)
{
FAutoCompleteCommand AutoCompleteCommand;
AutoCompleteCommand.Command = *FString::Printf(TEXT("SetSomethingFunction %s"), *LocalEnumName->GetNameStringByIndex(i));
AutoCompleteCommand.Desc = "Set Something";
// You can customize the color or just use the default one
AutoCompleteCommand.Color = ConsoleSettings->AutoCompleteCommandColor;
// MoveTemp for efficiency
AutoCompleteList.Add(MoveTemp(AutoCompleteCommand));
}
#endif
}
void UCheatManagerName::SetSomethingFunction(const EEnumName EnumName) const
{
// Something
}
Add EngineSettings to PublicDependencyModuleNames in Build.cs
PublicDependencyModuleNames.AddRange(
new string[]
{
"Core",
"EngineSettings",
// ... add other public dependencies that you statically link with here ...
}
);