View Single Post
11/03/21, 04:47 AM   #4
Baertram
Super Moderator
 
Baertram's Avatar
WoWInterface Super Mod
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 5,011
What if you disable the skyshards at the map filters? For me they are hidden then at the map and compass.

Not sure if there is any "popup on the screen" if you get near an undiscovered skyshard, and you are talking about that?

That "TUTORIAL_TRIGGER_SKYSHARDS_DISCOVERED" is only shown once as tutorial if you have changed your skillpoints due to interaction with a skyshard. Shouldn't show more than once and not show if tutorials are disabled in the settings.


At the compass there are 2 pinTypes: Suggested and seen
Code:
<CompassPinType name="SKYSHARD_SUGGESTED"
                                    pinTexture="$(COMPASS_PATH)skyshard_seen.dds"
                                    clamped="true"
                                    maxDistanceM="COMPASS_PIN_NO_MAX_DISTANCE"
                                    closeAlpha="1.0"
                                    farAlpha="0.75"
                                    farAlphaDistanceM="85"
                                    farScaleDistanceM="200"
                                    drawLevelOffsetBase="21"
                    />
                    <CompassPinType name="SKYSHARD_SEEN"
                                    pinTexture="$(COMPASS_PATH)skyshard_seen.dds"
                                    maxDistanceM="ZO_SKYSHARD_DISCOVERY_DISTANCE"
                                    removedAnimation="CompassPinOut"
                                    drawLevelOffsetBase="21"
                    />
btw, the used value ZO_SKYSHARD_DISCOVERY_DISTANCE could be changed to 0, maybe this will stop showing you the skyshards if you are farer away than directly up in front.
Try to add this to any of your addon's lua files, directly at the top.
Code:
ZO_SKYSHARD_DISCOVERY_DISTANCE = 0

I think this event here triggers the update of the unseen skyshards:
https://github.com/esoui/esoui/blob/...dmap.lua#L5415
Lua Code:
  1. local function RefreshSkyshardPins()
  2.             self:RefreshSkyshardPins()
  3.             self:RefreshSuggestionPins()
  4.         end
  5.  
  6.         self.control:RegisterForEvent(EVENT_SKYSHARDS_UPDATED, RefreshSkyshardPins)

As the function RefreshSkyshardPins is local one cannot override/change it. One could only try to unregister the event EVENT_SKYSHARDS_UPDATED. Attention: Not sure if the addon "Skyshard" will work properly then or anything else breaks!

self should be ZO_WorldMapManager's created object "WORLD_MAP_MANAGER " here.

Add this to any addon's EVENT_ADD_ON_LOADED callback function:
Lua Code:
  1. WORLD_MAP_MANAGER.control:UnregisterForEvent(EVENT_SKYSHARDS_UPDATED)


Effectively it's WORLD_MAP_MANAGER:RefreshSkyshardPins() which updates th visibility/mappins for the skyshards.
In this line it checks for a map filter "Objectives":
https://github.com/esoui/esoui/blob/...dmap.lua#L6131
which further own is used then to add a mappin (and compass pin this way as well) if the skyshard was not accquired yet but it was discvered and objectives shold be shown:
https://github.com/esoui/esoui/blob/...dmap.lua#L6143

So changing this objectives map filter should hide the discovered skyshards then.



But as I said: They do not show for me if I open the map and disable the skyshard (unknown) filter there.
Maybe this filter only is available with the "Skyshards" addon, I dunno. The vanilla code only seems to add a "known skyshards" filter.

Last edited by Baertram : 11/03/21 at 11:38 AM.
  Reply With Quote