Space Plunder
Loading...
Searching...
No Matches
QuestReporter.h
Go to the documentation of this file.
1// Fill out your copyright notice in the Description page of Project Settings.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "UObject/Interface.h"
7#include "QuestReporter.generated.h"
8
9struct FUniqueID;
10enum class EQuestStatus : uint8;
12// This class does not need to be modified.
13UINTERFACE(MinimalAPI, meta = (CannotImplementInterfaceInBlueprint))
14class UQuestReporter : public UInterface
15{
16 GENERATED_BODY()
17};
18
22class QUESTSYSTEM_API IQuestReporter
23{
24 GENERATED_BODY()
25
26 // Add interface functions to this class. This is the class that will be inherited to implement this interface.
27public:
28
29 // UFUNCTION(BlueprintCallable, Category="Quest System")
30 // virtual FPlayerQuestStatus GetPlayerQuestStatus() const = 0;
31 // UFUNCTION(BlueprintCallable, Category="Quest System")
32 // virtual bool AddQuestPlayer(class IQuestPlayer* QuestPlayer) = 0;
33
34
35 // UFUNCTION(BlueprintCallable, Category="Quest System")
36 // virtual void ObjectiveGoalComplete(const FString& ObjectiveID) = 0;
37 // UFUNCTION(BlueprintCallable, Category="Quest System")
38 // virtual void SetPlayerQuestStatus(const FPlayerQuestStatus& QuestStatus) = 0;
39 UFUNCTION(BlueprintCallable, Category="Quest System")
40 virtual int32 RegisterQuestGoal(UActorComponent* QuestGoalComponentRef) = 0;
41
42 // UFUNCTION(BlueprintCallable, Category="Quest System")
43 // virtual void QuestGoalComplete(const FString& ObjectiveID, const FString& QuestItemID) = 0;
44 UFUNCTION(BlueprintCallable, Category="Quest System")
45 virtual void QuestGoalFailed(UActorComponent* QuestGoalComponentRef) = 0;
46 UFUNCTION(BlueprintCallable, Category="Quest System")
47 virtual void QuestFailed(UActorComponent* QuestGoalComponentRef, const FUniqueID& QuestID) = 0;
48
49 // UFUNCTION(BlueprintCallable, Category="Quest System")
50 // virtual void RequestDestroyQuestGoal(UActorComponent* QuestGoalComponentRef) = 0;
51 // UFUNCTION(BlueprintCallable, Category="Quest System")
52 // virtual void RequestCreateWaypoint(UActorComponent* QuestGoalComponentRef) = 0;
53 // UFUNCTION(BlueprintCallable, Category="Quest System")
54 // virtual void RequestDestroyWaypoint(UActorComponent* QuestGoalComponentRef) = 0;
55 UFUNCTION(BlueprintCallable, Category="Quest System")
56 virtual void AddCredits(const int32 Amount) = 0;
57 UFUNCTION(BlueprintCallable, Category="Quest System")
58 virtual void AddExperience(const int32 Amount) = 0;
59
60 UFUNCTION(BlueprintCallable, Category="Quest System")
61 virtual bool AddQuest(AActor* Caller, const FString& QuestID, const int32 ReporterID) = 0;
62
63 UFUNCTION(BlueprintCallable, Category="Quest System")
64 virtual void AddObjectiveAmount(const FString& ObjectiveID, const int32 Amount) = 0;
65 UFUNCTION(BlueprintCallable, Category="Quest System")
66 virtual void AddObjectivePenaltyAmount(const FString& ObjectiveID, const int32 Amount) = 0;
67 UFUNCTION(BlueprintCallable, Category="Quest System")
68 virtual void AddObjectiveUniqueAmount(const FUniqueID& ObjectiveID, const int32 Amount) = 0;
69 UFUNCTION(BlueprintCallable, Category="Quest System")
70 virtual void AddObjectivePenaltyUniqueAmount(const FUniqueID& ObjectiveID, const int32 Amount) = 0;
71
72 UFUNCTION(BlueprintCallable, Category="Quest System")
73 virtual void DebugFinishQuest(const struct FQuestInfo& QuestInfo, const EQuestStatus Outcome) = 0;
74 UFUNCTION(BlueprintCallable, Category="Quest System")
75 virtual void DebugRemoveQuest(const struct FQuestInfo& QuestInfo) = 0;
76
77
78};
EQuestStatus
Definition QuestData.h:57
Definition QuestReporter.h:23
Definition QuestReporter.h:15
Definition QuestData.h:1117
Definition QuestData.h:798
Definition BaseData.h:253