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.
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
/finditem similar "$p1"
/if $find()==FALSE /goto :Done
/click left $v20 0
/finditem similar "$p2"
/if $find()==FALSE /goto :Done
/click left $v20 1
/if "$p3"=="" /goto :Combine
/finditem similar "$p3"
/if $find()==FALSE /goto :Done
/click left $v20 2
/if "$p4"=="" /goto :Combine
/finditem similar "$p4"
/if $find()==FALSE /goto :Done
/click left $v20 3
/if "$p5"=="" /goto :Combine
/finditem similar "$p5"
/if $find()==FALSE /goto :Done
/click left $v20 4
/if "$p6"=="" /goto :Combine
/finditem similar "$p6"
/if $find()==FALSE /goto :Done
/click left $v20 5
/if "$p7"=="" /goto :Combine
/finditem similar "$p7"
/if $find()==FALSE /goto :Done
/click left $v20 6
/if "$p8"=="" /goto :Combine
/finditem similar "$p8"
/if $find()==FALSE /goto :Done
/click left $v20 7
/if "$p9"=="" /goto :Combine
/finditem similar "$p9"
/if $find()==FALSE /goto :Done
/click left $v20 8
:Combine
/sendkey up ctrl
/click left $v20 combine
:WaitCombine
/if $pack($v10,empty)==FALSE /goto :WaitCombine
:AutoDrop
/click left auto
/delay 1
/if "$cursor()"=="TRUE" /goto :AutoDrop
/goto :MakeItem
:Done
/sendkey up ctrl
/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 

