// Project Lab - NHTV Igad #pragma once #include "Blueprint/UserWidget.h" #include "AbilityButton.generated.h" /** * */ UCLASS() class UNREALPROJECT_API UAbilityButton : public UUserWidget { GENERATED_BODY() public: void NativeConstruct() override; UFUNCTION(BlueprintImplementableEvent, Category = "Button") void SetupButton(class UAbilityInfo* info, bool enabled); UFUNCTION(BlueprintImplementableEvent, Category = "Button") void SetCooldown(float cooldown); UFUNCTION(BlueprintImplementableEvent, Category = "Button") void SetToggled(bool toggled); UFUNCTION(BlueprintImplementableEvent, Category = "Button") void SetIndex(int32 index, bool alt); UFUNCTION(BlueprintImplementableEvent, Category = "Button") void SetAbilityAvailable(bool available); class UAbilityInfo* GetAbility(); void InitButton(class UAbilityInfo* info, int32 index, bool alt); bool IsAssigned() const; void UpdateState(class AAbilityState* state, class ANetworkCharacter* character); void SetButtonEnabled(bool enabled); void SetGlobalEnable(bool enabled); private: int32 m_index; bool m_enabled; bool m_globalEnable; class UAbilityInfo* m_abilityInfo; };