Skip to content

AdvLoot

The AdvLoot TLO grants access to items in the Advanced Loot window.

Members

itemfilterdata Filter[ItemID]

Inspect the loot filter for a given ItemID.

bool LootInProgress

True/False if looting from AdvLoot is in progress

int PCount

item count from the Personal list

advlootitem PList[Index]

Inspect the item at the specified index in the personal loot list.

int PWantCount

Want count from the Personal list (AN + AG + ND + GD)

int SCount

Item count from the Shared list

advlootitem SList[Index]

Inspect the item at the specified index in the shared loot list.

int SWantCount

Want count from the Shared list (AN + AG + ND + GD)

datatype advlootitem

Represents a discrete item being looted in an AdvLoot window.

bool AlwaysGreed

The Always Greed (AG) state of the item.

bool AlwaysNeed

The Always Need (AN) state of the item.

bool AutoRoll

The Auto Roll state (dice icon) of the item.

spawn Corpse

The spawn representing the corpse that is being looted, if available.

bool FreeGrab

Indicates that the item is free grab.

bool Greed

The Greed (GD) state of the item.

int IconID

The ID of the icon for the item.

int64 ID

The ID of the item.

int Index

The positional index of the item.

string Name

The name of the item.

bool Need

The Need (ND) state of the item.

bool Never

The Never (NV) state of the item.

bool No

The No state of the item.

bool NoDrop

Indicates if the item is NO DROP.

int StackSize

The size of the stack of items being looted.

string To String

Same as Name

datatype itemfilterdata

A collection of settings that together describe the loot filter for an item.

bool AutoRoll

The Auto Roll state (dice icon).

bool Greed

The Greed (GD) state.

int IconID

The ID of the icon.

int ID

The ID of the item.

string Name

The Name of the item.

bool Need

The Need (ND) state.

bool Never

The Never (NV) state.

int Types

Bit field representing all the loot filter flags for this item.

string To String

Same as Name

Usage

| Echo the name of the first item in the personal loot list
/echo ${AdvLoot.PList[1].Name}

| Echo the number of items in the personal loot list.
/echo There are ${AdvLoot.PCount} items in the personal loot list

| Echo the stack size of the first item in the personal loot list.
/echo The item in index 1 has a StackSize of ${AdvLoot.PList[1].StackSize}

| If the first item in the shared loot list is marked as Need, then echo.
/if (${AdvLoot.SList[1].Need}==TRUE) /echo I need that item!

| Echo the NO DROP status of the first item in the personal loot list: TRUE or FALSE.
/echo ${AdvLoot.PList[1].NoDrop}

| Wait 10 seconds, or until AdvLoot is no longer in the process of looting.
/delay 10s !${AdvLoot.LootInProgress}

| Give the first item in the shared loot list to myself.
/if (!${AdvLoot.LootInProgress}) {
    /echo Its safe to loot!
    /if (${AdvLoot.SCount}>=1) {
        /echo I am going to give 1 ${AdvLoot.SList[1].Name} to myself
        /advloot shared 1 giveto ${Me.Name} 1
    }
} else {
    /echo Do something else, loot is already in progress...
}
-- Print the name of the first item in the personal loot list
print(mq.TLO.AdvLoot.PList(1).Name())

-- Print the number of items in the personal loot list
print('There are ', mq.TLO.AdvLoot.PCount(), ' items in the personal loot list')

-- Print the stack size of the first item in the personal loot list.
print('The item in index 1 has a StackSize of ', mq.TLO.AdvLoot.PList(1).StackSize()))

-- If the first item in the shared loot list is marked as Need, then print a message.
if mq.TLO.AdvLoot.SList(1).Need() then
    print('I need that item!')
end

-- Print the NO DROP status of the first item in the personal loot list.
print(mq.TLO.AdvLoot.PList(1).NoDrop())

-- Wait 10 seconds, or until AdvLoot is no longer in the process of looting.
mq.delay('10s', function() return not mq.TLO.AdvLoot.LootInProgress() end)

-- Give the first item in the shared loot list to myself.
if not mq.TLO.AdvLoot.LootInProgress() then
    print('Its safe to loot!')
    if mq.TLO.AdvLoot.SCount() >= 1 then
        print('I am going to give 1 ', mq.TLO.AdvLoot.SList(1).Name(), ' to myself')
        mq.cmdf('/advloot shared 1 giveto %s 1', mq.TLO.Me.Name())
    end
else
    print('Do something else, loot is already in progress...')
end