У меня работает) Если кому нужно - берите.
Code:
;######### CRAFT CORDINATES #############
set %categx 68
set %categy 212
set %selectx 274
set %selecty 152
;#########################################
sub findiron
{
event sysmessage ## SEARCHING FO-R IRON ###
event sysmessage looping metal find
ignoreitem reset 1
set %x_m_s 0
finditem RMK C_ , #BACKPACKID
set %mycontrol 0
while %x_m_s <> 1
{
if #FINDCOL = 0
{
set %ironfound #FINDID
event sysmessage found %ironfound iron #FINDSTACK ignots
set %x_m_s 1
set %mycontrol %mycontrol +1
}
else
{
event sysmessage found not iron #FINDSTACK ignots #FINDID
ignoreitem #FINDID 1
set %x_m_s 0
set %mycontrol %mycontrol +1
finditem RMK C_ , #BACKPACKID
}
if %mycontrol > 16
{
break
}
}
return
}
sub findbronze
{
event sysmessage ## SEARCHING FO-R bronze ###
event sysmessage looping metal find
ignoreitem reset 1
set %x_m_s 0
finditem RMK C_ , #BACKPACKID
set %mycontrol 0
while %x_m_s <> 1
{
if #FINDCOL = 1160
{
set %bronzefound #FINDID
event sysmessage found %bronzefound bronze #FINDSTACK ignots
set %x_m_s 1
set %mycontrol %mycontrol + 1
}
else
{
event sysmessage found not bronze #FINDSTACK ignots #FINDID
ignoreitem #FINDID 1
set %x_m_s 0
set %mycontrol %mycontrol + 1
finditem RMK C_ , #BACKPACKID
}
if %mycontrol > 16
{
break
}
}
return
}
sub findcopper
{
event sysmessage ## SEARCHING FO-R copper ###
event sysmessage looping metal find
ignoreitem reset 1
set %x_m_s 0
finditem RMK C_ , #BACKPACKID
set %mycontrol 0
while %x_m_s <> 1
{
if #FINDCOL = 2738
{
set %copperfound #FINDID
event sysmessage found %copperfound copper #FINDSTACK ignots
set %x_m_s 1
set %mycontrol %mycontrol +1
}
else
{
event sysmessage found not copper #FINDSTACK ignots #FINDID
ignoreitem #FINDID 1
set %x_m_s 0
finditem RMK C_ , #BACKPACKID
set %mycontrol %mycontrol +1
if %mycontrol > 14
{
break
}
}
}
return
}
sub findsteel
{
event sysmessage ## SEARCHING FO-R steel ###
event sysmessage looping metal find
ignoreitem reset 1
set %x_m_s 0
finditem RMK C_ , #BACKPACKID
set %mycontrol 0
while %x_m_s <> 1
{
if #FINDCOL = 1068
{
set %steelfound #FINDID
event sysmessage found %steelfound steel #FINDSTACK ignots
set %x_m_s 1
set %mycontrol %mycontrol +1
}
else
{
event sysmessage found not steel #FINDSTACK ignots #FINDID
ignoreitem #FINDID 1
set %x_m_s 0
finditem RMK C_ , #BACKPACKID
set %mycontrol %mycontrol +1
if %mycontrol > 14
{
break
}
}
}
return
}
sub bsiron
{
finditem %ironfound C_ , #BACKPACKID
event sysmessage UNDER BS found #FINDSTACK %ironfound iron ######
while %enoughiron <> 0
{
if #FINDSTACK > 30
event sysmessage We have neough
{
set %enoughiron 1
}
else
{
gosub clean
if #FINDSTACK > 30
event sysmessage We have neough
{
set %enoughiron 1
}
else
{
return
}
}
finditem TLH C_ , #BACKPACKID
if #FINDCNT > 1
{
event sysmessage found #FINDCNT hammers
set %myhammer #FINDID
}
else
{
event sysmessage no hammers found
halt
}
event sysmessage using hammer %myhammer usinng iron %ironfound
set #LOBJECTID %myhammer
event macro 17 0
target
set #LTARGETID %ironfound
set #LTARGETKIND 1
event sysmessage LTARGETID IS #LTARGETID
event Macro 22 0
wait 30
click %categx %categy f
wait 30
click %selectx %selecty f
wait 7s
finditem %ironfound C_ , #BACKPACKID
}
return
gosub clean
find %ironfound C_ , #BACKPACKID
}
sub bscopper
{
finditem %copperfound C_ , #BACKPACKID
event sysmessage UNDER BS found #FINDSTACK %copperfound copper ######
while %enoughcopper <> 0
{
if #FINDSTACK > 30
event sysmessage We have neough
{
set %enoughcopper 1
}
else
{
gosub clean
if #FINDSTACK > 30
event sysmessage We have neough
{
set %enoughcopper 1
}
else
{
return
}
}
finditem TLH C_ , #BACKPACKID
if #FINDCNT > 1
{
event sysmessage found #FINDCNT hammers
set %myhammer #FINDID
}
else
{
event sysmessage no hammers found
halt
}
event sysmessage using hammer %myhammer usinng copper %copperfound
set #LOBJECTID %myhammer
event macro 17 0
target
set #LTARGETID %copperfound
set #LTARGETKIND 1
event sysmessage LTARGETID IS #LTARGETID
event Macro 22 0
wait 30
click %categx %categy f
wait 30
click %selectx %selecty f
wait 7s
finditem %copperfound C_ , #BACKPACKID
}
return
gosub clean
find %copperfound C_ , #BACKPACKID
}
sub bsbronze
{
finditem %bronzefound C_ , #BACKPACKID
event sysmessage UNDER BS found #FINDSTACK %bronzefound bronze ######
while %enoughbronze <> 0
{
if #FINDSTACK > 30
event sysmessage We have neough
{
set %enoughbronze 1
}
else
{
gosub clean
if #FINDSTACK > 30
event sysmessage We have neough
{
set %enoughbronze 1
}
else
{
return
}
}
finditem TLH C_ , #BACKPACKID
if #FINDCNT > 1
{
event sysmessage found #FINDCNT hammers
set %myhammer #FINDID
}
else
{
event sysmessage no hammers found
halt
}
event sysmessage using hammer %myhammer usinng bronze %bronzefound
set #LOBJECTID %myhammer
event macro 17 0
target
set #LTARGETID %bronzefound
set #LTARGETKIND 1
event sysmessage LTARGETID IS #LTARGETID
event Macro 22 0
wait 30
click %categx %categy f
wait 30
click %selectx %selecty f
wait 7s
finditem %bronzefound C_ , #BACKPACKID
}
return
gosub clean
find %bronzefound C_ , #BACKPACKID
}
sub bssteel
{
finditem %steelfound C_ , #BACKPACKID
event sysmessage UNDER BS found #FINDSTACK %steelfound steel ######
while %enoughsteel <> 0
{
if #FINDSTACK > 30
event sysmessage We have neough
{
set %enoughsteel 1
}
else
{
gosub clean
if #FINDSTACK > 30
event sysmessage We have neough
{
set %enoughsteel 1
}
else
{
return
}
}
finditem TLH C_ , #BACKPACKID
if #FINDCNT > 1
{
event sysmessage found #FINDCNT hammers
set %myhammer #FINDID
}
else
{
event sysmessage no hammers found
halt
}
event sysmessage using hammer %myhammer usinng steel %steelfound
set #LOBJECTID %myhammer
event macro 17 0
target
set #LTARGETID %steelfound
set #LTARGETKIND 1
event sysmessage LTARGETID IS #LTARGETID
event Macro 22 0
wait 30
click %categx %categy f
wait 30
click %selectx %selecty f
wait 7s
finditem %steelfound C_ , #BACKPACKID
}
return
gosub clean
find %steelfound C_ , #BACKPACKID
}
sub clean
{
finditem JBG G_2
set %myforge #FINDID
finditem BPH C_ , #BACKPACKID
event sysmessage ## THERE ARE LEFT #FINDCNT SWORDS ##
while #FINDCNT <> 0
{
finditem BPH C_ , #BACKPACKID
event sysmessage ##SWORDS CLEANING #FINDID ##
set #LOBJECTID %myforge
set #LTARGETID #FINDID
set #LTARGETKIND 1
event macro 17
wait 2s
event macro 22
wait 1s
}
event sysmessage ##NO SWORD TO CLEAN##
find %ironfound C_ , #BACKPACKID
return
}
gosub window
while 1 = 1
{
Enable Event Sysmessage
set #sysmsgcol 1359
event SysMessage ###Script Crafted by Gign###
move 2556 498 1
gosub wait
move 2559 498 1
gosub wait
move 2559 495 1
gosub wait
move 2559 492 1
gosub wait
move 2559 489 1
gosub wait
move 2562 485 1
gosub wait
move 2562 488 1
gosub wait
move 2562 491 1
gosub wait
move 2562 494 1
gosub wait
move 2565 490 1
gosub wait
move 2565 487 1
gosub wait
move 2565 484 1
gosub wait
move 2565 481 1
gosub wait
move 2567 485 1
gosub wait
move 2567 488 1
gosub wait
move 2570 488 1
gosub wait
move 2570 485 1
gosub wait
move 2573 485 1
gosub wait
move 2573 475 0
gosub smeltall
while 1 = 1
{
gosub findiron
find %ironfound C_ , #BACKPACKID
if #FINDSTACK > 30
{
gosub clean
gosub bsiron
}
else
{
break
}
}
while 1 = 1
{
gosub findbronze
find %bronzefound C_ , #BACKPACKID
if #FINDSTACK > 30
{
gosub clean
gosub bsbronze
}
else
{
break
}
}
while 1 = 1
{
gosub findcopper
find %copperfound C_ , #BACKPACKID
if #FINDSTACK > 30
{
gosub clean
gosub bscopper
}
else
{
break
}
}
while 1 = 1
{
gosub findsteel
find %steelfound C_ , #BACKPACKID
if #FINDSTACK > 30
{
gosub clean
gosub bssteel
}
else
{
break
}
}
move 2568 476 1
gosub wait
move 2570 477 1
gosub wait
move 2576 477 1
gosub wait
move 2579 480 1
gosub wait
move 2576 480 1
gosub wait
move 2573 480 1
gosub wait
move 2570 480 1
gosub wait
move 2567 480 1
gosub wait
move 2573 475 0
gosub smeltall
gosub findiron
while 1 = 1
{
find %ironfound C_ , #BACKPACKID
if #FINDSTACK > 30
{
gosub clean
gosub bsiron
}
else
{
break
}
}
}
sub smeltall
{
wait 1s
finditem DWJ C
wait 1s
while #FINDCNT > 0
{
set #LOBJECTID #FINDID
event macro 17
finditem DWJ C
wait 1s
}
return
}
sub wait
{
set #LTargetKind 2
for %x -1 1
{
if #MAXWEIGHT < #WEIGHT + 101
{
return
}
for %y -1 1
{
repeat
{
set #lTargetX #CHARPOSX + %x
set #lTargetY #CHARPOSY + %y
set #lTargetZ #CHARPOSZ
gosub usepick
target
event Macro 22 0
set %weigh #WEIGHT
set %timer2 #SCNT
repeat
{
wait 1
}
until %weigh < #WEIGHT || nothing in #sysMsg || Try in #sysMsg || put in #sysMsg || close in #sysMsg || see in #sysMsg || destroyed in #sysMsg || line in #sysMsg || loosen in #sysMsg || %timer2 < #SCNT - 12
}
until nothing in #sysMsg || line in #sysMsg || decide in #sysMsg || Try in #sysMsg || close in #sysMsg || see in #sysMsg || line in #sysMsg
}
}
gosub dropore
return
}
sub usepick
{
finditem NPF C
while #FINDCNT < 1
{
event SysMessage No Pickaxes
wait 2s
finditem NPF C
}
set #lObjectID #FINDID
event macro 17
return
}
sub dropore
{
finditem DWJ C
for %i 1 #findcnt
{
set #findindex %i
if _ , #findcol , _ in %dropcolor
{
exevent drag #findid #findstack
exevent dropg #charposx #charposy #charposz
wait 10
}
}
return
}
sub window
}
set %charInfo #charName
set %checksizex 100
set %checksizey 20
set %checkposx 55
set %checkposy 10
set %checkname1 Iron
set %checkname2 Copper
set %checkname3 Bronze
set %checkname4 Steel
set %checkname5 Black_Steel
set %checkname6 Meteor
set %checkname7 Dark_Crystal
set %checkname8 Fire
set %checkname9 Elemental
set %checknamec1 0
set %checknamec2 2738
set %checknamec3 1160
set %checknamec4 1068
set %checknamec5 2723
set %checknamec6 2720
set %checknamec7 2735
set %checknamec8 1094
set %checknamec9 2734
menu window size 240 330
menu window title #spc , Crafted , #spc , by , #spc , Gign
menu Text text_1 10 10 Eaeo? ?oao aueeauaaou ia caie??
for %i 1 9
{
set %name %checkname . %i
set %posy %checkposy + ( 25 * %i )
menu check %name %checkposx %posy %checksizex %checksizey #false %name
}
menu Button button_1 50 260 100 50 Ia?aou eiiaou!
menu show
set #menubutton nothing
while #menubutton <> button_1
{
wait 1
}
menu Hide
for %i 1 9
{
set %name %checkname . %i
menu get %name
if #menures = #true
{
set %mycolor %checknamec . %i
set %dropcolor %dropcolor , _ , %mycolor
}
}
set %dropcolor %dropcolor , _
return
}