Скрипт для ловли рыбы на лодке. Сортирует все что выловил по контейнерам, вся рыба в корыто, вся обувь в ящик, хлам - SOSки, сеть и прочее в урну. Так же декодирует карты и откладывает карты 4-лвл вместе с тулзом в отдельную сумку, остальные карты и тулзы в урну.
Для корректной работы скрипта, необходимо наличие картографии у персонажа. Писался под ренджа с 100 картографии, по идее, при декодировании карт картография должна расти.
Лодка должна стоять подальше от берега! Для корректной работы скрипта, положение лодки не имеет значения, но я ставлю ее всегда так, как показано на скрине, ибо при таком расположении нет "мертвых" тайлов на лодке(за мачтой).
Становимся на трюм, в трюм кладем ящик, сумку, корыто и урну. В пек кладем удочки(я забивал почти всю сумку 200 - 250 удочек) и жаренную рыбу.
скрипт - __work___Fishing_main_script.zip
################################################################
## by: Hi Jack ##
## shard: Middle-Earth 2013 ##
################################################################
Sub Eat() #eda - fish steak
If UO.Count('0x097B') > 0 Then
UO.UseType ('0x097B')
Wait(500)
EndIf
End Sub
################################################################
Sub SW()
If UO.InJournal('Saving World State') Then
Repeat
Wait(200)
Until UO.InJournal('Saving World State complete')
EndIf
UO.Click('backpack')
Repeat
Wait(200)
Until uo.InJournal('Backpack|backpack')
Wait(500)
End Sub
################################################################
Sub Maps() #сортирует выловленные карты, 4-лвл в сумку, остальные в урну.
UO.FindType('0x14ED')
Wait(200)
If UO.FindCount() > 0 Then
Repeat
UO.UseObject('finditem')
Wait (500)
Until Uo.InJournal('successfully')
Repeat
UO.FindType('0x14EB', '-1')
UO.Click("finditem")
Wait(500)
Until UO.InJournal('map')
Wait(200)
If UO.InJournal('(1 lvl)|(2 lvl)|(3 lvl)')Then
UO.Exec("moveitem 'finditem' '1' 'aHatch.0x0E77'")
Wait(250)
UO.Exec("moveitem '^0x0FB7' '1' 'aHatch.0x0E77'")
Wait(250)
EndIf
If UO.InJournal('(4 lvl)|(5 lvl)') Then
UO.Exec("moveitem 'finditem' '1' 'aHatch.0x0E75'")
Wait(250)
UO.Exec("moveitem '^0x0FB7' '1' 'aHatch.0x0E75'")
Wait(250)
EndIf
EndIf
End Sub
################################################################
Sub aBoots() #перемещает выловленную обувь в ящик
VAR i
DIM aBoot[7]
aBoot[0] = 0x170A
aBoot[1] = 0x170B
aBoot[2] = 0x170C
aBoot[3] = 0x170D
aBoot[4] = 0x170E
aBoot[5] = 0x170F
aBoot[6] = 0x1710
aBoot[7] = 0x1711
For i = 0 To 7
UO.FindType(aBoot[i], '-1', 'backpack')
If UO.FindCount() > 0 Then
UO.Exec("moveitem 'finditem' '1' 'aHatch.0x0E3C'")
Wait(500)
EndIf
Next
End Sub
################################################################
Sub aFishs() #перемещает выловленную рыбу в бочку
VAR i
DIM aFish[3]
aFish[0] = 0x09CE # фиолетовая рыба
aFish[1] = 0x09CD # бежевая рыба
aFish[2] = 0x09CC # зеленая рыба
aFish[3] = 0x0DD6 # магическая рыбка
For i = 0 To 3
UO.FindType(aFish[i], '-1', 'backpack')
If UO.FindCount() > 0 Then
UO.Exec("moveitem 'finditem' '' 'aHatch.0x0E83'")
Wait(500)
EndIf
Next
End Sub
################################################################
Sub aTrash() #перемещает выловленный мусор в урну
VAR i
DIM aTrash[1]
aTrash[0] = 0x0DC8 #сеть
aTrash[1] = 0x099F #sos бутылка
For i = 0 To 1
UO.FindType(aTrash[i], '-1', 'backpack')
If UO.FindCount() > 0 Then
UO.Exec("moveitem 'finditem' '1' 'aHatch.0x0E77'") #!!!урна
Wait(500)
End if
Next
End Sub
################################################################
SUB MAIN()
VAR mx, my, mz, i, j
mx = UO.GetX('self')
my = UO.GetY('self')
mz = UO.GetZ('self')
UO.CancelMenu()
UO.CancelTarget()
UO.DeleteJournal()
UO.ConColor(0x0942)
UO.Print('Укажи трюм корабля')
UO.ConColor(0x0000)
UO.Exec('addobject aHatch')
While UO.Targeting()
Wait(200)
Wend
UO.Disarm()
UO.UseObject('aHatch')
Wait(200)
UO.UseObject('aHatch.0x0E83')
UO.UseObject('aHatch.0x0E3C')
UO.UseObject('aHatch.0x0E75')
Begin:
For i = mx-6 To mx+6
For j = my-6 To my+6
UO.DeleteJournal()
UO.WaitTargetTile("0", str(i), str(j), str(mz))
UO.UseType('0x0DBF') #FishingPole
Wait(200)
If UO.InJournal('<uninitialized object>!') Then
Wait(200)
GoTo Begin
EndIf
While Not (UO.InJournal('attract|equip|sight|looks|seem|catch|find|there!'))
Wait(200)
Wend
Eat()
SW()
Maps()
aBoots()
aFishs()
aTrash()
Next
Next
Goto Begin
END SUB
__work___Fishing_main_script.zip