The only change to the macro is the insertion of the '/delay 11' line as shown below, works for me now.
Code: Select all
:Combine
/sendkey up ctrl
/delay 11
/click left $v20 combine
Moderator: MacroQuest Developers
Code: Select all
:Combine
/sendkey up ctrl
/delay 11
/click left $v20 combine
Bonker wrote:How can I get the macro to locate combiners that use multiple words in identifying themselves.
I /identify the jeweller's kit and get "Jeweller's Kit"; same thing with deluxe sewing kit.
When I type:
/macro combine jeweller's kit "malachite" "gold bar"
the macro cannot find the combiner "jeweller's" (does not recognize kit) and ends. I've also tried to enclose the combiner in quotes but it still only looks for the first word.
Bonkers
Any ideas?
Code: Select all
| - Combine.mac
|
|Supports up to 9 items to combine in container
| Usage is /macro combine "container" "item 1" "item 2" "item 3" Item 4" etc
| i.e. /macro combine tinkering "firewater" "bat wing" "metal shaft"
|
| Update: Now supports environmental containers, i.e. forge, pottery etc.
#turbo
Sub Main
/cleanup
/call FindCombiner "$p0"
/if $v10<=7 /call OpenInv
/if $v10==8 /call OpenEnv
/if $v10==99 {
/echo "Cannot find container-Aborting"
/end
}
:MakeItem
/sendkey down ctrl
/if "$p1"~~# {
/finditem similar "$right($calc($strlen("$p1")-1),"$p1")"
/goto :Continue
}
/finditem "$p1"
:Continue
/if $find()==FALSE /goto :Done
/click left $v20 0
/if "$p2"=="" /goto :Combine
/if "$p2"~~# {
/finditem similar "$right($calc($strlen("$p2")-1),"$p2")"
/goto :Continue2
}
/finditem "$p2"
:Continue2
/if $find()==FALSE /goto :Done
/click left $v20 1
/if "$p3"=="" /goto :Combine
/if "$p3"~~# {
/finditem similar "$right($calc($strlen("$p3")-1),"$p3")"
/goto :Continue3
}
/finditem "$p3"
:Continue3
/if $find()==FALSE /goto :Done
/click left $v20 2
/if "$p4"=="" /goto :Combine
/if "$p4"~~# {
/finditem similar "$right($calc($strlen("$p4")-1),"$p4")"
/goto :Continue4
}
/finditem "$p4"
:Continue4
/if $find()==FALSE /goto :Done
/click left $v20 3
/if "$p5"=="" /goto :Combine
/if "$p5"~~# {
/finditem similar "$right($calc($strlen("$p5")-1),"$p5")"
/goto :Continue5
}
/finditem "$p5"
:Continue5
/if $find()==FALSE /goto :Done
/click left $v20 4
/if "$p6"=="" /goto :Combine
/if "$p6"~~# {
/finditem similar "$right($calc($strlen("$p6")-1),"$p6")"
/goto :Continue6
}
/finditem "$p6"
:Continue6
/if $find()==FALSE /goto :Done
/click left $v20 5
/if "$p7"=="" /goto :Combine
/if "$p7"~~# {
/finditem similar "$right($calc($strlen("$p7")-1),"$p7")"
/goto :Continue7
}
/finditem "$p7"
:Continue7
/if $find()==FALSE /goto :Done
/click left $v20 6
/if "$p8"=="" /goto :Combine
/if "$p8"~~# {
/finditem similar "$right($calc($strlen("$p8")-1),"$p8")"
/goto :Continue8
}
/finditem "$p8"
:Continue8
/if $find()==FALSE /goto :Done
/click left $v20 7
/if "$p9"=="" /goto :Combine
/if "$p9"~~# {
/finditem similar "$right($calc($strlen("$p9")-1),"$p9")"
/goto :Continue9
}
/finditem "$p9"
:Continue9
/if $find()==FALSE /goto :Done
/click left $v20 8
:Combine
/sendkey up ctrl
:WaitCombine
/click left $v20 combine
/delay 2
/if $pack($v10,empty)==FALSE /goto :WaitCombine
:ClearCursor
/click left auto
/delay 5
/if "$cursor()"=="TRUE" /goto :ClearCursor
/goto :MakeItem
:Done
/sendkey up ctrl
/call CleanPack
/cleanup
/return
Sub OpenInv
/varset v20 "pack $v10"
/cleanup
/click right inv $v10
/if $pack($v10,empty)==FALSE /call CleanPack
/return
Sub OpenEnv
/cleanup
/varset v10 e
/varset v20 enviro
/face item
/click left item
:WaitOpen
/if $pack($v10,open)==FALSE /goto :WaitOpen
/delay 5
/if $pack($v10,empty)==FALSE /call CleanPack
/return
Sub CleanPack
/sendkey down shift
/varcalc v2 $pack($v10,slots)-1
/for v1 0 to $v2
/click left $v20 $v1
/click left auto
/next v1
/sendkey up shift
/return
Sub FindCombiner
/varset v10 99
/for v99 0 to 7
/if "$pack($v99,combine)"==$p0 /varset v10 $v99
/next v99
/if $v10==99 {
/itemtarget $p0
/if n $distance(item)<=20 /varset v10 8
}
/return $v10