45 lines
2.5 KiB
C
45 lines
2.5 KiB
C
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
||
|
|
||
|
#pragma once
|
||
|
|
||
|
#include "CoreMinimal.h"
|
||
|
#include "Templates/SubclassOf.h"
|
||
|
#include "Kismet/BlueprintFunctionLibrary.h"
|
||
|
#include "LyraSystemStatics.generated.h"
|
||
|
|
||
|
class UMeshComponent;
|
||
|
|
||
|
UCLASS()
|
||
|
class ULyraSystemStatics : public UBlueprintFunctionLibrary
|
||
|
{
|
||
|
GENERATED_BODY()
|
||
|
|
||
|
public:
|
||
|
|
||
|
/** Returns the soft object reference associated with a Primary Asset Id, this works even if the asset is not loaded */
|
||
|
UFUNCTION(BlueprintPure, Category = "AssetManager", meta=(DeterminesOutputType=ExpectedAssetType))
|
||
|
static TSoftObjectPtr<UObject> GetTypedSoftObjectReferenceFromPrimaryAssetId(FPrimaryAssetId PrimaryAssetId, TSubclassOf<UObject> ExpectedAssetType);
|
||
|
|
||
|
UFUNCTION(BlueprintCallable)
|
||
|
static FPrimaryAssetId GetPrimaryAssetIdFromUserFacingExperienceName(const FString& AdvertisedExperienceID);
|
||
|
|
||
|
UFUNCTION(BlueprintCallable, BlueprintAuthorityOnly, Category="Lyra", meta = (WorldContext = "WorldContextObject"))
|
||
|
static void PlayNextGame(const UObject* WorldContextObject);
|
||
|
|
||
|
// Sets ParameterName to ParameterValue on all sections of all mesh components found on the TargetActor
|
||
|
UFUNCTION(BlueprintCallable, Category = "Rendering|Material", meta=(DefaultToSelf="TargetActor"))
|
||
|
static void SetScalarParameterValueOnAllMeshComponents(AActor* TargetActor, const FName ParameterName, const float ParameterValue, bool bIncludeChildActors = true);
|
||
|
|
||
|
// Sets ParameterName to ParameterValue on all sections of all mesh components found on the TargetActor
|
||
|
UFUNCTION(BlueprintCallable, Category = "Rendering|Material", meta=(DefaultToSelf="TargetActor"))
|
||
|
static void SetVectorParameterValueOnAllMeshComponents(AActor* TargetActor, const FName ParameterName, const FVector ParameterValue, bool bIncludeChildActors = true);
|
||
|
|
||
|
// Sets ParameterName to ParameterValue on all sections of all mesh components found on the TargetActor
|
||
|
UFUNCTION(BlueprintCallable, Category = "Rendering|Material", meta=(DefaultToSelf="TargetActor"))
|
||
|
static void SetColorParameterValueOnAllMeshComponents(AActor* TargetActor, const FName ParameterName, const FLinearColor ParameterValue, bool bIncludeChildActors = true);
|
||
|
|
||
|
// Gets all the components that inherit from the given class
|
||
|
UFUNCTION(BlueprintCallable, Category = "Actor", meta=(DefaultToSelf="TargetActor", ComponentClass="ActorComponent", DeterminesOutputType="ComponentClass"))
|
||
|
static TArray<UActorComponent*> FindComponentsByClass(AActor* TargetActor, TSubclassOf<UActorComponent> ComponentClass, bool bIncludeChildActors = true);
|
||
|
};
|