Commit cd1fc7f3 authored by TOM_RUS's avatar TOM_RUS
Browse files

WOW-28202patch8.1.0_PTR

parent 2b612c25
......@@ -186,6 +186,15 @@ local AzeriteEmpoweredItem =
{ Name = "isAzeritePreviewSourceDisplayable", Type = "bool", Nilable = false },
},
},
{
Name = "IsHeartOfAzerothEquipped",
Type = "Function",
Returns =
{
{ Name = "isHeartOfAzerothEquipped", Type = "bool", Nilable = false },
},
},
{
Name = "IsPowerAvailableForSpec",
Type = "Function",
......@@ -244,6 +253,15 @@ local AzeriteEmpoweredItem =
Events =
{
{
Name = "AzeriteEmpoweredItemEquippedStatusChanged",
Type = "Event",
LiteralName = "AZERITE_EMPOWERED_ITEM_EQUIPPED_STATUS_CHANGED",
Payload =
{
{ Name = "isHeartEquipped", Type = "bool", Nilable = false },
},
},
{
Name = "AzeriteEmpoweredItemSelectionUpdated",
Type = "Event",
......
......@@ -16,14 +16,13 @@ local Club =
},
},
{
Name = "AddClubStreamToChatWindow",
Name = "AddClubStreamChatChannel",
Type = "Function",
Arguments =
{
{ Name = "clubId", Type = "string", Nilable = false },
{ Name = "streamId", Type = "string", Nilable = false },
{ Name = "chatWindowIndex", Type = "number", Nilable = false },
},
},
{
......
......@@ -6,6 +6,15 @@ local Loot =
Functions =
{
{
Name = "IsLegacyLootModeEnabled",
Type = "Function",
Returns =
{
{ Name = "isLegacyLootModeEnabled", Type = "bool", Nilable = false },
},
},
},
Events =
......@@ -106,6 +115,7 @@ local Loot =
Payload =
{
{ Name = "itemID", Type = "number", Nilable = false },
{ Name = "quantity", Type = "number", Nilable = false },
},
},
{
......
......@@ -470,6 +470,7 @@ local Map =
{ Name = "areaPoiID", Type = "number", Nilable = false },
{ Name = "name", Type = "string", Nilable = false },
{ Name = "atlasName", Type = "string", Nilable = false },
{ Name = "uiTextureKit", Type = "string", Nilable = true },
},
},
{
......
......@@ -10,6 +10,11 @@ local PvpInfo =
Name = "CanToggleWarMode",
Type = "Function",
Arguments =
{
{ Name = "toggle", Type = "bool", Nilable = false },
},
Returns =
{
{ Name = "canTogglePvP", Type = "bool", Nilable = false },
......@@ -221,6 +226,21 @@ local PvpInfo =
{ Name = "currencyRewards", Type = "table", InnerType = "BattlefieldCurrencyReward", Nilable = true },
},
},
{
Name = "GetRewardItemLevelsByTierEnum",
Type = "Function",
Arguments =
{
{ Name = "pvpTierEnum", Type = "number", Nilable = false },
},
Returns =
{
{ Name = "activityItemLevel", Type = "number", Nilable = false },
{ Name = "weeklyItemLevel", Type = "number", Nilable = false },
},
},
{
Name = "GetSeasonBestInfo",
Type = "Function",
......
......@@ -92,6 +92,20 @@ local QuestLog =
{ Name = "storyMapID", Type = "number", Nilable = false },
},
},
{
Name = "IsLegendaryQuest",
Type = "Function",
Arguments =
{
{ Name = "questID", Type = "number", Nilable = false },
},
Returns =
{
{ Name = "isLegendaryQuest", Type = "bool", Nilable = false },
},
},
{
Name = "IsOnQuest",
Type = "Function",
......
......@@ -5,6 +5,15 @@ local Unit =
Functions =
{
{
Name = "PlayerVehicleHasComboPoints",
Type = "Function",
Returns =
{
{ Name = "vehicleHasComboPoints", Type = "bool", Nilable = false },
},
},
{
Name = "SetPortraitTexture",
Type = "Function",
......
......@@ -39,16 +39,23 @@ end
function AzeriteEmpoweredItemPowerMixin:OnShow()
self:RegisterEvent("UI_MODEL_SCENE_INFO_UPDATED");
self:RegisterEvent("AZERITE_EMPOWERED_ITEM_EQUIPPED_STATUS_CHANGED");
self.isHeartOfAzerothEquipped = C_AzeriteEmpoweredItem.IsHeartOfAzerothEquipped();
end
function AzeriteEmpoweredItemPowerMixin:OnHide()
self:UnregisterEvent("UI_MODEL_SCENE_INFO_UPDATED");
self:UnregisterEvent("AZERITE_EMPOWERED_ITEM_EQUIPPED_STATUS_CHANGED");
end
function AzeriteEmpoweredItemPowerMixin:OnEvent(event, ...)
if event == "UI_MODEL_SCENE_INFO_UPDATED" then
local forceUpdate = true;
self:SetupModelScene(forceUpdate);
elseif event == "AZERITE_EMPOWERED_ITEM_EQUIPPED_STATUS_CHANGED" then
self.isHeartOfAzerothEquipped = ...;
self:SetPowerButtonState();
self:UpdateStyle();
end
end
......@@ -310,6 +317,10 @@ function AzeriteEmpoweredItemPowerMixin:GetBorderAlphaValue()
end
function AzeriteEmpoweredItemPowerMixin:GetIconNotSelectableOverlayAlphaValue()
if not self.isHeartOfAzerothEquipped then
return 1;
end
if self.azeriteItemDataSource:IsPreviewSource() then
return 0;
end
......@@ -378,7 +389,7 @@ function AzeriteEmpoweredItemPowerMixin:IsSelected()
end
function AzeriteEmpoweredItemPowerMixin:CanBeSelected()
return self:IsTierSelectionActive() and self:MeetsPowerLevelRequirement() and self:IsSpecAllowed() and not self.azeriteItemDataSource:IsPreviewSource();
return self:IsTierSelectionActive() and self:MeetsPowerLevelRequirement() and self:IsSpecAllowed() and not self.azeriteItemDataSource:IsPreviewSource() and self.isHeartOfAzerothEquipped;
end
function AzeriteEmpoweredItemPowerMixin:MeetsPowerLevelRequirement()
......@@ -397,6 +408,11 @@ function AzeriteEmpoweredItemPowerMixin:IsSpecAllowed()
return self.isSpecAllowed;
end
function AzeriteEmpoweredItemPowerMixin:SetPowerButtonState()
self.IconNotSelectableOverlay:SetShown(not self.isHeartOfAzerothEquipped);
self.IconNotSelectableOverlay:SetAlpha(self:GetIconNotSelectableOverlayAlphaValue());
end
function AzeriteEmpoweredItemPowerMixin:SetFinalPowerTooltipDescriptions(tooltip)
local empoweredItemLocation = self.azeriteItemDataSource:GetItemLocation();
local titleOffset = 10;
......@@ -490,6 +506,11 @@ function AzeriteEmpoweredItemPowerMixin:OnEnter()
end
end
if(not self.isHeartOfAzerothEquipped) then
GameTooltip:AddLine(" ");
GameTooltip_AddColoredLine(GameTooltip, HEART_OF_AZEROTH_MISSING_ERROR, RED_FONT_COLOR);
end
GameTooltip:Show();
self.UpdateTooltip = self.OnEnter;
end);
......@@ -535,6 +556,10 @@ function AzeriteEmpoweredItemPowerMixin:OnClick()
return;
end
if not self.isHeartOfAzerothEquipped then
return;
end
assert(self:CanBeSelected());
local empoweredItemLocation = self.azeriteItemDataSource:GetItemLocation();
......
......@@ -53,6 +53,16 @@ local LAYOUT_TIER_INFO = {
2.5478,
-2.5478,
};
[8] = {
-0.78539816339745,
-5.4977871437821,
-1.4585965891667,
-4.8245887180129,
-2.1317950149359,
-4.1513902922437,
-2.8049934407052,
-3.4781918664744,
}
},
},
{
......
......@@ -1861,6 +1861,9 @@ function WardrobeItemsCollectionMixin:GoToSourceID(sourceID, slot, transmogType,
if ( self.activeCategory ~= categoryID or self.activeSlot ~= slot ) then
self:SetActiveSlot(slot, transmogType, categoryID);
else
if not self.filteredVisualsList then
self:RefreshVisualsList();
end
self:ResetPage();
end
end
......
......@@ -477,24 +477,3 @@ end
function CommunitiesAddToChatMixin:GetCommunitiesFrame()
return self:GetParent();
end
function CommunitiesAddStreamHighlightTab_OnClick(self)
if FCF_GetNumActiveChatFrames() ~= NUM_CHAT_WINDOWS then
local clubId, streamId = C_Cursor.GetCursorCommunitiesStream();
if clubId and streamId then
local clubInfo = C_Club.GetClubInfo(clubId);
local streamInfo = C_Club.GetStreamInfo(clubId, streamId);
if clubInfo and streamInfo then
local MAX_COMMUNITY_NAME_LENGTH = 12;
local MAX_CHAT_TAB_STREAM_NAME_LENGTH = 50; -- Arbitrarily large, since for now we don't want to truncate the stream part.
local communityPart = ChatFrame_TruncateToMaxLength(clubInfo.name, MAX_COMMUNITY_NAME_LENGTH);
local streamPart = ChatFrame_TruncateToMaxLength(streamInfo.name, MAX_CHAT_TAB_STREAM_NAME_LENGTH);
local chatFrameName = COMMUNITIES_NAME_AND_STREAM_NAME:format(communityPart, streamPart);
local frame, chatFrameIndex = FCF_OpenNewWindow(chatFrameName);
C_Club.AddClubStreamToChatWindow(clubId, streamId, chatFrameIndex);
ChatFrame_AddChannel(frame, Chat_GetCommunitiesChannelName(clubId, streamId));
self:GetParent():Reset();
end
end
end
end
\ No newline at end of file
......@@ -204,4 +204,13 @@ do
-- Moved to C_ReportSystem
C_ChatInfo.ReportPlayer = C_ReportSystem.ReportPlayer;
C_ChatInfo.CanReportPlayer = C_ReportSystem.CanReportPlayer;
end
-- Communities
do
-- Renamed to AddClubStreamChatChannel, and chatWindowIndex parameter removed
-- You may also need to call AddChatWindowChannel()
C_Club.AddClubStreamToChatWindow = function(clubId, streamId, chatWindowIndex)
return C_Club.AddClubStreamChatChannel(clubId, streamId);
end
end
\ No newline at end of file
......@@ -2130,7 +2130,7 @@ end
function GarrisonMissionPageRewardsFrame_SetSuccessChance(self, chance, missionEffects)
local successChanceColor = GREEN_FONT_COLOR;
if (missionEffects) then
if ((chance < 0 and missionEffects.hasUncounterableSuccessChanceNegativeEffect) or missionEffects.hasSuccessChanceNegativeEffect) then
if (missionEffects.hasSuccessChanceNegativeEffect) then
successChanceColor = RED_FONT_COLOR;
end
end
......
......@@ -3,7 +3,7 @@ GARRISON_FOLLOWER_MAX_UPGRADE_QUALITY = {
[LE_FOLLOWER_TYPE_GARRISON_6_0] = LE_GARR_FOLLOWER_QUALITY_EPIC,
[LE_FOLLOWER_TYPE_SHIPYARD_6_2] = LE_GARR_FOLLOWER_QUALITY_EPIC,
[LE_FOLLOWER_TYPE_GARRISON_7_0] = LE_GARR_FOLLOWER_QUALITY_TITLE,
[LE_FOLLOWER_TYPE_GARRISON_8_0] = LE_GARR_FOLLOWER_QUALITY_EPIC,
[LE_FOLLOWER_TYPE_GARRISON_8_0] = LE_GARR_FOLLOWER_QUALITY_LEGENDARY,
}
GARRISON_MISSION_NAME_FONT_COLOR = {r=0.78, g=0.75, b=0.73};
......
......@@ -48,7 +48,7 @@ end
function MapCanvasScrollControllerMixin:WouldCursorPositionBeClick(button, cursorX, cursorY)
local mouseButtonInfo = self.mouseButtonInfo[button];
if mouseButtonInfo and mouseButtonInfo.down then
local MAX_DIST_FOR_CLICK_SQ = 10;
local MAX_DIST_FOR_CLICK_SQ = 20;
local deltaX, deltaY = cursorX - mouseButtonInfo.startX, cursorY - mouseButtonInfo.startY;
return deltaX * deltaX + deltaY * deltaY <= MAX_DIST_FOR_CLICK_SQ;
end
......
......@@ -13,6 +13,8 @@ local SEASON_STATE_DISABLED = 4;
local CONQUEST_CURRENCY_ID = 1602;
local BFA_START_SEASON = 26;
---------------------------------------------------------------
-- PVP FRAME
---------------------------------------------------------------
......@@ -296,7 +298,6 @@ function PVPQueueFrame_UpdateTitle()
elseif ConquestFrame.seasonState == SEASON_STATE_OFFSEASON then
PVEFrame.TitleText:SetText(PLAYER_V_PLAYER_OFF_SEASON);
else
local BFA_START_SEASON = 26; -- if you're changing this you probably want to update the global string PLAYER_V_PLAYER_SEASON also
PVEFrame.TitleText:SetText(PLAYER_V_PLAYER_SEASON:format(GetCurrentArenaSeason() - BFA_START_SEASON + 1));
end
end
......@@ -382,6 +383,7 @@ end
---------------------------------------------------------------
local MIN_BONUS_HONOR_LEVEL;
local HONOR_REWARD_QUEST_ID = 54748;
function HonorFrame_OnLoad(self)
self.SpecificFrame.scrollBar.doNotHide = true;
......@@ -412,6 +414,11 @@ function HonorFrame_OnLoad(self)
self:RegisterEvent("PVP_WORLDSTATE_UPDATE");
end
function HonorFrame_OnShow(self)
-- prime the data;
HaveQuestRewardData(HONOR_REWARD_QUEST_ID);
end
function HonorFrame_OnEvent(self, event, ...)
if (event == "PLAYER_ENTERING_WORLD" or event == "PLAYER_LEVEL_UP") then
HonorFrameSpecificList_Update();
......@@ -787,6 +794,7 @@ function HonorFrameBonusFrame_Update()
PVPUIFrame_ConfigureRewardFrame(button.Reward, C_PvP.GetRandomBGRewards());
button.Reward.EnlistmentBonus:SetShown(battlegroundEnlistmentActive);
button.rewardQuestID = HONOR_REWARD_QUEST_ID;
end
-- arena pvp
......@@ -807,6 +815,7 @@ function HonorFrameBonusFrame_Update()
button.Title:SetText(RANDOM_EPIC_BATTLEGROUND);
PVPUIFrame_ConfigureRewardFrame(button.Reward, C_PvP.GetRandomEpicBGRewards());
button.rewardQuestID = HONOR_REWARD_QUEST_ID;
end
do
......@@ -959,6 +968,10 @@ function ConquestFrame_OnShow(self)
RequestRatedInfo();
RequestPVPOptionsEnabled();
ConquestFrame_Update(self);
local lastSeasonNumber = tonumber(GetCVar("newPvpSeason"));
if lastSeasonNumber < (GetCurrentArenaSeason()) then
PVPQueueFrame.NewSeasonPopup:Show();
end
end
local tierEnumToName =
......@@ -991,11 +1004,17 @@ end
function NextTier_OnEnter(self)
if self.tierInfo and self.tierInfo.pvpTierEnum and tierEnumToName[self.tierInfo.pvpTierEnum] then
local WORD_WRAP = true;
GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
GameTooltip_SetTitle(GameTooltip, TOOLTIP_PVP_NEXT_RANK:format(tierEnumToName[self.tierInfo.pvpTierEnum]));
if nextTierEnumToDescription[self.tierInfo.pvpTierEnum] then
GameTooltip:SetMinimumWidth(260);
GameTooltip_AddNormalLine(GameTooltip, nextTierEnumToDescription[self.tierInfo.pvpTierEnum], true);
GameTooltip_AddNormalLine(GameTooltip, nextTierEnumToDescription[self.tierInfo.pvpTierEnum], WORD_WRAP);
end
local activityItemLevel, weeklyItemLevel = C_PvP.GetRewardItemLevelsByTierEnum(self.tierInfo.pvpTierEnum);
if activityItemLevel > 0 then
GameTooltip_AddBlankLineToTooltip(GameTooltip);
GameTooltip_AddColoredLine(GameTooltip, PVP_GEAR_REWARD_CHANCE_LONG:format(activityItemLevel), NORMAL_FONT_COLOR, WORD_WRAP);
end
GameTooltip:Show();
end
......@@ -1042,6 +1061,7 @@ function ConquestFrame_Update(self)
if tierInfo then
button.CurrentRating:SetText(rating);
button.CurrentRating:Show();
button.pvpTierEnum = tierInfo.pvpTierEnum;
else
button.CurrentRating:Hide();
end
......@@ -1256,9 +1276,10 @@ function PVPRewardTemplate_OnEnter(self)
if (not self.Icon:IsShown()) then
return;
end
EmbeddedItemTooltip:SetOwner(self, "ANCHOR_RIGHT");
EmbeddedItemTooltip:SetText(PVP_REWARD_TOOLTIP);
self.UpdateTooltip = nil;
if (self.experience > 0) then
GameTooltip_AddColoredLine(EmbeddedItemTooltip, PVP_REWARD_XP_FORMAT:format(BreakUpLargeNumbers(self.experience)), HIGHLIGHT_FONT_COLOR);
else
......@@ -1272,16 +1293,38 @@ function PVPRewardTemplate_OnEnter(self)
EmbeddedItemTooltip:AddLine(text, currencyColor:GetRGB());
end
end
local activityItemLevel;
local pvpTierEnum = self:GetParent().pvpTierEnum;
if pvpTierEnum then
activityItemLevel = C_PvP.GetRewardItemLevelsByTierEnum(pvpTierEnum);
end
local rewardQuestID = self:GetParent().rewardQuestID;
if rewardQuestID then
if HaveQuestRewardData(rewardQuestID) then
activityItemLevel = select(7, GetQuestLogRewardInfo(1, rewardQuestID));
else
self.UpdateTooltip = PVPRewardTemplate_OnEnter;
end
end
if activityItemLevel and activityItemLevel > 0 then
GameTooltip_AddBlankLineToTooltip(EmbeddedItemTooltip);
GameTooltip_AddColoredLine(EmbeddedItemTooltip, PVP_GEAR_REWARD_CHANCE:format(activityItemLevel), HIGHLIGHT_FONT_COLOR);
end
if self.itemID then
EmbeddedItemTooltip:AddLine(" ");
GameTooltip_AddBlankLineToTooltip(EmbeddedItemTooltip);
EmbeddedItemTooltip_SetItemByID(EmbeddedItemTooltip.ItemTooltip, self.itemID);
elseif self.currencyID then
EmbeddedItemTooltip:AddLine(" ");
GameTooltip_AddBlankLineToTooltip(EmbeddedItemTooltip);
EmbeddedItemTooltip_SetCurrencyByID(EmbeddedItemTooltip.ItemTooltip, self.currencyID, self.quantity);
end
EmbeddedItemTooltip:Show();
end
function PVPRewardTemplate_OnLeave(self)
EmbeddedItemTooltip:Hide();
self.UpdateTooltip = nil;
end
function PVPRewardEnlistmentBonus_OnEnter(self)
GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
local spellName = GetSpellInfo(BATTLEGROUND_ENLISTMENT_BONUS);
......@@ -1704,3 +1747,15 @@ function PVPConquestBarRewardMixin:OnClick()
HandleModifiedItemClick(GetQuestLogItemLink("reward", 1, self.questID));
end
end
NewPvpSeasonMixin = { };
function NewPvpSeasonMixin:OnShow()
local currentSeasonNumber = GetCurrentArenaSeason() - BFA_START_SEASON + 1;
self.SeasonDescription:SetText(BFA_SEASON_NUMBER:format(currentSeasonNumber));
self.SeasonDescription2:SetText(BFA_PVP_SEASON_DESCRIPTION_TWO);
end
function NewPvpSeasonMixin:OnHide()
SetCVar("newPvpSeason", GetCurrentArenaSeason());
end
\ No newline at end of file
......@@ -2,6 +2,168 @@
..\FrameXML\UI.xsd">
<Script file="Blizzard_PVPUI.lua"/>
<Frame name="SeasonRewardFrameTemplate" mixin="PVPUISeasonRewardFrameMixin" virtual="true">
<Layers>
<Layer level="OVERLAY">
<Texture parentKey="CheckMark" atlas="pvpqueue-conquestbar-checkmark" useAtlasSize="true" hidden="true">
<Anchors>
<Anchor point="BOTTOMRIGHT" x="14" y="-4"/>
</Anchors>
</Texture>
</Layer>
</Layers>
<Scripts>
<OnShow method="OnShow"/>
<OnHide method="OnHide"/>
<OnEvent method="OnEvent"/>
<OnEnter method="UpdateTooltip"/>
<OnLeave method="OnLeave"/>
</Scripts>
</Frame>
<Frame name="PVPSeasonChangesNoticeTemplate" hidden="true" mixin="NewPvpSeasonMixin" enableMouse="true" virtual="true">
<Size x="398" y="548"/>
<Layers>
<Layer level="BORDER" textureSubLevel="2">
<Texture parentKey="BottomLeftCorner" atlas="parchmentpopup-bottomleft" useAtlasSize="true">
<Anchors>
<Anchor point="BOTTOMLEFT"/>
</Anchors>
</Texture>
<Texture parentKey="BottomRightCorner" atlas="parchmentpopup-bottomright" useAtlasSize="true">
<Anchors>
<Anchor point="BOTTOMRIGHT"/>
</Anchors>
</Texture>
<Texture parentKey="TopLeftCorner" atlas="parchmentpopup-topleft">
<Size x="167" y="167"/>
<Anchors>
<Anchor point="TOPLEFT"/>
</Anchors>
</Texture>
<Texture parentKey="TopRightCorner" atlas="parchmentpopup-topright" useAtlasSize="true">
<Anchors>
<Anchor point="TOPRIGHT" x="-1"/>
</Anchors>
</Texture>
</Layer>
<Layer level="BORDER" textureSubLevel="3">
<Texture parentKey="BottomBorder" atlas="parchmentpopup-bottom" horizTile="true" useAtlasSize="true" >
<Anchors>
<Anchor point="BOTTOMLEFT" relativeKey="$parent.BottomLeftCorner" relativePoint="BOTTOMRIGHT" y="2"/>
<Anchor point="BOTTOMRIGHT" relativeKey="$parent.BottomRightCorner" relativePoint="BOTTOMLEFT" y="2"/>
</Anchors>
</Texture>
<Texture parentKey="TopBorder" atlas="parchmentpopup-top" horizTile="true" useAtlasSize="true" >
<Anchors>
<Anchor point="TOPLEFT" relativeKey="$parent.TopLeftCorner" relativePoint="TOPRIGHT" y="-1"/>
<Anchor point="TOPRIGHT" relativeKey="$parent.TopRightCorner" relativePoint="TOPLEFT" y="-1"/>
</Anchors>
</Texture>
<Texture parentKey="LeftBorder" atlas="parchmentpopup-left" vertTile="true" useAtlasSize="true">
<Anchors>
<Anchor point="TOPLEFT" relativeKey="$parent.TopLeftCorner" relativePoint="BOTTOMLEFT" x="2"/>
<Anchor point="BOTTOMLEFT" relativeKey="$parent.BottomLeftCorner" relativePoint="TOPLEFT" x="2"/>
</Anchors>
</Texture>
<Texture parentKey="RightBorder" atlas="parchmentpopup-right" vertTile="true" useAtlasSize="true">
<Anchors>
<Anchor point="TOPRIGHT" relativeKey="$parent.TopRightCorner" relativePoint="BOTTOMRIGHT"/>
<Anchor point="BOTTOMRIGHT" relativeKey="$parent.BottomRightCorner" relativePoint="TOPRIGHT"/>
</Anchors>
</Texture>
</Layer>
<Layer level="BORDER" textureSubLevel="4">
<Texture parentKey="LeftHide" atlas="parchmentpopup-hide-left" useAtlasSize="true">
<Anchors>
<Anchor point="TOPLEFT" relativeKey="$parent.TopLeftCorner" relativePoint="BOTTOMLEFT" x="10" y="10"/>
</Anchors>
</Texture>
<Texture parentKey="LeftHide2" atlas="parchmentpopup-hide-left" useAtlasSize="true">
<Anchors>
<Anchor point="BOTTOMLEFT" relativeKey="$parent.BottomLeftCorner" relativePoint="TOPLEFT" x="10" y="-10"/>
</Anchors>
</Texture>
<Texture parentKey="RightHide" atlas="parchmentpopup-hide-right" useAtlasSize="true">
<Anchors>
<Anchor point="TOPRIGHT" relativeKey="$parent.TopRightCorner" relativePoint="BOTTOMRIGHT" x="-8" y="-10"/>
</Anchors>
</Texture>
<Texture parentKey="RightHide2" atlas="parchmentpopup-hide-right" useAtlasSize="true">
<Anchors>
<Anchor point="BOTTOMRIGHT" relativeKey="$parent.BottomRightCorner" relativePoint="TOPRIGHT" x="-10" y="-10"/>
</Anchors>
</Texture>
<Texture parentKey="BottomHide" atlas="parchmentpopup-hide-bottom" useAtlasSize="true">
<Anchors>
<Anchor point="BOTTOMLEFT" relativeKey="$parent.BottomLeftCorner" relativePoint="BOTTOMRIGHT" x="-10" y="11"/>