mirror of
https://github.com/ApfelTeeSaft/UnrealEvent.git
synced 2026-08-27 03:43:40 +00:00
184 lines
7.7 KiB
C++
184 lines
7.7 KiB
C++
#pragma once
|
|
#include "CoreMinimal.h"
|
|
#include "UObject/NoExportTypes.h"
|
|
#include "GameFramework/OnlineReplStructs.h"
|
|
#include "AsyncTaskCallbackDelegateDelegate.h"
|
|
#include "AsyncTaskResult.h"
|
|
#include "CreativeLoadedLinkData.h"
|
|
#include "EBackupSaveState.h"
|
|
#include "FortCreativePlotPermissionData.h"
|
|
#include "LevelSaveComponent.h"
|
|
#include "OnBackupRestoreStateChangedDelegate.h"
|
|
#include "OnBackupSaveStateChangedDelegate.h"
|
|
#include "OnDateChangedDelegate.h"
|
|
#include "OnSavingStateChangedDelegate.h"
|
|
#include "FortLevelSaveComponent.generated.h"
|
|
|
|
class UFortCreativeRealEstatePlotItem;
|
|
class UFortCreativeRealEstatePlotItemDefinition;
|
|
class UFortPlaysetItemDefinition;
|
|
|
|
UCLASS(Blueprintable, ClassGroup=Custom, meta=(BlueprintSpawnableComponent))
|
|
class FORTNITEGAME_API UFortLevelSaveComponent : public ULevelSaveComponent {
|
|
GENERATED_BODY()
|
|
public:
|
|
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
|
|
FAsyncTaskCallbackDelegate OnStartPlotLoadForUser;
|
|
|
|
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
|
|
FAsyncTaskCallbackDelegate OnFinishedReadingMnemonicLink;
|
|
|
|
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
|
|
FAsyncTaskCallbackDelegate OnFinishedPlaysetLoad;
|
|
|
|
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
|
|
FAsyncTaskCallbackDelegate OnFinishedEnumeratingFiles;
|
|
|
|
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
|
|
FAsyncTaskCallbackDelegate OnFinishedLoadingCloudFiles;
|
|
|
|
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
|
|
FAsyncTaskCallbackDelegate OnFinishedWritingCloudFiles;
|
|
|
|
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
|
|
FAsyncTaskCallbackDelegate OnFinishedEnumeratingTitleFiles;
|
|
|
|
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
|
|
FAsyncTaskCallbackDelegate OnFinishedReadingCloudFiles;
|
|
|
|
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
|
|
FOnSavingStateChanged OnClientSaveStateChanged;
|
|
|
|
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
|
|
FOnBackupSaveStateChanged OnClientBackupSaveStateChanged;
|
|
|
|
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
|
|
FOnBackupRestoreStateChanged OnClientBackupRestoreStateChanged;
|
|
|
|
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
|
|
FOnDateChanged OnClientCheckpointDateChanged;
|
|
|
|
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
|
|
FAsyncTaskCallbackDelegate OnPlotUnloaded;
|
|
|
|
protected:
|
|
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
|
|
UFortCreativeRealEstatePlotItemDefinition* RestrictedPlotDefinition;
|
|
|
|
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
|
|
bool bAutoLoadFromRestrictedPlotDefinition;
|
|
|
|
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
|
|
int32 LinkCodeNumberToAutoLoad;
|
|
|
|
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
|
|
bool bLoadPlaysetFromPlot;
|
|
|
|
UPROPERTY(BlueprintReadWrite, EditAnywhere, Replicated, Transient, meta=(AllowPrivateAccess=true))
|
|
FUniqueNetIdRepl AccountIdOfOwner;
|
|
|
|
UPROPERTY(BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
|
|
UFortCreativeRealEstatePlotItem* LoadedPlot;
|
|
|
|
UPROPERTY(BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
|
|
bool bPermissionsSaveInProgress;
|
|
|
|
UPROPERTY(BlueprintReadWrite, EditAnywhere, Replicated, Transient, meta=(AllowPrivateAccess=true))
|
|
bool bCurated;
|
|
|
|
UPROPERTY(BlueprintReadWrite, EditAnywhere, Transient, ReplicatedUsing=OnRep_PlotPermissionsChanged, meta=(AllowPrivateAccess=true))
|
|
FFortCreativePlotPermissionData PlotPermissions;
|
|
|
|
UPROPERTY(BlueprintReadWrite, EditAnywhere, Transient, ReplicatedUsing=OnRep_LoadedPlotInstanceId, meta=(AllowPrivateAccess=true))
|
|
FString LoadedPlotInstanceId;
|
|
|
|
UPROPERTY(BlueprintReadWrite, EditAnywhere, Transient, ReplicatedUsing=OnRep_LoadedLinkData, meta=(AllowPrivateAccess=true))
|
|
FCreativeLoadedLinkData LoadedLinkData;
|
|
|
|
UPROPERTY(BlueprintReadWrite, EditAnywhere, Transient, ReplicatedUsing=OnRep_Loaded, meta=(AllowPrivateAccess=true))
|
|
bool bIsLoaded;
|
|
|
|
UPROPERTY(BlueprintReadWrite, EditAnywhere, Transient, ReplicatedUsing=OnRep_IsAutoSaving, meta=(AllowPrivateAccess=true))
|
|
bool bIsAutoSaving;
|
|
|
|
UPROPERTY(BlueprintReadWrite, EditAnywhere, Transient, ReplicatedUsing=OnRep_BackupSaveState, meta=(AllowPrivateAccess=true))
|
|
EBackupSaveState BackupSaveState;
|
|
|
|
UPROPERTY(BlueprintReadWrite, EditAnywhere, Transient, ReplicatedUsing=OnRep_RestoringStateChanged, meta=(AllowPrivateAccess=true))
|
|
EBackupSaveState RestoringState;
|
|
|
|
UPROPERTY(BlueprintReadWrite, EditAnywhere, Transient, ReplicatedUsing=OnRep_LastCheckpointDate, meta=(AllowPrivateAccess=true))
|
|
FDateTime LastCheckpointDateUtc;
|
|
|
|
private:
|
|
UPROPERTY(BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
|
|
FFortCreativePlotPermissionData OldPermissions;
|
|
|
|
UPROPERTY(BlueprintReadWrite, Config, EditAnywhere, meta=(AllowPrivateAccess=true))
|
|
int32 PublishRateLimitSeconds;
|
|
|
|
UPROPERTY(BlueprintReadWrite, Config, EditAnywhere, meta=(AllowPrivateAccess=true))
|
|
int32 BackupRateLimitSeconds;
|
|
|
|
UPROPERTY(BlueprintReadWrite, Config, EditAnywhere, meta=(AllowPrivateAccess=true))
|
|
int32 RestoreRateLimitSeconds;
|
|
|
|
public:
|
|
UFortLevelSaveComponent();
|
|
virtual void GetLifetimeReplicatedProps(TArray<FLifetimeProperty>& OutLifetimeProps) const override;
|
|
|
|
private:
|
|
UFUNCTION(BlueprintCallable)
|
|
void RestrictedPlotLoadComplete(const FAsyncTaskResult& Result);
|
|
|
|
protected:
|
|
UFUNCTION(BlueprintCallable)
|
|
void OnRep_RestoringStateChanged(EBackupSaveState OldValue);
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void OnRep_PlotPermissionsChanged();
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void OnRep_LoadedPlotInstanceId();
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void OnRep_LoadedLinkData();
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void OnRep_Loaded();
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void OnRep_LastCheckpointDate(FDateTime OldValue);
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void OnRep_IsAutoSaving(bool bOldValue);
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void OnRep_BackupSaveState(EBackupSaveState OldValue);
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void OnAsyncLoadingOfPlaysetComplete(TSoftObjectPtr<UFortPlaysetItemDefinition> PlaysetPtr);
|
|
|
|
public:
|
|
UFUNCTION(BlueprintCallable, BlueprintPure)
|
|
bool IsLoaded() const;
|
|
|
|
UFUNCTION(BlueprintCallable, BlueprintPure)
|
|
bool IsCurated() const;
|
|
|
|
UFUNCTION(BlueprintCallable, BlueprintPure)
|
|
FUniqueNetIdRepl GetAccountIdOfOwner() const;
|
|
|
|
UFUNCTION(BlueprintCallable, BlueprintPure)
|
|
bool DoesPlayerHavePermissionToEdit(const FUniqueNetIdRepl& UserRequestingPermission) const;
|
|
|
|
private:
|
|
UFUNCTION(BlueprintCallable)
|
|
void CloudSaveFinished(const FAsyncTaskResult& Result);
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void CloudLoadFinished(const FAsyncTaskResult& Result);
|
|
|
|
};
|
|
|