// Copyright Echo Devgroup #pragma once #include "CoreMinimal.h" #include "GameFramework/HUD.h" #include "UI/WidgetController/AttributeMenuWidgetController.h" #include "AuraHUD.generated.h" class UAbilitySystemComponent; class UAttributeSet; class UOverlayWidgetController; class UAttributeMenuWidgetController; class UAuraUserWidget; struct FWidgetControllerParams; /** * */ UCLASS() class AURA_API AAuraHUD : public AHUD { GENERATED_BODY() public: UOverlayWidgetController* GetOverlayWidgetController(const FWidgetControllerParams& WCParams); UAttributeMenuWidgetController* GetAttributeMenuWidgetController(const FWidgetControllerParams& WCParams); void InitOverlay(APlayerController* PC, APlayerState* PS, UAbilitySystemComponent* ASC, UAttributeSet* AS); protected: private: UPROPERTY() TObjectPtr OverlayWidget; UPROPERTY(EditAnywhere) TSubclassOf OverlayWidgetClass; UPROPERTY() TObjectPtr OverlayWidgetController; UPROPERTY(EditAnywhere) TSubclassOf OverlayWidgetControllerClass; UPROPERTY() TObjectPtr AttributeMenuWidgetController; UPROPERTY(EditAnywhere) TSubclassOf AttributeMenuWidgetControllerClass; };