• You've discovered RedGuides, an EverQuest multi-boxing and scripting community 🧙‍♀️⚙️. We want you to play several EQ characters at once, come join us and say hello! 👋

  • A TLP without truebox has thawed (Very Vanilla ready)
    Frostreaver

QuickSell.mac

Alatyami

NotAddicted.com Engineer (Retired)
Joined
Dec 21, 2004
RedCents
804¢
In the macro request thread we received ....

Wondering if there is anyone out still willing to right simple macro's....

I am looking for a macro that will simple sell a particular item to a vender until I run out of them. I would need a way to input the item to be sold or a line that could be modified for the item would work.

I am workin on my tradeskills and once I fill my bags with the item I am crafting I would like to be able to sell all back to vender without clicking the mouse a zillion times.

Thanks for any help.

And here is the answer! I took some of ArmySoldier's tradeskill macro pieces and merged them into a simple (very simple) macro that will sell off one item. I modified the method of opening and closing of packs because with the original I was loosing one Bottle of Milk per cycle due the the right mouse click notify. This version checks to make sure that it is a container first then right clicks.

To use this macro as is, you must edit the macro where it says "Bottle of Milk" with the item of your choice, and have the vendor that you would like to make a transaction with targeted. When you fire off the macro it will open all of your packs, select the item, sell them all to the vendor, close out you packs and inventory.

I will probably make a plugin version of this if I get some extra time on my hands.

Rich (BB code):
|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
| QuickSell.mac - Alatyami, NotAddicted.com 
| Released: January 2, 2009 (v1.0)
|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
| Description: This macro will sell a given item to the targeted vendor.
| You must target the vendor prior to using the macro. This was done so 
| that you can simply append this to your macro as QuickSell.inc and use
| it within your macros.
|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
| Usage:
|        /mac quicksell
|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
| Note: This macro is an extract of ArmySoldier's Tradeskill Macros. I 
|       change the looping method for opening and closing packs. The 
|       previous version would RM on everything and not check to see if it
|       was a container or not.
|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|

Sub Main 
    /call Sell "Bottle of Milk"
/return

Sub Sell(string ItemToSell)
    /echo Selling off ${ItemToSell}
    /nomodkey /click right target
	/delay 5s ${Window[MerchantWnd].Open} 	 
	/if (${ItemToSell.Equal[NULL]}) /return
	/call OpenPacks
	
	:Finding 
	/if (${FindItemCount[=${ItemToSell}]}) { 
		/echo Selling off ${FindItemCount[=${ItemToSell}]} ${ItemToSell}
		/nomodkey /itemnotify ${FindItem[=${ItemToSell}].InvSlot} leftmouseup 
		/if (${SelectedItem.ID}==${FindItem[=${ItemToSell}].ID}) {
			/nomodkey /shift /notify MerchantWnd MW_Sell_Button leftmouseup 
			/delay 25 			
		}
		/goto :Finding 
	}
	
	/echo ${FindItemCount[=${ItemToSell}]} ${ItemToSell} to sell.
	
	/nomodkey /notify MerchantWnd MW_Done_Button LeftMouseUp
	/call ClosePacks
	/doevents
/return

Sub OpenPacks 
	/declare i int local 0 
	/if (!${Window[InventoryWindow].Open}) /nomodkey /keypress inventory 
	/delay 3s ${Window[InventoryWindow].Open} 
	/for i 0 to 8 
		/if (${InvSlot[Pack${i}].Item.Container} > 0 && !${Window[Pack${i}].Open}) /nomodkey /itemnotify pack${i} rightmouseup 
	/next i

/return 
 
Sub ClosePacks 
	/declare i int local 0 
	/if (!${Window[InventoryWindow].Open}) /nomodkey /keypress inventory 
	/delay 3s ${Window[InventoryWindow].Open}

	/for i 0 to 8 
		/if (${InvSlot[Pack${i}].Item.Container} > 0 && ${Window[Pack${i}].Open}) /nomodkey /itemnotify pack${i} rightmouseup 
	/next i
	
	/if (${Window[InventoryWindow].Open}) /nomodkey /keypress inventory 
	/delay 3s !${Window[InventoryWindow].Open} 
/return

-Alatyami
 
Thank you very much for your efforts. Sorry it took me so long to reply. I am working in Iraq and have very little computer time.

Red Cents to you...

I did modify a couple of other macros I had to make one for myself. I thought I had shared this already but maybe not. Anyway here is what I came up with.
Rich (BB code):
| Simply use /mac sell itemname. ie /mac Sell bone chips, or mac sell something here with a name w/ up to 7 words.


Sub Main 
/declare TurnIn String outer

    /if (!${Defined[Param1]}) {
	/varset TurnIn ${Param0}
    } else /if (!${Defined[Param2]}) {
      /varset TurnIn ${Param0} ${Param1}
    } else /if (!${Defined[Param3]}) {
      /varset TurnIn ${Param0} ${Param1} ${Param2}
    } else /if (!${Defined[Param4]}) {
      /varset TurnIn ${Param0} ${Param1} ${Param2} ${Param3}
    } else /if (!${Defined[Param5]}) {
      /varset TurnIn ${Param0} ${Param1} ${Param2} ${Param3} ${Param4}
    } else /if (!${Defined[Param6]}) {
      /varset TurnIn ${Param0} ${Param1} ${Param2} ${Param3} ${Param4} ${Param5}
    } else  {
      /varset TurnIn ${Param0} ${Param1} ${Param2} ${Param3} ${Param4} ${Param5} ${Param6}
    }
/echo Selling ${FindItemCount[=${TurnIn}]} ${TurnIn}

/if (${Turnin.Equal[NULL]}) /return

   /if (!${Target.ID}) {
   /echo You must target a merchant!
   /endmac
}

/click right target
/delay 3s
   /if (!${Window[MerchantWnd].Open}) {
   /echo You must target a merchant!
   /endmac
}

/keypress o
/delay 5


:Loop 

/if (!${FindItem[=${TurnIn}].InvSlot}) { 
  /echo Go get more stuff! We be done!
  /autoinventory
  /keypress p
  /endmacro 
} 
 
/if (${FindItemCount[=${TurnIn}]}) { 
/shift /itemnotify ${FindItem[=${TurnIn}].InvSlot} leftmouseup 
/delay 1s
/if (${SelectedItem.ID}==${FindItem[=${TurnIn}].ID}) {
/delay 1 
/nomodkey /shift /notify MerchantWnd MW_Sell_Button leftmouseup 
}
 
/goto :Loop 

} 
 
/echo No more ${TurnIn} to sell!!! 
/return

Sub OpenPacks 
/declare bag int local 0 
/if (!${Window[InventoryWindow].Open}) /nomodkey /keypress inventory 
/delay 3s ${Window[InventoryWindow].Open} 
/for bag 1 to 8 
/if (!${Window[Pack${bag}].Open}) /nomodkey /itemnotify pack${bag} rightmouseup 
/delay 3s ${Window[Pack${bag}].Open} 
/if (${Window[TradeskillWnd].Open}) /nomodkey /notify TradeskillWnd ExperimentButton leftmouseup 
/delay 5s !${Window[TradeskillWnd].Open} 
/next bag 
/return 

Sub ClosePacks 
/declare bag int local 0 
/if (!${Window[InventoryWindow].Open}) /nomodkey /keypress inventory 
/delay 3s ${Window[InventoryWindow].Open}
/for bag 1 to 8 
/if (${Window[Pack${bag}].Open}) /nomodkey /itemnotify pack${bag} rightmouseup 
/delay 3s !${Window[Pack${bag}].Open}
/next bag 
/if (${Window[InventoryWindow].Open}) /nomodkey /keypress inventory 
/delay 3s !${Window[InventoryWindow].Open} 
/return

Mine is not fully functional, the inventory bag opening does not seem to work correctly. I have not taken the time to fix it.
I suspect that mixing the two together will create a very nice macro. If I can find time I will work on it, or someone with more time can run with it.
 
Right now get error when using says: Invalid item slot 'null' it shows 38 of item I'm trying to sell but floods me with invalid item slot.
 
Right now get error when using says: Invalid item slot 'null' it shows 38 of item I'm trying to sell but floods me with invalid item slot.

HoT nerfed the slots this macro uses has to be fixed
 
QuickSell.mac

Users who are viewing this thread

Back
Top
Cart