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

93 lines
3.2 KiB
C++
Executable file

#pragma once
#include "CoreMinimal.h"
#include "UObject/Object.h"
#include "CommunityFactionData.h"
#include "CommunityGoalStateData.h"
#include "CommunityRewardNotification.h"
#include "FactionsDataDelegateDelegate.h"
#include "GoalStateDelegateDelegate.h"
#include "OnFreeBeersChangedDelegateDelegate.h"
#include "UICheckDelegateDelegate.h"
#include "CommunityGoalWrapper.generated.h"
class UCommunityGoal;
class UCommunityGoalFaction;
UCLASS(Blueprintable)
class UCommunityGoalWrapper : public UObject {
GENERATED_BODY()
public:
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
bool HasCGS;
UPROPERTY(BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
FCommunityGoalStateData CGSData;
UPROPERTY(BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
int32 LastCollectedRewardID;
UPROPERTY(BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
FCommunityFactionData FactionData;
protected:
UPROPERTY(BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
bool FreeBeerRewardActive;
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
FOnFreeBeersChangedDelegate OnFreeBeerRewardChanged;
UPROPERTY(BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
FString SteamTicket;
UPROPERTY(BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
FString SteamBranch;
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
FFactionsDataDelegate OnFactionsDataReceived;
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
FGoalStateDelegate OnDiscordCGSDataEvent;
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
FUICheckDelegate UICheck;
UPROPERTY(BlueprintAssignable, BlueprintReadWrite, EditAnywhere, meta=(AllowPrivateAccess=true))
FUICheckDelegate OnGoalsInitializedDelegate;
UPROPERTY(BlueprintReadWrite, EditAnywhere, Transient, meta=(AllowPrivateAccess=true))
bool AreAllGoalsInitialized;
public:
UCommunityGoalWrapper();
UFUNCTION(BlueprintCallable)
void UpdateAllGoalsInitialized();
UFUNCTION(BlueprintCallable, BlueprintPure)
bool RewardReceived() const;
UFUNCTION(BlueprintCallable)
void RequestGoalStateData();
UFUNCTION(BlueprintCallable)
void RequestFactionsData();
UFUNCTION(BlueprintCallable)
void NextPeriod();
UFUNCTION(BlueprintCallable)
void InitializeGoalTierTargetValues(UCommunityGoal* goalToInitialize);
UFUNCTION(BlueprintCallable, BlueprintPure, meta=(WorldContext="WorldContext"))
UCommunityGoalFaction* GetPlayerCurrentFaction(UObject* WorldContext);
UFUNCTION(BlueprintCallable, meta=(WorldContext="WorldContext"))
void ClaimRewardMessage(UObject* WorldContext, FCommunityRewardNotification rewardNotification);
UFUNCTION(BlueprintCallable)
void ClaimReward();
UFUNCTION(BlueprintCallable)
void CheckUI();
};