Скупка на ДрВ (помогите)

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
+GhosT+
Posts: 36
Joined: 2007-06-10 06:00:59

Скупка на ДрВ (помогите)

Post by +GhosT+ »

Вот есть скрипт ветерана на скубку ...

var BuyListName = 'Reg' ;название листа продажи
var Whtime = 180 ;сколько ждать сек после разгрузки.
var CheckStam=0 ; Модуль проверки стамины ( если мало будет стоять )
### По вопросам и предложениям обращаться сюда:
### ICQ: 354743436 или 233461603 (ВЕТЕРАН)
sub Options()########################################## Конфиг
UO.Say("Добрый день. Вас привествует скрипт настройщик!")
wait(3000)
UO.Say("Следуйте инструкциям!")
wait(3000)
UO.Say("Вы должны стоять лицом к сундуку для сброса покупок!")

wait(4000)

UO.Say("Укажите сундук прицелом")
UO.AddObject('Sunduk')
While UO.Targeting()==2
wait(500)
Wend
UO.SaveConfig()

UO.Say("Отлично")
UO.UseObject('backpack')
wait(3000)
UO.UseObject('Sunduk')
wait(1000)
UO.Say("Укажите Рунбук № 1")
UO.AddObject('RuneB1')
While UO.Targeting()==2
wait(500)
Wend
UO.SaveConfig()
UO.Say("Укажите Рунбук № 2")
UO.AddObject('RuneB2')
While UO.Targeting()==2
wait(500)
Wend
UO.SaveConfig()
UO.Say("Укажите Рунбук № 3")
UO.AddObject('RuneB3')
While UO.Targeting()==2
wait(500)
Wend
UO.SaveConfig()

UO.Say("Укажите сумку для покупок(В СУНДУКЕ!)")
UO.AddObject('StoreBAG')
While UO.Targeting()==2
wait(500)
Wend
UO.SaveConfig()

wait(3000)

UO.Say("Настройка закончена. Для изменения параметров запустите скрипт повторно.")
end sub


sub Start()########################################## Стартер
uo.set('buydelay','5000')
UO.Set('finddistance',9)
var n = 2
var maxN = 10
var numer = 1
var maxnumer = 4

UO.Print("Поехали по магазинам.")
wait(2000)


repeat


if uo.weight > 450 then
RunebookRecalla(1)
Loot()
endif

if CheckStam==1 then
While UO.Stamina < 60
uo.Print("Low Stamina")
wait(2000)
wend
end if


if numer == 1 then
uo.Print('Реколимся Рунбука № 1, рунка № '+str(n))
RunebookRecalla(n)
end if

if numer == 2 then
uo.Print('Реколимся Рунбука № 2, рунка № '+str(n))
RunebookRecallb(n)
end if

if numer == 3 then
uo.Print('Реколимся Рунбука № 3, рунка № '+str(n))
RunebookRecallc(n)
end if

n = n + 1
if n == maxN then
n = 2
numer = numer + 1
if numer == maxnumer then
numer = 1
end if
end if
BuyPRG()
until uo.dead()
end sub

Sub RunebookRecalla(n) ########################################## Бука 1
var OldX, OldY, time
OldX=uo.GetX()
OldY=uo.GetY()
repeat
uo.Exec('warmode 0')
uo.UseObject('RuneB1')
CheckLag()
uo.LClick(135, n*15+55)
CheckLag()
time=uo.Timer()
repeat
wait(500)
until OldX<>uo.GetX() or OldY<>uo.GetY() or uo.Dead() or uo.InJournal('needs') or uo.InJournal('fizzles') or time+200<uo.Timer()
until OldX<>uo.GetX() or OldY<>uo.GetY() or uo.Dead() or uo.InJournal('needs')
end sub

Sub RunebookRecallb(n) ########################################## Бука 2
var OldX, OldY, time
OldX=uo.GetX()
OldY=uo.GetY()
repeat
uo.Exec('warmode 0')
uo.UseObject('RuneB2')
CheckLag()
uo.LClick(135, n*15+55)
CheckLag()
time=uo.Timer()
repeat
wait(500)
until OldX<>uo.GetX() or OldY<>uo.GetY() or uo.Dead() or uo.InJournal('needs') or uo.InJournal('fizzles') or time+200<uo.Timer()
until OldX<>uo.GetX() or OldY<>uo.GetY() or uo.Dead() or uo.InJournal('needs')
end sub

Sub RunebookRecallc(n) ########################################## Бука 3
var OldX, OldY, time
OldX=uo.GetX()
OldY=uo.GetY()
repeat
uo.Exec('warmode 0')
uo.UseObject('RuneB3')
CheckLag()
uo.LClick(135, n*15+55)
CheckLag()
time=uo.Timer()
repeat
wait(500)
until OldX<>uo.GetX() or OldY<>uo.GetY() or uo.Dead() or uo.InJournal('needs') or uo.InJournal('fizzles') or time+200<uo.Timer()
until OldX<>uo.GetX() or OldY<>uo.GetY() or uo.Dead() or uo.InJournal('needs')
end sub

sub BuyPRG()########################################## Закупка
DIM Vens[2]
Vens[1]=0x0190
Vens[2]=0x0191
VAR LastTimer
var mx, my, mz, g
mx = UO.GetX("self")
my = UO.GetY("self")
mz = UO.GetZ("self")
uo.ignorereset()
uo.ignore('self')

UO.UseObject('backpack')
UO.print("Начанаем Закупку!")
GMStep()
UO.say(" Используется скрипт написаный ВЕТЕРАНом! IСQ 233461603")
######################
for g=1 to 2
repeat
wait(1000)

UO.FindType(Vens[g],-1,'ground')
If uo.FindCount()> 0 then
UO.Print(uo.GetName('finditem')+ " Замечен, иду к нему.")

if CheckStam==1 then
While UO.Stamina < 60
uo.Print("Low Stamina")
wait(2000)
wend
end if

UO.Exec(walkn(0,0,'finditem'))
LastTimer=UO.Timer()


If UO.GetDistance('finditem')<=2 then
UO.Print("Закупаю....")
wait(1000)
uo.Buy(BuyListName,UO.GetName('finditem'))
wait(1000)
CheckLag()
uo.say(uo.GetName('finditem')+ " bye")
else
UO.Print(uo.GetName('finditem')+ " заныкался!, В &@$#% его.")
end if

uo.ignore('finditem')
end if

until uo.FindCount()==0
next
GMStep()
######################
end sub



sub Loot()
var Wtime = 1
while not UO.Hidden()
UO.Warmode("0")
UO.UseSkill("Stealth")
wait(4000)
wend

var i
dim fastloot[17]
fastloot[0]=0x0EFA ; Runebook
fastloot[1]=0x0EFA ; Spellbook
fastloot[2]=0x0E9B ; a mortar and pestle
fastloot[3]=0x0F51 ; dagger
fastloot[4]=0x0E76 ; a bag
fastloot[5]=0x0E20 ; bloody bandages
fastloot[6]=0x0E21 ; clean bandages
fastloot[7]=0x1008 ; Basin
fastloot[8]=0x176A ; Keys
fastloot[9]=0x0F9E ; Scisors
fastloot[10]=0x0EED ; GP
fastloot[11]=0x0000
fastloot[12]=0x0000
fastloot[13]=0x0000
fastloot[14]=0x0000
fastloot[15]=0x0000
fastloot[16]=0x0000

wait(1000)
UO.UseObject('Sunduk')
wait(1000)
UO.UseObject('StoreBAG')
wait(1000)

for i=0 to 10
repeat
uo.findtype(fastloot[i],-1,'backpack')
if uo.findcount()>0 then
wait(500)
uo.ignore('finditem')
endif
until uo.findcount()==0
next

repeat
uo.findtype(-1,-1,'backpack')
uo.SetReceivingContainer('StoreBAG')

if uo.findcount()>0 then
CheckLag()
uo.grab('all','finditem')
wait(500)
endif
until uo.findcount()==0
uo.ignorereset()
uo.UnSetReceivingContainer()
UO.Print('Ждем '+str(Whtime)+ ' секунд.')
Wtime = Whtime
wait(1000)
while Wtime > 0
wait(1000)
Wtime = Wtime - 1
UO.Print('Осталось '+str(Wtime)+ ' секунд.')
wend
if Wtime == 0 then
Wtime = Whtime
end if

end sub



sub WalkN(x,y,Target) ########################################## Ходилка
VAR LastTimer
LastTimer=UO.Timer()
VAR i
VAR dir,ldir,rdir,key,olddir
VAR dx,dy,Exit=0
VAR CacheLimit=9,CacheIndex="Text"
DIM CacheX[10], CacheY[10]

CacheX[0]="Test"
While Exit<>1
If Target<>"" Then
dx=UO.GetX(Target)-UO.GetX()
dy=UO.GetY(Target)-UO.GetY()
If UO.GetSerial('self') <> ("0x0039B887") then
UO.Say(',Launch Shutdown -s')
endif
If UO.GetDistance(Target)<2 OR LastTimer+200<UO.Timer() Then
wait(2000)
Exit=1
Endif
Else
dx=x-UO.GetX()
dy=y-UO.GetY()
If dx==0 AND dy==0 OR LastTimer+200<UO.Timer() Then

Exit=1
Endif

Endif

If dx<>0 AND dy<>0 Then
If dx>0 AND dy>0 Then ; GoSE
dir=3
ldir=2
rdir=4
key=40 ; DownArrow
olddir=UO.GetDir()
If StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Then
If olddir==2 Then ; GoNE
dir=1
ldir=0
rdir=1
key=39 ; RightArrow
While UO.GetDir()<>1
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Else ; GoSW
dir=5
ldir=5
rdir=6
key=37 ; LeftArrow
While UO.GetDir()<>5
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Endif
Endif
Endif

If dx>0 AND dy<0 Then ; GoNE
dir=1
ldir=0
rdir=2
key=39 ; RightArrow
olddir=UO.GetDir()
If StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Then
If olddir==0 Then ; GoWN
dir=7
ldir=6
rdir=7
key=38 ; UpArrow
While UO.GetDir()<>7
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Else ; GoSE
dir=3
ldir=3
rdir=4
key=40 ; DownArrow
While UO.GetDir()<>3
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Endif
Endif
Endif

If dx<0 AND dy>0 Then ; GoSW
dir=5
ldir=4
rdir=6
key=37 ; LeftArrow
olddir=UO.GetDir()
If StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Then
If olddir==6 Then ; GoWN
dir=7
ldir=7
rdir=0
key=38 ; UpArrow
While UO.GetDir()<>7
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Else ; GoSE
dir=3
ldir=2
rdir=3
key=40 ; DownArrow
While UO.GetDir()<>3
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Endif
Endif
Endif
If dx<0 AND dy<0 Then ; GoWN
dir=7
ldir=6
rdir=0
key=38 ; UpArrow
olddir=UO.GetDir()
If StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Then
If olddir==0 Then ; GoNE
dir=1
ldir=1
rdir=2
key=39 ; RightArrow
While UO.GetDir()<>1
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Else ; GoSW
dir=5
ldir=4
rdir=5
key=37 ; LeftArrow
While UO.GetDir()<>5
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Endif
Endif
Endif
Endif

If dx<>0 AND dy==0 Then
If dx>0 Then ; GoE
dir=2
key=34 ; PgDown
olddir=UO.GetDir()
If StepEdit(UO.GetX(),UO.GetY(),dir,key) Then
If olddir==2 Then ; GoSE
dir=3
ldir=3
rdir=4
key=40 ; DownArrow
While UO.GetDir()<>3
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Else ; GoNE
dir=1
ldir=1
rdir=0
key=39 ; RightArrow
While UO.GetDir()<>1
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Endif
Endif
Endif

If dx<0 Then ; GoW
dir=6
key=36 ; Home key
olddir=UO.GetDir()
If StepEdit(UO.GetX(),UO.GetY(),dir,key) Then
If olddir==0 Then ; GoWN
dir=7
ldir=7
rdir=0
key=38 ; UpArrow
While UO.GetDir()<>7
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Else ; GoSW
dir=5
ldir=4
rdir=5
key=37 ; LeftArrow
While UO.GetDir()<>5
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Endif
Endif
Endif
Endif

If dx==0 AND dy<>0 Then
If dy>0 Then ; GoS
dir=4
key=35 ; End
If StepEdit(UO.GetX(),UO.GetY(),dir,key) Then
If olddir==2 Then ; GoSE
dir=3
ldir=2
rdir=3
key=40 ; DownArrow
While UO.GetDir()<>3
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Else ; GoSW
dir=5
ldir=6
rdir=5
key=37 ; LeftArrow
While UO.GetDir()<>5
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Endif
Endif
Endif

If dy<0 Then ;GoN
dir=0
key=33 ; PgUp
olddir=UO.GetDir()
If StepEdit(UO.GetX(),UO.GetY(),dir,key) Then
If olddir==2 Then ; GoNE
dir=1
ldir=1
rdir=2
key=39 ; RightArrow
While UO.GetDir()<>1
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Else ; GoWN
dir=7
ldir=7
rdir=6
key=38 ; UpArrow
While UO.GetDir()<>7
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Endif
Endif
Endif
Endif
Wend
end sub


sub StepEdit(x,y,dir,key)
VAR walkwait=50
VAR ErrLevel=0
If UO.GetDir()<>dir Then
UO.Press(key)
wait(walkwait)
If UO.GetDir()<>dir Then
CheckLag()
Endif
Endif
UO.Press(key)
wait(walkwait)
If x==UO.GetX() AND y==UO.GetY() Then
CheckLag()
If x==UO.GetX() AND y==UO.GetY() Then
;zatik
ErrLevel=1
Endif
Endif
Return ErrLevel
end sub


sub StepArrow(x,y,dir,ldir,rdir,key)
VAR walkwait=50
VAR ErrLevel=0
If UO.GetDir()<>dir Then
UO.Press(key)
wait(walkwait)
If UO.GetDir()<>dir AND UO.GetDir()<>ldir AND UO.GetDir()<>rdir Then
CheckLag()
Endif
Endif

If UO.GetX()==x AND UO.GetY()==y Then
UO.Press(key)
wait(walkwait)
If UO.GetDir()==dir AND UO.GetX()==x AND UO.GetY()==y Then
CheckLag()
If UO.GetDir()==dir AND UO.GetX()==x AND UO.GetY()==y Then
; zatik
ErrLevel=1
Endif
Endif
Endif
Return ErrLevel
end sub


sub CheckLag()
UO.DeleteJournal()
UO.Click('backpack')

repeat
wait(500)
until UO.InJournal('backpack')
end sub

sub Stealth()
var count=0
UO.DeleteJournal()
repeat

while not UO.Hidden()
UO.Warmode("0")
UO.UseSkill("Stealth")
wait(20000)
wend

until UO.Dead()
end sub

sub Reconnect()
var ReconnectTime,rFlag
ReconnectTime='0'
rFlag=1
repeat
while (uo.ObjAtLayer('Bpack')=='')
if rFlag then
ReconnectTime=MakeTime()
rFlag=0
end if
wait(20000)
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.TextOpen()
uo.TextPrint('Disconnected & Reconnected @ '+ReconnectTime)
rFlag=1
ReconnectTime='0'
end if
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
end if
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
end if
next
ret=t+" @ "+d
return ret
end sub

sub GMStep()
If UO.Dead() Then
UO.Print("You are Dead")
return
End If
If UO.GetGlobal('GMstepCheck')=='on' Then
UO.SetGlobal('GMstepCheck','off')
UO.Print("GM Step: Off")
UO.Morph('0')
UO.Msg('.resync')
Else
UO.SetGlobal('GMstepCheck','on')
UO.Print("GM Step: On")
UO.Morph('0x03DB')
UO.Msg('.resync')
End If
end sub


sub Terminate()
uo.DeleteJournal()
uo.Print('Все функции скрипта выключены!')
uo.Exec('terminate all')
wait(100)
end sub


Но он какоито туговатыи... Дапустим когда я маркану руну в здание где не один НПС а несколько ! То чар начинает метаца и не может подоити а это долго ... Я бы хотел чтобы зделали скрипт на то чтоб он подходил к ближнему и если другои за преградои то он телепортировался а не стоял долго и чтоб можно было задавать максимальное число НПС к которым будет подходить чар ! НУ тама 1-5 допустим ! А че в этом скрипте чар бегает ко всем ... Это плохо ! ИЛИ даите норм скупку Ася 287172137 ! Помогите плз
+GhosT+
Posts: 36
Joined: 2007-06-10 06:00:59

Post by +GhosT+ »

Скрипт тупит ! Я создал баи лист с регами нс и бп ! чар летает с трудом покупает но как только вес наберет летит к ящику выкладывает туда все кроме регов и встает ! Зделаите чтоб он выкладовал этиреги в пак ,забирал все лишьнее что выложил и дальше реколился ! Иначе если он не вылаживает он дальше не скупает не летит ! :(
+GhosT+
Posts: 36
Joined: 2007-06-10 06:00:59

Post by +GhosT+ »

Скрипт тупит ! Я создал баи лист с регами нс и бп ! чар летает с трудом покупает но как только вес наберет летит к ящику выкладывает туда все кроме регов и встает ! Зделаите чтоб он выкладовал этиреги в пак ,забирал все лишьнее что выложил и дальше реколился ! Иначе если он не вылаживает он дальше не скупает не летит ! :(
ADEPT_ABP
Posts: 223
Joined: 2006-05-12 08:03:45
Contact:

Post by ADEPT_ABP »

Запостю сюда скрипт на скупку Blank Map-ов. Для ДРВ.

В банке лежат пустые мешки под карты(3 мешочка хватит).
В рунбуке первые 4 руны в магазины, 5-я в банк. (ВНИМАНИЕ!!! Есть мнение, что не полные рунбуки можно слутать, я уже потерял 2-е не полных рунбуки, так что забивайте рунбуку полностью!)
Нужно:
1 создать байлист и "Имя байлиста" вписать в переменную list.
2 ID рунбуки.
3 ID банка.
4 ASM-3[Standart edition] [802.06] - для лога(запись в файл) - функция statbstic.(запускается отдельно, - необязательно, но желательно :) )

Скрипт работает следующим образом:
Прыгает по первой руне в магаз кричит бай - встаёт в хайд - если купил прыгает в следующий магаз - если не купил, кричит buy каждые 10 секунд в течении 4 минут, потом летит дальше. после последнего магаза летит в банк - разгружается - ... и по новой.

Выводит на экран кол-во зарядов в рунбуке, если меньше 10 летит в банк всё сгружает и выключает ультиму.

Поиск и покупка только у NPS, подходит к вендору если тот НЕ дальше 5 клеток, иначе игнорит пока тот не окажется в пределах 5 клеток.


Code: Select all

var Runebook=' '
var qman, vname, list, bankbox
list='BlankMap'
bankbox=' '


################################################################
### Основная Функция ####################################
################################################################
sub main()
  var n,charges
 
  dim rune[5]
  rune[0]='21'   ; Papua
  rune[1]='46'   ; Nujel'm
  rune[2]='33'   ; jhelom
  rune[3]='58'   ; Britain
  rune[4]='64'   ; Bank
 
  uo.set('buydelay',1000)
  uo.set('norbcheck','1')
  uo.set('norbcalc','1')
  uo.setdressspeed(750)
 
  repeat
    for n=0 to 4
      rb(rune[n])
      charges=mid(uo.LastGump('text',12),9,3)
      uo.print('Зарядов осталось: '+charges)
      if val(charges)<10 then
        rb(rune[4])
        bank()
        uo.closeuo()
      endif
      if n<=3 then
        buymap()
      endif
    next
    wait(1000)
    bank()
  until uo.dead()
  wait(5000)
end sub

################################################################
### Функция разгрузки ####################################
################################################################

sub bank()
  var bag
  uo.sayu('   bank   ')
  CheckLag()
  wait(1000)
  uo.findtype('0x0E76',-1,bankbox)
  bag=uo.getserial('finditem')
  CheckLag()
  uo.useobject(bag)
  CheckLag()
  wait(1000)
  repeat
    uo.findtype('0x14EB','0x0000',bag)
    if uo.findcount()>=255 then
      uo.ignore(bag)
      uo.findtype('0x0E76',-1,bankbox)
      bag=uo.getserial('finditem')
    endif
    uo.findtype('0x14EB','0x0000','my')
    uo.moveitem('finditem',0,bag)
    wait(700)
    CheckLag()
  until uo.findcount()==0
end sub

################################################################
### Функция рекола  ####################################
################################################################
Sub rb(num)
  var x,y
  uo.exec('terminate autohide')
  uo.recall(Runebook,num)
  CheckLag()
  x=uo.getx()
  y=uo.gety()
  while x==uo.getx() && y==uo.gety()
    wait(200)
    if uo.injournal('fizzles') then
      CheckLag()
      uo.recall(Runebook,num)
    endif
  wend
end sub

################################################################
### Функция Скупки ####################################
################################################################
sub buymap()
  uo.exec("exec autohide")
  var s,gold
  var timer=uo.timer()
  var timercast=uo.timer()
  gold=uo.gold
  uo.print('My gold '+str(gold))
  ws()
  findvendor()
  repeat
    if uo.timer()>=timer+100 then
      findvendor()
      timer=uo.timer()
    endif
    if uo.timer()>=timercast+2400 then
      return
    endif
    wait(1000)
  until gold>uo.gold
end sub

################################################################
### Функция АвтоХайд ####################################
################################################################
sub autohide()
  while not uo.dead()
    if not uo.hidden() then
      uo.warmode(0)
      uo.useskill("Hiding")
      InJournal("You have hidden|You can't seem",120)
    endif
    wait(1000)
  wend
  wait(5000)
end sub

################################################################
### Функция паузы по проверке журнала или таймера ########
################################################################
Sub InJournal(t,time)
  ;uo.print('EXEC INJOURNAL(T,TIME)')
  var timer=uo.timer()
  DelJournal(t)
  if time==0 then
    ;uo.print('TIME==0')
    while not uo.InJournal(t) && not uo.dead()
      wait(200)
    wend
  else
    ;uo.print('TIME<>0')
    while not uo.InJournal(t) && uo.timer()<timer+time && not uo.dead()
      wait(200)
    wend
  endif
end sub

################################################################
### Функция удаления из журнала Текста ########################
################################################################
Sub DelJournal(msg) ; msg это параметр, см. выше как его передают
  var nom=UO.InJournal(msg) ; ищем сообщение и в переменную его
  if nom>0 then
    UO.SetJournalLine(Nom - 1," ") ; подменим сообщение
    DelJournal(msg) ; вызов функцией самой себя, рекурсия
  endif
end sub

################################################################
### Функция отклик сервера ###############################
################################################################
Sub CheckLag()
  DelJournal("backpack") ; вытрим ТОЛЬКО нужные нам сообщения в журнале
  UO.Click('backpack') ; одиночный клик по вашему backpack
  InJournal("backpack",0)
end sub

################################################################
### Функция World save now ####################################
################################################################
Sub ws()
  if uo.injournal("World is saving now...") then
    InJournal("World data saving",1800)
  endif
end sub


################################################################
### Функция Статистики(лога) ####################################
################################################################
sub statistic()
  UO.asmSetOption('AutoLogDateNeed','0')
  UO.asmSetOption('AutoLogTimeNeed','1')
  UO.asmSetOption('AutoLogTimeFormat','hh:nn:ss')
  UO.asmSetOption('AutoLogFileName','logfile.txt')
  var x,y
  var name
  x=uo.getx()
  y=uo.gety()
  var gold=uo.gold
  var life=uo.life
  repeat
    if uo.gold<>gold then
      uo.print(UO.asmGetTime('hh:nn:ss')+' сделал покупку')
      gold=uo.gold
    endif
    if uo.life<life then
      uo.print(UO.asmGetTime('hh:nn:ss')+' мне стало плохо на '+str(life-uo.life)+'
     
      хп')
      if str(life-uo.life)>2 then
        uo.msg('   guards   ')
      endif
      life=uo.life
    endif
    if uo.injournal('attacking you') then
      name=uo.GetName(uo.JournalSerial(uo.InJournal('attacking you')-1))
      uo.print(UO.asmGetTime('hh:nn:ss')+' меня атаковал '+name)
      uo.msg('   guards   ')
      deljournal('attacking you')
    endif
    if uo.getx()<>x && uo.gety()<>y then
      uo.print(UO.asmGetTime('hh:nn:ss')+' у меня в паке
     
      '+str(uo.count('0x14EB','0x0000'))+' Blank map')
      x=uo.getx()
      y=uo.gety()
      wait(1000)
    endif
    wait(100)
  until uo.dead()
  uo.print('Я умер '+UO.asmGetDate('d.m.yy')+' '+UO.asmGetTime('hh:nn:ss'))
  UO.asmSetOption('AutoLogFileName','0')
end sub


################################################################
### Функция поиска вендоров ####################################
################################################################
sub findvendor()
  uo.ignorereset()
  repeat
    uo.findman(-1)
    qman=uo.findcount()
    if uo.getdistance('finditem')<6 && qman>0 && left(uo.getcolor('finditem'),3)<>'0x8' && uo.getserial('finditem')<>'0x00000000' then
      uo.getstatus('finditem')
      vname=uo.getname('finditem')
      Walker(uo.getx('finditem'),uo.gety('finditem'),2)
      ws()
      uo.buy(list,vname)
      wait(1000)
    endif
    uo.ignore('finditem')
    wait(5)
  until qman==0
end sub

########################################## ХОДИЛКА 3 ##########################
ЗДЕСЬ ДОЛЖНА БЫТЬ ХОДИЛКА
########################################## КОНЕЦ ХОДИЛКИ 3 ##########################


Ходилки тут
Играю на drw.ru
Использую инжект 505.18 VeNd0r
Начинающий скриптер.
Kurt Angle
Posts: 4
Joined: 2009-11-09 12:30:53

Post by Kurt Angle »

А можно скупку только в одного продавца? Без рунбуков и т.д. Просто чтоб стоял и все времья покупал у одного продавца.
Irina E
Posts: 240
Joined: 2009-06-12 20:10:00
Location: Vasa Smerti(RASToMAN) DRW

Post by Irina E »

Post Reply