Fix quest chain logic
This commit is contained in:
parent
ba33cdce4b
commit
8c808c8fde
@ -83,7 +83,7 @@
|
|||||||
"Y": -14.999356,
|
"Y": -14.999356,
|
||||||
"Z": 204.42505
|
"Z": 204.42505
|
||||||
},
|
},
|
||||||
"StopDistance": 5,
|
"StopDistance": 7,
|
||||||
"TerritoryId": 1185,
|
"TerritoryId": 1185,
|
||||||
"InteractionType": "CompleteQuest"
|
"InteractionType": "CompleteQuest"
|
||||||
}
|
}
|
||||||
|
@ -44,7 +44,8 @@
|
|||||||
"Z": 618.2803
|
"Z": 618.2803
|
||||||
},
|
},
|
||||||
"TerritoryId": 957,
|
"TerritoryId": 957,
|
||||||
"InteractionType": "Interact"
|
"InteractionType": "Interact",
|
||||||
|
"AetheryteShortcut": "Thavnair - Yedlihmad"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
@ -0,0 +1,98 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1051434,
|
||||||
|
"Position": {
|
||||||
|
"X": 28.580078,
|
||||||
|
"Y": -14,
|
||||||
|
"Z": 75.66943
|
||||||
|
},
|
||||||
|
"TerritoryId": 1185,
|
||||||
|
"InteractionType": "AcceptQuest"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1051435,
|
||||||
|
"Position": {
|
||||||
|
"X": 383.1692,
|
||||||
|
"Y": -17.700003,
|
||||||
|
"Z": -771.3283
|
||||||
|
},
|
||||||
|
"TerritoryId": 1190,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AetheryteShortcut": "Shaaloani - Mehwahhetsoan",
|
||||||
|
"Fly": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 2,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"TerritoryId": 1190,
|
||||||
|
"InteractionType": "Duty",
|
||||||
|
"ContentFinderConditionId": 834
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 3,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1051435,
|
||||||
|
"Position": {
|
||||||
|
"X": 383.1692,
|
||||||
|
"Y": -17.700003,
|
||||||
|
"Z": -771.3283
|
||||||
|
},
|
||||||
|
"TerritoryId": 1190,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AetheryteShortcut": "Shaaloani - Mehwahhetsoan",
|
||||||
|
"SkipIf": [
|
||||||
|
"AetheryteShortcutIfInSameTerritory"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 4,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1051436,
|
||||||
|
"Position": {
|
||||||
|
"X": 476.73767,
|
||||||
|
"Y": 114.935,
|
||||||
|
"Z": 661.6769
|
||||||
|
},
|
||||||
|
"TerritoryId": 1187,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AetheryteShortcut": "Urqopacha - Worlar's Echo"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1051438,
|
||||||
|
"Position": {
|
||||||
|
"X": -498.7717,
|
||||||
|
"Y": 59.21188,
|
||||||
|
"Z": 145.00647
|
||||||
|
},
|
||||||
|
"TerritoryId": 1187,
|
||||||
|
"InteractionType": "CompleteQuest"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,37 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1051413,
|
||||||
|
"Position": {
|
||||||
|
"X": -75.21173,
|
||||||
|
"Y": -10.00001,
|
||||||
|
"Z": 138.8418
|
||||||
|
},
|
||||||
|
"TerritoryId": 1185,
|
||||||
|
"InteractionType": "AcceptQuest"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1048541,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.5141,
|
||||||
|
"Y": -14,
|
||||||
|
"Z": 137.40747
|
||||||
|
},
|
||||||
|
"TerritoryId": 1185,
|
||||||
|
"InteractionType": "CompleteQuest",
|
||||||
|
"NextQuestId": 5010
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
52
QuestPaths/Dawntrail/Unlocks/Hunts/5010_Why We Hunt.json
Normal file
52
QuestPaths/Dawntrail/Unlocks/Hunts/5010_Why We Hunt.json
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1048541,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.5141,
|
||||||
|
"Y": -14,
|
||||||
|
"Z": 137.40747
|
||||||
|
},
|
||||||
|
"TerritoryId": 1185,
|
||||||
|
"InteractionType": "AcceptQuest"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1051414,
|
||||||
|
"Position": {
|
||||||
|
"X": -90.348694,
|
||||||
|
"Y": -19.6019,
|
||||||
|
"Z": 212.54285
|
||||||
|
},
|
||||||
|
"TerritoryId": 1185,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1048541,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.5141,
|
||||||
|
"Y": -14,
|
||||||
|
"Z": 137.40747
|
||||||
|
},
|
||||||
|
"TerritoryId": 1185,
|
||||||
|
"InteractionType": "CompleteQuest",
|
||||||
|
"NextQuestId": 5011
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
106
QuestPaths/Dawntrail/Unlocks/Hunts/5011_Hunting the Hunter.json
Normal file
106
QuestPaths/Dawntrail/Unlocks/Hunts/5011_Hunting the Hunter.json
Normal file
@ -0,0 +1,106 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1048541,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.5141,
|
||||||
|
"Y": -14,
|
||||||
|
"Z": 137.40747
|
||||||
|
},
|
||||||
|
"TerritoryId": 1185,
|
||||||
|
"InteractionType": "AcceptQuest"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1049457,
|
||||||
|
"Position": {
|
||||||
|
"X": -223.92621,
|
||||||
|
"Y": 30,
|
||||||
|
"Z": -603.11285
|
||||||
|
},
|
||||||
|
"TerritoryId": 1191,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AetheryteShortcut": "Heritage Found - The Outskirts"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 2,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": -65.20557,
|
||||||
|
"Y": 38.80659,
|
||||||
|
"Z": -459.1674
|
||||||
|
},
|
||||||
|
"TerritoryId": 1186,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"AetheryteShortcut": "Solution Nine",
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Solution Nine] Aetheryte Plaza",
|
||||||
|
"[Solution Nine] Resolution"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1049180,
|
||||||
|
"Position": {
|
||||||
|
"X": -67.27704,
|
||||||
|
"Y": 38.80659,
|
||||||
|
"Z": -459.22028
|
||||||
|
},
|
||||||
|
"TerritoryId": 1186,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 3,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1051415,
|
||||||
|
"Position": {
|
||||||
|
"X": -400.351,
|
||||||
|
"Y": 14.029996,
|
||||||
|
"Z": 112.26062
|
||||||
|
},
|
||||||
|
"TerritoryId": 1186,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Solution Nine] Resolution",
|
||||||
|
"[Solution Nine] Residential Sector"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1048541,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.5141,
|
||||||
|
"Y": -14,
|
||||||
|
"Z": 137.40747
|
||||||
|
},
|
||||||
|
"TerritoryId": 1185,
|
||||||
|
"InteractionType": "CompleteQuest",
|
||||||
|
"AetheryteShortcut": "Tuliyollal",
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Tuliyollal] Aetheryte Plaza",
|
||||||
|
"[Tuliyollal] Bayside Bevy Marketplace"
|
||||||
|
],
|
||||||
|
"NextQuestId": 5012
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,61 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1048541,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.5141,
|
||||||
|
"Y": -14,
|
||||||
|
"Z": 137.40747
|
||||||
|
},
|
||||||
|
"TerritoryId": 1185,
|
||||||
|
"InteractionType": "AcceptQuest"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1051415,
|
||||||
|
"Position": {
|
||||||
|
"X": -400.351,
|
||||||
|
"Y": 14.029996,
|
||||||
|
"Z": 112.26062
|
||||||
|
},
|
||||||
|
"TerritoryId": 1186,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AetheryteShortcut": "Solution Nine",
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Solution Nine] Aetheryte Plaza",
|
||||||
|
"[Solution Nine] Residential Sector"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1048541,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.5141,
|
||||||
|
"Y": -14,
|
||||||
|
"Z": 137.40747
|
||||||
|
},
|
||||||
|
"TerritoryId": 1185,
|
||||||
|
"InteractionType": "CompleteQuest",
|
||||||
|
"AetheryteShortcut": "Tuliyollal",
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Tuliyollal] Aetheryte Plaza",
|
||||||
|
"[Tuliyollal] Bayside Bevy Marketplace"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -93,10 +93,10 @@ internal sealed class CommandHandler : IDisposable
|
|||||||
|
|
||||||
if (arguments.Length >= 1 && ushort.TryParse(arguments[0], out ushort questId))
|
if (arguments.Length >= 1 && ushort.TryParse(arguments[0], out ushort questId))
|
||||||
{
|
{
|
||||||
if (_questRegistry.IsKnownQuest(questId))
|
if (_questRegistry.TryGetQuest(questId, out Quest? quest))
|
||||||
{
|
{
|
||||||
_debugOverlay.HighlightedQuest = questId;
|
_debugOverlay.HighlightedQuest = questId;
|
||||||
_chatGui.Print($"[Questionable] Set highlighted quest to {questId}.");
|
_chatGui.Print($"[Questionable] Set highlighted quest to {questId} ({quest.Info.Name}).");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
_chatGui.PrintError($"[Questionable] Unknown quest {questId}.");
|
_chatGui.PrintError($"[Questionable] Unknown quest {questId}.");
|
||||||
@ -115,7 +115,7 @@ internal sealed class CommandHandler : IDisposable
|
|||||||
if (_questRegistry.TryGetQuest(questId, out Quest? quest))
|
if (_questRegistry.TryGetQuest(questId, out Quest? quest))
|
||||||
{
|
{
|
||||||
_questController.SetNextQuest(quest);
|
_questController.SetNextQuest(quest);
|
||||||
_chatGui.Print($"[Questionable] Set next quest to {questId}.");
|
_chatGui.Print($"[Questionable] Set next quest to {questId} ({quest.Info.Name}).");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -136,7 +136,7 @@ internal sealed class CommandHandler : IDisposable
|
|||||||
if (_questRegistry.TryGetQuest(questId, out Quest? quest))
|
if (_questRegistry.TryGetQuest(questId, out Quest? quest))
|
||||||
{
|
{
|
||||||
_questController.SimulateQuest(quest);
|
_questController.SimulateQuest(quest);
|
||||||
_chatGui.Print($"[Questionable] Simulating quest {questId}.");
|
_chatGui.Print($"[Questionable] Simulating quest {questId} ({quest.Info.Name}).");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
_chatGui.PrintError($"[Questionable] Unknown quest {questId}.");
|
_chatGui.PrintError($"[Questionable] Unknown quest {questId}.");
|
||||||
|
@ -78,6 +78,8 @@ internal sealed class QuestController
|
|||||||
{
|
{
|
||||||
lock (_lock)
|
lock (_lock)
|
||||||
{
|
{
|
||||||
|
_logger.LogInformation("Reload, resetting curent quest progress");
|
||||||
|
|
||||||
_startedQuest = null;
|
_startedQuest = null;
|
||||||
_nextQuest = null;
|
_nextQuest = null;
|
||||||
_simulatedQuest = null;
|
_simulatedQuest = null;
|
||||||
@ -328,9 +330,8 @@ internal sealed class QuestController
|
|||||||
{
|
{
|
||||||
_logger.LogInformation("Stopping automatic questing");
|
_logger.LogInformation("Stopping automatic questing");
|
||||||
_automatic = false;
|
_automatic = false;
|
||||||
|
_nextQuest = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
_nextQuest = null;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SimulateQuest(Quest? quest)
|
public void SimulateQuest(Quest? quest)
|
||||||
|
@ -50,5 +50,7 @@ internal static class NextQuest
|
|||||||
}
|
}
|
||||||
|
|
||||||
public ETaskResult Update() => ETaskResult.TaskComplete;
|
public ETaskResult Update() => ETaskResult.TaskComplete;
|
||||||
|
|
||||||
|
public override string ToString() => $"SetNextQuest({NextQuestId})";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<Project Sdk="Dalamud.NET.Sdk/9.0.2">
|
<Project Sdk="Dalamud.NET.Sdk/9.0.2">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<Version>1.3</Version>
|
<Version>1.4</Version>
|
||||||
<OutputPath>dist</OutputPath>
|
<OutputPath>dist</OutputPath>
|
||||||
<PathMap Condition="$(SolutionDir) != ''">$(SolutionDir)=X:\</PathMap>
|
<PathMap Condition="$(SolutionDir) != ''">$(SolutionDir)=X:\</PathMap>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
@ -87,6 +87,7 @@ public sealed class QuestionablePlugin : IDalamudPlugin
|
|||||||
serviceCollection.AddTaskWithFactory<Move.Factory, Move.MoveInternal, Move.ExpectToBeNearDataId>();
|
serviceCollection.AddTaskWithFactory<Move.Factory, Move.MoveInternal, Move.ExpectToBeNearDataId>();
|
||||||
serviceCollection.AddTransient<Move.MoveBuilder>();
|
serviceCollection.AddTransient<Move.MoveBuilder>();
|
||||||
|
|
||||||
|
serviceCollection.AddTaskWithFactory<NextQuest.Factory, NextQuest.SetQuest>();
|
||||||
serviceCollection.AddTaskWithFactory<AetherCurrent.Factory, AetherCurrent.DoAttune>();
|
serviceCollection.AddTaskWithFactory<AetherCurrent.Factory, AetherCurrent.DoAttune>();
|
||||||
serviceCollection.AddTaskWithFactory<AethernetShard.Factory, AethernetShard.DoAttune>();
|
serviceCollection.AddTaskWithFactory<AethernetShard.Factory, AethernetShard.DoAttune>();
|
||||||
serviceCollection.AddTaskWithFactory<Aetheryte.Factory, Aetheryte.DoAttune>();
|
serviceCollection.AddTaskWithFactory<Aetheryte.Factory, Aetheryte.DoAttune>();
|
||||||
@ -111,7 +112,6 @@ public sealed class QuestionablePlugin : IDalamudPlugin
|
|||||||
WaitAtEnd.WaitObjectAtPosition>();
|
WaitAtEnd.WaitObjectAtPosition>();
|
||||||
serviceCollection.AddTransient<WaitAtEnd.WaitQuestAccepted>();
|
serviceCollection.AddTransient<WaitAtEnd.WaitQuestAccepted>();
|
||||||
serviceCollection.AddTransient<WaitAtEnd.WaitQuestCompleted>();
|
serviceCollection.AddTransient<WaitAtEnd.WaitQuestCompleted>();
|
||||||
serviceCollection.AddTaskWithFactory<NextQuest.Factory, NextQuest.SetQuest>();
|
|
||||||
|
|
||||||
serviceCollection.AddSingleton<MovementController>();
|
serviceCollection.AddSingleton<MovementController>();
|
||||||
serviceCollection.AddSingleton<QuestRegistry>();
|
serviceCollection.AddSingleton<QuestRegistry>();
|
||||||
|
Loading…
Reference in New Issue
Block a user