diff --git a/Questionable/Questionable.Controller/QuestController.cs b/Questionable/Questionable.Controller/QuestController.cs index c903ac6..3eaca69 100644 --- a/Questionable/Questionable.Controller/QuestController.cs +++ b/Questionable/Questionable.Controller/QuestController.cs @@ -513,9 +513,17 @@ internal sealed class QuestController : MiniTaskController } if (_startedQuest != null && !_questFunctions.IsQuestAccepted(_startedQuest.Quest.Id)) { + if (!_startedQuest.Quest.Info.IsRepeatable && !_questFunctions.IsQuestComplete(_startedQuest.Quest.Id) && _questFunctions.IsReadyToAcceptQuest(_startedQuest.Quest.Id)) + { + _logger.LogInformation("Quest {QuestId} is ready to accept but not yet accepted, moving to next quest", _startedQuest.Quest.Id); + SetNextQuest(_startedQuest.Quest); + _startedQuest = null; + return; + } if (_startedQuest.Quest.Info.IsRepeatable) { _logger.LogInformation("Repeatable quest {QuestId} is no longer accepted, clearing started quest", _startedQuest.Quest.Id); + _startedQuest = null; } else if (!_questFunctions.IsQuestComplete(_startedQuest.Quest.Id)) { @@ -608,7 +616,7 @@ internal sealed class QuestController : MiniTaskController if ((object)valueOrDefault2.Item1 != null) { (elementId, b) = valueOrDefault2; - goto IL_0813; + goto IL_08b5; } } Quest quest2 = ManualPriorityQuests.FirstOrDefault((Quest x) => _questFunctions.IsReadyToAcceptQuest(x.Id)); @@ -618,7 +626,7 @@ internal sealed class QuestController : MiniTaskController SetNextQuest(quest2); return; } - goto IL_0813; + goto IL_08b5; } questProgress = _startedQuest; b = _startedQuest.Sequence; @@ -665,8 +673,8 @@ internal sealed class QuestController : MiniTaskController } } } - goto IL_0b43; - IL_0b43: + goto IL_0be5; + IL_0be5: if (questProgress == null) { DebugState = "No quest active"; @@ -725,7 +733,7 @@ internal sealed class QuestController : MiniTaskController DebugState = null; } return; - IL_0813: + IL_08b5: if (elementId == null || elementId.Value == 0) { if (_startedQuest != null) @@ -785,7 +793,7 @@ internal sealed class QuestController : MiniTaskController } questProgress = _startedQuest; } - goto IL_0b43; + goto IL_0be5; } } diff --git a/Solution.sln b/Solution.sln index d41a849..a28fb10 100644 --- a/Solution.sln +++ b/Solution.sln @@ -2,15 +2,15 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 14 VisualStudioVersion = 14.0.24720.0 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "QuestPaths", "QuestPaths\QuestPaths.csproj", "{1954490C-FF01-433A-8B69-B0CC3C33D09C}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "QuestPaths", "QuestPaths\QuestPaths.csproj", "{8543D75D-1A2C-4045-9927-61FB7462F896}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GatheringPaths", "GatheringPaths\GatheringPaths.csproj", "{552A0564-0233-447E-AC1B-82757CB41CCC}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GatheringPaths", "GatheringPaths\GatheringPaths.csproj", "{6B22392B-ADAB-4D34-B7DD-7443345BEE26}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Questionable", "Questionable\Questionable.csproj", "{22637734-9DB1-433D-873A-80889725EA55}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Questionable", "Questionable\Questionable.csproj", "{4C05BCC5-1221-4DAA-B897-52C8C3E2CD09}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Questionable.Model", "Questionable.Model\Questionable.Model.csproj", "{5BFCA116-AFB3-4CC0-9AA6-BF38AA873113}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Questionable.Model", "Questionable.Model\Questionable.Model.csproj", "{5C131661-EDC1-4590-AC47-C38B0A5BA139}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LLib", "LLib\LLib.csproj", "{D25BDC58-3C06-4CC4-8C47-672EC22D21F4}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LLib", "LLib\LLib.csproj", "{CC748521-A62A-43A0-BB7B-90F96740C38E}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -20,46 +20,46 @@ Global Release|x64 = Release|x64 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {1954490C-FF01-433A-8B69-B0CC3C33D09C}.Debug|AnyCPU.ActiveCfg = Debug|AnyCPU - {1954490C-FF01-433A-8B69-B0CC3C33D09C}.Debug|AnyCPU.Build.0 = Debug|AnyCPU - {1954490C-FF01-433A-8B69-B0CC3C33D09C}.Debug|x64.ActiveCfg = Debug|AnyCPU - {1954490C-FF01-433A-8B69-B0CC3C33D09C}.Debug|x64.Build.0 = Debug|AnyCPU - {1954490C-FF01-433A-8B69-B0CC3C33D09C}.Release|AnyCPU.ActiveCfg = Release|AnyCPU - {1954490C-FF01-433A-8B69-B0CC3C33D09C}.Release|AnyCPU.Build.0 = Release|AnyCPU - {1954490C-FF01-433A-8B69-B0CC3C33D09C}.Release|x64.ActiveCfg = Release|AnyCPU - {1954490C-FF01-433A-8B69-B0CC3C33D09C}.Release|x64.Build.0 = Release|AnyCPU - {552A0564-0233-447E-AC1B-82757CB41CCC}.Debug|AnyCPU.ActiveCfg = Debug|AnyCPU - {552A0564-0233-447E-AC1B-82757CB41CCC}.Debug|AnyCPU.Build.0 = Debug|AnyCPU - {552A0564-0233-447E-AC1B-82757CB41CCC}.Debug|x64.ActiveCfg = Debug|AnyCPU - {552A0564-0233-447E-AC1B-82757CB41CCC}.Debug|x64.Build.0 = Debug|AnyCPU - {552A0564-0233-447E-AC1B-82757CB41CCC}.Release|AnyCPU.ActiveCfg = Release|AnyCPU - {552A0564-0233-447E-AC1B-82757CB41CCC}.Release|AnyCPU.Build.0 = Release|AnyCPU - {552A0564-0233-447E-AC1B-82757CB41CCC}.Release|x64.ActiveCfg = Release|AnyCPU - {552A0564-0233-447E-AC1B-82757CB41CCC}.Release|x64.Build.0 = Release|AnyCPU - {22637734-9DB1-433D-873A-80889725EA55}.Debug|AnyCPU.ActiveCfg = Debug|x64 - {22637734-9DB1-433D-873A-80889725EA55}.Debug|AnyCPU.Build.0 = Debug|x64 - {22637734-9DB1-433D-873A-80889725EA55}.Debug|x64.ActiveCfg = Debug|x64 - {22637734-9DB1-433D-873A-80889725EA55}.Debug|x64.Build.0 = Debug|x64 - {22637734-9DB1-433D-873A-80889725EA55}.Release|AnyCPU.ActiveCfg = Release|x64 - {22637734-9DB1-433D-873A-80889725EA55}.Release|AnyCPU.Build.0 = Release|x64 - {22637734-9DB1-433D-873A-80889725EA55}.Release|x64.ActiveCfg = Release|x64 - {22637734-9DB1-433D-873A-80889725EA55}.Release|x64.Build.0 = Release|x64 - {5BFCA116-AFB3-4CC0-9AA6-BF38AA873113}.Debug|AnyCPU.ActiveCfg = Debug|AnyCPU - {5BFCA116-AFB3-4CC0-9AA6-BF38AA873113}.Debug|AnyCPU.Build.0 = Debug|AnyCPU - {5BFCA116-AFB3-4CC0-9AA6-BF38AA873113}.Debug|x64.ActiveCfg = Debug|AnyCPU - {5BFCA116-AFB3-4CC0-9AA6-BF38AA873113}.Debug|x64.Build.0 = Debug|AnyCPU - {5BFCA116-AFB3-4CC0-9AA6-BF38AA873113}.Release|AnyCPU.ActiveCfg = Release|AnyCPU - {5BFCA116-AFB3-4CC0-9AA6-BF38AA873113}.Release|AnyCPU.Build.0 = Release|AnyCPU - {5BFCA116-AFB3-4CC0-9AA6-BF38AA873113}.Release|x64.ActiveCfg = Release|AnyCPU - {5BFCA116-AFB3-4CC0-9AA6-BF38AA873113}.Release|x64.Build.0 = Release|AnyCPU - {D25BDC58-3C06-4CC4-8C47-672EC22D21F4}.Debug|AnyCPU.ActiveCfg = Debug|x64 - {D25BDC58-3C06-4CC4-8C47-672EC22D21F4}.Debug|AnyCPU.Build.0 = Debug|x64 - {D25BDC58-3C06-4CC4-8C47-672EC22D21F4}.Debug|x64.ActiveCfg = Debug|x64 - {D25BDC58-3C06-4CC4-8C47-672EC22D21F4}.Debug|x64.Build.0 = Debug|x64 - {D25BDC58-3C06-4CC4-8C47-672EC22D21F4}.Release|AnyCPU.ActiveCfg = Release|x64 - {D25BDC58-3C06-4CC4-8C47-672EC22D21F4}.Release|AnyCPU.Build.0 = Release|x64 - {D25BDC58-3C06-4CC4-8C47-672EC22D21F4}.Release|x64.ActiveCfg = Release|x64 - {D25BDC58-3C06-4CC4-8C47-672EC22D21F4}.Release|x64.Build.0 = Release|x64 + {8543D75D-1A2C-4045-9927-61FB7462F896}.Debug|AnyCPU.ActiveCfg = Debug|AnyCPU + {8543D75D-1A2C-4045-9927-61FB7462F896}.Debug|AnyCPU.Build.0 = Debug|AnyCPU + {8543D75D-1A2C-4045-9927-61FB7462F896}.Debug|x64.ActiveCfg = Debug|AnyCPU + {8543D75D-1A2C-4045-9927-61FB7462F896}.Debug|x64.Build.0 = Debug|AnyCPU + {8543D75D-1A2C-4045-9927-61FB7462F896}.Release|AnyCPU.ActiveCfg = Release|AnyCPU + {8543D75D-1A2C-4045-9927-61FB7462F896}.Release|AnyCPU.Build.0 = Release|AnyCPU + {8543D75D-1A2C-4045-9927-61FB7462F896}.Release|x64.ActiveCfg = Release|AnyCPU + {8543D75D-1A2C-4045-9927-61FB7462F896}.Release|x64.Build.0 = Release|AnyCPU + {6B22392B-ADAB-4D34-B7DD-7443345BEE26}.Debug|AnyCPU.ActiveCfg = Debug|AnyCPU + {6B22392B-ADAB-4D34-B7DD-7443345BEE26}.Debug|AnyCPU.Build.0 = Debug|AnyCPU + {6B22392B-ADAB-4D34-B7DD-7443345BEE26}.Debug|x64.ActiveCfg = Debug|AnyCPU + {6B22392B-ADAB-4D34-B7DD-7443345BEE26}.Debug|x64.Build.0 = Debug|AnyCPU + {6B22392B-ADAB-4D34-B7DD-7443345BEE26}.Release|AnyCPU.ActiveCfg = Release|AnyCPU + {6B22392B-ADAB-4D34-B7DD-7443345BEE26}.Release|AnyCPU.Build.0 = Release|AnyCPU + {6B22392B-ADAB-4D34-B7DD-7443345BEE26}.Release|x64.ActiveCfg = Release|AnyCPU + {6B22392B-ADAB-4D34-B7DD-7443345BEE26}.Release|x64.Build.0 = Release|AnyCPU + {4C05BCC5-1221-4DAA-B897-52C8C3E2CD09}.Debug|AnyCPU.ActiveCfg = Debug|x64 + {4C05BCC5-1221-4DAA-B897-52C8C3E2CD09}.Debug|AnyCPU.Build.0 = Debug|x64 + {4C05BCC5-1221-4DAA-B897-52C8C3E2CD09}.Debug|x64.ActiveCfg = Debug|x64 + {4C05BCC5-1221-4DAA-B897-52C8C3E2CD09}.Debug|x64.Build.0 = Debug|x64 + {4C05BCC5-1221-4DAA-B897-52C8C3E2CD09}.Release|AnyCPU.ActiveCfg = Release|x64 + {4C05BCC5-1221-4DAA-B897-52C8C3E2CD09}.Release|AnyCPU.Build.0 = Release|x64 + {4C05BCC5-1221-4DAA-B897-52C8C3E2CD09}.Release|x64.ActiveCfg = Release|x64 + {4C05BCC5-1221-4DAA-B897-52C8C3E2CD09}.Release|x64.Build.0 = Release|x64 + {5C131661-EDC1-4590-AC47-C38B0A5BA139}.Debug|AnyCPU.ActiveCfg = Debug|AnyCPU + {5C131661-EDC1-4590-AC47-C38B0A5BA139}.Debug|AnyCPU.Build.0 = Debug|AnyCPU + {5C131661-EDC1-4590-AC47-C38B0A5BA139}.Debug|x64.ActiveCfg = Debug|AnyCPU + {5C131661-EDC1-4590-AC47-C38B0A5BA139}.Debug|x64.Build.0 = Debug|AnyCPU + {5C131661-EDC1-4590-AC47-C38B0A5BA139}.Release|AnyCPU.ActiveCfg = Release|AnyCPU + {5C131661-EDC1-4590-AC47-C38B0A5BA139}.Release|AnyCPU.Build.0 = Release|AnyCPU + {5C131661-EDC1-4590-AC47-C38B0A5BA139}.Release|x64.ActiveCfg = Release|AnyCPU + {5C131661-EDC1-4590-AC47-C38B0A5BA139}.Release|x64.Build.0 = Release|AnyCPU + {CC748521-A62A-43A0-BB7B-90F96740C38E}.Debug|AnyCPU.ActiveCfg = Debug|x64 + {CC748521-A62A-43A0-BB7B-90F96740C38E}.Debug|AnyCPU.Build.0 = Debug|x64 + {CC748521-A62A-43A0-BB7B-90F96740C38E}.Debug|x64.ActiveCfg = Debug|x64 + {CC748521-A62A-43A0-BB7B-90F96740C38E}.Debug|x64.Build.0 = Debug|x64 + {CC748521-A62A-43A0-BB7B-90F96740C38E}.Release|AnyCPU.ActiveCfg = Release|x64 + {CC748521-A62A-43A0-BB7B-90F96740C38E}.Release|AnyCPU.Build.0 = Release|x64 + {CC748521-A62A-43A0-BB7B-90F96740C38E}.Release|x64.ActiveCfg = Release|x64 + {CC748521-A62A-43A0-BB7B-90F96740C38E}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE