annotate ItemCountAddons/DataStore (current account only).lua @ 75:2127ab01ed4a

Overriding toggle boxes should no longer give errors. Adding / removing items from config groups works again. Fixed full support for the Cauldron crafting addon. No longer trying to queue crafting items when no tradeskill window is open. This would cause errors.
author Zerotorescue
date Sat, 25 Dec 2010 15:33:40 +0100
parents 06fee4208bf2
children
rev   line source
Zerotorescue@17 1 do
Zerotorescue@17 2
Zerotorescue@17 3 local function GetTotalCount(itemId)
Zerotorescue@17 4 local realm = GetRealmName();
Zerotorescue@17 5
Zerotorescue@17 6 local totalCount = 0;
Zerotorescue@17 7
Zerotorescue@17 8 -- Process all charracters on this account (GetCharacters defaults to THIS_ACCOUNT)
Zerotorescue@17 9 for characterName, character in pairs(DataStore:GetCharacters(realm, nil)) do
Zerotorescue@17 10 -- Get only useful info (currency / gear shouldn't contain the stuff we are interested in)
Zerotorescue@54 11 local bag, bank = DataStore:GetContainerItemCount(character, itemId) or 0, 0;
Zerotorescue@54 12 local auctionHouse = DataStore:GetAuctionHouseItemCount(character, itemId) or 0;
Zerotorescue@54 13 local mail = DataStore:GetMailItemCount(character, itemId) or 0;
Zerotorescue@17 14
Zerotorescue@17 15 totalCount = totalCount + bag + bank + auctionHouse + mail;
Zerotorescue@17 16 end
Zerotorescue@17 17
Zerotorescue@17 18 return totalCount or -1;
Zerotorescue@17 19 end
Zerotorescue@17 20
Zerotorescue@17 21 local function GetCharacterCount(itemId)
Zerotorescue@17 22 local character = DataStore:GetCharacter();
Zerotorescue@17 23
Zerotorescue@54 24 local bag, bank = DataStore:GetContainerItemCount(character, itemId) or 0, 0;
Zerotorescue@54 25 local auctionHouse = DataStore:GetAuctionHouseItemCount(character, itemId) or 0;
Zerotorescue@54 26 local mail = DataStore:GetMailItemCount(character, itemId) or 0;
Zerotorescue@17 27
Zerotorescue@17 28 return bag, bank, auctionHouse, mail;
Zerotorescue@17 29 end
Zerotorescue@17 30
Zerotorescue@17 31 local function IsEnabled()
Zerotorescue@17 32 return (DataStore and DataStore.GetContainerItemCount and DataStore.GetAuctionHouseItemCount and DataStore.GetMailItemCount);
Zerotorescue@17 33 end
Zerotorescue@17 34
Zerotorescue@17 35 IMRegisterItemCountAddon("DataStore (current account only)", GetTotalCount, GetCharacterCount, IsEnabled);
Zerotorescue@17 36
Zerotorescue@17 37 end