forked from aly/qstbak
muffin v7.4.8
This commit is contained in:
parent
63f975ff4f
commit
a9e1cdc5f1
4 changed files with 932 additions and 880 deletions
|
|
@ -357,6 +357,7 @@ internal static class Duty
|
|||
{
|
||||
logger.LogInformation("Reached required level {RequiredLevel} (current: {CurrentLevel})", base.Task.RequiredLevel, b);
|
||||
chatGui.Print($"Reached level {b}, can now continue MSQ.", "Questionable", 576);
|
||||
autoDutyIpc.DisableLevelingMode();
|
||||
return ETaskResult.TaskComplete;
|
||||
}
|
||||
if (autoDutyIpc.IsStopped() && !flag && !flag2)
|
||||
|
|
|
|||
|
|
@ -682,11 +682,16 @@ internal sealed class QuestController : MiniTaskController<QuestController>
|
|||
}
|
||||
questProgress = null;
|
||||
}
|
||||
else
|
||||
else if (_startedQuest == null || _startedQuest.Quest.Id != elementId)
|
||||
{
|
||||
if (_startedQuest == null || _startedQuest.Quest.Id != elementId)
|
||||
if (_startedQuest != null && !_taskQueue.AllTasksComplete)
|
||||
{
|
||||
_logger.LogTrace("Not switching from quest {CurrentQuestId} to {NewQuestId} because tasks are still running", _startedQuest.Quest.Id, elementId);
|
||||
questProgress = _startedQuest;
|
||||
b = _startedQuest.Sequence;
|
||||
}
|
||||
else
|
||||
{
|
||||
Quest quest;
|
||||
if (_configuration.Stop.Enabled && _startedQuest != null && _configuration.Stop.QuestsToStopAfter.Contains(_startedQuest.Quest.Id) && _questFunctions.IsQuestComplete(_startedQuest.Quest.Id))
|
||||
{
|
||||
ElementId id = _startedQuest.Quest.Id;
|
||||
|
|
@ -694,8 +699,9 @@ internal sealed class QuestController : MiniTaskController<QuestController>
|
|||
_chatGui.Print("Completed quest '" + _startedQuest.Quest.Info.Name + "', which is configured as a stopping point.", "Questionable", 576);
|
||||
_startedQuest = null;
|
||||
Stop($"Stopping point [{id}] reached");
|
||||
return;
|
||||
}
|
||||
else if (_questRegistry.TryGetQuest(elementId, out quest))
|
||||
if (_questRegistry.TryGetQuest(elementId, out Quest quest))
|
||||
{
|
||||
_logger.LogInformation("New quest: {QuestName}", quest.Info.Name);
|
||||
_startedQuest = new QuestProgress(quest, b);
|
||||
|
|
@ -723,15 +729,20 @@ internal sealed class QuestController : MiniTaskController<QuestController>
|
|||
}
|
||||
CheckNextTasks("Different Quest");
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if (_startedQuest != null)
|
||||
if (_startedQuest != null)
|
||||
{
|
||||
_logger.LogInformation("No active quest anymore? Not sure what happened...");
|
||||
_startedQuest = null;
|
||||
Stop("No active Quest");
|
||||
return;
|
||||
}
|
||||
return;
|
||||
questProgress = null;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
questProgress = _startedQuest;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -125,6 +125,7 @@ internal sealed class AutoDutyIpc
|
|||
}
|
||||
try
|
||||
{
|
||||
_setConfig.InvokeAction("leveling", "None");
|
||||
_setConfig.InvokeAction("Unsynced", $"{dutyMode == DutyMode.UnsyncRegular}");
|
||||
ICallGateSubscriber<string, string, object> setConfig = _setConfig;
|
||||
setConfig.InvokeAction("dutyModeEnum", dutyMode switch
|
||||
|
|
@ -182,16 +183,36 @@ internal sealed class AutoDutyIpc
|
|||
}
|
||||
}
|
||||
|
||||
public void DisableLevelingMode()
|
||||
{
|
||||
try
|
||||
{
|
||||
_logger.LogInformation("Disabling AutoDuty leveling mode");
|
||||
_setConfig.InvokeAction("leveling", "None");
|
||||
}
|
||||
catch (IpcError ipcError)
|
||||
{
|
||||
_logger.LogWarning("Unable to disable AutoDuty leveling mode: {Message}", ipcError.Message);
|
||||
}
|
||||
}
|
||||
|
||||
public void Stop()
|
||||
{
|
||||
try
|
||||
{
|
||||
_logger.LogInformation("Calling AutoDuty.Stop");
|
||||
try
|
||||
{
|
||||
_setConfig.InvokeAction("leveling", "None");
|
||||
}
|
||||
catch (IpcError)
|
||||
{
|
||||
}
|
||||
_stop.InvokeAction();
|
||||
}
|
||||
catch (IpcError ipcError)
|
||||
catch (IpcError ipcError2)
|
||||
{
|
||||
throw new TaskException("Unable to stop AutoDuty: " + ipcError.Message, ipcError);
|
||||
throw new TaskException("Unable to stop AutoDuty: " + ipcError2.Message, ipcError2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue