Mercurial > wow > inventory
annotate Classes/ContainerItem.class.lua @ 117:239e25a058c7
Implemented mail refilling support. Respecting the MailAddonBusy global when opening so addons like MailOpener shouldn?t interfere.
author | Zerotorescue |
---|---|
date | Sat, 15 Jan 2011 13:15:16 +0100 |
parents | 41f0689dfda1 |
children | dc6f405c1a5d |
rev | line source |
---|---|
Zerotorescue@81 | 1 local addon = select(2, ...); |
Zerotorescue@81 | 2 |
Zerotorescue@81 | 3 -- Define the class |
Zerotorescue@81 | 4 |
Zerotorescue@81 | 5 addon.ContainerItem = {}; |
Zerotorescue@81 | 6 addon.ContainerItem.__index = addon.ContainerItem; |
Zerotorescue@81 | 7 |
Zerotorescue@81 | 8 -- Construct |
Zerotorescue@117 | 9 function addon.ContainerItem:New() |
Zerotorescue@81 | 10 local self = {}; |
Zerotorescue@81 | 11 |
Zerotorescue@81 | 12 setmetatable(self, addon.ContainerItem); |
Zerotorescue@81 | 13 |
Zerotorescue@81 | 14 -- Standard info everything needs |
Zerotorescue@81 | 15 self.totalCount = 0; |
Zerotorescue@81 | 16 self.locations = {}; |
Zerotorescue@81 | 17 |
Zerotorescue@81 | 18 return self; |
Zerotorescue@81 | 19 end |
Zerotorescue@81 | 20 |
Zerotorescue@111 | 21 function addon.ContainerItem:AddLocation(container, slot, count) |
Zerotorescue@81 | 22 table.insert(self.locations, { |
Zerotorescue@110 | 23 ["container"] = container, |
Zerotorescue@110 | 24 ["slot"] = slot, |
Zerotorescue@110 | 25 ["count"] = count, |
Zerotorescue@81 | 26 }); |
Zerotorescue@81 | 27 |
Zerotorescue@110 | 28 -- -1 indicates unlimited supply |
Zerotorescue@110 | 29 if self.totalCount ~= -1 then |
Zerotorescue@110 | 30 if count == -1 then |
Zerotorescue@110 | 31 self.totalCount = -1; |
Zerotorescue@110 | 32 else |
Zerotorescue@110 | 33 self.totalCount = (self.totalCount + count); |
Zerotorescue@110 | 34 end |
Zerotorescue@110 | 35 end |
Zerotorescue@81 | 36 |
Zerotorescue@81 | 37 return true; |
Zerotorescue@81 | 38 end |