"InteractionType": "AttuneAetherCurrent",
"AetherCurrentId": 2818362
},
- {
- "Position": {
- "X": 62.71022,
- "Y": -46.99965,
- "Z": -433.81802
- },
- "TerritoryId": 959,
- "InteractionType": "WalkTo"
- },
- {
- "Position": {
- "X": 47.394165,
- "Y": -133.50012,
- "Z": -397.90225
- },
- "TerritoryId": 959,
- "InteractionType": "WalkTo",
- "DisableNavmesh": true
- },
- {
- "DataId": 2012019,
- "Position": {
- "X": 21.7081,
- "Y": -133.5001,
- "Z": -385.7313
- },
- "TerritoryId": 959,
- "InteractionType": "AttuneAetherCurrent",
- "AetherCurrentId": 2818368,
- "DisableNavmesh": true
- },
{
"DataId": 1038908,
"Position": {
"Z": -620.05035
},
"TerritoryId": 959,
- "InteractionType": "Interact",
- "DialogueChoices": [
- ]
+ "InteractionType": "Interact"
}
]
},
}
]
},
- {
- "Sequence": 2,
- "Steps": [
- {
- "DataId": 2012185,
- "Position": {
- "X": -5.416992,
- "Y": -49.05786,
- "Z": -269.24548
- },
- "TerritoryId": 959,
- "InteractionType": "SinglePlayerDuty",
- "Comment": "Follow Urianger (TODO is this sequence used?)"
- }
- ]
- },
{
"Sequence": 3,
"Steps": [
},
{
"Sequence": 3,
- "Comment": "TODO Check flags",
"Steps": [
{
"DataId": 1037628,
{
"$schema": "https://carvel.li/questionable/quest-1.0",
"Author": "liza",
+ "TerritoryBlacklist": [
+ 1014
+ ],
"QuestSequence": [
{
"Sequence": 0,
{
"$schema": "https://carvel.li/questionable/quest-1.0",
"Author": "liza",
+ "TerritoryBlacklist": [
+ 1012
+ ],
"QuestSequence": [
{
"Sequence": 0,
"Y": -350,
"Z": -84.82495
},
+ "StopDistance": 5,
"TerritoryId": 1056,
"InteractionType": "Interact"
}
"Z": -148.57715
},
"TerritoryId": 963,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "DialogueChoices": [
+ {
+ "Type": "List",
+ "Prompt": "TEXT_AKTKMH105_04530_Q2_000_000",
+ "Answer": "TEXT_AKTKMH105_04530_A2_000_001"
+ }
+ ]
}
]
}
},
"TerritoryId": 957,
"InteractionType": "WalkTo",
- "Fly": true
+ "Fly": true,
+ "CompletionQuestVariablesFlags": [
+ null,
+ null,
+ null,
+ null,
+ null,
+ 128
+ ]
},
{
"DataId": 1037631,
null,
null,
128
+ ],
+ "DialogueChoices": [
+ {
+ "Type": "List",
+ "Prompt": "TEXT_AKTKMH106_04531_Q1_000_000",
+ "Answer": "TEXT_AKTKMH106_04531_A1_000_002"
+ }
]
},
{
"Z": 561.27246
},
"TerritoryId": 957,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "CompletionQuestVariablesFlags": [
+ null,
+ null,
+ null,
+ null,
+ null,
+ 64
+ ]
}
]
},
},
"TerritoryId": 957,
"InteractionType": "Interact",
- "Mount": false
+ "Mount": false,
+ "SkipIf": [
+ "FlyingLocked"
+ ]
+ },
+ {
+ "DataId": 2012847,
+ "Position": {
+ "X": 242.08435,
+ "Y": 0.3508911,
+ "Z": 119.43237
+ },
+ "TerritoryId": 957,
+ "InteractionType": "Interact",
+ "SkipIf": [
+ "FlyingUnlocked"
+ ]
}
]
},
},
"TerritoryId": 957,
"InteractionType": "Interact",
- "Fly": true
+ "Fly": true,
+ "DialogueChoices": [
+ {
+ "Type": "YesNo",
+ "Prompt": "TEXT_AKTKMH109_04534_Q2_000_120",
+ "Yes": true
+ }
+ ]
}
]
},
"Z": 106.06543
},
"TerritoryId": 957,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "DialogueChoices": [
+ {
+ "Type": "List",
+ "Prompt": "TEXT_AKTKMH110_04535_Q2_000_000",
+ "Answer": "TEXT_AKTKMH110_04535_A2_000_001"
+ }
+ ]
}
]
},
{
"$schema": "https://carvel.li/questionable/quest-1.0",
"Author": "liza",
+ "TerritoryBlacklist": [
+ 1070
+ ],
"QuestSequence": [
{
"Sequence": 0,
},
"StopDistance": 5,
"TerritoryId": 957,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "TargetTerritoryId": 1056
}
]
},
"Z": 14.389221
},
"TerritoryId": 1089,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "TargetTerritoryId": 1089
},
{
"DataId": 2013113,
"Z": 133.95886
},
"TerritoryId": 1089,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "TargetTerritoryId": 1089
},
{
"Position": {
{
"$schema": "https://carvel.li/questionable/quest-1.0",
"Author": "liza",
+ "TerritoryBlacklist": [
+ 1091
+ ],
"QuestSequence": [
{
"Sequence": 0,
"Z": 90.01325
},
"TerritoryId": 1089,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "TargetTerritoryId": 1089
},
{
"DataId": 1043808,
"Z": -232.4083
},
"TerritoryId": 1089,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "TargetTerritoryId": 1089
},
{
"DataId": 1043792,
"Z": 14.389221
},
"TerritoryId": 1089,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "TargetTerritoryId": 1089
},
{
"DataId": 1043814,
"Z": -232.41016
},
"TerritoryId": 1089,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "TargetTerritoryId": 1089
},
{
"DataId": 1043816,
"Z": -110.12439
},
"TerritoryId": 1089,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "DialogueChoices": [
+ {
+ "Type": "YesNo",
+ "Prompt": "TEXT_AKTKMI104_04595_SYSTEM_000_322",
+ "Yes": true
+ }
+ ]
}
]
},
"Z": -22.62915
},
"TerritoryId": 1077,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "DialogueChoices": [
+ {
+ "Type": "List",
+ "Prompt": "TEXT_AKTKMI105_04596_Q1_000_000",
+ "Answer": "TEXT_AKTKMI105_04596_A1_000_002"
+ }
+ ]
}
]
},
"Z": 60.501953
},
"TerritoryId": 1077,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "DialogueChoices": [
+ {
+ "Type": "List",
+ "Prompt": "TEXT_AKTKMI105_04596_Q2_000_000",
+ "Answer": "TEXT_AKTKMI105_04596_A2_000_001"
+ }
+ ]
}
]
},
{
"$schema": "https://carvel.li/questionable/quest-1.0",
"Author": "liza",
+ "TerritoryBlacklist": [
+ 1071
+ ],
"QuestSequence": [
{
"Sequence": 0,
},
"StopDistance": 7,
"TerritoryId": 1077,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "DialogueChoices": [
+ {
+ "Type": "List",
+ "Prompt": "TEXT_AKTKMI106_04597_Q1_000_000",
+ "Answer": "TEXT_AKTKMI106_04597_A1_000_002"
+ }
+ ]
}
]
},
"Z": -74.87604
},
"TerritoryId": 1077,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "DialogueChoices": [
+ {
+ "Type": "YesNo",
+ "Prompt": "TEXT_AKTKMI106_04597_SYSTEM_000_120",
+ "Yes": true
+ }
+ ]
}
]
},
"Z": 51.499146
},
"TerritoryId": 1077,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "DialogueChoices": [
+ {
+ "Type": "YesNo",
+ "Prompt": "TEXT_AKTKMI107_04598_SYSTEM_000_221",
+ "Yes": true
+ }
+ ]
}
]
},
"Z": -81.28485
},
"TerritoryId": 963,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "DialogueChoices": [
+ {
+ "Type": "YesNo",
+ "Prompt": "TEXT_AKTKMI107_04598_SYSTEM_000_401",
+ "Yes": true
+ }
+ ]
}
]
}
},
"StopDistance": 7,
"TerritoryId": 1078,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "DialogueChoices": [
+ {
+ "Type": "List",
+ "Prompt": "TEXT_AKTKMI108_04599_Q1_000_000",
+ "Answer": "TEXT_AKTKMI108_04599_A1_000_002"
+ }
+ ]
}
]
},
},
"StopDistance": 4,
"TerritoryId": 1078,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "TargetTerritoryId": 963
},
{
"DataId": 1037381,
"AethernetShortcut": [
"[Radz-at-Han] Meghaduta",
"[Radz-at-Han] Mehryde's Meyhane"
+ ],
+ "DialogueChoices": [
+ {
+ "Type": "List",
+ "Prompt": "TEXT_AKTKMI108_04599_Q3_000_000",
+ "Answer": "TEXT_AKTKMI108_04599_A3_000_002"
+ }
]
}
]
"AethernetShortcut": [
"[Radz-at-Han] Mehryde's Meyhane",
"[Radz-at-Han] Meghaduta"
+ ],
+ "DialogueChoices": [
+ {
+ "Type": "YesNo",
+ "Prompt": "TEXT_AKTKMI108_04599_SYSTEM_000_211",
+ "Yes": true
+ }
]
}
]
"AethernetShortcut": [
"[Radz-at-Han] Ruveydah Fibers",
"[Radz-at-Han] Meghaduta"
+ ],
+ "DialogueChoices": [
+ {
+ "Type": "YesNo",
+ "Prompt": "TEXT_AKTKMI109_04600_SYSTEM_000_020",
+ "Yes": true
+ }
]
}
]
{
"$schema": "https://carvel.li/questionable/quest-1.0",
"Author": "liza",
+ "TerritoryBlacklist": [
+ 1120
+ ],
"QuestSequence": [
{
"Sequence": 0,
"Y": -36.65,
"Z": -246.44855
},
+ "StopDistance": 5,
"TerritoryId": 958,
"InteractionType": "Interact"
}
"Y": -36.65,
"Z": -242.90839
},
+ "StopDistance": 5,
"TerritoryId": 958,
"InteractionType": "Interact"
}
"Z": 371.96924
},
"TerritoryId": 1119,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "TargetTerritoryId": 1119
},
{
"DataId": 1044274,
"Z": -433.95135
},
"TerritoryId": 1119,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "TargetTerritoryId": 1119
},
{
"DataId": 2013233,
"Z": 460.34937
},
"TerritoryId": 957,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "DialogueChoices": [
+ {
+ "Type": "List",
+ "Prompt": "TEXT_AKTKMJ107_04676_Q1_000_000",
+ "Answer": "TEXT_AKTKMJ107_04676_A1_000_002"
+ }
+ ]
}
]
},
"Z": -569.8787
},
"TerritoryId": 957,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "DialogueChoices": [
+ {
+ "Type": "List",
+ "Prompt": "TEXT_AKTKMJ108_04677_Q1_000_000",
+ "Answer": "TEXT_AKTKMJ108_04677_A1_000_001"
+ }
+ ]
}
]
},
},
"TerritoryId": 957,
"InteractionType": "Interact",
- "Fly": true
+ "Fly": true,
+ "DialogueChoices": [
+ {
+ "Type": "YesNo",
+ "Prompt": "TEXT_AKTKMJ108_04677_Q2_000_063",
+ "Yes": true
+ }
+ ]
}
]
},
"AethernetShortcut": [
"[Radz-at-Han] Aetheryte Plaza",
"[Radz-at-Han] Meghaduta"
+ ],
+ "DialogueChoices": [
+ {
+ "Type": "YesNo",
+ "Prompt": "TEXT_AKTKMJ109_04678_SYSTEM_000_021",
+ "Yes": true
+ }
]
}
]
},
"StopDistance": 5,
"TerritoryId": 963,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "DialogueChoices": [
+ {
+ "Type": "List",
+ "Prompt": "TEXT_AKTKMK101_04735_Q1_000_000",
+ "Answer": "TEXT_AKTKMK101_04735_A1_000_003"
+ },
+ {
+ "Type": "YesNo",
+ "Prompt": "TEXT_AKTKMK101_04735_Q1_000_065",
+ "Yes": true
+ }
+ ]
}
]
},
"AethernetShortcut": [
"[Radz-at-Han] Mehryde's Meyhane",
"[Radz-at-Han] Meghaduta"
+ ],
+ "DialogueChoices": [
+ {
+ "Type": "YesNo",
+ "Prompt": "TEXT_AKTKMK101_04735_Q2_000_182",
+ "Yes": true
+ }
]
}
]
"KillEnemyDataIds": [
16332
],
- "Fly": true
+ "Fly": true,
+ "Comment": "TODO Verify that navmesh can still get you here if flying is locked, and doesn't get stuck on rubble"
}
]
},
"TerritoryId": 959,
"InteractionType": "Interact",
"AetheryteShortcut": "Mare Lamentorum - Bestways Burrow",
+ "TargetTerritoryId": 959,
"SkipIf": [
"FlyingUnlocked"
]
16
]
}
- ],
- "Comment": "TODO Check Flags (32)"
+ ]
},
{
"Sequence": 255,
"Y": -49.589592,
"Z": -618.46344
},
+ "StopDistance": 7,
"TerritoryId": 959,
"InteractionType": "Interact"
}
"TerritoryId": 959,
"InteractionType": "Interact",
"AetheryteShortcut": "Mare Lamentorum - Bestways Burrow",
+ "TargetTerritoryId": 959,
"SkipIf": [
"FlyingUnlocked"
]
"Y": 82.05,
"Z": -5.661133
},
+ "StopDistance": 7,
"TerritoryId": 820,
"InteractionType": "Interact"
}
"Y": 82.05,
"Z": -5.661133
},
+ "StopDistance": 7,
"TerritoryId": 820,
"InteractionType": "Interact"
}
"AethernetShortcut": [
"[Crystarium] Aetheryte Plaza",
"[Crystarium] The Dossal Gate"
- ]
+ ],
+ "TargetTerritoryId": 844
},
{
"DataId": 1033888,
},
"StopDistance": 5,
"TerritoryId": 962,
- "InteractionType": "Interact"
+ "InteractionType": "Interact",
+ "DialogueChoices": [
+ {
+ "Type": "List",
+ "Prompt": "TEXT_AKTKMM103_04753_Q1_000_000",
+ "Answer": "TEXT_AKTKMM103_04753_A1_000_001"
+ }
+ ]
}
]
},
{
"$schema": "https://carvel.li/questionable/quest-1.0",
"Author": "liza",
+ "TerritoryBlacklist": [
+ 884
+ ],
"QuestSequence": [
{
"Sequence": 0,
{
"$schema": "https://carvel.li/questionable/quest-1.0",
"Author": "liza",
+ "TerritoryBlacklist": [
+ 893
+ ],
"QuestSequence": [
{
"Sequence": 0,
"$schema": "https://carvel.li/questionable/quest-1.0",
"Author": "liza",
"Comment": "TODO Missing quest end",
+ "TerritoryBlacklist": [
+ 898
+ ],
"QuestSequence": [
{
"Sequence": 0,
{
"$schema": "https://carvel.li/questionable/quest-1.0",
"Author": "liza",
+ "TerritoryBlacklist": [
+ 932
+ ],
"QuestSequence": [
{
"Sequence": 0,
{
"$schema": "https://carvel.li/questionable/quest-1.0",
"Author": "liza",
+ "TerritoryBlacklist": [
+ 916
+ ],
"QuestSequence": [
{
"Sequence": 0,
{
"$schema": "https://carvel.li/questionable/quest-1.0",
"Author": "liza",
+ "TerritoryBlacklist": [
+ 922
+ ],
"QuestSequence": [
{
"Sequence": 0,
{
"$schema": "https://carvel.li/questionable/quest-1.0",
"Author": "liza",
+ "TerritoryBlacklist": [
+ 933
+ ],
"QuestSequence": [
{
"Sequence": 0,
{
"$schema": "https://carvel.li/questionable/quest-1.0",
"Author": "liza",
+ "TerritoryBlacklist": [
+ 954
+ ],
"QuestSequence": [
{
"Sequence": 0,
{
"$schema": "https://carvel.li/questionable/quest-1.0",
"Author": "liza",
+ "TerritoryBlacklist": [
+ 938
+ ],
"QuestSequence": [
{
"Sequence": 0,
{
"$schema": "https://carvel.li/questionable/quest-1.0",
"Author": "liza",
+ "TerritoryBlacklist": [
+ 977
+ ],
"QuestSequence": [
{
"Sequence": 0,
using Dalamud.Game.ClientState.Objects.Types;
using Dalamud.Plugin.Services;
using FFXIVClientStructs.FFXIV.Client.Game;
+using FFXIVClientStructs.FFXIV.Client.Game.Control;
using Questionable.External;
using Questionable.Model;
using Questionable.Model.V1;
{
ResetPathfinding();
- _gameFunctions.ExecuteCommand("/automove off");
+ if (InputManager.IsAutoRunning())
+ _gameFunctions.ExecuteCommand("/automove off");
Destination = new DestinationData(dataId, to, stopDistance ?? (DefaultStopDistance - 0.2f), fly, sprint);
}
{
_navmeshIpc.Stop();
ResetPathfinding();
+
+ if (InputManager.IsAutoRunning())
+ _gameFunctions.ExecuteCommand("/automove off");
}
public void Dispose()
private readonly ICondition _condition;
private readonly IChatGui _chatGui;
private readonly IFramework _framework;
- private readonly IGameGui _gameGui;
private readonly AetheryteData _aetheryteData;
private readonly LifestreamIpc _lifestreamIpc;
private readonly TerritoryData _territoryData;
public QuestController(DalamudPluginInterface pluginInterface, IDataManager dataManager, IClientState clientState,
GameFunctions gameFunctions, MovementController movementController, IPluginLog pluginLog, ICondition condition,
- IChatGui chatGui, IFramework framework, IGameGui gameGui, AetheryteData aetheryteData,
- LifestreamIpc lifestreamIpc)
+ IChatGui chatGui, IFramework framework, AetheryteData aetheryteData, LifestreamIpc lifestreamIpc)
{
_pluginInterface = pluginInterface;
_dataManager = dataManager;
_condition = condition;
_chatGui = chatGui;
_framework = framework;
- _gameGui = gameGui;
_aetheryteData = aetheryteData;
_lifestreamIpc = lifestreamIpc;
_territoryData = new TerritoryData(dataManager);
if (!step.SkipIf.Contains(ESkipCondition.Never))
{
- _pluginLog.Information("Checking skip conditions");
+ _pluginLog.Information($"Checking skip conditions; {string.Join(",", step.SkipIf)}");
if (step.SkipIf.Contains(ESkipCondition.FlyingUnlocked) &&
_gameFunctions.IsFlyingUnlocked(step.TerritoryId))
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0-windows</TargetFramework>
- <Version>0.4</Version>
+ <Version>0.5</Version>
<LangVersion>12</LangVersion>
<Nullable>enable</Nullable>
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
_movementController =
new MovementController(navmeshIpc, clientState, _gameFunctions, condition, pluginLog);
_questController = new QuestController(pluginInterface, dataManager, _clientState, _gameFunctions,
- _movementController, pluginLog, condition, chatGui, framework, gameGui, aetheryteData, lifestreamIpc);
+ _movementController, pluginLog, condition, chatGui, framework, aetheryteData, lifestreamIpc);
_gameUiController =
new GameUiController(addonLifecycle, dataManager, _gameFunctions, _questController, gameGui, pluginLog);