Someone had asked a little while back about a macro to repeatedly click an item, which gave me the idea to make a macro for summoning things from an item.
This macro makes it easy!
To use it:
This may not work with the Packed Picnic Basket as that item can summon more than one thing, and I do not have one to test it on.
I've tested it with the Warm Milk Dispenser, and Mysterious Belt of Daggers.
Thanks to PeteSampras for the help with the Item Spell information.
Give it a try and let me know what everyone thinks.
This macro makes it easy!
To use it:
Code:
/mac SummonItem "[COLOR=Magenta]In-Game Item Link[/COLOR]" Quantity
The "Item Link" must be wrapped in quotes.
This may not work with the Packed Picnic Basket as that item can summon more than one thing, and I do not have one to test it on.
I've tested it with the Warm Milk Dispenser, and Mysterious Belt of Daggers.
Thanks to PeteSampras for the help with the Item Spell information.
Give it a try and let me know what everyone thinks.
Code:
|#################################################################################################|
|#################################################################################################|
|## SummonItem.mac v2.1 ##|
|## By HardOne ##|
|## Useage: /mac SummonItem "In-Game Item Link" Quantity ##|
|## ##|
|## ItemLink: This is the "In-Game Item Link" for the item you wish to click and summon from. ##|
|## This needs to be wrapped in quotes. ##|
|## ##|
|## Quantity: This is the quantity you wish to summon. ##|
|#################################################################################################|
|#################################################################################################|
#turbo 80
Sub Main
/if (!${Param0.Length} || !${Param1.Length}) {
/echo You must start the macro including the "Item Link" and the Quantity to summon
/echo i.e.:
/echo /mac SummonItem "In-Game Item Link" 20
/echo The "In-Game Item Link" must have quotes.
/end
}
/declare ItemToClick string outer ${Param0}
/varset ItemToClick ${ItemToClick.Right[-57]}
/varset ItemToClick ${ItemToClick.Left[-1]}
/declare NumberToSummon int outer ${Param1}
/if (${FindItemCount[${Spell[${FindItem[${ItemToClick}].Spell.ID}].Base[1]}]} >= ${NumberToSummon}) {
/echo You have a total of ${FindItemCount[${Spell[${FindItem[${ItemToClick}].Spell.ID}].Base[1]}]} ${FindItem[${Spell[${FindItem[${ItemToClick}].Spell.ID}].Base[1]}].Name}'s on you already!
/echo Select a higher Quantity to summon more.
/end
}
/echo SummonItem.mac is running
|${FindItem[${Spell[${FindItem[${ItemToClick}].Spell.ID}].Base[1]}].Name}'s
/echo Summoning ${NumberToSummon} items, using the ${ItemToClick}
:loop
/if (${FindItemCount[${ItemToClick}]} && !${FindItem[${ItemToClick}].Timer}) {
/itemnotify ${FindItem[${ItemToClick}].InvSlot} rightmouseup
/delay ${Math.Calc[${FindItem[${ItemToClick}].CastTime}+1]}s
}
/if (${Cursor.ID}) /autoinv
/if (${FindItemCount[${Spell[${FindItem[${ItemToClick}].Spell.ID}].Base[1]}]} >= ${NumberToSummon}) {
/echo ${FindItem[${Spell[${FindItem[${ItemToClick}].Spell.ID}].Base[1]}].Name} Summoning Complete!
/echo We have a total of ${FindItemCount[${Spell[${FindItem[${ItemToClick}].Spell.ID}].Base[1]}]} ${FindItem[${Spell[${FindItem[${ItemToClick}].Spell.ID}].Base[1]}].Name}'s
/end
}
/goto :loop
/return
Last edited: