Compare commits
3 Commits
a07705c683
...
5df127f3ed
| Author | SHA1 | Date | |
|---|---|---|---|
| 5df127f3ed | |||
| 99a6d3b35a | |||
| 7718b4b3c0 |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -2,7 +2,7 @@
|
|||||||
"BuildId": "37670630",
|
"BuildId": "37670630",
|
||||||
"Modules":
|
"Modules":
|
||||||
{
|
{
|
||||||
"ProjectFish": "UnrealEditor-ProjectFish-0001.dll",
|
"ProjectFish": "UnrealEditor-ProjectFish.dll",
|
||||||
"ProjectFishEditor": "UnrealEditor-ProjectFishEditor-0001.dll"
|
"ProjectFishEditor": "UnrealEditor-ProjectFishEditor.dll"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
BIN
ProjectFish/Content/DataTable/DT_MarketQuestDialogue.uasset
Normal file
BIN
ProjectFish/Content/DataTable/DT_MarketQuestDialogue.uasset
Normal file
Binary file not shown.
BIN
ProjectFish/Content/Textures/Market/MarketNPC.uasset
Normal file
BIN
ProjectFish/Content/Textures/Market/MarketNPC.uasset
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
ProjectFish/Content/UI/Market/Window/UMG_Market_Dialogue.uasset
Normal file
BIN
ProjectFish/Content/UI/Market/Window/UMG_Market_Dialogue.uasset
Normal file
Binary file not shown.
BIN
ProjectFish/Content/UI/Market/Window/UMG_Market_Normal.uasset
Normal file
BIN
ProjectFish/Content/UI/Market/Window/UMG_Market_Normal.uasset
Normal file
Binary file not shown.
BIN
ProjectFish/Content/UI/Market/Window/UMG_Market_Quest.uasset
Normal file
BIN
ProjectFish/Content/UI/Market/Window/UMG_Market_Quest.uasset
Normal file
Binary file not shown.
Binary file not shown.
@ -2,6 +2,6 @@
|
|||||||
"BuildId": "37670630",
|
"BuildId": "37670630",
|
||||||
"Modules":
|
"Modules":
|
||||||
{
|
{
|
||||||
"DeskMode": "UnrealEditor-DeskMode-0001.dll"
|
"DeskMode": "UnrealEditor-DeskMode.dll"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -40,6 +40,7 @@
|
|||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ACoreUObject_002Fd_003APublic_002Fd_003AUObject_002Ff_003AUnrealType_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ACoreUObject_002Fd_003APublic_002Fd_003AUObject_002Ff_003AUnrealType_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ACoreUObject_002Fd_003APublic_002Fd_003AUObject_002Ff_003AUObjectArray_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ACoreUObject_002Fd_003APublic_002Fd_003AUObject_002Ff_003AUObjectArray_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ACoreUObject_002Fd_003APublic_002Fd_003AUObject_002Ff_003AUObjectBase_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ACoreUObject_002Fd_003APublic_002Fd_003AUObject_002Ff_003AUObjectBase_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ACore_002Fd_003APublic_002Fd_003ATemplates_002Ff_003ASharedPointerInternals_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ACore_002Fd_003APublic_002Fd_003ATemplates_002Ff_003ASharedPointer_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ACore_002Fd_003APublic_002Fd_003ATemplates_002Ff_003ASharedPointer_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ACore_002Fd_003APublic_002Fd_003ATemplates_002Ff_003ATuple_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ACore_002Fd_003APublic_002Fd_003ATemplates_002Ff_003ATuple_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003AEngine_002Fd_003AClasses_002Fd_003AEngine_002Ff_003AEngine_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003AEngine_002Fd_003AClasses_002Fd_003AEngine_002Ff_003AEngine_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
@ -48,5 +49,12 @@
|
|||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003AEngine_002Fd_003APrivate_002Ff_003AGameplayStatics_002Ecpp/@EntryIndexedValue">ForceIncluded</s:String>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003AEngine_002Fd_003APrivate_002Ff_003AGameplayStatics_002Ecpp/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003AEngine_002Fd_003APrivate_002Ff_003AUnrealEngine_002Ecpp/@EntryIndexedValue">ForceIncluded</s:String>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003AEngine_002Fd_003APrivate_002Ff_003AUnrealEngine_002Ecpp/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ASlate_002Fd_003APrivate_002Fd_003AFramework_002Fd_003AApplication_002Ff_003ASlateApplication_002Ecpp/@EntryIndexedValue">ForceIncluded</s:String>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ASlate_002Fd_003APrivate_002Fd_003AFramework_002Fd_003AApplication_002Ff_003ASlateApplication_002Ecpp/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ASlate_002Fd_003APrivate_002Fd_003AWidgets_002Fd_003ALayout_002Ff_003ASDPIScaler_002Ecpp/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ASlate_002Fd_003APublic_002Fd_003AFramework_002Fd_003AApplication_002Ff_003ASlateApplication_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ASlate_002Fd_003APublic_002Fd_003AFramework_002Fd_003AApplication_002Ff_003ASlateApplication_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ASlate_002Fd_003APublic_002Fd_003AWidgets_002Fd_003ALayout_002Ff_003ASBorder_002Eh/@EntryIndexedValue">ForceIncluded</s:String></wpf:ResourceDictionary>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ASlate_002Fd_003APublic_002Fd_003AWidgets_002Fd_003ALayout_002Ff_003ASBorder_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ASlate_002Fd_003APublic_002Fd_003AWidgets_002Fd_003ALayout_002Ff_003ASDPIScaler_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ASlateCore_002Fd_003APrivate_002Fd_003ALayout_002Ff_003AVisibility_002Ecpp/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003ASlateCore_002Fd_003APublic_002Fd_003ALayout_002Ff_003AVisibility_002Eh/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003AUMG_002Fd_003APrivate_002Fd_003ASlate_002Ff_003AUMGDragDropOp_002Ecpp/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003AUMG_002Fd_003APrivate_002Ff_003ADragDropOperation_002Ecpp/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=72263A5F_002DD5F9_002D3915_002D8DA0_002DCD45C38A70E5_002Fdl_003ASource_003AF_0021_003FEpic_003FUE_005F5_002E5_003FEngine_003FSource_002Fd_003ARuntime_002Fd_003AUMG_002Fd_003APublic_002Fd_003ASlate_002Ff_003AUMGDragDropOp_002Eh/@EntryIndexedValue">ForceIncluded</s:String></wpf:ResourceDictionary>
|
||||||
@ -6,6 +6,7 @@
|
|||||||
#include "GameplayTagContainer.h"
|
#include "GameplayTagContainer.h"
|
||||||
#include "PawnWithSkill.h"
|
#include "PawnWithSkill.h"
|
||||||
#include "DataAsset/ShapeAsset.h"
|
#include "DataAsset/ShapeAsset.h"
|
||||||
|
#include "Quest/QuestTypes.h"
|
||||||
#include "UObject/Object.h"
|
#include "UObject/Object.h"
|
||||||
#include "Definations.generated.h"
|
#include "Definations.generated.h"
|
||||||
|
|
||||||
@ -462,6 +463,20 @@ struct FSimpleConnection
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
USTRUCT(BlueprintType)
|
||||||
|
struct FMarketQuestDialogue: public FTableRowBase
|
||||||
|
{
|
||||||
|
GENERATED_BODY()
|
||||||
|
public:
|
||||||
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, meta = (ToolTip = "任务对话"))
|
||||||
|
FText QuestTitle;
|
||||||
|
|
||||||
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, meta = (ToolTip = "任务对话"))
|
||||||
|
FText QuestDialogue;
|
||||||
|
|
||||||
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, meta = (ToolTip = "任务ID"))
|
||||||
|
int32 QuestID;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -82,7 +82,7 @@ bool UQuestManager::AcceptQuest(UQuestAsset* QuestAsset, bool bSaveGameInfo )
|
|||||||
ActiveQuestsMap.Add(QuestAsset->QuestID, RuntimeData);
|
ActiveQuestsMap.Add(QuestAsset->QuestID, RuntimeData);
|
||||||
|
|
||||||
// 触发事件
|
// 触发事件
|
||||||
OnQuestStateChanged.Broadcast(QuestAsset->QuestID);
|
OnQuestStateChanged.Broadcast(QuestAsset->QuestID, EQuestState::InProgress);
|
||||||
UE_LOG(LogTemp, Warning, TEXT("Quest %s Accepted"), *QuestAsset->QuestName.ToString());
|
UE_LOG(LogTemp, Warning, TEXT("Quest %s Accepted"), *QuestAsset->QuestName.ToString());
|
||||||
|
|
||||||
if (bSaveGameInfo)
|
if (bSaveGameInfo)
|
||||||
@ -138,7 +138,7 @@ bool UQuestManager::CompleteQuest(int32 QuestID)
|
|||||||
CompletedQuestIDs.Add(QuestID);
|
CompletedQuestIDs.Add(QuestID);
|
||||||
|
|
||||||
// 触发事件
|
// 触发事件
|
||||||
OnQuestStateChanged.Broadcast(QuestID);
|
OnQuestStateChanged.Broadcast(QuestID, EQuestState::Completed);
|
||||||
UE_LOG(LogTemp, Warning, TEXT("Quest id = %d Complete"), QuestID);
|
UE_LOG(LogTemp, Warning, TEXT("Quest id = %d Complete"), QuestID);
|
||||||
// // 从活动任务中移除
|
// // 从活动任务中移除
|
||||||
// ActiveQuestsMap.Remove(QuestID);
|
// ActiveQuestsMap.Remove(QuestID);
|
||||||
@ -158,7 +158,7 @@ bool UQuestManager::AbandonQuest(int32 QuestID)
|
|||||||
}
|
}
|
||||||
|
|
||||||
ActiveQuestsMap.Remove(QuestID);
|
ActiveQuestsMap.Remove(QuestID);
|
||||||
OnQuestStateChanged.Broadcast(QuestID);
|
OnQuestStateChanged.Broadcast(QuestID, EQuestState::Failed);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -246,6 +246,23 @@ bool UQuestManager::IsQuestFollowing(int32 QuestID) const
|
|||||||
return FollowingQuestIDs.Contains(QuestID);
|
return FollowingQuestIDs.Contains(QuestID);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TArray<FQuestTargetInfo> UQuestManager::GetQuestTargets(int32 QuestID) const
|
||||||
|
{
|
||||||
|
TArray<FQuestTargetInfo> Targets;
|
||||||
|
for (auto quest:QuestAssets)
|
||||||
|
{
|
||||||
|
if (quest->QuestID == QuestID)
|
||||||
|
{
|
||||||
|
for (auto TargetInfo: quest->Objectives)
|
||||||
|
{
|
||||||
|
Targets.Add(TargetInfo.TargetID);
|
||||||
|
}
|
||||||
|
return Targets;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return Targets;
|
||||||
|
}
|
||||||
|
|
||||||
TArray<UQuestAsset*> UQuestManager::GetActiveQuests() const
|
TArray<UQuestAsset*> UQuestManager::GetActiveQuests() const
|
||||||
{
|
{
|
||||||
TArray<UQuestAsset*> Result;
|
TArray<UQuestAsset*> Result;
|
||||||
|
|||||||
@ -31,7 +31,7 @@ struct FQuestRuntimeData
|
|||||||
};
|
};
|
||||||
|
|
||||||
// 任务事件委托
|
// 任务事件委托
|
||||||
DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FOnQuestStateChanged, int32, QuestID);
|
DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnQuestStateChanged, int32, QuestID, EQuestState, QuestState);
|
||||||
DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnQuestObjectiveUpdated, int32, QuestID, int32, ObjectiveIndex);
|
DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnQuestObjectiveUpdated, int32, QuestID, int32, ObjectiveIndex);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -74,7 +74,7 @@ public:
|
|||||||
// ========== 任务进度 ==========
|
// ========== 任务进度 ==========
|
||||||
|
|
||||||
/** 更新任务目标进度(收集物品、击败敌人、到达地点) */
|
/** 更新任务目标进度(收集物品、击败敌人、到达地点) */
|
||||||
UFUNCTION(BlueprintCallable, Category = "Quest")
|
//UFUNCTION(BlueprintCallable, Category = "Quest")
|
||||||
void UpdateObjectiveProgress(int32 QuestID, int32 ObjectiveIndex, int32 Progress);
|
void UpdateObjectiveProgress(int32 QuestID, int32 ObjectiveIndex, int32 Progress);
|
||||||
|
|
||||||
/** 通过目标ID更新进度(自动查找对应目标) */
|
/** 通过目标ID更新进度(自动查找对应目标) */
|
||||||
@ -91,6 +91,10 @@ public:
|
|||||||
UFUNCTION(BlueprintPure, Category = "Quest")
|
UFUNCTION(BlueprintPure, Category = "Quest")
|
||||||
bool IsQuestFollowing(int32 QuestID) const;
|
bool IsQuestFollowing(int32 QuestID) const;
|
||||||
|
|
||||||
|
/** 获取指定任务的任务目标 */
|
||||||
|
UFUNCTION(BlueprintPure, Category = "Quest")
|
||||||
|
TArray<FQuestTargetInfo> GetQuestTargets(int32 QuestID) const;
|
||||||
|
|
||||||
/** 获取所有进行中的任务 */
|
/** 获取所有进行中的任务 */
|
||||||
UFUNCTION(BlueprintPure, Category = "Quest")
|
UFUNCTION(BlueprintPure, Category = "Quest")
|
||||||
TArray<UQuestAsset*> GetActiveQuests() const;
|
TArray<UQuestAsset*> GetActiveQuests() const;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user