Рыбалка с корабля, удочку, кутлу, ножницы в пак.
Ловит все что есть, когда перевес - режет рыбу кутлой, сапоги, тапочки и тд ножницами, все ложит в трюм, из монстры убивает токо скелетов, а остальных убить на макре просто не реально
Все как обычно прописано в скрипте. Люблю комменты
Code:
VAR Trum = '0x4000CA8A' ; сундук для основного улова
VAR Pole = '0x0DC0' ; удочка
var obj = '0x0000E326' ; это я
var Orugie = '0x1441' ; КУтла
sub Fish()
Var X,Y,t =0
var Jurn
Dim Cli[3]
Cli[0]="cliloc# 0xAD84" ; Если кончилась рыба
Cli[1]="cliloc# 0xA4F0" ; Если далеко
Cli[2]="cliloc# 0xA18D" ; Если перегруз
Cli[2]="cliloc# 0xA6B0" ; если не туда ловим
dim sdvig_X[3]
sdvig_X[0] = -3
sdvig_X[1] = -3
sdvig_X[2] = 3
sdvig_X[3] = 3
dim sdvig_Y[3]
sdvig_Y[0] = -2
sdvig_Y[1] = 3
sdvig_Y[2] = 3
sdvig_Y[3] = -3
Beg:
wait(1000)
REPEAT ; 1 точка
X=UO.GetX(obj) + sdvig_X[t] ; находим координаты
Y=UO.GetY(obj) + sdvig_X[t]
uo.print("Lovim " + str(x) + " " + str(Y))
uo.deletejournal()
UO.WaitTargetTile(str(0),Str(X),Str(Y),Str(-5))
UO.usetype(Pole)
wait(3000)
Jurn=UO.Journal(0)
UNTIL Jurn == Cli[0] or (UO.Weight > 400) or Jurn == Cli[1] or Jurn == Cli[2] or Jurn == Cli[3]
t = t + 1
If (UO.Weight > 400) then
UO.Print('Razgruz')
remov_rib()
wait(2000)
End If
if t > 3 then
uo.say('Right')
wait(10000)
uo.say('stop')
t = 0
end if
UO.Print('Tochka !!!' + str(t))
Goto Beg
End Sub
sub remov_rib() ; Процедура скидывания лова в указаный в начале ящик
uo.setreceivingcontainer(Trum)
uo.useobject(Trum)
var t = 0
dim rib[8]
rib[0] = '0x1711' ; сиз ботинки
rib[1] = '0x170F' ; шузы
rib[2] = '0x170B' ; нормал боты
rib[3] = '0x170D' ; сандалии
rib[4] = '0x09CD' ; рыба
rib[5] = '0x09CF' ; рыба
rib[6] = '0x09CE' ; рыба 0x09CE
rib[7] = '0x09CC' ; рыба
rib[8] = '0x0DD6' ; rar рыба
repeat
repeat
wait(1500)
uo.findtype(rib[t])
UO.Print(rib[t]+ ' ' + str(UO.FindCount()))
if t > 7 then
uo.moveitem('finditem','0',Trum) ; сложим рар рыбу
wait(1000)
end if
wait(100)
if t < 4 then
uo.waittargetobject('finditem') ; установить прицел на найденное
wait(1000)
UO.usetype('0x0F9F') ; Использовать ножницы на прицеле
end if
if t > 3 then
uo.waittargetobject('finditem') ; установить прицел на найденно
wait(1000)
UO.usetype('0x1441') ; Использовать нож на прицеле
end if
uo.findtype('0x097A')
wait(100)
uo.moveitem('finditem','0',Trum) ; сложим рыбу
wait(1000)
uo.findtype('0x1081')
wait(100)
uo.moveitem('finditem','0',Trum) ; сложим кожу
wait(1000)
uo.findtype(rib[t])
until UO.FindCount() == 0
t = t + 1
until t > 7
end sub
sub FightMonster()
var i = 0, z, kol_monstr = 0
dim Monster[2]
Monster[0] = '0x0038' ; '0x0096' ; змей
Monster[1] = '0x0032'
Monster[2] = '0x0038'
repeat
for i=0 to 2
wait(500)
UO.Set('finddistance',10)
UO.FindType(Monster[i], '-1', '1' )
kol_monstr = UO.FindCount()
; UO.Print('Vot Monstr' + Monster[i] +':' + str(kol_monstr))
obj = UO.GetSerial("finditem") ; Запоминаем монстра
if kol_monstr > 0 then
UO.Exec( 'terminate Fish' )
UO.usetype(Orugie)
UO.WarMode( 1 )
uo.attack(Obj)
UO.Print('Monstr -' + str(UO.FindCount()) + '-' + Obj)
repeat
wait(1000)
UO.FindType(Monster[i], '-1', '1' )
until UO.FindCount() == 0
UO.Exec( 'exec Fish' )
end if
next
until 1==0
; UO.Exec( 'exec FightMonster' )
endsub