annotate ItemCountAddons/DataStore (current account only).lua @ 38:b1df62ad61fc
Added tag v0.1.8-BETA for changeset 3dd303f1d9cc
author |
Zerotorescue |
date |
Sat, 20 Nov 2010 17:26:34 +0100 |
parents |
8f5c02113c5c |
children |
06fee4208bf2 |
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@17
|
11 local bag, bank = DataStore:GetContainerItemCount(character, itemId);
|
Zerotorescue@17
|
12 local auctionHouse = DataStore:GetAuctionHouseItemCount(character, itemId);
|
Zerotorescue@17
|
13 local mail = DataStore:GetMailItemCount(character, itemId);
|
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@17
|
24 local bag, bank = DataStore:GetContainerItemCount(character, itemId);
|
Zerotorescue@17
|
25 local auctionHouse = DataStore:GetAuctionHouseItemCount(character, itemId);
|
Zerotorescue@17
|
26 local mail = DataStore:GetMailItemCount(character, itemId);
|
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
|