haxis/Source/UnrealProject/Abilities/AbilityState.h

38 lines
877 B
C++

// Project Lab - NHTV Igad
#pragma once
#include "AbilityState.generated.h"
UCLASS()
class AAbilityState : public AActor
{
GENERATED_BODY()
public:
// Sets the ability to be on cooldown
virtual void NativeSetCooldown();
UFUNCTION(BlueprintNativeEvent, Category = "Ability State")
void SetCooldown();
UFUNCTION(BlueprintCallable, Category = "Ability State")
bool IsMaxed() const;
// Total duration of cooldown
UPROPERTY(BlueprintReadWrite)
float currentCooldownDuration;
// Current state of cooldown going from max->0
UPROPERTY(BlueprintReadWrite)
float onCooldownTimer;
// Current state of cooldown going from 1->0
UPROPERTY(BlueprintReadOnly)
float cooldownRate;
UPROPERTY(BlueprintReadOnly)
float power;
UPROPERTY(BlueprintReadOnly)
bool toggleState;
UPROPERTY(BlueprintReadOnly)
class UAbilityInfo* info;
};