Вот полностью рабочий скрипт. Кует мечи из айрона сопера и бронзы и переплавляет.А также работает и тинкер.
Code:
Enable Event Sysmessage
set #sysmsgcol 1359
event SysMessage ###Script Crafted by Gign###
gosub start
move 2556 498 0
gosub wait
move 2559 498 0
gosub wait
move 2559 495 0
gosub wait
move 2559 492 0
gosub wait
move 2559 489 0
gosub wait
move 2562 485 0
gosub wait
move 2562 488 0
gosub wait
move 2562 491 0
gosub wait
move 2562 494 0
gosub wait
move 2565 490 0
gosub wait
move 2565 487 0
gosub wait
move 2565 484 0
gosub wait
move 2565 481 0
gosub wait
move 2567 485 0
gosub wait
move 2567 488 0
gosub wait
move 2570 488 0
gosub wait
move 2570 485 0
gosub wait
move 2573 485 0
gosub wait
move 2573 475 0
gosub smeltall
gosub goiron
gosub smelt
gosub gobronze
gosub smelt
gosub gocooper
gosub smelt
move 2568 476 0
gosub wait
move 2570 477 0
gosub wait
move 2576 477 0
gosub wait
move 2579 480 0
gosub wait
move 2576 480 0
gosub wait
move 2573 480 0
gosub wait
move 2570 480 0
gosub wait
move 2567 480 0
gosub wait
move 2573 475 0
gosub smeltall
gosub goiron
gosub smelt
gosub gobronze
gosub smelt
gosub gocooper
gosub smelt
move 2564 484 0
sub smelt
{
wait 1s
set %mytimer #SCNT
while %mytimer > #SCNT - 10
{
finditem %smeltitemtype C
while #FINDCNT > 0
{
finditem JBG
set #LOBJECTID #FINDID
event macro 17
finditem %smeltitemtype C
set #LTARGETID #FINDID
event macro 22
wait 2s
finditem %smeltitemtype C
set %mytimer #SCNT
}
wait 2s
}
return
}
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
}
}
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 goiron
{
set #LTargetKind 1
finditem %tooltype C
while #FINDCNT < 1
{
event SysMessage No %toolname
wait 2s
finditem %tooltype C
}
set #LOBJECTID #FINDID
event macro 17
ignoreitem reset 1
finditem RMK C
while #FINDCOL <> 0 && #FINDCNT > 0
{
ignoreitem #FINDID 1
finditem RMK C
}
ignoreitem reset 1
target
set #LTARGETID #FINDID
event Macro 22 0
wait 2s
click %hyix %hyiy f
wait 1s
click %countx %county f
msg 555$
click %itemx %itemy f
return
}
sub gobronze
{
set #LTargetKind 1
finditem %tooltype C
while #FINDCNT < 1
{
event SysMessage No %toolname
wait 2s
finditem %tooltype C
}
set #LOBJECTID #FINDID
event macro 17
ignoreitem reset 1
finditem RMK C
while #FINDCOL <> 1160 && #FINDCNT > 0
{
ignoreitem #FINDID 1
finditem RMK C
}
ignoreitem reset 1
target
set #LTARGETID #FINDID
event Macro 22 0
wait 2s
click %hyix %hyiy f
wait 1s
click %countx %county f
msg 555$
click %itemx %itemy f
return
}
sub gocooper
{
set #LTargetKind 1
finditem %tooltype C
while #FINDCNT < 1
{
event SysMessage No %toolname
wait 2s
finditem %tooltype C
}
set #LOBJECTID #FINDID
event macro 17
ignoreitem reset 1
finditem RMK C
while #FINDCOL <> 2738 && #FINDCNT > 0
{
ignoreitem #FINDID 1
finditem RMK C
}
ignoreitem reset 1
target
set #LTARGETID #FINDID
event Macro 22 0
wait 2s
click %hyix %hyiy f
wait 1s
click %countx %county f
msg 555$
click %itemx %itemy f
return
}
sub start
{
if %setup <> 1
{
set #LOBJECTID #BACKPACKID
event macro 17
finditem TLH C
set %hammercount #FINDCNT
finditem GTL C
set %tinkercount #FINDCNT
if %hammercount > 0 && %tinkercount < 1
{
finditem TLH C
set #LOBJECTID #FINDID
event macro 17
}
if %hammercount < 1 && %tinkercount > 0
{
finditem GTL C
set #LOBJECTID #FINDID
event macro 17
}
while #LOBJECTTYPE <> TLH && #LOBJECTTYPE <> GTL
{
event SysMessage DoubleClick On Hammer For Blacksmiting or DoubleClick On Tinker Tools for Tinkering!
event SysMessage ========================================
wait 2s
}
if #LOBJECTTYPE = TLH
{
set %tooltype TLH
set %hyix 70
set %hyiy 210
set %countx 190
set %county 438
set %itemx 275
set %itemy 149
set %smeltitemtype BPH
set %toolname Hammer
}
else
{
set %tooltype GTL
set %countx 190
set %county 438
set %itemx 270
set %itemy 210
set %smeltitemtype PBG
set %toolname TinkerTools
}
set %setup 1
}
return
}