4 чара юзалось по разным местам.
Раз уж не играю, то выложу чтоб не пропало даром )
Итак Бегинг №1 : Использует инжект и хождение на EasyUo.
Beg_easy.sc
Прописываем ID рун буки book1 и сумки в банке box_in_bank куда бабло будет скидывать .
А также номер руны из рунбуки где стоит банкир var ven_num_bank=
А также номер руны из рунбуки где стоит маг для закупки регов ven_num_mag=
ВНИМАНИЕпрописываем ИД вендоров . массив с ИД вендорами DIM ven[16] надо заново прописать .
Идем на 1 место , маркаем руну вставляем в чистый рун бук. прописываем ИД вендора в ven[1] , и так далее.
Обратите внимание на синтаксис записи ИД , в конце стоит точка.
На одно место можно прописывать 2 , 3 вендора, но учтите что ходилка простая и если где-то вендор далеко , чар не добежит .
(Чар не открывает двери , обязательно должен быть проход к вендору в пределах экрана)
Прописывать вендоров на одной точке через пробел .
пример:
ven[8]='0x001152F5 0x0011A0A3.' #Britain bowyer2 МАГ СИНИЙ МИНОК
Не забываем прописать ,morph 0x03db , что бы бегал сквозь чаров.
var book1='0x40041E00' var box_in_bank='0x400F7A58' var ven_num_bank=4 # Номер из рунбуки где стоит вендор-банкир. var ven_num_mag=8 #Номер из рунбуки где стоит вендор-маг для закупки реагентов. sub begging() var k,j,b,s,p,vendor,bank DIM ven[16] ven[1]='0x00117976.' #Britain alch ven[2]='0x00114560.' #Moonglow rovisioner- ПОПРАВИТБЬ РУНУ ven[3]='0x0011A765.' #Moonglow carpenter ven[4]='0x0011C5A7.' #Minoc butcher Банкир!! ven[5]='0x0011ACD3.' #Minoc banker ven[6]='0x00118851.' #Britain blue boar ven[7]='0x0011889F.' #Moonglow provisioner ven[8]='0x001152F5 0x0011A0A3.' #Britain bowyer2 МАГ СИНИЙ МИНОК ven[9]='0x0011BE17.' #Britain armorer ven[10]='0x0011641A.' #Moonglow tinker ven[11]='0x001193BF.' #Britain farmer ven[12]='0x00118886.' #Britain hides ven[13]='0x00118CFB.' #Britain tailor2 ven[14]='0x0011BC39.' #Moonglow cook ven[15]='0x0011D859.' #Moonglow bs ven[16]='0x00117B51.' #Moonglow cook2 while not uo.dead() for k=1 to 16 uo.useskill('Meditation') recall(book1,k) j = 1 vendor=GetWord(ven[k],j) while vendor <> '' uo.SetEasyUO(2,uo.inj2euo(vendor)) UO.DeleteJournal() s = "uo.getx()" p = "uo.gety()" repeat s = uo.getx(vendor) p = uo.gety(vendor) #hod(s,p) wait(300) #hod(s,p) #wait(250) UO.WaitTargetObject(vendor) UO.Useskill('Begging') wait(600) if (k == ven_num_mag) then if uo.count("0x0F7A")<400 then uo.buy("bp") uo.say("bye") wait(200) end if if uo.count("0x0F7B")<400 then uo.buy("bm") uo.say("bye") wait(200) end if if uo.count("0x0F86")<400 then uo.buy("mr") uo.say("bye") wait(200) end if end if until UO.InJournal("You put the gold") or UO.InJournal("You receive") or (uo.JournalSerial(uo.InJournal("Oh, I have no money now")-1))==vendor if k == ven_num_bank then #money in Bank uo.deletejournal() while ((bank == '0xFFFFFFFF') || (bank == '0x00000000')) uo.msg('bank') wait(100) bank = UO.ContainerOf (box_in_bank) wend #UO.Print( 'Сериал контейнера: ' + ser2 ) #UO.Print( 'KOORDF: ' + UO.GETX('ser1') ) while uo.count(0x0EED) uo.moveitem('_0x0EED',0,box_in_bank) IF uo.injournal('You put the') then uo.msg('bank') uo.deletejournal() end if wait(100) wend end if j=j+1 #uo.print(str(j)) vendor=GetWord(ven[k],j) wend next wend endsub sub Recall(idrb,nrune) Dim gumpreturn[16] gumpreturn[1]="0x0014" gumpreturn[2]="0x0016" gumpreturn[3]="0x0018" gumpreturn[4]="0x001A" gumpreturn[5]="0x001C" gumpreturn[6]="0x001E" gumpreturn[7]="0x0020" gumpreturn[8]="0x0022" gumpreturn[9]="0x0024" gumpreturn[10]="0x0026" gumpreturn[11]="0x0028" gumpreturn[12]="0x002A" gumpreturn[13]="0x002C" gumpreturn[14]="0x002E" gumpreturn[15]="0x0030" gumpreturn[16]="0x0032" UO.Recall(idrb,gumpreturn[nrune]) UO.Exec('terminate reconnector') wait(5000) UO.Exec('exec reconnector') wait(5000) Uo.DeleteJournal() endsub sub hod(xko,yko) var mx=UO.GetX() var my=UO.GetY() if mx == xko and my > yko then UO.Press(33) endif if mx == xko and my < yko then UO.Press(35) endif if mx < xko and my == yko then UO.Press(34) endif if mx < xko and my > yko then UO.Press(39) endif if mx < xko and my < yko then UO.Press(40) endif if mx > xko and my == yko then UO.Press(36) endif if mx > xko and my > yko then UO.Press(38) endif if mx > xko and my < yko then UO.Press(37) endif end sub sub reconnector() var ReconnectTime, RFlag ReconnectTime = '0' RFlag = 1 Repeat While (UO.ObjAtLayer('Bpack') == '') if RFlag Then ReconnectTime = MakeTime() RFlag = 0 endif Wait(20000) # WorldSave Protection UO.Say('') Wait(3000) UO.Say('') Wait(3000) UO.Say('') Wait(3000) UO.LDblClick(357,164) UO.LClick(616,459) Wait(3000) WEnd Wait(3000) if (RFlag == 0) and (ReconnectTime <> '0') Then UO.Exec('terminate begging') wait(1000) UO.Exec('exec begging') wait(1000) UO.TextOpen() UO.TextPrint('Disconnected & Reconnected @ '+ReconnectTime) RFlag = 1 ReconnectTime = '0' endif Until false end sub sub MakeTime() VAR D, T, Ret, i Ret = STR(UO.Time()) T = "" For i = 0 To Len(Ret) T = Ret[Len(Ret)-i] + T If (I == 2) OR (I == 4) Then T = ":" + T EndIf Next Ret = STR(UO.Date()) D = "" For i = 0 To Len(Ret) D = Ret[Len(Ret)-i] + D If (I == 2) OR (I == 4) Then D = "." + D EndIf Next Ret = T + " @ " + D RETURN Ret end sub Sub GetWord( st, nom ) ; (c) Edred ; Возвращает слово из строки str за номером num ; если такого слова нет - возвращаем '' ; ; Разделителем слов считаем пробел. Несколько пробелов подряд считаются за один. ; Функция сделана без рекурсии специально для считывания слов из сверхдлинных строк! ; VAR tmpst, i, dlin, kol = 0, start = 0 dlin = len( st ) For i=0 To dlin - 1 If mid( st, i, 1 ) == ' ' OR i == dlin - 1 Then kol = kol + 1 If kol == nom Then ; это первый пробел после нужного нам слова tmpst = mid( st, start, i - start ) return tmpst Else While mid( st, i, 1 ) == ' ' i = i + 1 Wend If kol == nom - 1 Then start = i Endif Endif Endif Next tmpst = '' return tmpst endsub
Файл EasyUO
Beg.txt
finditem *2 if #findDist > 2 { event pathfind #FINDX #FINDY #FINDZ 2 3s } ;wait 1s ;move #FINDX #FINDY ;finditem ;event pathfind #FINDX #FINDY #FINDZ 1 3s wait 2s