diff --git a/esoui/ingame/tooltip/maptooltips.lua b/esoui/ingame/tooltip/maptooltips.lua
index 4476029..b016595 100755
--- a/esoui/ingame/tooltip/maptooltips.lua
+++ b/esoui/ingame/tooltip/maptooltips.lua
@@ -151,13 +151,26 @@ function ZO_MapInformationTooltip_Gamepad_Mixin:AppendWayshrineTooltip(pin)
self:LayoutIconStringLine(wayshrineSection, icon, zo_strformat(SI_WORLD_MAP_LOCATION_NAME, name), self.tooltip:GetStyle("mapLocationTooltipWayshrineHeader"))
if isCurrentLoc then --NO BUTTON: Can't travel to origin
self:LayoutIconStringLine(wayshrineSection, nil, zo_strformat(SI_TOOLTIP_WAYSHRINE_CURRENT_LOC, name), self.tooltip:GetStyle("mapKeepAt"), self.tooltip:GetStyle("keepBaseTooltipContent"))
- elseif pin:IsLockedByLinkedCollectible() then --BUTTON: Open the store
- self:LayoutIconStringLine(wayshrineSection, ZO_GAMEPAD_CURRENCY_ICON_CROWNS_TEXTURE, ZO_WorldMap_GetWayshrineTooltipCollectibleLockedText(pin), self.tooltip:GetStyle("mapLocationTooltipWayshrineLinkedCollectibleLockedText"))
elseif isUsingRecall and IsInCampaign() then --NO BUTTON: Can't recall while inside AvA zone
self:LayoutIconStringLine(wayshrineSection, nil, zo_strformat(SI_TOOLTIP_WAYSHRINE_CANT_RECALL_AVA, name), self.tooltip:GetStyle("mapKeepInaccessible"), self.tooltip:GetStyle("keepBaseTooltipContent"))
elseif isOutboundOnly then --NO BUTTON: Can't travel to this wayshrine, only from it
local message = GetErrorString(outboundOnlyErrorStringId)
self:LayoutIconStringLine(wayshrineSection, nil, message, self.tooltip:GetStyle("mapKeepInaccessible"), self.tooltip:GetStyle("keepBaseTooltipContent"))
+ elseif not CanLeaveCurrentLocationViaTeleport() then --NO BUTTON: Current Zone or Subzone restricts jumping
+ local cantLeaveStringId
+ if IsInTutorialZone() then
+ cantLeaveStringId = SI_TOOLTIP_WAYSHRINE_CANT_RECALL_TUTORIAL
+ elseif IsInOutlawZone() then
+ cantLeaveStringId = SI_TOOLTIP_WAYSHRINE_CANT_RECALL_OUTLAW_REFUGE
+ else
+ cantLeaveStringId = SI_TOOLTIP_WAYSHRINE_CANT_RECALL_FROM_LOCATION
+ end
+ self:LayoutIconStringLine(wayshrineSection, nil, GetString(cantLeaveStringId), self.tooltip:GetStyle("mapKeepInaccessible"), self.tooltip:GetStyle("keepBaseTooltipContent"))
+ elseif pin:IsLockedByLinkedCollectible() then --BUTTON: Open the store
+ self:LayoutIconStringLine(wayshrineSection, ZO_GAMEPAD_CURRENCY_ICON_CROWNS_TEXTURE, ZO_WorldMap_GetWayshrineTooltipCollectibleLockedText(pin), self.tooltip:GetStyle("mapLocationTooltipWayshrineLinkedCollectibleLockedText"))
+ elseif IsUnitDead("player") then -- NO BUTTON: Dead
+ local message = GetString(SI_TOOLTIP_WAYSHRINE_CANT_RECALL_WHEN_DEAD)
+ self:LayoutIconStringLine(wayshrineSection, nil, message, self.tooltip:GetStyle("mapKeepInaccessible"), self.tooltip:GetStyle("keepBaseTooltipContent"))
elseif isUsingRecall then --Recall
local _, premiumTimeLeft = GetRecallCooldown()
if premiumTimeLeft == 0 then --BUTTON: Recall