#pragma once #include "CoreMinimal.h" #include "Components/ActorComponent.h" #include "BPC_StaminaSystem.generated.h" DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FOnExhaustionStateChanged, bool, bExhausted); UCLASS(Blueprintable, ClassGroup=(Framework), meta=(BlueprintSpawnableComponent)) class PG_FRAMEWORK_API UBPC_StaminaSystem : public UActorComponent { GENERATED_BODY() public: UBPC_StaminaSystem(); UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Framework|Stamina") float MaxStamina = 100.0f; UPROPERTY(BlueprintReadOnly, Category = "Framework|Stamina") float CurrentStamina = 100.0f; UPROPERTY(BlueprintAssignable, Category = "Framework|Events") FOnExhaustionStateChanged OnExhaustionStateChanged; };