@@ -1443,6 +1443,10 @@ end
1443
1443
--- @return boolean hasQuestLineInfo
1444
1444
--
1445
1445
function LocalQuestLineUtils :HasQuestLineInfo (questID , mapID )
1446
+ if not mapID then
1447
+ local activeMapInfo = LocalUtils :GetActiveMapInfo ()
1448
+ mapID = activeMapInfo .mapID
1449
+ end
1446
1450
return (self .questLineQuestsOnMap [questID ] or C_QuestLine .GetQuestLineInfo (questID , mapID )) ~= nil
1447
1451
end
1448
1452
@@ -2195,10 +2199,11 @@ end
2195
2199
local function PrintLoreQuestRemovedMessage (questID , questLineID , campaignID )
2196
2200
local isQuestCompleted = C_QuestLog .IsQuestFlaggedCompleted (questID )
2197
2201
local numThreshold = not isQuestCompleted and 1 or 0
2202
+ local activeMapInfo = LocalUtils :GetActiveMapInfo ()
2198
2203
if (campaignID and ns .settings .showCampaignQuestProgressMessage ) then
2199
2204
local campaignInfo = CampaignUtils :GetCampaignInfo (campaignID )
2200
2205
if campaignInfo then
2201
- local questLineInfo = LocalQuestLineUtils :GetCachedQuestLineInfo (questID , ns . activeZoneMapInfo .mapID )
2206
+ local questLineInfo = LocalQuestLineUtils :GetCachedQuestLineInfo (questID , activeMapInfo .mapID )
2202
2207
if questLineInfo then
2203
2208
local filteredQuestInfos = LocalQuestLineUtils :FilterQuestLineQuests (questLineInfo )
2204
2209
ns :cprintf (" You've completed %s quests of the %s chapter from the %s campaign." ,
@@ -2214,15 +2219,15 @@ local function PrintLoreQuestRemovedMessage(questID, questLineID, campaignID)
2214
2219
end
2215
2220
end
2216
2221
if (questLineID and ns .settings .showQuestlineQuestProgressMessage ) then
2217
- local questLineInfo = LocalQuestLineUtils :GetCachedQuestLineInfo (questID , ns . activeZoneMapInfo .mapID )
2222
+ local questLineInfo = LocalQuestLineUtils :GetCachedQuestLineInfo (questID , activeMapInfo .mapID )
2218
2223
if questLineInfo then
2219
2224
local filteredQuestInfos = LocalQuestLineUtils :FilterQuestLineQuests (questLineInfo )
2220
2225
ns :cprintf (" You've completed %s quests of the %s questline." ,
2221
2226
GENERIC_FRACTION_STRING :format (filteredQuestInfos .numCompleted + numThreshold , filteredQuestInfos .numTotal ),
2222
2227
QUESTLINE_HEADER_COLOR :WrapTextInColorCode (questLineInfo .questLineName )
2223
2228
)
2224
2229
if (filteredQuestInfos .numCompleted + numThreshold == filteredQuestInfos .numTotal ) then
2225
- ns :cprint (GREEN (L .CONGRATULATIONS ), format (" You have completed all %s quests in %s." , QUESTLINE_HEADER_COLOR :WrapTextInColorCode (questLineInfo .questLineName ), ns . activeZoneMapInfo .name ))
2230
+ ns :cprint (GREEN (L .CONGRATULATIONS ), format (" You have completed all %s quests in %s." , QUESTLINE_HEADER_COLOR :WrapTextInColorCode (questLineInfo .questLineName ), activeMapInfo .name ))
2226
2231
end
2227
2232
end
2228
2233
end
@@ -2252,8 +2257,9 @@ local function PrintQuestAddedMessage(questInfo)
2252
2257
if questInfo .isCampaign then
2253
2258
local campaignID = C_CampaignInfo .GetCampaignID (questInfo .questID )
2254
2259
local campaignInfo = CampaignUtils :GetCampaignInfo (campaignID )
2260
+ local activeMapInfo = LocalUtils :GetActiveMapInfo ()
2255
2261
if campaignInfo then
2256
- local questLineInfo = LocalQuestLineUtils :GetCachedQuestLineInfo (questInfo .questID , ns . activeZoneMapInfo .mapID )
2262
+ local questLineInfo = LocalQuestLineUtils :GetCachedQuestLineInfo (questInfo .questID , activeMapInfo .mapID )
2257
2263
if (questLineInfo and ns .settings .showCampaignQuestProgressMessage ) then
2258
2264
local filteredQuestInfos = LocalQuestLineUtils :FilterQuestLineQuests (questLineInfo )
2259
2265
local numActiveQuestLines = LocalUtils :CountActiveQuestlineQuests (questLineInfo .questLineID )
@@ -2538,6 +2544,15 @@ local function NodeIterator(t, prev)
2538
2544
end
2539
2545
end
2540
2546
2547
+ function LocalUtils :GetBestMapInfoForPlayer ()
2548
+ local mapID = LocalMapUtils :GetBestMapForPlayer ()
2549
+ return LocalMapUtils :GetMapInfo (mapID )
2550
+ end
2551
+
2552
+ function LocalUtils :GetActiveMapInfo ()
2553
+ return ns .activeZoneMapInfo or LocalUtils :GetBestMapInfoForPlayer ()
2554
+ end
2555
+
2541
2556
-- Required standard function for HandyNotes to get a location node.
2542
2557
--- @param uiMapID number The zone we want data for
2543
2558
--- @param minimap boolean Boolean argument indicating that we want to get nodes to display for the minimap
0 commit comments