ESOUI

ESOUI (https://www.esoui.com/forums/index.php)
-   Lua/XML Help (https://www.esoui.com/forums/forumdisplay.php?f=175)
-   -   TrackNextActivityForZoneStory() acts like "show on map" (https://www.esoui.com/forums/showthread.php?t=10015)

Masteroshi430 12/16/21 09:52 AM

TrackNextActivityForZoneStory() acts like "show on map"
 
TrackNextActivityForZoneStory(ZoneID, nil, false) acts like "show on map" if the zone story activity is already in the quest tracker/journal, is there a way to check that before casting it to avoid the unnecessary worldmap opening?

Baertram 12/16/21 10:13 AM

Does not look like there is any way. At least ZOs code neither checks it up in advanced.
Maybe you can check th quest jorunal before calling that func via

Code:


       
Code:

       
* CanZoneStoryContinueTrackingActivitiesForCompletionType(*integer* _zoneId_, *[ZoneCompletionType|#ZoneCompletionType]* _zoneCompletionType_)
** _Returns:_ *bool* _canContinueTracking_

* IsJournalQuestIndexInTrackedZoneStory(*luaindex* _journalQuestIndex_)
** _Returns:_ *bool* _isInTrackedZoneStory_



and if it's done already or in your questlog do not call the func?

If this does not work I would had expected the 3rd parameter TrackNextActivityForZoneStory to control the map shwing or not. Maybe this is a bug.
Try to ask ZOs_DanBatson here https://gitter.im/esoui/esoui or here https://www.esoui.com/forums/forumdisplay.php?f=187

Masteroshi430 12/16/21 10:33 AM

Quote:

Originally Posted by Baertram (Post 45059)

Code:

* CanZoneStoryContinueTrackingActivitiesForCompletionType(*integer* _zoneId_, *[ZoneCompletionType|#ZoneCompletionType]* _zoneCompletionType_)
** _Returns:_ *bool* _canContinueTracking_


this one doesn't work in that case

Code:

* IsJournalQuestIndexInTrackedZoneStory(*luaindex* _journalQuestIndex_)
** _Returns:_ *bool* _isInTrackedZoneStory_

I will try that one but I will have to check all quest indexes in a loop if I understand properly,
a IsTrackedZoneStoryInJournalQuest() would have come handy :D

ZOS_DanBatson 12/21/21 01:44 PM

It's because of this in QuestTracker.lua

Code:

local function OnZoneStoryQuestActivityTracked(eventId, questIndex)
    self:ForceAssist(questIndex)
    ZO_WorldMap_ShowQuestOnMap(questIndex)
end

trackerPanel:RegisterForEvent(EVENT_ZONE_STORY_QUEST_ACTIVITY_TRACKED, OnZoneStoryQuestActivityTracked)

You'd have to override that event on FOCUSED_QUEST_TRACKER.trackerPanel if you wanted to stop that vanilla behavior. Active quests don't use setAutoMapNavigationTarget at all, so that argument doesn't mean anything for that context. SetAutoMapNavigationTarget is relevant for non-breadcrumbed quests only.


All times are GMT -6. The time now is 02:10 AM.

vBulletin © 2024, Jelsoft Enterprises Ltd
© 2014 - 2022 MMOUI