Files
Aura-TopDownRPG-GAS/Source/Aura/Public/Character/AuraEnemy.h

55 lines
1.4 KiB
C
Raw Normal View History

2025-10-14 22:20:59 -04:00
// Copyright Echo Devgroup
#pragma once
#include "CoreMinimal.h"
2025-10-18 11:28:42 -04:00
#include "AbilitySystem/Data/CharacterClassInfo.h"
2025-10-14 22:20:59 -04:00
#include "Character/AuraCharacterBase.h"
#include "Interact/EnemyInterface.h"
#include "UI/WidgetController/OverlayWidgetController.h"
2025-10-14 22:20:59 -04:00
#include "AuraEnemy.generated.h"
class UWidgetComponent;
2025-10-14 22:20:59 -04:00
/**
*
*/
UCLASS()
class AURA_API AAuraEnemy : public AAuraCharacterBase, public IEnemyInterface
{
GENERATED_BODY()
public:
AAuraEnemy();
bool bHighlighted = false;
2025-10-14 22:20:59 -04:00
//Enemy Interface
virtual void HighlightActor() override;
virtual void UnHighlightActor() override;
virtual int32 GetPlayerLevel() override;
UPROPERTY(BlueprintAssignable)
FOnAttributeChangedSignature OnHealthChanged;
UPROPERTY(BlueprintAssignable)
FOnAttributeChangedSignature OnMaxHealthChanged;
2025-10-14 22:20:59 -04:00
protected:
virtual void BeginPlay() override;
virtual void InitAbilityActorInfo() override;
2025-10-18 11:28:42 -04:00
virtual void InitializeDefaultAttributes() const override;
2025-10-14 22:20:59 -04:00
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Character Class Defaults")
int32 Level = 1;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Character Class Defaults")
FText Name;
2025-10-18 11:28:42 -04:00
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Character Class Defaults")
ECharacterClass CharacterClass = ECharacterClass::Warrior;
UPROPERTY(VisibleAnywhere, BlueprintReadOnly)
TObjectPtr<UWidgetComponent> HealthBar;
2025-10-17 16:43:49 -04:00
2025-10-14 22:20:59 -04:00
private:
};