OLS/Source/ols/Public/DataAssets/OLSExperienceActionSetDataAsset.h
2025-01-09 16:05:57 -07:00

43 lines
1.2 KiB
C++

// © 2024 Long Ly. All rights reserved. Any unauthorized use, reproduction, or distribution of this trademark is strictly prohibited and may result in legal action.
#pragma once
#include "CoreMinimal.h"
#include "OLSPawnDataAsset.h"
#include "OLSExperienceActionSetDataAsset.generated.h"
/**
* Definition of a set of actions to perform as part of entering an experience
*/
UCLASS(BlueprintType, NotBlueprintable)
class OLS_API UOLSExperienceActionSetDataAsset : public UOLSPrimaryDataAsset
{
GENERATED_BODY()
public:
//~ Begin UObject interface
#if WITH_EDITOR
virtual EDataValidationResult IsDataValid(class FDataValidationContext& context) const override;
#endif
//~ End UObject interface
//~ Begin UPrimaryDataAsset interface
#if WITH_EDITORONLY_DATA
virtual void UpdateAssetBundleData() override;
#endif
//~ End UPrimaryDataAsset interface
public:
// List of actions to perform as this experience is loaded/activated/deactivated/unloaded
UPROPERTY(EditAnywhere, Instanced, Category="Actions to Perform")
TArray<TObjectPtr<class UGameFeatureAction>> Actions;
// List of Game Feature Plugins this experience wants to have active
UPROPERTY(EditAnywhere, Category="Feature Dependencies")
TArray<FString> GameFeaturesToEnable;
};