return ETaskResult.StillRunning;
}
+ if (condition[ConditionFlag.Mounted] && condition[ConditionFlag.InCombat])
+ {
+ _unmountTriggered = gameFunctions.Unmount();
+ _continueAt = DateTime.Now.AddSeconds(1);
+ return ETaskResult.StillRunning;
+ }
+
return condition[ConditionFlag.Mounted]
? ETaskResult.StillRunning
: ETaskResult.TaskComplete;
.With(null, EAetheryteLocation.Limsa, territoryId);
yield return serviceProvider.GetRequiredService<AethernetShortcut.UseAethernetShortcut>()
.With(EAetheryteLocation.Limsa, EAetheryteLocation.LimsaArcanist);
+ yield return serviceProvider.GetRequiredService<WaitAtEnd.WaitDelay>();
yield return serviceProvider.GetRequiredService<Move.MoveInternal>()
.With(territoryId, destination, dataId: npcId, sprint: false);
yield return serviceProvider.GetRequiredService<Interact.DoInteract>()
return With(
territoryId: step.TerritoryId,
destination: destination,
- stopDistance: step.StopDistance,
+ stopDistance: step.CalculateActualStopDistance(),
dataId: step.DataId,
disableNavMesh: step.DisableNavmesh,
sprint: step.Sprint != false,
{
foreach (var issue in validator.Validate(quest))
{
- _logger.LogWarning(
+ var level = issue.Severity == EIssueSeverity.Error ? LogLevel.Warning : LogLevel.Information;
+ _logger.Log(level,
"Validation failed: {QuestId} ({QuestName}) / {QuestSequence} / {QuestStep} - {Description}",
issue.QuestId, quest.Info.Name, issue.Sequence, issue.Step, issue.Description);
_validationIssues.Add(issue);
for (int i = currentQuest.Step; i <= sequence.Steps.Count; ++i)
{
QuestStep? step = sequence.FindStep(i);
- DrawStep(i.ToString(CultureInfo.InvariantCulture), step);
+ if (step == null || step.Position == null)
+ continue;
+
+ DrawStep(i.ToString(CultureInfo.InvariantCulture), step,
+ Vector3.Distance(_clientState.LocalPlayer!.Position, step.Position.Value) <
+ step.CalculateActualStopDistance()
+ ? 0xFF00FF00
+ : 0xFF0000FF);
}
}
}
}
- private void DrawStep(string counter, QuestStep? step, uint color = 0xFF0000FF)
+ private void DrawStep(string counter, QuestStep? step, uint color)
{
if (step == null ||
step.Position == null ||