You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
365 lines
14 KiB
365 lines
14 KiB
local _detalhes = _G._detalhes
|
|
|
|
--code from blizzard AlertFrames
|
|
|
|
function _detalhes:PlayGlow (frame)
|
|
frame:Show()
|
|
|
|
frame.glow:Show()
|
|
frame.glow.animIn:Play()
|
|
frame.shine:Show()
|
|
frame.shine.animIn:Play()
|
|
|
|
--PlaySound ("LFG_Rewards", "master")
|
|
end
|
|
|
|
--> WatchFrame copy, got removed on WoD
|
|
local function DetailsTutorialAlertFrame_OnFinishSlideIn (frame)
|
|
frame.ScrollChild.Shine:Show();
|
|
frame.ScrollChild.IconShine:Show();
|
|
frame.ScrollChild.Shine.Flash:Play();
|
|
frame.ScrollChild.IconShine.Flash:Play();
|
|
end
|
|
|
|
local function DetailsTutorialAlertFrame_OnUpdate (frame, timestep)
|
|
local animData = frame.animData;
|
|
local height = animData.height;
|
|
local scrollStart = animData.scrollStart;
|
|
local scrollEnd = animData.scrollEnd;
|
|
local endTime = animData.slideInTime + (animData.endDelay or 0);
|
|
|
|
if (frame.startDelay) then
|
|
frame.startDelay = frame.startDelay - timestep;
|
|
if (frame.startDelay <= 0) then
|
|
frame.startDelay = nil;
|
|
else
|
|
return;
|
|
end
|
|
end
|
|
|
|
if (frame.isFirst) then
|
|
height = height + 10;
|
|
scrollEnd = scrollEnd - 10;
|
|
end
|
|
|
|
frame.totalTime = frame.totalTime+timestep;
|
|
if (frame.totalTime > endTime) then
|
|
frame.totalTime = endTime;
|
|
end
|
|
|
|
local scrollPos = scrollEnd;
|
|
if (animData.slideInTime and animData.slideInTime > 0) then
|
|
height = height*(frame.totalTime/animData.slideInTime);
|
|
scrollPos = scrollStart + (scrollEnd-scrollStart)*(frame.totalTime/animData.slideInTime);
|
|
end
|
|
if ( animData.reverse ) then
|
|
height = max(animData.height - height, 1);
|
|
end
|
|
frame:SetHeight(height);
|
|
frame:UpdateScrollChildRect();
|
|
frame:SetVerticalScroll(floor(scrollPos+0.5));
|
|
|
|
if (frame.totalTime >= endTime) then
|
|
frame:SetScript("OnUpdate", nil);
|
|
if ( animData.onFinishFunc ) then
|
|
animData.onFinishFunc(frame);
|
|
end
|
|
end
|
|
end
|
|
|
|
function DetailsTutorialAlertFrame_SlideInFrame (frame, animType)
|
|
frame.totalTime = 0;
|
|
frame.animData = { height = 72, scrollStart = 65, scrollEnd = -9, slideInTime = 0.4, onFinishFunc = DetailsTutorialAlertFrame_OnFinishSlideIn };
|
|
frame.slideInTime = frame.animData.slideInTime;
|
|
frame:SetHeight(1);
|
|
if ( frame.animData.reverse ) then
|
|
frame:SetHeight(frame.animData["height"]);
|
|
else
|
|
frame:SetHeight(1);
|
|
end
|
|
frame.startDelay = frame.animData.startDelay;
|
|
frame:SetScript("OnUpdate", DetailsTutorialAlertFrame_OnUpdate);
|
|
end
|
|
|
|
function _detalhes.PlayBestDamageOnGuild (damage)
|
|
|
|
damage = damage or 100000000
|
|
|
|
--> create the main frame
|
|
local DetailsNewDamageRecord = CreateFrame ("frame", "DetailsNewDamageRecordAnimationFrame", UIParent)
|
|
DetailsNewDamageRecord:SetPoint ("CENTER", UIParent, "CENTER", 0, -200)
|
|
DetailsNewDamageRecord:SetSize (300, 300)
|
|
|
|
--> single animation group
|
|
local MainAnimationGroup = DetailsNewDamageRecord:CreateAnimationGroup ("DetailsNewDamageRecordAnimationGroup")
|
|
MainAnimationGroup:SetLooping ("NONE")
|
|
|
|
--> widgets:
|
|
|
|
----------------------------------------------
|
|
|
|
local BaseTexture = DetailsNewDamageRecord:CreateTexture ("BaseTextureTexture", "ARTWORK")
|
|
BaseTexture:SetTexture ([[Interface\ACHIEVEMENTFRAME\UI-Achievement-Alert-Background-Mini]])
|
|
BaseTexture:SetDrawLayer ("ARTWORK", -5)
|
|
BaseTexture:SetPoint ("center", DetailsNewDamageRecord, "center", 0, 0)
|
|
BaseTexture:SetSize (256, 64)
|
|
BaseTexture:SetVertexColor (0.99999779462814, 0.99999779462814, 0.99999779462814, 0.99999779462814)
|
|
|
|
--> animations for BaseTexture
|
|
|
|
BaseTexture.alpha = MainAnimationGroup:CreateAnimation ("ALPHA")
|
|
BaseTexture.alpha:SetTarget (BaseTexture)
|
|
BaseTexture.alpha:SetOrder (1)
|
|
BaseTexture.alpha:SetDuration (0.14869952201843)
|
|
BaseTexture.alpha:SetStartDelay (0)
|
|
BaseTexture.alpha:SetEndDelay (0)
|
|
BaseTexture.alpha:SetFromAlpha (0)
|
|
BaseTexture.alpha:SetToAlpha (1)
|
|
BaseTexture.alpha = MainAnimationGroup:CreateAnimation ("ALPHA")
|
|
BaseTexture.alpha:SetTarget (BaseTexture)
|
|
BaseTexture.alpha:SetOrder (2)
|
|
BaseTexture.alpha:SetDuration (1)
|
|
BaseTexture.alpha:SetStartDelay (5)
|
|
BaseTexture.alpha:SetEndDelay (0)
|
|
BaseTexture.alpha:SetFromAlpha (1)
|
|
BaseTexture.alpha:SetToAlpha (0)
|
|
|
|
----------------------------------------------
|
|
|
|
local BigFlash = DetailsNewDamageRecord:CreateTexture ("BigFlashTexture", "OVERLAY")
|
|
BigFlash:SetTexture ([[Interface\ACHIEVEMENTFRAME\UI-Achievement-Alert-Glow]])
|
|
BigFlash:SetDrawLayer ("OVERLAY", 0)
|
|
BigFlash:SetPoint ("center", DetailsNewDamageRecord, "center", -2, 2)
|
|
BigFlash:SetSize (314, 100)
|
|
BigFlash:SetDesaturated (false)
|
|
BigFlash:SetTexCoord (0.0010000000149012, 0.77400001525879, 0.0010000000149012, 0.65800003051758)
|
|
if (0 ~= 0) then
|
|
BigFlash:SetRotation (0)
|
|
end
|
|
BigFlash:SetVertexColor (0.96470373868942, 0.98823314905167, 0.99999779462814, 0.99999779462814)
|
|
BigFlash:SetAlpha (1)
|
|
BigFlash:SetBlendMode ("ADD")
|
|
|
|
--> animations for BigFlash
|
|
|
|
BigFlash.alpha = MainAnimationGroup:CreateAnimation ("ALPHA")
|
|
BigFlash.alpha:SetTarget (BigFlash)
|
|
BigFlash.alpha:SetOrder (1)
|
|
BigFlash.alpha:SetDuration (0.11600000411272)
|
|
BigFlash.alpha:SetStartDelay (0)
|
|
BigFlash.alpha:SetEndDelay (0)
|
|
BigFlash.alpha:SetFromAlpha (0)
|
|
BigFlash.alpha:SetToAlpha (1)
|
|
BigFlash.alpha = MainAnimationGroup:CreateAnimation ("ALPHA")
|
|
BigFlash.alpha:SetTarget (BigFlash)
|
|
BigFlash.alpha:SetOrder (2)
|
|
BigFlash.alpha:SetDuration (0.31600001454353)
|
|
BigFlash.alpha:SetStartDelay (0)
|
|
BigFlash.alpha:SetEndDelay (0)
|
|
BigFlash.alpha:SetFromAlpha (1)
|
|
BigFlash.alpha:SetToAlpha (0)
|
|
|
|
----------------------------------------------
|
|
|
|
local FlashSwipe = DetailsNewDamageRecord:CreateTexture ("FlashSwipeTexture", "OVERLAY")
|
|
FlashSwipe:SetTexture ([[Interface\ACHIEVEMENTFRAME\UI-Achievement-Alert-Glow]])
|
|
FlashSwipe:SetDrawLayer ("OVERLAY", 7)
|
|
FlashSwipe:SetPoint ("center", DetailsNewDamageRecord, "center", -99, 0)
|
|
FlashSwipe:SetSize (100, 57)
|
|
FlashSwipe:SetDesaturated (false)
|
|
FlashSwipe:SetTexCoord (0.78199996948242, 0.91900001525879, 0.0010000000149012, 0.2760000038147)
|
|
if (0 ~= 0) then
|
|
FlashSwipe:SetRotation (0)
|
|
end
|
|
FlashSwipe:SetVertexColor (0.86666476726532, 0.54117530584335, 0, 0.99999779462814)
|
|
FlashSwipe:SetAlpha (1)
|
|
FlashSwipe:SetBlendMode ("ADD")
|
|
|
|
--> animations for FlashSwipe
|
|
|
|
FlashSwipe.alpha = MainAnimationGroup:CreateAnimation ("ALPHA")
|
|
FlashSwipe.alpha:SetTarget (FlashSwipe)
|
|
FlashSwipe.alpha:SetOrder (1)
|
|
FlashSwipe.alpha:SetDuration (0.31600001454353)
|
|
FlashSwipe.alpha:SetStartDelay (0.20000000298023)
|
|
FlashSwipe.alpha:SetEndDelay (0)
|
|
FlashSwipe.alpha:SetFromAlpha (0)
|
|
FlashSwipe.alpha:SetToAlpha (0.501051902771)
|
|
FlashSwipe.translation = MainAnimationGroup:CreateAnimation ("TRANSLATION")
|
|
FlashSwipe.translation:SetTarget (FlashSwipe)
|
|
FlashSwipe.translation:SetOrder (1)
|
|
FlashSwipe.translation:SetDuration (0.81599998474121)
|
|
FlashSwipe.translation:SetStartDelay (0.20000000298023)
|
|
FlashSwipe.translation:SetEndDelay (0)
|
|
FlashSwipe.translation:SetOffset (200, 0)
|
|
FlashSwipe.alpha = MainAnimationGroup:CreateAnimation ("ALPHA")
|
|
FlashSwipe.alpha:SetTarget (FlashSwipe)
|
|
FlashSwipe.alpha:SetOrder (1)
|
|
FlashSwipe.alpha:SetDuration (0.31600001454353)
|
|
FlashSwipe.alpha:SetStartDelay (0.69999998807907)
|
|
FlashSwipe.alpha:SetEndDelay (0)
|
|
FlashSwipe.alpha:SetFromAlpha (0.501051902771)
|
|
FlashSwipe.alpha:SetToAlpha (0)
|
|
|
|
----------------------------------------------
|
|
|
|
local Portrait = DetailsNewDamageRecord:CreateTexture ("PortraitTexture", "OVERLAY")
|
|
Portrait:SetTexture ([[Interface\ARCHEOLOGY\ARCH-FLAREEFFECT]])
|
|
Portrait:SetDrawLayer ("OVERLAY", -5)
|
|
Portrait:SetPoint ("center", DetailsNewDamageRecord, "center", 3, 0)
|
|
Portrait:SetSize (246, 44)
|
|
Portrait:SetDesaturated (false)
|
|
Portrait:SetTexCoord (0.051753740310669, 0.81701484680176, 0.086334381103516, 0.25102617263794)
|
|
if (0 ~= 0) then
|
|
Portrait:SetRotation (0)
|
|
end
|
|
Portrait:SetVertexColor (0.99999779462814, 0.99999779462814, 0.99999779462814, 0.99999779462814)
|
|
Portrait:SetAlpha (1)
|
|
Portrait:SetBlendMode ("BLEND")
|
|
|
|
--> animations for Portrait
|
|
|
|
Portrait.alpha = MainAnimationGroup:CreateAnimation ("ALPHA")
|
|
Portrait.alpha:SetTarget (Portrait)
|
|
Portrait.alpha:SetOrder (1)
|
|
Portrait.alpha:SetDuration (0.41600000858307)
|
|
Portrait.alpha:SetStartDelay (0)
|
|
Portrait.alpha:SetEndDelay (0)
|
|
Portrait.alpha:SetFromAlpha (0)
|
|
Portrait.alpha:SetToAlpha (1)
|
|
Portrait.scale = MainAnimationGroup:CreateAnimation ("SCALE")
|
|
Portrait.scale:SetTarget (Portrait)
|
|
Portrait.scale:SetOrder (1)
|
|
Portrait.scale:SetDuration (0.21600000560284)
|
|
Portrait.scale:SetStartDelay (0)
|
|
Portrait.scale:SetEndDelay (0)
|
|
Portrait.scale:SetFromScale (0, 0)
|
|
Portrait.scale:SetToScale (1, 1)
|
|
Portrait.scale:SetOrigin ("center", 0, 0)
|
|
Portrait.alpha = MainAnimationGroup:CreateAnimation ("ALPHA")
|
|
Portrait.alpha:SetTarget (Portrait)
|
|
Portrait.alpha:SetOrder (2)
|
|
Portrait.alpha:SetDuration (1)
|
|
Portrait.alpha:SetStartDelay (4.7000002861023)
|
|
Portrait.alpha:SetEndDelay (0)
|
|
Portrait.alpha:SetFromAlpha (1)
|
|
Portrait.alpha:SetToAlpha (0)
|
|
|
|
----------------------------------------------
|
|
|
|
local DamageIcon = DetailsNewDamageRecord:CreateTexture ("DamageIconTexture", "OVERLAY")
|
|
DamageIcon:SetTexture ([[Interface\LFGFRAME\UI-LFG-ICON-ROLES]])
|
|
DamageIcon:SetDrawLayer ("OVERLAY", 2)
|
|
DamageIcon:SetPoint ("center", DetailsNewDamageRecord, "center", -97, 1)
|
|
DamageIcon:SetSize (32, 32)
|
|
DamageIcon:SetDesaturated (false)
|
|
DamageIcon:SetTexCoord (0.27200000762939, 0.51899997711182, 0.25837841033936, 0.51399997711182)
|
|
if (0 ~= 0) then
|
|
DamageIcon:SetRotation (0)
|
|
end
|
|
DamageIcon:SetVertexColor (0.99999779462814, 0.99999779462814, 0.99999779462814, 0.99999779462814)
|
|
DamageIcon:SetAlpha (1)
|
|
DamageIcon:SetBlendMode ("BLEND")
|
|
|
|
--> animations for DamageIcon
|
|
|
|
DamageIcon.alpha = MainAnimationGroup:CreateAnimation ("ALPHA")
|
|
DamageIcon.alpha:SetTarget (DamageIcon)
|
|
DamageIcon.alpha:SetOrder (1)
|
|
DamageIcon.alpha:SetDuration (0.51599997282028)
|
|
DamageIcon.alpha:SetStartDelay (0)
|
|
DamageIcon.alpha:SetEndDelay (0)
|
|
DamageIcon.alpha:SetFromAlpha (0)
|
|
DamageIcon.alpha:SetToAlpha (1)
|
|
DamageIcon.alpha = MainAnimationGroup:CreateAnimation ("ALPHA")
|
|
DamageIcon.alpha:SetTarget (DamageIcon)
|
|
DamageIcon.alpha:SetOrder (2)
|
|
DamageIcon.alpha:SetDuration (1)
|
|
DamageIcon.alpha:SetStartDelay (4.5999999046326)
|
|
DamageIcon.alpha:SetEndDelay (0)
|
|
DamageIcon.alpha:SetFromAlpha (1)
|
|
DamageIcon.alpha:SetToAlpha (0)
|
|
|
|
----------------------------------------------
|
|
|
|
local NewDamageRecord = DetailsNewDamageRecord:CreateFontString ("NewDamageRecordFontString", "OVERLAY")
|
|
NewDamageRecord:SetFont ([=[Fonts\FRIZQT__.TTF]=], 12, "OUTLINE")
|
|
NewDamageRecord:SetText ("Damage Record!")
|
|
NewDamageRecord:SetDrawLayer ("OVERLAY", 0)
|
|
NewDamageRecord:SetPoint ("center", DetailsNewDamageRecord, "center", 18, 7)
|
|
NewDamageRecord:SetSize (181, 20)
|
|
NewDamageRecord:SetTextColor (1, 1, 1)
|
|
NewDamageRecord:SetAlpha (1)
|
|
NewDamageRecord:SetJustifyH ("CENTER")
|
|
|
|
--> animations for NewDamageRecord
|
|
|
|
NewDamageRecord.alpha = MainAnimationGroup:CreateAnimation ("ALPHA")
|
|
NewDamageRecord.alpha:SetTarget (NewDamageRecord)
|
|
NewDamageRecord.alpha:SetOrder (1)
|
|
NewDamageRecord.alpha:SetDuration (0.016000000759959)
|
|
NewDamageRecord.alpha:SetStartDelay (0)
|
|
NewDamageRecord.alpha:SetEndDelay (0)
|
|
NewDamageRecord.alpha:SetFromAlpha (0)
|
|
NewDamageRecord.alpha:SetToAlpha (0)
|
|
NewDamageRecord.alpha = MainAnimationGroup:CreateAnimation ("ALPHA")
|
|
NewDamageRecord.alpha:SetTarget (NewDamageRecord)
|
|
NewDamageRecord.alpha:SetOrder (2)
|
|
NewDamageRecord.alpha:SetDuration (0.51599997282028)
|
|
NewDamageRecord.alpha:SetStartDelay (0.40000000596046)
|
|
NewDamageRecord.alpha:SetEndDelay (4.0999999046326)
|
|
NewDamageRecord.alpha:SetFromAlpha (0)
|
|
NewDamageRecord.alpha:SetToAlpha (1)
|
|
NewDamageRecord.alpha = MainAnimationGroup:CreateAnimation ("ALPHA")
|
|
NewDamageRecord.alpha:SetTarget (NewDamageRecord)
|
|
NewDamageRecord.alpha:SetOrder (3)
|
|
NewDamageRecord.alpha:SetDuration (1)
|
|
NewDamageRecord.alpha:SetStartDelay (0.10000000149012)
|
|
NewDamageRecord.alpha:SetEndDelay (0)
|
|
NewDamageRecord.alpha:SetFromAlpha (1)
|
|
NewDamageRecord.alpha:SetToAlpha (0)
|
|
|
|
----------------------------------------------
|
|
|
|
local DamageAmount = DetailsNewDamageRecord:CreateFontString ("DamageAmountFontString", "OVERLAY")
|
|
DamageAmount:SetFont ([=[Fonts\FRIZQT__.TTF]=], 12, "THICKOUTLINE")
|
|
DamageAmount:SetText (_detalhes:comma_value (damage))
|
|
DamageAmount:SetDrawLayer ("OVERLAY", 0)
|
|
DamageAmount:SetPoint ("center", DetailsNewDamageRecord, "center", 18, -7)
|
|
DamageAmount:SetSize (100, 20)
|
|
DamageAmount:SetTextColor (1, 1, 1)
|
|
DamageAmount:SetAlpha (1)
|
|
DamageAmount:SetJustifyH ("CENTER")
|
|
|
|
--> animations for DamageAmount
|
|
|
|
DamageAmount.alpha = MainAnimationGroup:CreateAnimation ("ALPHA")
|
|
DamageAmount.alpha:SetTarget (DamageAmount)
|
|
DamageAmount.alpha:SetOrder (1)
|
|
DamageAmount.alpha:SetDuration (0.016000000759959)
|
|
DamageAmount.alpha:SetStartDelay (0)
|
|
DamageAmount.alpha:SetEndDelay (0)
|
|
DamageAmount.alpha:SetFromAlpha (0)
|
|
DamageAmount.alpha:SetToAlpha (0)
|
|
DamageAmount.alpha = MainAnimationGroup:CreateAnimation ("ALPHA")
|
|
DamageAmount.alpha:SetTarget (DamageAmount)
|
|
DamageAmount.alpha:SetOrder (2)
|
|
DamageAmount.alpha:SetDuration (0.51599997282028)
|
|
DamageAmount.alpha:SetStartDelay (0.40000000596046)
|
|
DamageAmount.alpha:SetEndDelay (0)
|
|
DamageAmount.alpha:SetFromAlpha (0)
|
|
DamageAmount.alpha:SetToAlpha (1)
|
|
DamageAmount.alpha = MainAnimationGroup:CreateAnimation ("ALPHA")
|
|
DamageAmount.alpha:SetTarget (DamageAmount)
|
|
DamageAmount.alpha:SetOrder (3)
|
|
DamageAmount.alpha:SetDuration (1.0160000324249)
|
|
DamageAmount.alpha:SetStartDelay (4.2000002861023)
|
|
DamageAmount.alpha:SetEndDelay (0)
|
|
DamageAmount.alpha:SetFromAlpha (1)
|
|
DamageAmount.alpha:SetToAlpha (0)
|
|
|
|
--> test the animation
|
|
MainAnimationGroup:Play()
|
|
|
|
|
|
end
|
|
|