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 |
