DRG-Femboy-Voice/Source/FSD/Public/FSDEvent.h
2025-04-15 12:39:31 -07:00

125 lines
4.5 KiB
C++
Executable file

#pragma once
#include "CoreMinimal.h"
#include "UObject/NoExportTypes.h"
#include "UObject/NoExportTypes.h"
#include "Engine/DataAsset.h"
#include "ClaimableRewardView.h"
#include "EHolidayType.h"
#include "EncounterSpecialItem.h"
#include "FSDEventActivateChangedDelegate.h"
#include "JettyBootEventSettings.h"
#include "PlatformSpecificEventPopup.h"
#include "FSDEvent.generated.h"
class ADebrisDataActor;
class APlayerController;
class UCampaign;
class UDrinkableDataAsset;
class UFSDEvent;
class UFSDEventPopupWidget;
class UObject;
class USoundCue;
class UTexture2D;
class UWorld;
UCLASS(Blueprintable)
class FSD_API UFSDEvent : public UDataAsset {
GENERATED_BODY()
public:
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
FFSDEventActivateChanged OnActiveChanged;
protected:
UPROPERTY(AdvancedDisplay, BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
bool EnableDangerousSaveGameIDEditing;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
FGuid SavegameID;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
FName EventName;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
EHolidayType EventType;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
bool bFreeBeerEvent;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
bool bFreeBeerConfettiVisible;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
UDrinkableDataAsset* SpecialEventBeer;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
UTexture2D* SeasonEndScreenImage;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
TSoftObjectPtr<USoundCue> EventAmbienceMusic;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
bool UseDifferentBarLightColor;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
FLinearColor SpaceRigBarLightColor;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
TArray<FEncounterSpecialItem> EventEncounters;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
TArray<TSoftClassPtr<ADebrisDataActor>> EventDebris;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
bool bIsEventDebrisInDeepDives;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
TArray<TSoftObjectPtr<UWorld>> SpacerigSublevels;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
TArray<TSoftObjectPtr<UWorld>> UnloadSpacerigSublevels;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
bool bHasClaimableRewards;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
FClaimableRewardView ClaimableRewards;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
TArray<FPlatformSpecificEventPopup> OptionalPopUpWindow;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
TArray<TSoftClassPtr<UCampaign>> Campaigns;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
TSoftObjectPtr<UTexture2D> TitleScreenOverride;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
FJettyBootEventSettings JettyBootSettings;
public:
UFSDEvent();
UFUNCTION(BlueprintCallable, meta=(WorldContext="WorldContext"))
void MarkClaimableRewardsSeen(UObject* WorldContext);
protected:
UFUNCTION(BlueprintCallable, BlueprintPure, meta=(WorldContext="WorldContext"))
static bool IsFsdEventActive(UObject* WorldContext, const UFSDEvent* FSDEvent);
public:
UFUNCTION(BlueprintCallable, BlueprintPure, meta=(WorldContext="WorldContext"))
bool HasUnseenClaimableRewards(UObject* WorldContext);
UFUNCTION(BlueprintCallable)
bool GiveRewards(APlayerController* PlayerController);
UFUNCTION(BlueprintCallable)
UTexture2D* GetTitleScreenOverride();
UFUNCTION(BlueprintCallable, BlueprintPure, meta=(WorldContext="WorldContext"))
bool GetIsActive(UObject* WorldContext) const;
UFUNCTION(BlueprintCallable)
UFSDEventPopupWidget* CreatePopupWindow(APlayerController* InPlayerController);
};