#pragma once #include "CoreMinimal.h" #include "Engine/DataAsset.h" #include "ECampaignMutators.h" #include "RequiredMissionItem.h" #include "CampaignMission.generated.h" class UDialogDataAsset; class UMissionTemplate; class UMissionWarning; class UPlanetZone; class UReward; UCLASS(Blueprintable, EditInlineNew) class FSD_API UCampaignMission : public UDataAsset { GENERATED_BODY() public: protected: UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true)) UPlanetZone* PlanetZone; UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true)) FRequiredMissionItem mission; UPROPERTY(BlueprintReadWrite, EditAnywhere, Instanced, meta=(AllowPrivateAccess=true)) TArray Rewards; UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true)) UDialogDataAsset* MissionCompleteShout; UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true)) bool OverrideMutators; UPROPERTY(EditAnywhere, meta=(AllowPrivateAccess=true)) ECampaignMutators MutatorOverride; UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true)) TArray AllowedWarnings; public: UCampaignMission(); UFUNCTION(BlueprintCallable, BlueprintPure) UMissionTemplate* GetMissionTemplate() const; };