Anyway, one small problem with this macro is that two of the slots come up NULL, "hands" and "legs".. Anyone know why? Is it a bug or a typo or what?
Hope someone finds this useful! :)
Code: Select all
| -- Inventory.mac --
|
#turbo
Sub Main
/declare index int local
/echo Taking ${Me.Name}'s Inventory...
/mqlog clear
/mqlog
/mqlog
/mqlog , Location, Location Slot, Conatiner, Container Slot, Quantity, Name
/mqlog , Charm, 1, None, None, ${InvSlot[charm].Item.Stack}, ${InvSlot[charm].Item.Name}
/mqlog , Left Ear, 1, None, None, ${InvSlot[leftear].Item.Stack}, ${InvSlot[leftear].Item.Name}
/mqlog , Head, 1, None, None, ${InvSlot[head].Item.Stack}, ${InvSlot[head].Item.Name}
/mqlog , Face, 1, None, None, ${InvSlot[face].Item.Stack}, ${InvSlot[face].Item.Name}
/mqlog , Right Ear, 1, None, None, ${InvSlot[rightear].Item.Stack}, ${InvSlot[rightear].Item.Name}
/mqlog , Neck, 1, None, None, ${InvSlot[neck].Item.Stack}, ${InvSlot[neck].Item.Name}
/mqlog , Shoulders, 1, None, None, ${InvSlot[shoulder].Item.Stack}, ${InvSlot[shoulder].Item.Name}
/mqlog , Arms, 1, None, None, ${InvSlot[arms].Item.Stack}, ${InvSlot[arms].Item.Name}
/mqlog , Back, 1, None, None, ${InvSlot[back].Item.Stack}, ${InvSlot[back].Item.Name}
/mqlog , Left Wrist, 1, None, None, ${InvSlot[leftwrist].Item.Stack}, ${InvSlot[leftwrist].Item.Name}
/mqlog , Right Wrist, 1, None, None, ${InvSlot[rightwrist].Item.Stack}, ${InvSlot[rightwrist].Item.Name}
/mqlog , Ranged, 1, None, None, ${InvSlot[ranged].Item.Stack}, ${InvSlot[ranged].Item.Name}
/mqlog , Hands, 1, None, None, ${InvSlot[hand].Item.Stack}, ${InvSlot[hand].Item.Name}
/mqlog , Primary, 1, None, None, ${InvSlot[mainhand].Item.Stack}, ${InvSlot[mainhand].Item.Name}
/mqlog , Secondary, 1, None, None, ${InvSlot[offhand].Item.Stack}, ${InvSlot[offhand].Item.Name}
/mqlog , Left Finger, 1, None, None, ${InvSlot[leftfinger].Item.Stack}, ${InvSlot[leftfinger].Item.Name}
/mqlog , Right Finger, 1, None, None, ${InvSlot[rightfinger].Item.Stack}, ${InvSlot[rightfinger].Item.Name}
/mqlog , Chest, 1, None, None, ${InvSlot[chest].Item.Stack}, ${InvSlot[chest].Item.Name}
/mqlog , Legs, 1, None, None, ${InvSlot[leg].Item.Stack}, ${InvSlot[leg].Item.Name}
/mqlog , Feet, 1, None, None, ${InvSlot[feet].Item.Stack}, ${InvSlot[feet].Item.Name}
/mqlog , Waist, 1, None, None, ${InvSlot[waist].Item.Stack}, ${InvSlot[waist].Item.Name}
/mqlog , Ammo, 1, None, None, ${InvSlot[ammo].Item.Stack}, ${InvSlot[ammo].Item.Name}
/mqlog , Inventory Platinum, 1, None, None, ${Me.Platinum}, Platinum
/mqlog , Inventory Gold, 1, None, None, ${Me.Gold}, Gold
/mqlog , Inventory Silver, 1, None, None, ${Me.Silver}, Silver
/mqlog , Inventory Copper, 1, None, None, ${Me.Copper}, Copper
/mqlog , Bank Platinum, 1, None, None, ${Me.PlatinumBank}, Platinum
/mqlog , Bank Gold, 1, None, None, ${Me.GoldBank}, Gold
/mqlog , Bank Silver, 1, None, None, ${Me.SilverBank}, Silver
/mqlog , Bank Copper, 1, None, None, ${Me.CopperBank}, Copper
/mqlog , Shared Platinum, 1, None, None, ${Me.PlatinumShared}, Platinum
/for index 1 to 8
/if (${InvSlot[pack${index}].Item.Container} > 0) {
/call MainPack ${index}
} else {
/mqlog , Inventory, ${index}, None, None, ${InvSlot[pack${index}].Item.Stack}, ${InvSlot[pack${index}].Item.Name}
}
/next index
/for index 1 to 16
/if (${InvSlot[bank${index}].Item.Container} > 0) {
/call MainBank ${index}
} else {
/mqlog , Bank, ${index}, None, None, ${InvSlot[bank${index}].Item.Stack}, ${InvSlot[bank${index}].Item.Name}
}
/next index
/for index 1 to 2
/if (${InvSlot[sharedbank${index}].Item.Container} > 0) {
/call MainShared ${index}
} else {
/mqlog , Shared Bank, ${index}, None, None, ${InvSlot[sharedbank${index}].Item.Stack}, ${InvSlot[sharedbank${index}].Item.Name}
}
/next index
/echo Done...
/return
Sub MainPack(int PackSlot)
/declare index int local
/declare max int local
/declare usedslots int local
/declare freeslots int local
/echo ${PackSlot}
/varset max ${InvSlot[pack${PackSlot}].Item.Container}
/varset usedslots ${InvSlot[pack${PackSlot}].Item.Items}
/varset freeslots ${Math.Calc[${max}-${usedslots}]}
/for index 1 to ${max}
/if (!${String[${InvSlot[pack${PackSlot}].Item.Item[${index}]}].Equal[NULL]}) {
/mqlog , Inventory, ${PackSlot}, ${InvSlot[pack${PackSlot}].Item.Type}, ${index}, ${InvSlot[pack${PackSlot}].Item.Item[${index}].Stack}, ${InvSlot[pack${PackSlot}].Item.Item[${index}].Name}
}
/next index
/return
Sub MainBank(int PackSlot)
/declare index int local
/declare max int local
/declare usedslots int local
/declare freeslots int local
/echo ${PackSlot}
/varset max ${InvSlot[bank${PackSlot}].Item.Container}
/varset usedslots ${InvSlot[bank${PackSlot}].Item.Items}
/varset freeslots ${Math.Calc[${max}-${usedslots}]}
/for index 1 to ${max}
/if (!${String[${InvSlot[bank${PackSlot}].Item.Item[${index}]}].Equal[NULL]}) {
/mqlog , Bank, ${PackSlot}, ${InvSlot[bank${PackSlot}].Item.Type}, ${index}, ${InvSlot[bank${PackSlot}].Item.Item[${index}].Stack}, ${InvSlot[bank${PackSlot}].Item.Item[${index}].Name}
}
/next index
/return
Sub MainShared(int PackSlot)
/declare index int local
/declare max int local
/declare usedslots int local
/declare freeslots int local
/echo ${PackSlot}
/varset max ${InvSlot[sharedbank${PackSlot}].Item.Container}
/varset usedslots ${InvSlot[sharedbank${PackSlot}].Item.Items}
/varset freeslots ${Math.Calc[${max}-${usedslots}]}
/for index 1 to ${max}
/if (!${String[${InvSlot[sharedbank${PackSlot}].Item.Item[${index}]}].Equal[NULL]}) {
/mqlog , Shared Bank, ${PackSlot}, ${InvSlot[sharedbank${PackSlot}].Item.Type}, ${index}, ${InvSlot[sharedbank${PackSlot}].Item.Item[${index}].Stack}, ${InvSlot[sharedbank${PackSlot}].Item.Item[${index}].Name}
}
/next index
/return



