Commit b264eae5 authored by TOM_RUS's avatar TOM_RUS
Browse files

WOW-30613patch8.2.0_PTR

parent 1c4a49ef
......@@ -204,6 +204,15 @@ local CommentatorFrame =
{ Name = "ms", Type = "number", Nilable = false },
},
},
{
Name = "GetElapsedMs",
Type = "Function",
Returns =
{
{ Name = "timeLeft", Type = "number", Nilable = false },
},
},
{
Name = "GetExcludeDistance",
Type = "Function",
......
......@@ -362,6 +362,10 @@ local FriendList =
Name = "BnConnected",
Type = "Event",
LiteralName = "BN_CONNECTED",
Payload =
{
{ Name = "suppressNotification", Type = "bool", Nilable = false, Default = false },
},
},
{
Name = "BnCustomMessageChanged",
......@@ -384,6 +388,7 @@ local FriendList =
Payload =
{
{ Name = "result", Type = "bool", Nilable = false },
{ Name = "suppressNotification", Type = "bool", Nilable = false, Default = false },
},
},
{
......
......@@ -47,6 +47,15 @@ local PvpInfo =
{ Name = "canTogglePvPInArea", Type = "bool", Nilable = false },
},
},
{
Name = "DoesMatchOutcomeAffectRating",
Type = "Function",
Returns =
{
{ Name = "doesAffect", Type = "bool", Nilable = false },
},
},
{
Name = "GetActiveBrawlInfo",
Type = "Function",
......
......@@ -6,6 +6,15 @@ local SpellBook =
Functions =
{
{
Name = "ContainsAnyDisenchantSpell",
Type = "Function",
Returns =
{
{ Name = "contains", Type = "bool", Nilable = false },
},
},
},
Events =
......
......@@ -23,14 +23,21 @@ local LEARN_MODEL_SCENE_INFO = StaticModelInfo.CreateModelSceneEntry(259, 210129
local UNLOCK_SLOT_MODEL_SCENE_INFO = StaticModelInfo.CreateModelSceneEntry(269, 1983548); -- 8FX_Azerite_Generic_NovaHigh_Base.m2
local UNLOCK_STAMINA_MODEL_SCENE_INFO = StaticModelInfo.CreateModelSceneEntry(270, 1983548); -- 8FX_Azerite_Generic_NovaHigh_Base.m2
local UNLOCK_SECONDARY_EFFECT_ID = 2924332; -- CFX_Azerite_TimeLostTopaz_Major_Rank4_Cast.m2
local REVEAL_SLOT_MODEL_SCENE_INFO = StaticModelInfo.CreateModelSceneEntry(286, 1983548); -- 8FX_Azerite_Generic_NovaHigh_Base.m2
local REVEAL_SECONDARY_EFFECT_ID = 2924332; -- CFX_Azerite_TimeLostTopaz_Major_Rank4_Cast.m2
local LEARN_SHAKE_DELAY = 0.869;
local LEARN_SHAKE = { { x = 0, y = -8}, { x = 0, y = 8}, { x = 0, y = -8}, { x = 0, y = 8}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, };
local LEARN_SHAKE = { { x = 0, y = -20}, { x = 0, y = 20}, { x = 0, y = -20}, { x = 0, y = 20}, { x = -9, y = -8}, { x = 8, y = 8}, { x = -3, y = -8}, { x = 9, y = 8}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, };
local LEARN_SHAKE_DURATION = 0.20;
local LEARN_SHAKE_FREQUENCY = 0.001;
local REVEAL_START_DELAY = 1.2;
local REVEAL_DELAY_SECS_PER_DISTANCE = 0.0035;
local REVEAL_SHAKE_DELAY = 0.869;
local REVEAL_SHAKE = { { x = 0, y = -44}, { x = 0, y = 44}, { x = 0, y = -44}, { x = 0, y = 44}, { x = -9, y = -32}, { x = 8, y = 32}, { x = -3, y = -32}, { x = 9, y = 32}, { x = -11, y = -32}, { x = 1, y = 32}, { x = -13, y = -32}, { x = 7, y = 32}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, { x = -3, y = -1}, { x = 2, y = 2}, { x = -2, y = -3}, { x = -1, y = -1}, { x = 4, y = 2}, { x = 3, y = 4}, { x = -3, y = 4}, { x = 4, y = -4}, { x = -4, y = 2}, { x = -2, y = 1}, };
local REVEAL_SHAKE_DURATION = 0.40;
local REVEAL_SHAKE_FREQUENCY = 0.001;
local REVEAL_START_DELAY = 0.9;
local REVEAL_DELAY_SECS_PER_DISTANCE = 0.0036;
local REVEAL_LINE_DURATION_SECS_PER_DISTANCE = 0.0012;
local REVEAL_SWIRL_SLOT_SCALE = 1;
local REVEAL_SWIRL_STAMINA_SCALE = 0.5;
......@@ -240,6 +247,8 @@ function AzeriteEssenceUIMixin:OnEssenceActivated(essenceID, slotFrame)
if self.shouldPlayReveal then
PlaySound(SOUNDKIT.UI_82_HEARTOFAZEROTH_SLOTFIRSTESSENCE);
slotFrame:PlayRevealEffect();
ShakeFrame(self:GetParent(), REVEAL_SHAKE, REVEAL_SHAKE_DURATION, REVEAL_SHAKE_FREQUENCY);
C_Timer.After(REVEAL_START_DELAY,
function()
self:PlayReveal();
......@@ -432,16 +441,6 @@ function AzeriteEssenceUIMixin:ApplyRevealSwirl(milestoneFrame, delay)
);
end
function AzeriteEssenceUIMixin:OnMilestoneRevealAnimationFinished()
self.numRevealsPlaying = self.numRevealsPlaying - 1;
if self.numRevealsPlaying == 0 then
self.numRevealsPlaying = nil;
self.revealSwirlPool:ReleaseAll();
self.shouldPlayReveal = false;
self:RefreshMilestones();
end
end
function AzeriteEssenceUIMixin:CancelReveal()
for i, milestoneFrame in ipairs(self.Milestones) do
milestoneFrame:CancelReveal();
......@@ -463,6 +462,16 @@ function AzeriteEssenceUIMixin:CancelReveal()
self.shouldPlayReveal = false;
end
function AzeriteEssenceUIMixin:OnSwirlAnimationFinished()
self.numRevealsPlaying = self.numRevealsPlaying - 1;
if self.numRevealsPlaying == 0 then
self.numRevealsPlaying = nil;
self.revealSwirlPool:ReleaseAll();
self.shouldPlayReveal = false;
self:RefreshMilestones();
end
end
AzeriteEssenceDependencyLineMixin = CreateFromMixins(PowerDependencyLineMixin);
function AzeriteEssenceDependencyLineMixin:SetDisconnected()
......@@ -660,7 +669,7 @@ function AzeriteEssenceListMixin:OnEssenceChanged(essenceID)
self.learnEssenceButton.Glow2.Anim:Play();
self.learnEssenceButton.Glow3.Anim:Play();
-- scene
C_Timer.After(0.769,
C_Timer.After(0.79,
function()
local scene = self.LearnEssenceModelScene;
scene:SetPoint("CENTER", self.learnEssenceButton);
......@@ -676,11 +685,6 @@ function AzeriteEssenceListMixin:OnEssenceChanged(essenceID)
scene.effect:SetAnimation(0, 0, 0, 0);
end
);
C_Timer.After(0.769,
function()
scene.unlockEffect:SetAnimation(0, 0, 0, 0);
end
);
end
end
);
......@@ -846,6 +850,9 @@ end
function AzeriteMilestoneBaseMixin:OnEvent(event, ...)
if event == "UI_MODEL_SCENE_INFO_UPDATED" then
self.UnlockModelScene.unlockEffect = nil;
if self.RevealModelScene then
self.RevealModelScene.revealEffect = nil;
end
end
end
......@@ -869,6 +876,9 @@ end
function AzeriteMilestoneBaseMixin:OnLeave()
if self.UnlockedState then
self.UnlockedState.HighlightRing:Hide();
if self.isDraggable then
self.UnlockedState.DragHighlight:Hide();
end
end
GameTooltip:Hide();
end
......@@ -888,10 +898,10 @@ function AzeriteMilestoneBaseMixin:OnUnlocked()
if scene.unlockEffect then
scene:Show();
scene.unlockEffect:SetAnimation(0, 0, 1, 0);
C_Timer.After(.2,
C_Timer.After(.4,
function()
scene.unlockEffect:SetAnimation(0, 0, 0, 0);
C_Timer.After(5,
C_Timer.After(2,
function()
scene:Hide();
end
......@@ -920,6 +930,37 @@ function AzeriteMilestoneBaseMixin:OnUnlocked()
end
end
function AzeriteMilestoneBaseMixin:PlayRevealEffect()
local scene = self.RevealModelScene;
if not scene.revealEffect then
local forceUpdate = true;
scene.revealEffect = StaticModelInfo.SetupModelScene(scene, REVEAL_SLOT_MODEL_SCENE_INFO, forceUpdate);
scene.secondaryEffect = scene:GetActorByTag("effect2");
if scene.secondaryEffect then
scene.secondaryEffect:SetModelByFileID(REVEAL_SECONDARY_EFFECT_ID);
end
end
if scene.revealEffect then
scene:Show();
scene.revealEffect:SetAnimation(0, 0, 1, 0);
C_Timer.After(.4,
function()
scene.revealEffect:SetAnimation(0, 0, 0, 0);
C_Timer.After(2,
function()
scene:Hide();
end
);
if scene.secondaryEffect then
scene.secondaryEffect:SetAnimation(0, 0, 1, 0);
C_Timer.After(0.5, function() scene.secondaryEffect:SetAnimation(0, 0, 0, 0); end);
end
end
);
end
end
function AzeriteMilestoneBaseMixin:BeginReveal(delay)
self:Show();
self:Refresh();
......@@ -1069,6 +1110,11 @@ function AzeriteMilestoneSlotMixin:OnEnter()
if C_AzeriteEssence.CanActivateEssence(pendingEssenceID, self.milestoneID) then
self.UnlockedState.HighlightRing:Show();
end
elseif self.isDraggable then
local spellID = C_AzeriteEssence.GetMilestoneSpell(self.milestoneID);
if spellID then
self.UnlockedState.DragHighlight:Show();
end
end
else
local wrapText = true;
......@@ -1155,7 +1201,7 @@ function AzeriteEssenceLearnAnimFrameMixin:PlayAnim()
self.Anim:Stop();
local runeIndex = random(1, 15);
local runeIndex = random(1, 16);
local runeAtlas = "heartofazeroth-animation-rune"..runeIndex;
local useAtlasSize = true;
......
......@@ -20,11 +20,6 @@
<AnimationGroup parentKey="RevealAnim">
<Alpha parentKey="Start" duration=".001" order="1" fromAlpha="0" toAlpha="0"/>
<Alpha duration="0.75" order="2" fromAlpha="0" toAlpha="1"/>
<Scripts>
<OnFinished>
self:GetParent():GetParent():OnMilestoneRevealAnimationFinished();
</OnFinished>
</Scripts>
</AnimationGroup>
</Animations>
<Scripts>
......@@ -141,6 +136,12 @@
<KeyValue key="isDraggable" type="boolean" value="true"/>
</KeyValues>
<Frames>
<ModelScene parentKey="RevealModelScene" drawLayer="OVERLAY" inherits="NonInteractableModelSceneMixinTemplate" hidden="true">
<Size x="2000" y="2000" />
<Anchors>
<Anchor point="CENTER" />
</Anchors>
</ModelScene>
<Frame parentKey="UnlockedState" parentArray="StateFrames" setAllPoints="true">
<Layers>
<Layer level="BACKGROUND" textureSubLevel="-1">
......@@ -187,9 +188,17 @@
<Texture parentKey="GlassCover" atlas="heartofazeroth-slot-major-glass" setAllPoints="true" alphaMode="ADD"/>
</Layer>
<Layer level="ARTWORK" textureSubLevel="1">
<Texture parentKey="Ring" atlas="heartofazeroth-slot-major-ring" setAllPoints="true"/>
<Texture parentKey="DragHighlight" atlas="common-roundhighlight" alphaMode="ADD" hidden="true">
<Size x="59" y="59"/>
<Anchors>
<Anchor point="CENTER"/>
</Anchors>
</Texture>
</Layer>
<Layer level="ARTWORK" textureSubLevel="2">
<Texture parentKey="Ring" atlas="heartofazeroth-slot-major-ring" setAllPoints="true"/>
</Layer>
<Layer level="ARTWORK" textureSubLevel="3">
<Texture parentKey="HighlightRing" atlas="heartofazeroth-slot-major-ring" setAllPoints="true" hidden="true" alpha="0.2" alphaMode="ADD"/>
<Texture parentKey="EmptyGlow" atlas="heartofazeroth-slot-yellowglow" useAtlasSize="true" alphaMode="ADD">
<Anchors>
......@@ -632,6 +641,34 @@
<Frame name="AzeriteEssenceLearnAnimFrame" parent="UIParent" frameStrata="HIGH" frameLevel="10000" hidden="true" mixin="AzeriteEssenceLearnAnimFrameMixin">
<Size x="100" y="100"/>
<Layers>
<Layer level="BACKGROUND">
<Texture parentKey="BlackCover" parentArray="Textures">
<Anchors>
<Anchor point="TOPLEFT" relativeTo="UIParent"/>
<Anchor point="BOTTOMRIGHT" relativeTo="UIParent"/>
</Anchors>
<Color r="0" g="0" b="0" a="1"/>
</Texture>
<Texture parentKey="BlackCover2" parentArray="Textures">
<Anchors>
<Anchor point="TOPLEFT" relativeTo="UIParent"/>
<Anchor point="BOTTOMRIGHT" relativeTo="UIParent"/>
</Anchors>
<Color r="0" g="0" b="0" a="1"/>
</Texture>
</Layer>
<Layer level="BACKGROUND" textureSubLevel="2">
<Texture parentKey="Titans" parentArray="Textures" atlas="heartofazeroth-animation-titans" alphaMode="ADD" useAtlasSize="true">
<Anchors>
<Anchor point="CENTER" x="100" y="0"/>
</Anchors>
</Texture>
<Texture parentKey="Titans2" parentArray="Textures" atlas="heartofazeroth-animation-titans" alphaMode="ADD" useAtlasSize="true">
<Anchors>
<Anchor point="CENTER" relativeKey="$parent.Titans"/>
</Anchors>
</Texture>
</Layer>
<Layer level="ARTWORK">
<Texture parentKey="Rune" parentArray="Textures" alpha="0" alphaMode="ADD" atlas="heartofazeroth-animation-rune4" useAtlasSize="true">
<KeyValues>
......@@ -734,19 +771,15 @@
<Anchor point="CENTER" relativeKey="$parent.OrbActivated"/>
</Anchors>
</Texture>
<Texture parentKey="GlassShards" parentArray="Textures" alpha="0" alphaMode="ADD" atlas="heartofazeroth-animation-glassshards" useAtlasSize="true">
<Anchors>
<Anchor point="CENTER" relativeKey="$parent.OrbActivated"/>
</Anchors>
</Texture>
<Texture parentKey="GlassShards2" parentArray="Textures" alpha="0" alphaMode="ADD" atlas="heartofazeroth-animation-glassshards" useAtlasSize="true">
</Layer>
<Layer level="OVERLAY">
<Texture parentKey="LensflareLine" parentArray="Textures" alpha="0" alphaMode="ADD" atlas="heartofazeroth-animation-LensflareLine">
<Size x="5000" y="387"/>
<Anchors>
<Anchor point="CENTER" relativeKey="$parent.OrbActivated"/>
</Anchors>
</Texture>
</Layer>
<Layer level="OVERLAY">
<Texture parentKey="LensflareLine" parentArray="Textures" alpha="0" alphaMode="ADD" atlas="heartofazeroth-animation-LensflareLine">
<Texture parentKey="LensflareLine3" parentArray="Textures" alpha="0" alphaMode="ADD" atlas="heartofazeroth-animation-LensflareLine">
<Size x="5000" y="387"/>
<Anchors>
<Anchor point="CENTER" relativeKey="$parent.OrbActivated"/>
......@@ -764,6 +797,12 @@
</Layers>
<Animations>
<AnimationGroup parentKey="Anim" setToFinalAlpha="true">
<Alpha childKey="BlackCover" duration="1" order="1" fromAlpha="1" toAlpha="0" smoothing="IN"/>
<Alpha childKey="BlackCover2" duration="1" order="1" fromAlpha="1" toAlpha="0" smoothing="IN"/>
<Alpha childKey="Titans" duration="1" order="1" fromAlpha="1" toAlpha="0" smoothing="IN"/>
<Alpha childKey="Titans2" duration="1" order="1" fromAlpha="1" toAlpha="0" smoothing="IN"/>
<Scale childKey="Titans" startDelay="0" duration="2" order="1" fromScaleX="0.875" fromScaleY="0.875" toScaleX="0.933" toScaleY="0.933"/>
<Scale childKey="Titans2" startDelay="0" duration="2" order="1" fromScaleX="0.875" fromScaleY="0.875" toScaleX="0.933" toScaleY="0.933"/>
<Alpha childKey="RuneStatic" duration="0" order="1" fromAlpha="0" toAlpha="0.5"/>
<Scale childKey="RingLargeFlip" smoothing="IN" duration="0.802" order="1" fromScaleX="6.68" fromScaleY="6.68" toScaleX="0.01" toScaleY="1.104"/>
<Scale childKey="RingLargeFlip2" smoothing="NONE" duration="0.802" order="1" fromScaleX="6.68" fromScaleY="6.68" toScaleX="0.01" toScaleY="1.104"/>
......@@ -785,22 +824,19 @@
<Alpha childKey="Sunburst" startDelay="0.735" duration="0.134" order="1" fromAlpha="0" toAlpha="1"/>
<Scale childKey="Sunburst" startDelay="0.735" duration="0.134" order="1" fromScaleX="3.5" fromScaleY="3.5" toScaleX="1" toScaleY="1"/>
<Alpha childKey="LensflareLine" startDelay="0.802" duration="0" order="1" fromAlpha="0" toAlpha="0.2"/>
<Alpha childKey="LensflareLine3" startDelay="0.802" duration="0" order="1" fromAlpha="0" toAlpha="0.2"/>
<Alpha childKey="LensflareLine2" startDelay="0.802" duration="0" order="1" fromAlpha="0" toAlpha="0.2"/>
<Alpha childKey="Rune" startDelay="0.802" duration="0" order="1" fromAlpha="0" toAlpha="1"/>
<Alpha childKey="Rune2" startDelay="0.802" duration="0" order="1" fromAlpha="0" toAlpha="0.5"/>
<Scale childKey="RingLargeFlip" startDelay="0.802" duration="0.067" order="1" fromScaleX="1" fromScaleY="1" toScaleX="10" toScaleY="0.926"/>
<Scale childKey="RingLargeFlip2" startDelay="0.802" duration="0.067" order="1" fromScaleX="1" fromScaleY="1" toScaleX="10" toScaleY="0.926"/>
<Alpha childKey="Glowies" startDelay="0.802" duration="1.3" order="1" fromAlpha="1" toAlpha="0"/>
<Alpha childKey="Glowies2" startDelay="0.802" duration="1.3" order="1" fromAlpha="1" toAlpha="0"/>
<Alpha childKey="GlassShards" startDelay="0.802" duration="1.3" order="1" fromAlpha="1" toAlpha="0"/>
<Alpha childKey="GlassShards2" startDelay="0.802" duration="1.3" order="1" fromAlpha="1" toAlpha="0"/>
<Alpha childKey="Glowies" startDelay="0.802" duration="1.2" order="1" fromAlpha="1" toAlpha="0"/>
<Alpha childKey="Glowies2" startDelay="0.802" duration="1.2" order="1" fromAlpha="1" toAlpha="0"/>
<Scale childKey="Rune" startDelay="0.802" duration="0.067" order="1" fromScaleX="0.01" fromScaleY="1.64" toScaleX="1.25" toScaleY="1.25"/>
<Scale childKey="Rune2" startDelay="0.802" duration="0.067" order="1" fromScaleX="0.01" fromScaleY="1.64" toScaleX="1.25" toScaleY="1.25"/>
<Scale childKey="RuneStatic" startDelay="0.802" duration="1.772" order="1" fromScaleX="1" fromScaleY="1" toScaleX="0.8" toScaleY="0.8"/>
<Scale childKey="Glowies" startDelay="0.802" duration="2" order="1" fromScaleX="0.3" fromScaleY="0.3" toScaleX="0.5" toScaleY="0.5"/>
<Scale childKey="Glowies2" startDelay="0.802" duration="2" order="1" fromScaleX="0.3" fromScaleY="0.3" toScaleX="0.5" toScaleY="0.5"/>
<Scale childKey="GlassShards" startDelay="0.802" duration="2" order="1" fromScaleX="0.45" fromScaleY="0.45" toScaleX="0.6" toScaleY="0.6"/>
<Scale childKey="GlassShards2" startDelay="0.802" duration="2" order="1" fromScaleX="0.45" fromScaleY="0.45" toScaleX="0.6" toScaleY="0.6"/>
<Scale childKey="Glowies" startDelay="0.802" duration="2" order="1" fromScaleX="0.4" fromScaleY="0.4" toScaleX="0.45" toScaleY="0.45"/>
<Scale childKey="Glowies2" startDelay="0.802" duration="2" order="1" fromScaleX="0.4" fromScaleY="0.4" toScaleX="0.45" toScaleY="0.45"/>
<Scale childKey="RingSmall" startDelay="0.869" duration="0.505" order="1" fromScaleX="1" fromScaleY="1" toScaleX="0.94" toScaleY="0.94"/>
<Scale childKey="RingLarge" startDelay="0.869" duration="0.505" order="1" fromScaleX="1" fromScaleY="1" toScaleX="0.926" toScaleY="0.926"/>
<Alpha childKey="Sunburst" startDelay="0.869" duration="0.505" order="1" fromAlpha="1" toAlpha="0.6"/>
......@@ -811,6 +847,7 @@
<Alpha childKey="OrbActivated" startDelay="0.869" smoothing="NONE" duration="2.1" order="1" fromAlpha="1" toAlpha="0"/>
<Alpha childKey="OrbActivated2" startDelay="0.869" smoothing="NONE" duration="2.1" order="1" fromAlpha="1" toAlpha="0"/>
<Alpha childKey="LensflareLine" startDelay="1.3" smoothing="IN" duration="0.6" order="1" fromAlpha="0.2" toAlpha="0"/>
<Alpha childKey="LensflareLine3" startDelay="1.3" smoothing="IN" duration="0.6" order="1" fromAlpha="0.2" toAlpha="0"/>
<Alpha childKey="LensflareLine2" startDelay="1.3" smoothing="IN" duration="0.6" order="1" fromAlpha="0.2" toAlpha="0"/>
<Alpha childKey="Rune" startDelay="1.374" duration="1.47" order="1" fromAlpha="1" toAlpha="0"/>
<Alpha childKey="Rune2" startDelay="1.374" duration="1.47" order="1" fromAlpha="0.5" toAlpha="0"/>
......
......@@ -441,7 +441,7 @@ function ChallengesDungeonIconMixin:OnEnter()
if (overtimeInfo and inTimeInfo and overtimeInfo.level > inTimeInfo.level) then
GameTooltip_AddNormalLine(GameTooltip, MYTHIC_PLUS_OVERTIME_SEASON_BEST);
GameTooltip_AddColoredLine(GameTooltip, MYTHIC_PLUS_POWER_LEVEL:format(overtimeInfo.level), HIGHLIGHT_FONT_COLOR);
GameTooltip_AddColoredLine(GameTooltip, GetTimeStringFromSeconds(overtimeInfo.durationSec), HIGHLIGHT_FONT_COLOR);
GameTooltip_AddColoredLine(GameTooltip, SecondsToClock(overtimeInfo.durationSec, true), HIGHLIGHT_FONT_COLOR);
GameTooltip_AddBlankLineToTooltip(GameTooltip);
end
......@@ -453,7 +453,7 @@ function ChallengesDungeonIconMixin:OnEnter()
end
GameTooltip_AddColoredLine(GameTooltip, MYTHIC_PLUS_POWER_LEVEL:format(seasonBestLevel), HIGHLIGHT_FONT_COLOR);
GameTooltip_AddColoredLine(GameTooltip, GetTimeStringFromSeconds(seasonBestDurationSec), HIGHLIGHT_FONT_COLOR);
GameTooltip_AddColoredLine(GameTooltip, SecondsToClock(seasonBestDurationSec, true), HIGHLIGHT_FONT_COLOR);
GameTooltip_AddBlankLineToTooltip(GameTooltip);
for i, member in ipairs(members) do
......
......@@ -7,6 +7,10 @@ function CollectionsJournal_SetTab(self, tab)
CollectionsJournal_UpdateSelectedTab(self);
end
function CollectionsJournal_GetTab(self)
return PanelTemplates_GetSelectedTab(self);
end
local function ShouldShowHeirloomTabHelpTip()
if GetCVarBitfield("closedInfoFrames", LE_FRAME_TUTORIAL_HEIRLOOM_JOURNAL_TAB) or IsKioskModeEnabled() then
return false;
......@@ -40,7 +44,7 @@ function CollectionsJournal_ValidateTab(tabNum)
end
function CollectionsJournal_UpdateSelectedTab(self)
local selected = PanelTemplates_GetSelectedTab(self);
local selected = CollectionsJournal_GetTab(self);
if (not CollectionsJournal_ValidateTab(selected)) then
PanelTemplates_SetTab(self, 1);
......
......@@ -100,11 +100,15 @@ function MountEquipmentButtonMixin:SetDragTargetAnimationPlaying(playing)
end
function MountEquipmentButtonMixin:OnEnter()
self.NewAlert:ClearAlert();
self:ClearAlert();
MountJournal_InitializeEquipmentTooltip(MountJournal);
end
function MountEquipmentButtonMixin:ClearAlert()
self.NewAlert:ClearAlert();
end
function MountEquipmentButtonMixin:OnLeave()
GameTooltip:Hide();
end
......@@ -166,6 +170,11 @@ function MountJournal_OnEvent(self, event, ...)
end
end
function MountJournal_ApplyEquipmentFromContainerClick(self, itemLocation)
self.SlotButton:ClearAlert();
MountJournal_ApplyEquipment(self, itemLocation);
end
function MountJournal_ApplyEquipment(self, itemLocation)
-- We're applying equipment from inventory, so we should have the item information in this context.
if itemLocation and C_MountJournal.IsItemMountEquipment(itemLocation) then
......
......@@ -211,6 +211,7 @@ function PvPCommentatorMixin:OnUpdate(elapsed)
self:CheckObserverState();
self:LayoutTeamFrames();
CommentatorTeamDisplay:SetElapsedMs(C_Commentator.GetElapsedMs())
self.targetSpeedFactor = IsShiftKeyDown() and 2.0 or 1.0;
self.currentSpeedFactor = DeltaLerp(self.currentSpeedFactor or 1.0, self.targetSpeedFactor, .05, elapsed);
......@@ -315,6 +316,7 @@ function PvPCommentatorMixin:OnEvent(event, ...)
C_Commentator.SetCameraPosition(pos.x, pos.y, pos.z, SNAP_TO_POSITION);
C_Commentator.SnapCameraLookAtPoint();
end
CommentatorTeamDisplay:ResetDampeningTracker();
elseif event == "COMMENTATOR_PLAYER_UPDATE" then
self:FullPlayerRefresh();
elseif event == "COMMENTATOR_PLAYER_NAME_OVERRIDE_UPDATE" then
......
......@@ -129,6 +129,14 @@ function CommentatorTeamDisplayMixin:RemoveScore(teamIndex)
self:SetScore(teamIndex, self:GetScore(teamIndex) - 1);
end
function CommentatorTeamDisplayMixin:ResetDampeningTracker()
self.Divider:Show();
self.DampeningHealthBacking:Hide();
self.Dampening:SetAlpha(0);
self.DampeningHealthIcon:SetAlpha(0);
self.DampeningFadeCycle:Stop();
end
function CommentatorTeamDisplayMixin:ResetScore()
for teamIndex = 1, C_Commentator.GetMaxNumTeams() do
self:SetScore(teamIndex, 0);
......@@ -138,11 +146,14 @@ end
function CommentatorTeamDisplayMixin:SetDampeningValue(percent)
if percent and percent > 0 then
self.Dampening:SetText(COMMENTATOR_DAMPENING_PERCENT:format(percent));
self.Dampening:Show();
self.DampeningBg:Show();
if not self.DampeningFadeCycle:IsPlaying() then
self.Divider:Hide();
self.DampeningHealthBacking:Show();
self.DampeningFadeCycle:Play();
end
else
self.Dampening:Hide();
self.DampeningBg:Hide();
self:ResetDampeningTracker();
end
end
......@@ -194,4 +205,15 @@ end
function CommentatorTeamDisplayMixin:AssignPlayerToTeam(playerName, teamName)
g_TeamDefinitions[playerName] = teamName;
self:RefreshPlayerNamesAndScores();
end
function CommentatorTeamDisplayMixin:SetElapsedMs(milliseconds)
local ElapsedTime = self.ElapsedTime;
local visible = milliseconds >= 0.0;
if visible then
ElapsedTime:SetFormattedText(SecondsToClock(milliseconds / 1000));
ElapsedTime:Show();
else
ElapsedTime:Hide();
end
end
\ No newline at end of file
......@@ -7,6 +7,16 @@
<Anchor point="TOP" relativeTo="WorldFrame" />
</Anchors>
<Layers>
<Layer level="BACKGROUND" textureSubLevel="-1">
<Texture parentKey="ClockBg" atlas="Frame_Timer" useAtlasSize="true">
<Size x="384" y="96" />
<Anchors>
<Anchor point="TOP" relativeTo="WorldFrame" relativePoint="TOP" y="-16"/>