51 lines
2.2 KiB
C
51 lines
2.2 KiB
C
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
||
|
|
||
|
#pragma once
|
||
|
|
||
|
#include "CoreMinimal.h"
|
||
|
#include "Kismet/BlueprintFunctionLibrary.h"
|
||
|
#include "InputActionValue.h"
|
||
|
|
||
|
#include "LyraDevelopmentStatics.generated.h"
|
||
|
|
||
|
class UWorld;
|
||
|
|
||
|
UCLASS()
|
||
|
class ULyraDevelopmentStatics : public UBlueprintFunctionLibrary
|
||
|
{
|
||
|
GENERATED_BODY()
|
||
|
|
||
|
public:
|
||
|
// Should game logic skip directly to gameplay (skipping any match warmup / waiting for players / etc... aspects)
|
||
|
// Will always return false except when playing in the editor and bTestFullGameFlowInPIE (in Lyra Developer Settings) is false
|
||
|
UFUNCTION(BlueprintCallable, Category="Lyra")
|
||
|
static bool ShouldSkipDirectlyToGameplay();
|
||
|
|
||
|
// Should game logic load cosmetic backgrounds in the editor?
|
||
|
// Will always return true except when playing in the editor and bSkipLoadingCosmeticBackgroundsInPIE (in Lyra Developer Settings) is true
|
||
|
UFUNCTION(BlueprintCallable, Category = "Lyra", meta=(ExpandBoolAsExecs="ReturnValue"))
|
||
|
static bool ShouldLoadCosmeticBackgrounds();
|
||
|
|
||
|
// Should game logic load cosmetic backgrounds in the editor?
|
||
|
// Will always return true except when playing in the editor and bSkipLoadingCosmeticBackgroundsInPIE (in Lyra Developer Settings) is true
|
||
|
UFUNCTION(BlueprintCallable, Category = "Lyra")
|
||
|
static bool CanPlayerBotsAttack();
|
||
|
|
||
|
// Finds the most appropriate play-in-editor world to run 'server' cheats on
|
||
|
// This might be the only world if running standalone, the listen server, or the dedicated server
|
||
|
static UWorld* FindPlayInEditorAuthorityWorld();
|
||
|
|
||
|
// Tries to find a class by a short name (with some heuristics to improve the usability when done via a cheat console)
|
||
|
static UClass* FindClassByShortName(const FString& SearchToken, UClass* DesiredBaseClass, bool bLogFailures = true);
|
||
|
|
||
|
template <typename DesiredClass>
|
||
|
static TSubclassOf<DesiredClass> FindClassByShortName(const FString& SearchToken, bool bLogFailures = true)
|
||
|
{
|
||
|
return FindClassByShortName(SearchToken, DesiredClass::StaticClass(), bLogFailures);
|
||
|
}
|
||
|
|
||
|
private:
|
||
|
static TArray<FAssetData> GetAllBlueprints();
|
||
|
static UClass* FindBlueprintClass(const FString& TargetNameRaw, UClass* DesiredBaseClass);
|
||
|
};
|