Mercurial > wow > buffalo2
diff ObjectiveTracker/RewardFrame.lua @ 40:03ed70f846de
- move block accessors into a new file
- define a tMove function for reconciling the free/used tables as needed
- when retrieving an old block frame, confirm ID still matches; resolves multiple watch items on one block
- stop any animations when a block is freed; resolves stuck flare graphics
author | Nenue |
---|---|
date | Sun, 24 Apr 2016 14:15:25 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ObjectiveTracker/RewardFrame.lua Sun Apr 24 14:15:25 2016 -0400 @@ -0,0 +1,51 @@ +--- ${PACKAGE_NAME} +-- @file-author@ +-- @project-revision@ @project-hash@ +-- @file-revision@ @file-hash@ +-- Created: 4/22/2016 5:38 PM +local B = select(2,...).frame +local T = B:RegisterModule("ObjectiveTracker", _G.VeneerObjectiveWrapper, 'BuffFrame') +local ipairs = ipairs +local bprint = B.print('Block') +local Default, AutoQuest, Quest, Bonus, Cheevs = T.DefaultHandler, T.AutoQuest, T.Quest, T.Bonus, T.Cheevs +--- displays a reward popout and starts its animation chain +local tagPoint, tagAnchor, tagRelative, x, y +local REWARD_POPUP_FRAME = _G.VeneerRewardsPopOut + +function REWARD_POPUP_FRAME:StartRewards() + tagPoint, tagAnchor, tagRelative, x, y = 'TOPLEFT', self, 'TOPLEFT', 0, 0 + +end +function REWARD_POPUP_FRAME:AddReward(handler, rewardInfo, id) + local totalHeight = 0 + REWARD_POPUP_FRAME:SetID(id) + REWARD_POPUP_FRAME.handler = handler + + for i, rewardTile in ipairs(REWARD_POPUP_FRAME.rewardTile) do + if rewardInfo[i] then + local reward = rewardInfo[i] + rewardTile:SetPoint(tagPoint, tagAnchor, tagRelative, -2, -2) + rewardTile:SetTexture(reward.texture) + rewardTile:Show() + if reward.count and reward.count > 1 then + self.rewardLabel[i]:SetText(reward.count) + self.rewardLabel[i]:Show() + end + + rewardTile:ClearAllPoints() + rewardTile:SetPoint(tagPoint, tagAnchor, tagRelative, x, y) + tagPoint, tagAnchor, tagRelative, x, y = 'TOPRIGHT', rewardTile, 'TOPLEFT', -2, 0 + + totalHeight = totalHeight + rewardTile:GetHeight() + else + rewardTile:Hide() + self.rewardLabel[i]:Hide() + end + end + + REWARD_POPUP_FRAME.rewardsFadeIn:Play() +end + +function REWARD_POPUP_FRAME:OnFinished () +end +