Mercurial > wow > cyborg-mmo7
comparison RatPageModel.lua @ 39:ce4ddefb68c2
Fail early when a wow object cannot be created. Default to empty slots rather than empty wow objects.
| author | madcatzinc@35b17cf1-18cd-47ff-9ca3-31d6b526ef09 |
|---|---|
| date | Thu, 25 Apr 2013 18:16:03 +0000 |
| parents | 6ce173840e68 |
| children | fb81254bd7b8 |
comparison
equal
deleted
inserted
replaced
| 38:d12a5a7d2be5 | 39:ce4ddefb68c2 |
|---|---|
| 74 | 74 |
| 75 self.data = data["Rat"] | 75 self.data = data["Rat"] |
| 76 if data then | 76 if data then |
| 77 for mode=1,RAT7.MODES do | 77 for mode=1,RAT7.MODES do |
| 78 for button=1,RAT7.BUTTONS do | 78 for button=1,RAT7.BUTTONS do |
| 79 if self.data[mode][button] then | 79 local data = self.data[mode][button] |
| 80 local object = CyborgMMO_CreateWowObject(self.data[mode][button].type, self.data[mode][button].detail, self.data[mode][button].subdetail) | 80 if data and data.type then |
| 81 local object = CyborgMMO_CreateWowObject(data.type, data.detail, data.subdetail) | |
| 81 self:SetObjectOnButtonNoUpdate(button, mode, object) | 82 self:SetObjectOnButtonNoUpdate(button, mode, object) |
| 82 else | 83 else |
| 83 local object = CyborgMMO_CreateWowObject() | 84 self:SetObjectOnButtonNoUpdate(button, mode, nil) |
| 84 self:SetObjectOnButtonNoUpdate(button, mode, object) | |
| 85 self.data[mode][button] = object | |
| 86 end | 85 end |
| 87 end | 86 end |
| 88 end | 87 end |
| 89 self:UpdateObservers() | 88 self:UpdateObservers() |
| 90 end | 89 end |
| 126 CyborgMMO_DPrint("trying to set texture") | 125 CyborgMMO_DPrint("trying to set texture") |
| 127 local slot = getglobal("CyborgMMO_MainPageSlotListSlot"..button) | 126 local slot = getglobal("CyborgMMO_MainPageSlotListSlot"..button) |
| 128 slot:SetNormalTexture(object.texture) | 127 slot:SetNormalTexture(object.texture) |
| 129 end | 128 end |
| 130 else | 129 else |
| 131 CyborgMMO_DPrint("clearing "..button) | |
| 132 CyborgMMO_ClearBinding(CyborgMMO_ProfileKeyBindings[((mode-1)*RAT7.BUTTONS)+button]) | 130 CyborgMMO_ClearBinding(CyborgMMO_ProfileKeyBindings[((mode-1)*RAT7.BUTTONS)+button]) |
| 133 end | 131 end |
| 134 end | 132 end |
| 135 | 133 |
| 136 function RatPageModel_methods:SetObjectOnButton(button, mode, object) | 134 function RatPageModel_methods:SetObjectOnButton(button, mode, object) |
| 135 if not object then | |
| 136 CyborgMMO_DPrint("clearing "..button) | |
| 137 end | |
| 137 self:SetObjectOnButtonNoUpdate(button, mode, object) | 138 self:SetObjectOnButtonNoUpdate(button, mode, object) |
| 138 self:UpdateObservers() | 139 self:UpdateObservers() |
| 139 end | 140 end |
| 140 | 141 |
| 141 function RatPageModel_methods:AddObserver(view) | 142 function RatPageModel_methods:AddObserver(view) |
