Mercurial > wow > buffalo2
comparison ObjectiveUI.lua @ 5:e9b61fd5f607
- use IsQuestWatched as the determinant for setting action button updates
- check for block match-up in deferred action button updates
author | Nenue |
---|---|
date | Thu, 31 Mar 2016 15:58:08 -0400 |
parents | 3397aae1f44d |
children | 589de8ea05b9 |
comparison
equal
deleted
inserted
replaced
4:18eee961038e | 5:e9b61fd5f607 |
---|---|
58 Quest.Open = function(self) | 58 Quest.Open = function(self) |
59 QuestMapFrame_OpenToQuestDetails(self.info.questID) | 59 QuestMapFrame_OpenToQuestDetails(self.info.questID) |
60 end | 60 end |
61 | 61 |
62 Quest.Remove = function(self) | 62 Quest.Remove = function(self) |
63 RemoveQuestWatch(self.info.questIndex) | 63 print('removing', self.info.questLogIndex, 'from watcher') |
64 RemoveQuestWatch(self.info.questLogIndex) | |
65 | |
66 mod.Quest.LogBlock[self.info.questLogIndex] = nil | |
67 mod.Quest.QuestBlock[self.info.questID] = nil | |
64 QuestPOIUpdateIcons() | 68 QuestPOIUpdateIcons() |
69 mod.UpdateWrapper() | |
65 end | 70 end |
66 | 71 |
67 | 72 |
68 ----------------------------- | 73 ----------------------------- |
69 --- CHEEVS | 74 --- CHEEVS |
103 if itemButton.block then | 108 if itemButton.block then |
104 itemButton.block.itemButton = nil | 109 itemButton.block.itemButton = nil |
105 itemButton.block = nil | 110 itemButton.block = nil |
106 end | 111 end |
107 else | 112 else |
108 print(' |cFFFF4400starting new button') | |
109 local buttonIndex = mod.Quest.numButtons + #freeButtons + 1 | 113 local buttonIndex = mod.Quest.numButtons + #freeButtons + 1 |
110 itemButton = CreateFrame('Button', 'VeneerQuestItemButton' .. buttonIndex, UIParent, 'VeneerItemButtonTemplate') | 114 itemButton = CreateFrame('Button', 'VeneerQuestItemButton' .. buttonIndex, UIParent, 'VeneerItemButtonTemplate') |
111 itemButton.buttonIndex = buttonIndex | 115 itemButton.buttonIndex = buttonIndex |
112 itemButton:SetSize(48, 48) | 116 itemButton:SetSize(48, 48) |
113 itemButton:GetNormalTexture():SetSize(80,80) | 117 itemButton:GetNormalTexture():SetSize(80,80) |
118 print(' |cFFFF4400starting new button', itemButton:GetName()) | |
114 end | 119 end |
115 mod.Quest.numButtons = mod.Quest.numButtons + 1 | 120 mod.Quest.numButtons = mod.Quest.numButtons + 1 |
116 else | 121 else |
117 print(' |cFF00FF00found assigned button') | |
118 itemButton = info.itemButton | 122 itemButton = info.itemButton |
119 if itemButton.block then | 123 print(' |cFF00FF00found assigned button', itemButton:GetName()) |
120 print(' - moving from old block') | |
121 itemButton.block.itemButton = nil | |
122 end | |
123 | 124 |
124 end | 125 end |
125 -- set values | 126 -- set values |
126 | 127 |
127 | |
128 info.itemButton = itemButton | 128 info.itemButton = itemButton |
129 block.itemButton = itemButton | |
130 usedButtons[info.questID] = itemButton | 129 usedButtons[info.questID] = itemButton |
130 print(' |cFF8800FFassigning|r', itemButton:GetName(), 'to quest|cFF00FF00', info.questID, '|rat|cFFFFFF00', block:GetName(),'|r') | |
131 | |
132 for k,v in pairs(usedButtons) do | |
133 print('|cFFFF44DD'..k..'|r', v:GetName()) | |
134 end | |
131 | 135 |
132 itemButton:SetAttribute("type", "item") | 136 itemButton:SetAttribute("type", "item") |
133 itemButton:SetAttribute("item", itemInfo.link) | 137 itemButton:SetAttribute("item", itemInfo.link) |
134 | 138 |
135 itemButton.questID = info.questID | 139 itemButton.questID = info.questID |
147 --- Clear an itemButton from the given block | 151 --- Clear an itemButton from the given block |
148 mod.FreeItemButtons = function(block) | 152 mod.FreeItemButtons = function(block) |
149 | 153 |
150 if block.itemButton then | 154 if block.itemButton then |
151 local itemButton = block.itemButton | 155 local itemButton = block.itemButton |
152 itemButton.block = nil | 156 if itemButton.questID ~= block.info.questID then |
153 itemButton:Hide() | 157 block.itemButton = nil |
154 | 158 itemButton.block = mod.Quest.InfoBlock[itemButton.questID] |
155 usedButtons[itemButton.questID] = nil | 159 else |
156 freeButtons[#freeButtons + 1] = itemButton | 160 itemButton.block = nil |
157 mod.Quest.numButtons = mod.Quest.numButtons - 1 | 161 itemButton:Hide() |
158 print('|cFFFF0088released', itemButton:GetName(),'and', block:GetName()) | 162 |
163 usedButtons[itemButton.questID] = nil | |
164 freeButtons[#freeButtons + 1] = itemButton | |
165 mod.Quest.numButtons = mod.Quest.numButtons - 1 | |
166 print('|cFFFF0088released', itemButton:GetName(),'and', block:GetName()) | |
167 end | |
159 end | 168 end |
160 end | 169 end |
161 | 170 |
162 function Veneer_QuestObjectiveItem_OnUpdate (self, elapsed) | 171 function Veneer_QuestObjectiveItem_OnUpdate (self, elapsed) |
163 -- Handle range indicator | 172 -- Handle range indicator |