Need some help with that macro you're working on or aren't quite sure how to get your macro to do something? Ask here!
Moderator: MacroQuest Developers
-
jago
- orc pawn

- Posts: 13
- Joined: Tue Oct 01, 2002 2:15 am
Post
by jago » Tue Dec 02, 2003 2:35 pm
Hello, right now im using this macro to buy 60 non-stackable items.
is there anyway to condense it or make it faster?
i used /click left because the /buyitem command didn't work well.
thanks
Code: Select all
#turbo
Sub Main
/target [merchant]
/press u
/delay 10
/selectitem "XXXXXXXXXXX" merchant
/delay 5
/mouseto merchant buy
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/click left
/delay 4
/return
-
EqMule
- Developer

- Posts: 2697
- Joined: Fri Jan 03, 2003 9:57 pm
-
Contact:
Post
by EqMule » Tue Dec 02, 2003 9:22 pm
this should work, what exactly is your problem with buyitem?
Code: Select all
#turbo
Sub Main
/declare myloop global
/declare mycash global
/declare mytimer timer
/target "XXXmerchant"
:waitfortarget
/if "$target(name,clean)"!="XXXmerchant" {
/delay 0
/goto :waitfortarget
}
:openmerchant
/press u
/delay 5
/varset mytimer 3s
:waitforopening
/if "$merchant(name)"!="XXXmerchant" {
/delay 1
/if n @mytimer<=0 /goto :openmerchant
/goto :waitforopening
}
/delay 1s
:doselection
/selectitem "XXXXXXXXXXX" merchant
/varset mytimer 3s
:waitforselection
/if "$selecteditem(name)"!="XXXXXXXXXXX" {
/delay 0
/if n @mytimer<=0 /goto :doselection
/goto :waitforselection
}
/for myloop 0 to 2
/varset mycash $char(cash)
/buyitem 20
/delay 3
:waitforbuyitem
/if @mycash==$char(cash) {
/delay 3
/goto :waitforbuyitem
}
/next myloop
/return

o/
If you like MQ2 and would like to contribute, please do. My goal is 25 donations per month.
So far I've received

donations for this month's patches.
Bitcoin: 1Aq8ackjQ4f7AUvbUL7BE6oPfT8PmNP4Zq
Krono: PM me.
I can always use characters for testing, PM me if you can donate one.
-
Goofmester1
- a hill giant

- Posts: 241
- Joined: Thu Nov 06, 2003 4:26 am
Post
by Goofmester1 » Wed Dec 03, 2003 1:56 am
Just loop the buy commands.. could try this.
Code: Select all
#turbo
Sub Main
/target [merchant]
/press u
/delay 10
/selectitem "XXXXXXXXXXX" merchant
/delay 5
/mouseto merchant buy
/for bloop 0 to 59
/click left
/delay 4
/next bloop
/return
-
Shali
- a ghoul

- Posts: 87
- Joined: Sun Dec 07, 2003 12:39 pm
Post
by Shali » Mon Dec 08, 2003 2:28 am
here is a nice working macro ive tested that will buy an item until your inventory is full, just changed the capitalized words to the correct value/name, make sure you subtract 1 from the slot number as they start with 0.
Code: Select all
[color=yellow]|=-buy.mac-=|
#include routines.mac
Sub Main
:Targetmerchant
/target MERCHANTNAME
/face
/press u
/delay 10
/click left merchant #SLOTOFMERCHANTSITEM
/goto :Checkinvspace
:Checkinvspace
/if $freeinv(space)==>0 /goto :Buyitem
/if $freeinv(space)==0 /goto :Done
:Buyitem
/click left merchant buy
/goto :Checkinvspace
:Done
/click left merchant done
/endmacro [/color]
hope it helps
-
Drunkensloth
- a lesser mummy

- Posts: 67
- Joined: Sat Oct 18, 2003 2:54 am
Post
by Drunkensloth » Mon Dec 08, 2003 3:30 am
interesting... why dont you use a for loop
i thought there was something not alllowed about plat macros.. we all know what this is for
And here I was clicking like a sucker!