45 lines
877 B
C++
45 lines
877 B
C++
// © 2025 Naked People Team. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "UObject/Object.h"
|
|
#include "GoalRestriction.generated.h"
|
|
|
|
class ANakedDesireCharacter;
|
|
class UGoalRestriction;
|
|
|
|
DECLARE_MULTICAST_DELEGATE_OneParam(FMissionRestrictionUpdateSignature, UGoalRestriction*);
|
|
|
|
/**
|
|
*
|
|
*/
|
|
UCLASS(EditInlineNew, BlueprintType)
|
|
class NAKEDDESIRE_API UGoalRestriction : public UObject
|
|
{
|
|
GENERATED_BODY()
|
|
|
|
public:
|
|
FMissionRestrictionUpdateSignature OnUpdate;
|
|
|
|
UFUNCTION(BlueprintPure)
|
|
bool GetIsSuccess() const
|
|
{
|
|
return IsSuccess;
|
|
}
|
|
|
|
virtual void Init(ANakedDesireCharacter* PlayerCharacter);
|
|
virtual void Complete();
|
|
virtual void Complete(bool Value);
|
|
virtual void Stop() {};
|
|
|
|
UFUNCTION(BlueprintPure)
|
|
virtual FText GetDescription() const;
|
|
|
|
protected:
|
|
UPROPERTY()
|
|
ANakedDesireCharacter* Player = nullptr;
|
|
|
|
bool IsSuccess = false;
|
|
};
|