vampires/Source/vampires/Widgets/UpgradeButtonDataObject.h
2025-07-28 23:42:39 +01:00

41 lines
1006 B
C++

// Louis Hobbs | 2024-2025
#pragma once
#include "CoreMinimal.h"
#include "UObject/Object.h"
#include "UpgradeButtonDataObject.generated.h"
class AWeapon;
/**
*
*/
UCLASS(BlueprintType)
class VAMPIRES_API UUpgradeButtonDataObject : public UObject
{
GENERATED_BODY()
public:
UPROPERTY(EditAnywhere, BlueprintReadWrite)
FText WeaponName;
UPROPERTY(EditAnywhere, BlueprintReadWrite)
FText WeaponDescription;
UPROPERTY(EditAnywhere, BlueprintReadWrite)
TObjectPtr<UTexture2D> WeaponIcon;
UPROPERTY(EditAnywhere, BlueprintReadWrite)
TSubclassOf<AWeapon> WeaponTemplate;
UPROPERTY(EditAnywhere, BlueprintReadWrite)
TObjectPtr<AWeapon> WeaponInstance;
UPROPERTY(EditAnywhere, BlueprintReadWrite)
TObjectPtr<UUserWidget> Parent;
void SetData(AWeapon* Weapon, UUserWidget* ParentWidget);
void SetData(TSubclassOf<AWeapon> Weapon, UUserWidget* ParentWidget);
void SetData(FText NewWeaponName, FText NewDescription, TObjectPtr<UTexture2D> NewWeaponIcon, UUserWidget* ParentWidget);
};