Сайт Антареса Сайт Антареса Форум Антарес
> >

Здравствуйте, гость ( Вход | Регистрация )


> > Помогите сплиз срочно! >
dale
сообщение 10.5.2010, 20:28
Сообщение #1


Подозрительный тип
Group Icon

Группа: Пользователи
Сообщений: 66
Регистрация: 24.2.2010
Из: Нерезиновая
Пользователь №: 7 188
Спасибо сказали: 4 раз(а)
Класс: Человек



Люди есть небольшой трабл со скриптом, все хорошо но при обкопке он пытается копать под собой и получает ответ You cannot mine to close to yourself
вставил среди условий вот такую фразу
UO.InJournal("You cannot mine to close to yourself")
непомогло.
помогите исправить чтоб када видел такое шел дальше,или просто чтоб не копал под собой.мучаюсь ужо часа 2 -невыходит head_wall.gif head_wall.gif
вот весь скрипт
Код
######################################
#  Antares /Revenant/ uoa.ru / ver 4
######################################
# в банке должны быть руны в пещеры, помеченные в инжекте как обьекты
# (Закладка Objects !!!!  не путать c  Object type)
# Mine , Mine1, Mine2, Mine3, Mine4, а в бекпаке обьект Bank - руна к банку
# промаркировать каждую пещеру надо зарание, запустив процедуру MultyMark()
# Для марка, обходя последовательно все точки копания набирать "set"
# (точка копания - центр квадрата 5х5 тайлов, который выкапывается подчистую)
# При окончании марка в текущей пещере набрать "stop" перереколиться в следующюю пещеру и продолжить
# После марка 5 пещер появятся файлы C:\mine4.dat, C:\mine3.dat, C:\mine2.dat, C:\mine1.dat, C:\mine.dat
# После этого можно начинать копку запустив процедуру main() стоя у банка.
# И если в банке будут лежать жаренные фишстеки, чар не применет возможностью ими полакомиться.
# при вероятности дисконнектов перед копкой запускать процедуру Reconnect
#
#
# скрипт с авторесом (при стаке в Брит) Верхнее меню помощи должно быть открыто.
# процедуру minesh(PX,PY) поставить вместо mine(PX,PY) для копки лопатой и разбивания добытых камней на стоунблоки, в паке должна быть кирка
# процедура pod() для экстренного подьема выпавшей из банка руды. Контейнер куда собирать указать в самой процедуре.

################################
var Cont = '0x40E44170';ID контейнера в который будет складываться накопанное.
var RC = '0x40A8E772'  ;ID контейнера с регами
var Dagg = '0x40A8E772';ID контейнера с дагерами и бинтами (на случай если копаются элемы)
var food= '0x097B'     ;еда(type) по умолчанию жаренные фишстейки
var q, w, p
var f=file("D:\Games\uo\Injection\sc\mine.dat")
;var f , mine
var mine

###############################        процедура запуска для  5 пещер
# количество пещер может быть уменьшено или увеличено
# удалением или внесением троестрочий вида:
#      f=file("C:\mine1.dat")
#      mine='Mine1'
#      one()

sub main()
repeat

f=file("D:\Games\uo\Injection\sc\mine.dat")
mine='Mine'                      
one()


f=file("D:\Games\uo\Injection\sc\mine1.dat")
mine='Mine1'
one()


f=file("D:\Games\uo\Injection\sc\mine2.dat")
mine='Mine2'
one()

f=file("D:\Games\uo\Injection\sc\mine3.dat")
mine='Mine3'
one()

f=file("D:\Games\uo\Injection\sc\mine4.dat")
mine='Mine4'
one()


until UO.Dead()
end sub
#########
sub tert()
   uo.print(str(uo.str*4))
end sub
################################      
sub one()
dim PX[50], PY[50]
var Minepoints=0
var i

uo.Print('Loading from file...')
f.open()
Minepoints=safe call f.ReadNumber()
for i=1 to Minepoints
   PX[i]=safe call f.ReadNumber()
   PY[i]=safe call f.ReadNumber()
next
f.close()
uo.Print('Loaded')
uo.say("Bank")
wait(100)
med()
takereg()
Recall(mine)
for p=1 to Minepoints
   uo.Print('X: '+str(PX[p])+' Y: '+str(PY[p]))
   WalkN(PX[p],PY[p],'')
   q=PX[p]
   w=PY[p]
   uo.Print('Mining...')
   UO.Warmode("0")
   mine(PX,PY)
;minesh(PX,PY)
next
recall('Bank')  
Razg()
end sub
##########################
sub vozvrat(PX,PY)
var i
uo.Print('Move...')
for i=1 to p
   uo.Print('X: '+str(PX[p])+' Y: '+str(PY[p]))
   WalkN(PX[i],PY[i],'')
next
end sub
########################
sub Mark()
dim PX[50], PY[50]
var Minepoints=0
var i
uo.Print('Start marking...')
for i=1 to 50
UO.DeleteJournal()
uo.Print('Set point '+ str(i))
repeat
    wait(500)
    if UO.InJournal('stop')then
       SaveToFile(i-1,PX,PY)
       return
    endif
until UO.InJournal('set')
   PX[i] = UO.GetX("self")
   PY[i] = UO.GetY("self")
   uo.Print('Point '+str(i)+' X: '+str(PX[i])+' Y: '+str(PY[i])+'taken')
next
end sub
########################
sub MultyMark()
uo.Print('Cove............ 1')
f=file("D:\Games\uo\Injection\sc\mine.dat")
Mark()
uo.Print('Cove............ 2')
f=file("D:\Games\uo\Injection\sc\mine1.dat")
Mark()
uo.Print('Cove............ 3')
f=file("D:\Games\uo\Injection\sc\mine2.dat")
Mark()
uo.Print('Cove............ 4')
f=file("D:\Games\uo\Injection\sc\mine3.dat")
Mark()
uo.Print('Cove............ 5')
f=file("D:\Games\uo\Injection\sc\mine4.dat")
Mark()
uo.Print('Marking finished. Ready for mine')
end sub
#############################
sub SaveToFile(mp,PX,PY)
var s=0,k=0
f.open()
f.create()
uo.Print('points = '+ str(mp))
  s=safe call f.writeln(mp)
for k=1 to mp
  s=safe call f.writeln(str(PX[k])+' '+str(PY[k]))
next
f.close()
end sub

##################################
sub mine(PX,PY)
  var x,y,z
  VAR LastTimer
  VAR VES = 470
  UO.Set('finddistance','2')
  z=UO.GetZ("self")
     for x=-2 to 2
        for y=-2 to 2
        ;Hid()      
           UO.Print(str(x)+" "+str(y))
           Repeat
              if UO.InJournal('TORMOZ') then
                pause()
              endif
              if uo.injournal('boulder')or UO.count('0x134F') then
                 boulder()
              endif
;               if uo.dead() then
;                  wait(180000)
                 if uo.dead() then
                    ressurect(PX,PY)
                 endif
;               endif
              UO.DeleteJournal()
              UO.Warmode("0")
              UO.WaitTargetTile("1341",STR(UO.GetX()+x),STR(UO.GetY()+Y),str(z))
              UO.UseType('0x0E85')
              LastTimer=UO.Timer()
              Repeat
                 wait(500)
                 lookout()
              Until UO.InJournal("You put") or UO.InJournal("You cannot mine to close to yourself.") or UO.InJournal("can't see") or UO.InJournal("heavy") or UO.InJournal("location") or UO.InJournal("no ore") or UO.InJournal("but fail") or UO.InJournal("far away") or UO.InJournal("in rock") or UO.InJournal("must wait") or UO.InJournal("nothing") or UO.InJournal("elsewhere") or UO.InJournal("where it") OR UO.Timer()>LastTimer+200
           ;lookout()
           Until UO.InJournal("nothing") or UO.InJournal("You cannot mine to close to yourself.") or UO.InJournal("elsewhere") or UO.InJournal("no ore here") or UO.InJournal("location") or UO.InJournal("far away") or UO.InJournal("in rock") or UO.InJournal("where it") or UO.InJournal("must wait")
              if UO.Weight> VES then
                 unload(PX,PY)
              endif
        ;wait(4000) ; раскоментировать при копке лопатой
        next
     next
end sub
#########################################
sub lookout()
   if UO.InJournal("elemental") then
      killelem()
   endif
end sub
#######################################
sub check()
  var noto, ser, jor
      for jor = 0 to 9
          ser = uo.journalserial(jor)
          UO.Print(ser)
          uo.Print(str(uo.IsNPC("ser")))
          if not UO.IsNPC('ser') and not uo.injournal("elemental") and ser <> '0x00000000' then
             if uo.waiting() then
                uo.canceltarget()
             endif
             UO.DeleteJournal()
             UO.Print('PPPPPP')
          ;UO.Print(ser)
          ;recall('Bank')  
          ;Razg()
          ;wait(180000)
             return
          endif
        
       next
end sub
#######################################
sub Pause()
UO.DeleteJournal()
REPEAT
WAIT(3000)
UO.Print("Paused")
UNTIL UO.InJournal('GO')
UO.Print("Continue")
endif
end sub
############################################
sub heal()
UO.SetArm('arm')
UO.Exec('bandageself')
wait(500)
UO.Arm('arm')
wait(2000)
end sub
######################################
sub Razg()
VAR a
VAR LastTimer
DIM Ore[12]
Ore[1]=0x19B9; 4 and more ore
Ore[2]=0x19B7; 1 ore
Ore[3]=0x19BA; 2 ore
Ore[4]=0x19B8; 3 ore
Ore[5]=0x0EED; деньги
Ore[6]=0x09AA; пандоры
Ore[7]=0x19B9; руда
Ore[8]=0x0F26; диаманты
Ore[9]=0x0F8A; pig iron
Ore[10]=0x1422; plaster
Ore[11]=0x1BF2; marble
Ore[12]=0x14EB; map


uo.say("Bank")
wait(100)
For a=1 to 12
   While UO.Count(ore[a])>0
         UO.FindType(ore[a],-1,-1)
         UO.MoveItem('finditem',0,Cont)
         wait(200)
         uo.print(ore[a])
   Wend
next
eat()
   While UO.Count('0x0E20')>0
         UO.FindType('0x0E20',-1,-1)
         UO.MoveItem('finditem',0,Dagg)
         wait(200)
   Wend
takereg()
if UO.Mana < 30 then
  while UO.Mana<UO.Int
        LastTimer=UO.Timer()
        UO.UseSkill('Meditation')
        repeat
           wait(100)
        until UO.InJournal("You are") OR UO.InJournal("You lose") OR UO.Timer()>LastTimer+200
        UO.DeleteJournal()
        wait(200)
  wend
endif  
end sub


#######################################
sub eat()
VAR LastTimer
   UO.DeleteJournal()
   repeat
   LastTimer=UO.Timer()
   UO.findtype(food,-1,'0x4001ABF5')
     if UO.findcount('finditem') then
        uo.print('eat')
        UO.Useobject('finditem')
        wait(500)
     else
        return
     end if
   Until UO.InJournal("stuffed!") OR UO.InJournal("think") or UO.InJournal("found") OR UO.Timer()>LastTimer+200
end sub
################################
sub unload(PX,PY)
  Recall('Bank')
  Razg()
  wait(100)
  takereg()
  wait(100)
  Recall(mine)
  uo.DeleteJournal()    
  vozvrat(PX,PY)
end sub
########################################
sub ressurect1(PX,PY)
  CheckLag()
  UO.LClick(17,13)
  wait(1000)
  CheckLag()
  UO.LClick(17,61)
  wait(1000)
  CheckLag()
  uo.useobject('0x40FD37A9')
  wait(100)
  uo.useobject('backpack')
  wait(1000)
  uo.say('bank')
  wait(500)
  takereg()
  wait(1000)
  eat()
  wait(180000)
  Recall(mine)
  uo.DeleteJournal()    
  vozvrat(PX,PY)  
end sub
#############################
sub ressurect(PX,PY)
  UO.Exec('warmode 0')
  CheckLag()
  UO.LClick(17,13)
  wait(1000)
  CheckLag()
  UO.LClick(17,61)
  wait(1000)
  CheckLag()
  WalkN(1483,1636,'')
  WalkN(1480,1639,'')
  WalkN(1480,1647,'')
  WalkN(1468,1649,'')
  WalkN(1460,1657,'')
  WalkN(1460,1684,'')
  WalkN(1463,1690,'')
  WalkN(1463,1697,'')
  WalkN(1442,1697,'')
  WalkN(1430,1697,'')
  WalkN(1430,1691,'')
  WalkN(1428,1689,'')
  WalkN(1428,1684,'')
  WalkN(1428,1680,'')
  WalkN(1426,1678,'')
  uo.useobject('0x40021D98')
  wait(100)
  uo.useobject('backpack')
  wait(1000)
  uo.say('bank')
  wait(500)
  takereg()
  wait(1000)
  eat()
  Recall(mine)
  uo.DeleteJournal()    
  vozvrat(PX,PY)  
end sub
##############################
sub med()
VAR LastTimer
UO.DeleteJournal()
while UO.Mana<UO.Int
LastTimer=UO.Timer()
UO.UseSkill('Meditation')
repeat
   wait(100)
until UO.InJournal("You are") OR UO.InJournal("You lose") OR UO.Timer()>LastTimer+200
UO.DeleteJournal()
wait(200)
wend
end sub
#########################################
sub takereg()
DIM reg[3]
var i,n
reg[1]='0x0F86'; MR
reg[2]='0x0F7A'; BP
reg[3]='0x0F7B'; BM

UO.UseObject(RC)
for i=1 to 3
   while UO.Count(reg[i])<5
     UO.FindType(reg[i],-1,RC)
     n=UO.Count(reg[i])
     UO.Grab(str(5-n),'finditem')
     wait(200)
     CheckLag()
   wend  
next
;UO.UseObject(Dagg)
; if not UO.count('0x0F51') then
;      UO.FindType('0x0F51',-1,Dagg)
;      IF uo.findcount() then
;         UO.Grab(str(1),'finditem')
;         wait(200)
;         CheckLag()
;      endif  
; endif
;  if not UO.count('0x0E21') then
;      UO.FindType('0x0E21',-1,Dagg)
;            n=UO.Count(reg[i])
;      IF uo.findcount() then
;         UO.Grab(str(12-n),'finditem')
;         wait(200)
;         CheckLag()
;      endif  
; endif
end sub
#########################################
sub CheckLag()
UO.DeleteJournal()
UO.Click('backpack')
repeat
wait(500)
until UO.InJournal('Backpack')
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
     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 Hid()
while not uo.Hidden()
uo.exec('warmode 0')
uo.Print('Hiding...')
uo.UseSkill('Hiding')
wait(4000)
wend
wait(100)
end sub
#################################
sub Recall(dest)
var b
uo.print('Recoll')
for b=1 to 10
   uo.deletejournal()
   uo.waittargetobject(dest)
   uo.cast('Recall',dest)
   if WaitForRecall()==1 then
     return 1
   end if
next
return 0
end sub
###################################
sub WaitForRecall()
var Text1=uo.getname()+": The spell fizzles."
var mess='',lastX=uo.getX(),lastY=uo.getY()
for var v=0 to 200
   mess=uo.journal(0)
   if uo.Journal(0)==Text1 then
     return 0
   end if
   if uo.getX()<>lastX OR uo.getY()<>LastY then
     return 1
   end if
   wait(50)
next
return 0
end sub
################################  
sub killelem()
VAR LastTimer, Elem ,i
LastTimer=UO.Timer()
  UO.DeleteJournal()
UO.FindType('0x000E',-1,'ground')
Elem=UO.GetSerial('finditem')
UO.Exec('warmode 1')
UO.Attack(Elem)
;WalkN(0,0,Elem)
UO.Say('Dye, mother fucker!')
repeat
      wait(2000)
  until UO.InJournal('Body') OR LastTimer+300<UO.Timer() or uo.dead(Elem)
UO.Exec('warmode 0')
wait(100)
LastTimer=UO.Timer()
if UO.Life<50 and UO.Count('0x0E21') then
  repeat
    UO.BandageSelf()
    wait(4000)
  until UO.Life>170 OR LastTimer+300<UO.Timer()
endif
loot()
WalkN(q,w,'')
end sub
##################################
sub loot()
DIM R[5]
var a
R[1] = 0x0EED # деньги
R[2] = 0x09AA # пандоры
R[3] = 0x19B9 # руда
R[4] = 0x0F8A # pig iron
R[5] = 0x19BA # руда, 2 штучки

UO.UseObject('lastcorpse')
wait(100)
uo.exec("warmode '0'")
uo.waittargetobject('lastcorpse')
uo.usetype(0x0F51)
wait(500)

for a=1 to 5
uo.findtype(R[a],"-1","lastcorpse")
if UO.FindCount()>0 and Uo.GetDistance("lastcorpse")<=2 then
UO.Grab("0","finditem")
wait(1500)
end if
wait(10)
next
end sub
##############################
#==============================================================
#  WalkN(X,Y,Serial) - char is walking by dX and dY step
#                sub using Home, End, PgUp, PgDown keys
#                d'not rebind this key from default action!
#       serial - Serial of target or "" - string
#     walkwait - delay after keypress
#     Example:
#     WalkN(2080,2113,'') - go to coordinates
#     WalkN(0,0,'0x12345678') - go to target position
#--------------------------------------------------------------
sub WalkN(x,y,Target)
  VAR i,StepSucess
  VAR dx,dy,Exit=0
  
  While Exit<>1    
     If Target<>"" Then
        dx=UO.GetX(Target)-UO.GetX()
        dy=UO.GetY(Target)-UO.GetY()
;         UO.Print("Target locked!")
        If UO.GetDistance(Target)<2 Then
           Exit=1
        Endif
     Else
        dx=x-UO.GetX()
        dy=y-UO.GetY()
        If dx==0 AND dy==0 Then
           Exit=1
        Endif

     Endif
  
     If dx<>0 AND dy<>0 Then
        If dx>0 AND dy>0 Then
           StepSucess=Go(3,40,300);SE - DownArrow
           If StepSucess==-1 Then
              StepSucess=Go(7,38,300);WN - UpArrow
              StepSucess=Go(1,39,300);NE - RightArrow
              If StepSucess==-1 Then
                 StepSucess=Go(5,37,300);SW - LeftArrow
              Endif
           Endif
        Endif

        If dx>0 AND dy<0 Then
           StepSucess=Go(1,39,300);NE - RightArrow
           If StepSucess==-1 Then
              StepSucess=Go(5,37,300);SW - LeftArrow
              StepSucess=Go(3,40,300);SE - DownArrow
              If StepSucess==-1 Then
                 StepSucess=Go(7,38,300);WN - UpArrow
              Endif
           Endif
        Endif

        If dx<0 AND dy>0 Then
           StepSucess=Go(5,37,300);SW - LeftArrow
           If StepSucess==-1 Then
              StepSucess=Go(1,39,300);NE - RightArrow
              StepSucess=Go(7,38,300);WN - UpArrow
              If StepSucess==-1 Then
                 StepSucess=Go(3,40,300);SE - DownArrow
              Endif
           Endif
        Endif

        If dx<0 AND dy<0 Then
           StepSucess=Go(7,38,300);WN - UpArrow
           If StepSucess==-1 Then
              StepSucess=Go(3,40,300);SE - DownArrow
              StepSucess=Go(5,37,300);SW - LeftArrow
              If StepSucess==-1 Then
                 StepSucess=Go(1,39,300);NE - RightArrow
              Endif
           Endif
        Endif

     Endif
  
     If dx<>0 AND dy==0 Then
        If dx>0 Then
           StepSucess=Go(2,34,300);E - PgDown
           If StepSucess==-1 Then
              StepSucess=Go(3,40,300);SE - DownArrow
              If StepSucess==-1 Then
                 StepSucess=Go(1,39,300);NE - RightArrow
              Endif
              StepSucess=Go(2,34,300);E - PgDown
           Endif
        Endif
        
        If dx<0 Then
           StepSucess=Go(6,36,300);W - Home
           If StepSucess==-1 Then
              StepSucess=Go(7,38,300);WN - UpArrow
              If StepSucess==-1 Then
                 StepSucess=Go(5,37,300);SW - LeftArrow
              Endif
              StepSucess=Go(6,36,300);W - Home
           Endif
        Endif
     Endif


     If dx==0 AND dy<>0 Then
        If dy>0 Then
           StepSucess=Go(4,35,300);S - End
           If StepSucess==-1 Then
              StepSucess=Go(3,40,300);SE - DownArrow
              If StepSucess==-1 Then
                 StepSucess=Go(5,37,300);SW - LeftArrow
              Endif
              StepSucess=Go(4,35,300);S - End
           Endif
        Endif
        
        If dy<0 Then
           StepSucess=Go(0,33,300);N - PgUp
           If StepSucess==-1 Then
              StepSucess=Go(1,39,300);NE - RightArrow
              If StepSucess==-1 Then
                 StepSucess=Go(7,38,300);WN - UpArrow
              Endif
              StepSucess=Go(0,33,300);N - PgUp
           Endif
        Endif
     Endif
  Wend
end sub


sub Go(dir,key,walkwait)
  VAR x,y, OldDir

  x=UO.GetX()
  y=UO.GetY()
  OldDir=UO.GetDir()
;hid()
  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()
  Endif

  If x==UO.GetX() AND y==UO.GetY() AND OldDir<>UO.GetDir() Then
     UO.Press(key)
     wait(walkwait)
  Endif

  If x==UO.GetX() AND y==UO.GetY() Then
     CheckLag()
  Endif
  
  If x==UO.GetX() AND y==UO.GetY() Then
     UO.Print("Zasada!")
     return -1
  Else
     return 1
  Endif
end sub
###########################################
sub pod()
UO.Say('Bank')
repeat
   uo.findtype('0x19B9',-1,'ground')
   if UO.FindCount() and Uo.GetDistance('finditem')<3 then
     uo.moveitem('finditem','1000','0x40FA6B85')
     wait(100)
   end if
   wait(1000)
     uo.print("1")
  until not UO.FindCount()
end sub
################################################
sub boulder()
if uo.count('0x0E85') then
  while uo.count('0x134F')
     uo.waittargettype('0x134F')
     uo.usetype('0x0E85')
     wait(100)
  wend
  uo.findtype('0x134F',-1,'ground')
     if uo.FindCount()then
       uo.waittargetobject('finditem')
       uo.usetype('0x0E85')
     endif
     wait(2000)
endif
end sub
################################################
sub minesh(PX,PY)
  var x, y,z
  VAR LastTimer
  uo.LastTile()

  UO.Set('finddistance','2')
  z=UO.GetZ("self")
     for x=-2 to 2
        for y=-2 to 2
        ;Hid()      
           UO.Print(str(x)+" "+str(y))
           Repeat
              if UO.InJournal('TORMOZ') then
                pause()
              endif
              if uo.injournal('boulder')or UO.count('0x134F') then
                 boulder()
                 UO.Print('boulder')
              endif
              If UO.targeting() then
                 uo.canceltarget()
              endif
              UO.DeleteJournal()
              UO.Warmode("0")
              UO.WaitTargetTile("1339",STR(UO.GetX()+x),STR(UO.GetY()+Y),str(z))
              UO.UseType('0x0F39')
              LastTimer=UO.Timer()
              Repeat
                 wait(500)
              Until UO.InJournal("You put") or UO.InJournal("can't see") or uo.injournal('boulder') or UO.InJournal("heavy") or UO.InJournal("location") or UO.InJournal("no ore") or UO.InJournal("but fail") or UO.InJournal("far away") or UO.InJournal("in rock") or UO.InJournal("must wait") or UO.InJournal("nothing") or UO.InJournal("elsewhere") or UO.InJournal("where it") OR UO.Timer()>LastTimer+200
              lookout()

           Until UO.InJournal("nothing") or UO.InJournal("elsewhere") or UO.InJournal("no ore here") or UO.InJournal("location") or UO.InJournal("far away") or UO.InJournal("in rock") or UO.InJournal("where it")
          
              if UO.Weight>(uo.str*4 - 20) then
                 unload(PX,PY)
              endif
        ;wait(2000) ;на случай флуда в окне
        next
     next
end sub
####################
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
 
Ответить в эту темуОткрыть новую тему
> > Ответов(1 - 12) >
CxC
сообщение 10.5.2010, 20:59
Сообщение #2


Местный трепач
Group Icon

Группа: Пользователи
Сообщений: 1 732
Регистрация: 14.1.2009
Из: Краснодар
Пользователь №: 6 081
Спасибо сказали: 223 раз(а)
Класс: Рейнджер



Цитата(dale @ 11.5.2010, 0:28) *

Люди есть небольшой трабл со скриптом, все хорошо но при обкопке он пытается копать под собой и получает ответ You cannot mine to close to yourself
вставил среди условий вот такую фразу
UO.InJournal("You cannot mine to close to yourself")

Код
or UO.InJournal("You cannot mine to close to yourself.")  
                                                  


разницу чувствуешь? :)

Сообщение отредактировал CxC - 10.5.2010, 21:01
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
dale
сообщение 10.5.2010, 21:04
Сообщение #3


Подозрительный тип
Group Icon

Группа: Пользователи
Сообщений: 66
Регистрация: 24.2.2010
Из: Нерезиновая
Пользователь №: 7 188
Спасибо сказали: 4 раз(а)
Класс: Человек



Цитата(CxC @ 11.5.2010, 0:59) *

разницу чувствуешь? :)

так какая из них верная? с пробелами или без?
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
CxC
сообщение 10.5.2010, 21:07
Сообщение #4


Местный трепач
Group Icon

Группа: Пользователи
Сообщений: 1 732
Регистрация: 14.1.2009
Из: Краснодар
Пользователь №: 6 081
Спасибо сказали: 223 раз(а)
Класс: Рейнджер



посмотри что пишется в журнале, либо оставь в скрипте

Код
UO.InJournal("so close to yourself")


Спасибо сказали:
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
dale
сообщение 10.5.2010, 21:14
Сообщение #5


Подозрительный тип
Group Icon

Группа: Пользователи
Сообщений: 66
Регистрация: 24.2.2010
Из: Нерезиновая
Пользователь №: 7 188
Спасибо сказали: 4 раз(а)
Класс: Человек



Цитата(CxC @ 11.5.2010, 1:07) *

посмотри что пишется в журнале, либо оставь в скрипте

Код
UO.InJournal("so close to yourself")


ВСЕ РАБОТАЕТ! СПАСИБО! с МЯ ПИВО! beer.gif beer.gif
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
D&G
сообщение 19.5.2010, 16:19
Сообщение #6


Гость
Group Icon

Группа: Пользователи
Сообщений: 48
Регистрация: 22.3.2009
Пользователь №: 6 250
Спасибо сказали: 4 раз(а)



у меня вот так стоит
Until UO.InJournal("so close to yourself") or UO.InJournal("You cannot mine so close to yourself.")

и все равно не пашет head_wall.gif
подкажи плз в чем может пробема быть?

Сообщение отредактировал D&G - 19.5.2010, 16:19
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
CxC
сообщение 19.5.2010, 16:35
Сообщение #7


Местный трепач
Group Icon

Группа: Пользователи
Сообщений: 1 732
Регистрация: 14.1.2009
Из: Краснодар
Пользователь №: 6 081
Спасибо сказали: 223 раз(а)
Класс: Рейнджер



одно и тоже повторяется
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
D&G
сообщение 19.5.2010, 16:39
Сообщение #8


Гость
Group Icon

Группа: Пользователи
Сообщений: 48
Регистрация: 22.3.2009
Пользователь №: 6 250
Спасибо сказали: 4 раз(а)



так я все прописал и все равно не пашет и так и сяк попробывал

Код
######################################
# Antares
######################################
# в банке должны быть руны в пещеры, помеченные в инжекте как обьекты
# (Закладка Objects !!!! не путать c Object type)
# Mine , Mine1, Mine2, Mine3, Mine4, а в бекпаке обьект Bank - руна к банку
# промаркировать каждую пещеру надо зарание, запустив процедуру MultyMark()
# Для марка, обходя последовательно все точки копания набирать "set"
# (точка копания - центр квадрата 5х5 тайлов, который выкапывается подчистую)
# При окончании марка в текущей пещере набрать "stop" перереколиться в следующюю пещеру и продолжить
# После марка 5 пещер появятся файлы C:\mine4.dat, C:\mine3.dat, C:\mine2.dat, C:\mine1.dat, C:\mine.dat
# После этого можно начинать копку запустив процедуру main() стоя у банка.
# И если в банке будут лежать жаренные фишстеки, чар не применет возможностью ими полакомиться.
# при вероятности дисконнектов перед копкой запускать процедуру Reconnect
#
#
# скрипт с авторесом (при стаке в Брит) Верхнее меню помощи должно быть открыто.
# процедуру minesh(PX,PY) поставить вместо mine(PX,PY) для копки лопатой и разбивания добытых камней на стоунблоки, в паке должна быть кирка
# процедура pod() для экстренного подьема выпавшей из банка руды. Контейнер куда собирать указать в самой процедуре.

################################

var Cont = '0x404E25D2';ID сундука куда руду выкладывать
var RC = '0x404E25D2';ID сундука откуда реги добирать
var RC1 = '0x4031D81D';ID сундука с регами в банке
var dagg = '0x40240B85'
var food= '0x097B';ID еды
var q, w, p
var sunduk= '0x404E25D2'; ID крафт сундука с рунами
var f=file("C:\mine.dat"); пусть до файла
var mine


############################### процедура запуска для 5 пещер
# количество пещер может быть уменьшено или увеличено
# удалением или внесением троестрочий вида:
# f=file("C:\mine1.dat")
# mine='Mine2'
# one()

sub main()
repeat

f=file("C:\mine.dat")
mine='Mine'
one()

f=file("C:\mine1.dat")
mine='Mine1'
one()

f=file("C:\mine2.dat")
mine='Mine2'
one()

f=file("C:\mine3.dat")
mine='Mine6'
one()

;f=file("C:\mine4.dat")
;mine='Mine4'
;one()


wait(3000)

until UO.Dead()
end sub
#########
sub tert()
uo.print(str(uo.str*4))
end sub
################################
sub one()
dim PX[50], PY[50]
var Minepoints=0
var i

uo.Print('Loading from file...')
f.open()
Minepoints=safe call f.ReadNumber()
for i=1 to Minepoints
PX[i]=safe call f.ReadNumber()
PY[i]=safe call f.ReadNumber()
next
f.close()
uo.Print('Loaded')
UO.Press(34)
wait(1000)
UO.Press(34)
wait(1000)
uo.useobject(sunduk)
wait(1000)
med()
takereg()
Recall(mine)
for p=1 to Minepoints
uo.Print('X: '+str(PX[p])+' Y: '+str(PY[p]))
UO.Say("TORMOZ")
WalkN(PX[p],PY[p],'')
q=PX[p]
w=PY[p]
uo.Print('Mining...')
UO.Warmode("0")
mine(PX,PY)
;minesh(PX,PY)
next
recall('Bank')
wait(500)
Razg()
end sub
##########################
sub vozvrat(PX,PY)
var i
uo.Print('Move...')
for i=1 to p
uo.Print('X: '+str(PX[p])+' Y: '+str(PY[p]))
WalkN(PX[i],PY[i],'')
next
end sub
########################
sub Mark()
dim PX[50], PY[50]
var Minepoints=0
var i
uo.Print('Start marking...')
for i=1 to 50
UO.DeleteJournal()
uo.Print('Set point '+ str(i))
repeat
wait(500)
if UO.InJournal('stop')then
SaveToFile(i-1,PX,PY)
return
endif
until UO.InJournal('set')
PX[i] = UO.GetX("self")
PY[i] = UO.GetY("self")
uo.Print('Point '+str(i)+' X: '+str(PX[i])+' Y: '+str(PY[i])+'taken')
next
end sub
########################
sub MultyMark()

uo.Print('Cove............ 1')
f=file("D:\1Games\injectionNEW\Mine\mine.dat")
Mark()

uo.Print('Cove............ 2')
f=file("D:\1Games\injectionNEW\Mine\mine1.dat")
Mark()

uo.Print('Cove............ 3')
f=file("D:\1Games\injectionNEW\Mine\mine2.dat")
Mark()

uo.Print('Cove............ 4')
f=file("D:\1Games\injectionNEW\Mine\mine3.dat")
Mark()

;uo.Print('Cove............ 5')
;f=file("D:\1Games\injectionNEW\Mine\mine4.dat")
;Mark()

;uo.Print('Cove............ 6')
;f=file("D:\1Games\injectionNEW\Mine\mine5.dat")
;Mark()

;uo.Print('Cove............ 7')
;f=file("D:\1Games\injectionNEW\Mine\mine6.dat")
;Mark()

uo.Print('Marking finished. Ready for mine')
end sub
#############################
sub SaveToFile(mp,PX,PY)
var s=0,k=0
f.open()
f.create()
uo.Print('points = '+ str(mp))
s=safe call f.writeln(mp)
for k=1 to mp
s=safe call f.writeln(str(PX[k])+' '+str(PY[k]))
next
f.close()
end sub

##################################
sub mine(PX,PY)
var x,y,z
VAR LastTimer
UO.Set('finddistance','2')
z=UO.GetZ("self")
for x=-2 to 2
for y=-2 to 2
;Hid()
UO.Print(str(x)+" "+str(y))
Repeat
if UO.InJournal('WAITMAN') then
pause()
endif
if uo.injournal('boulder')or UO.count('0x134F') then
boulder()
endif
if uo.dead() then
wait(30000)
ressurect(PX,PY)
endif
UO.DeleteJournal()
UO.Warmode("0")
UO.WaitTargetTile("1341",STR(UO.GetX()+x),STR(UO.GetY()+Y),str(z))
;UO.Say("TORMOZ")
UO.UseType('0x0E85')
LastTimer=UO.Timer()
Repeat
wait(500)
;lookout()
Until UO.InJournal("положили")or UO.InJournal("нет обзора") or UO.InJournal("не удалось") or UO.InJournal("ничего нету") or UO.InJournal("другом месте") or UO.InJournal("You put") or UO.InJournal("can't see") or UO.InJournal("heavy") or UO.InJournal("location") or UO.InJournal("no ore") or UO.InJournal("but fail") or UO.InJournal("far away") or UO.InJournal("in rock") or UO.InJournal("must wait") or UO.InJournal("nothing") or UO.InJournal("elsewhere") or UO.InJournal("where it") OR UO.Timer()>LastTimer+200
;lookout()
Until UO.InJournal("ничего нету") or UO.InJournal("другом месте") or UO.InJournal("нет обзора") or UO.InJournal("nothing") or UO.InJournal("elsewhere") or UO.InJournal("no ore here") or UO.InJournal("location") or UO.InJournal("far away") or UO.InJournal("in rock") or UO.InJournal("where it") or UO.InJournal("must wait") or UO.InJournal("You put the Iron Ore")
if UO.Weight>(700) then
unload(PX,PY)
endif
;wait(4000); ???????????????? ??? ????? ???????
next
next
end sub
#########################################
sub lookout()
if UO.InJournal("Earth") then
uo.playwav("Police Siren.wav")
deljournal("Earth")
deljournal("Body")
deljournal("Тело")
deljournal("Go")
killelem()
repeat
wait(1000)
until UO.InJournal('Body|Тело') or uo.dead() or UO.InJournal('Go')
loot()
uo.exec('warmode 0')
UO.Print("Поехали!")
endif
end sub

Sub deljournal(msg)
    while UO.InJournal(msg)
        UO.SetJournalLine(UO.InJournal(msg)-1,"")
    wend
end sub
#######################################
sub check()
var noto, ser, jor
for jor = 0 to 9
ser = uo.journalserial(jor)
UO.Print(ser)
uo.Print(str(uo.IsNPC("ser")))
if not UO.IsNPC('ser') and not uo.injournal("elemental") and ser <> '0x00000000' then
if uo.waiting() then
uo.canceltarget()
endif
UO.DeleteJournal()
UO.Print('PPPPPP')
;UO.Print(ser)
;recall('Bank')
;Razg()
;wait(180000)
return
endif

next
end sub
#######################################
sub Pause()
UO.DeleteJournal()
REPEAT
WAIT(3000)
UO.Print("Paused")
UNTIL UO.InJournal('GO')
UO.Print("Continue")
endif
end sub
############################################
sub heal()
UO.SetArm('arm')
UO.Exec('bandageself')
wait(500)
UO.Arm('arm')
wait(2000)
end sub
######################################
sub Razg()
VAR a
VAR LastTimer
DIM Ore[12]
Ore[1]=0x19B9; 4 and more ore
Ore[2]=0x19B7; 1 ore
Ore[3]=0x19BA; 2 ore
Ore[4]=0x19B8; 3 ore
Ore[5]=0x0EED; ??????
Ore[6]=0x09AA; ???????
Ore[7]=0x19B9; ????
Ore[8]=0x0F26; ????????
Ore[9]=0x0F8A; pig iron
Ore[10]=0x1422; plaster
Ore[11]=0x1BF2; marble
Ore[12]=0x14EB; map

UO.Press(35)
wait(1000)
UO.Press(35)
uo.useobject(sunduk)
wait(1000)
For a=1 to 12
While UO.Count(ore[a])>0
UO.FindType(ore[a],-1,-1)
UO.MoveItem('finditem',0,Cont)
wait(200)
uo.print(ore[a])
Wend
next
eat()
While UO.Count('0x0E20')>0
UO.FindType('0x0E20',-1,-1)
UO.MoveItem('finditem',0,Dagg)
wait(200)
Wend
takereg()
if UO.Mana < 30 then
while UO.Mana<UO.Int
LastTimer=UO.Timer()
UO.UseSkill('Meditation')
repeat
wait(100)
until UO.InJournal("Вы набрали полную ману") OR UO.InJournal("Вы прекратили концентрироваться") OR UO.InJournal("You lose") OR UO.InJournal("You are") OR UO.Timer()>LastTimer+200
UO.DeleteJournal()
wait(200)
wend
endif
end sub


#######################################
sub eat()
VAR LastTimer
UO.DeleteJournal()
repeat
LastTimer=UO.Timer()
UO.findtype(food,-1,'backpack')
if UO.findcount('finditem') then
uo.print('eat')
UO.Useobject('finditem')
wait(500)
else
return
end if
Until UO.InJournal("stuffed!") OR UO.InJournal("think") or UO.InJournal("found") or UO.InJournal("Вы ничего не можете") OR UO.Timer()>LastTimer+200
end sub
################################
sub unload(PX,PY)
Recall('Bank')
UO.Press(36)
wait(1000)
UO.Press(36)
wait(1000)
Razg()
wait(100)
takereg()
wait(100)
Recall(mine)
uo.DeleteJournal()
vozvrat(PX,PY)
end sub

#############################
sub ressurect(PX,PY)
Var Dver
;Wait(60000)
UO.LClick(19,14)
    Wait(500)
CheckLag()
UO.LClick(17,60)
    Wait(500)
CheckLag()

    While Uo.Dead()
    uo.useobject('0x40FD37C5')
        wait(500)
    Wend

uo.useobject('backpack')
wait(1000)
uo.say('bank')
wait(500)
DIM reg[3]
var i
reg[1]='0x0F86'; MR
reg[2]='0x0F7A'; BP
reg[3]='0x0F7B'; BM

UO.UseObject(RC1)
for i=1 to 3
  while UO.Count(reg[i])<1
    UO.FindType(reg[i],-1,RC1); ID ????? ? ?????, ??? ????? ????
    UO.Grab('1','finditem')
        wait(200)
    CheckLag()
  wend
next
unload(PX,PY)
end sub
##############################
sub med()
VAR LastTimer
UO.DeleteJournal()
while UO.Mana<UO.Int
LastTimer=UO.Timer()
UO.UseSkill('Meditation')
repeat
wait(100)
until UO.InJournal("Вы набрали полную ману") OR UO.InJournal("Вы прекратили концентрироваться") OR UO.InJournal("You lose") OR UO.InJournal("You are") OR UO.Timer()>LastTimer+200
UO.DeleteJournal()
wait(200)
wend
end sub
#########################################
sub takereg()
DIM reg[4]
var i,n
reg[1]='0x0F86'; MR
reg[2]='0x0F7A'; BP
reg[3]='0x0F7B'; BM
reg[4]='0x097B';

UO.UseObject(RC)
for i=1 to 4
while UO.Count(reg[i])<10
UO.FindType(reg[i],-1,RC)
n=UO.Count(reg[i])
UO.Grab(str(10-n),'finditem')
wait(500)
CheckLag()
wend
next
UO.UseObject(RC)
if UO.count('0x0E85') <3 then
UO.FindType('0x0E85',-1,RC)
IF uo.findcount() then
UO.Grab(str(2),'finditem')
wait(500)
CheckLag()
endif
endif
; if not UO.count('0x0E21') then
; UO.FindType('0x0E21',-1,Dagg)
; n=UO.Count(reg[i])
; IF uo.findcount() then
; UO.Grab(str(12-n),'finditem')
; wait(200)
; CheckLag()
; endif
; endif
end sub
#########################################
sub takereg1()
DIM reg[3]
var i,n
reg[1]='0x0F86'; MR
reg[2]='0x0F7A'; BP
reg[3]='0x0F7B'; BM

UO.UseObject(RC1)
for i=1 to 3
while UO.Count(reg[i])<5
UO.FindType(reg[i],-1,RC1)
n=UO.Count(reg[i])
UO.Grab(str(5-n),'finditem')
wait(200)
CheckLag()
wend
next
; UO.UseObject(Dagg)
; if not UO.count('0x0F51') then
; UO.FindType('0x0F51',-1,Dagg)
; IF uo.findcount() then
; UO.Grab(str(1),'finditem')
; wait(200)
; CheckLag()
; endif
; endif
; if not UO.count('0x0E21') then
; UO.FindType('0x0E21',-1,Dagg)
; n=UO.Count(reg[i])
; IF uo.findcount() then
; UO.Grab(str(12-n),'finditem')
; wait(200)
; CheckLag()
; endif
; endif
end sub
#########################################
sub CheckLag()
UO.DeleteJournal()
UO.Click('backpack')
repeat
wait(500)
until UO.InJournal('Backpack')
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('Neokron')
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
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 Hid()
while not uo.Hidden()
uo.exec('warmode 0')
uo.Print('Hiding...')
uo.UseSkill('Hiding')
wait(4000)
wend
wait(100)
end sub
#################################
sub Recall(dest)
var b
uo.print('Recoll')
for b=1 to 10
uo.deletejournal()
uo.waittargetobject(dest)
uo.cast('Recall',dest)
if WaitForRecall()==1 then
return 1
end if
next
return 0
end sub
###################################
sub WaitForRecall()
var Text1=uo.getname()+": The spell fizzles."
var mess='',lastX=uo.getX(),lastY=uo.getY()
for var v=0 to 200
mess=uo.journal(0)
if uo.Journal(0)==Text1 then
return 0
end if
if uo.getX()<>lastX OR uo.getY()<>LastY then
return 1
end if
wait(50)
next
return 0
end sub
################################
sub killelem()
VAR LastTimer, Elem ,i
LastTimer=UO.Timer()
UO.DeleteJournal()
UO.FindType('0x000E',-1,'ground')
Elem=UO.GetSerial('finditem')
UO.Exec('warmode 1')
uo.usetype("0x0F51")
UO.Attack('finditem')
WalkN(0,0,'finditem')
UO.Say('Dye, mother fucker!')
repeat
wait(2000)
until UO.InJournal('Body') OR LastTimer+300<UO.Timer() or uo.dead(Elem)
UO.Exec('warmode 0')
wait(100)
LastTimer=UO.Timer()
;if UO.Life<50 and UO.Count('0x0E21') then
;repeat
;UO.BandageSelf()
;wait(4000)
;until UO.Life>170 OR LastTimer+300<UO.Timer()
;endif
loot()
WalkN(q,w,'')
end sub
##################################
sub loot()
DIM R[5]
var a
R[1] = 0x0EED # ??????
R[2] = 0x09AA # ???????
R[3] = 0x19B9 # ????
R[4] = 0x0F8A # pig iron
R[5] = 0x19BA # ????, 2 ??????

UO.UseObject('lastcorpse')
wait(100)
uo.exec("warmode '0'")
uo.waittargetobject('lastcorpse')
uo.usetype(0x0F51)
wait(500)

for a=1 to 5
uo.findtype(R[a],"-1","lastcorpse")
if UO.FindCount()>0 and Uo.GetDistance("lastcorpse")<=2 then
UO.Grab("0","finditem")
wait(1500)
end if
wait(10)
next
end sub
###############################=================================================
=============
# WalkN(X,Y,Serial) - char is walking by dX and dY step
# sub using Home, End, PgUp, PgDown keys
# d'not rebind this key from default action!
# serial - Serial of target or "" - string
# walkwait - delay after keypress
# Example:
# WalkN(2080,2113,'') - go to coordinates
# WalkN(0,0,'0x12345678') - go to target position
#--------------------------------------------------------------
sub WalkN(x,y,Target)
VAR i,StepSucess
VAR dx,dy,Exit=0

While Exit<>1
If Target<>"" Then
dx=UO.GetX(Target)-UO.GetX()
dy=UO.GetY(Target)-UO.GetY()
; UO.Print("Target locked!")
If UO.GetDistance(Target)<2 Then
Exit=1
Endif
Else
dx=x-UO.GetX()
dy=y-UO.GetY()
If dx==0 AND dy==0 Then
Exit=1
Endif

Endif

If dx<>0 AND dy<>0 Then
If dx>0 AND dy>0 Then
StepSucess=Go(3,40,300);SE - DownArrow
If StepSucess==-1 Then
StepSucess=Go(7,38,300);WN - UpArrow
StepSucess=Go(1,39,300);NE - RightArrow
If StepSucess==-1 Then
StepSucess=Go(5,37,300);SW - LeftArrow
Endif
Endif
Endif

If dx>0 AND dy<0 Then
StepSucess=Go(1,39,300);NE - RightArrow
If StepSucess==-1 Then
StepSucess=Go(5,37,300);SW - LeftArrow
StepSucess=Go(3,40,300);SE - DownArrow
If StepSucess==-1 Then
StepSucess=Go(7,38,300);WN - UpArrow
Endif
Endif
Endif

If dx<0 AND dy>0 Then
StepSucess=Go(5,37,300);SW - LeftArrow
If StepSucess==-1 Then
StepSucess=Go(1,39,300);NE - RightArrow
StepSucess=Go(7,38,300);WN - UpArrow
If StepSucess==-1 Then
StepSucess=Go(3,40,300);SE - DownArrow
Endif
Endif
Endif

If dx<0 AND dy<0 Then
StepSucess=Go(7,38,300);WN - UpArrow
If StepSucess==-1 Then
StepSucess=Go(3,40,300);SE - DownArrow
StepSucess=Go(5,37,300);SW - LeftArrow
If StepSucess==-1 Then
StepSucess=Go(1,39,300);NE - RightArrow
Endif
Endif
Endif

Endif

If dx<>0 AND dy==0 Then
If dx>0 Then
StepSucess=Go(2,34,300);E - PgDown
If StepSucess==-1 Then
StepSucess=Go(3,40,300);SE - DownArrow
If StepSucess==-1 Then
StepSucess=Go(1,39,300);NE - RightArrow
Endif
StepSucess=Go(2,34,300);E - PgDown
Endif
Endif

If dx<0 Then
StepSucess=Go(6,36,300);W - Home
If StepSucess==-1 Then
StepSucess=Go(7,38,300);WN - UpArrow
If StepSucess==-1 Then
StepSucess=Go(5,37,300);SW - LeftArrow
Endif
StepSucess=Go(6,36,300);W - Home
Endif
Endif
Endif


If dx==0 AND dy<>0 Then
If dy>0 Then
StepSucess=Go(4,35,300);S - End
If StepSucess==-1 Then
StepSucess=Go(3,40,300);SE - DownArrow
If StepSucess==-1 Then
StepSucess=Go(5,37,300);SW - LeftArrow
Endif
StepSucess=Go(4,35,300);S - End
Endif
Endif

If dy<0 Then
StepSucess=Go(0,33,300);N - PgUp
If StepSucess==-1 Then
StepSucess=Go(1,39,300);NE - RightArrow
If StepSucess==-1 Then
StepSucess=Go(7,38,300);WN - UpArrow
Endif
StepSucess=Go(0,33,300);N - PgUp
Endif
Endif
Endif
Wend
end sub


sub Go(dir,key,walkwait)
VAR x,y, OldDir

x=UO.GetX()
y=UO.GetY()
OldDir=UO.GetDir()
;hid()
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()
Endif

If x==UO.GetX() AND y==UO.GetY() AND OldDir<>UO.GetDir() Then
UO.Press(key)
wait(walkwait)
Endif

If x==UO.GetX() AND y==UO.GetY() Then
CheckLag()
Endif

If x==UO.GetX() AND y==UO.GetY() Then
UO.Print("Zasada!")
return -1
Else
return 1
Endif
end sub
###########################################
sub pod()
UO.Say('Bank')
repeat
uo.findtype('0x19B9',-1,'ground')
if UO.FindCount() and Uo.GetDistance('finditem')<3 then
uo.moveitem('finditem','1000','0x40FA6B85')
wait(100)
end if
wait(1000)
uo.print("1")
until not UO.FindCount()
end sub
################################################
sub boulder()
if uo.count('0x0E85') then
while uo.count('0x134F')
uo.waittargettype('0x134F')
uo.usetype('0x0E85')
wait(100)
wend
uo.findtype('0x134F',-1,'ground')
if uo.FindCount()then
uo.waittargetobject('finditem')
uo.usetype('0x0E85')
endif
wait(2000)
endif
end sub
################################################
sub minesh(PX,PY)
var x, y,z
VAR LastTimer
uo.LastTile()

UO.Set('finddistance','2')
z=UO.GetZ("self")
for x=-2 to 2
for y=-2 to 2
;Hid()
UO.Print(str(x)+" "+str(y))
Repeat
if UO.InJournal('TORMOZ') then
pause()
endif
if uo.injournal('boulder')or UO.count('0x134F') then
boulder()
UO.Print('boulder')
endif
If UO.targeting() then
uo.canceltarget()
endif
UO.DeleteJournal()
UO.Warmode("0")
UO.WaitTargetTile("1339",STR(UO.GetX()+x),STR(UO.GetY()+Y),str(z))
UO.UseType('0x0E85')
LastTimer=UO.Timer()
Repeat
wait(500)
Until UO.InJournal("so close to yourself") or UO.InJournal("положили") or UO.InJournal("can't see") or UO.InJournal("heavy") or UO.InJournal("нет обзора") or UO.InJournal("no ore") or UO.InJournal("не удалось") or UO.InJournal("far away") or UO.InJournal("in rock") or UO.InJournal("must wait") or UO.InJournal("ничего нету") or UO.InJournal("другом месте") or UO.InJournal("where it") OR UO.Timer()>LastTimer+200
;lookout()
Until UO.InJournal("ничего нету") or UO.InJournal("другом месте") or UO.InJournal("no ore here") or UO.InJournal("нет обзора") or UO.InJournal("far away") or UO.InJournal("in rock") or UO.InJournal("where it") or UO.InJournal("must wait")
if UO.Weight>(700) then
                 unload(PX,PY)
endif
;wait(2000)
next
next
end sub
####################

sub t()
wait(500)
uo.useobject('0x40024C61')
wait(500)
WalkN(2819,461,'')
wait(500)
end sub

sub Plavkaa() ## Качаем мининг на плавке ирона

##### Antares Ultima Online Shard #####
######## \\ www.uoa.ru // ########
#### ^ Scripted by Zergushka ^ ####

var meshokz
UO.Exec ('addobject meshokz')
while uo.targeting()
wait(500)
wend
uo.findtype('0x19B9','0x0000','meshokz')
while uo.FindCount()>0
uo.moveitem('finditem',5,'backpack')
wait(50)
UO.DeleteJournal()
wait(50)
uo.findtype('0x19B9','0x0000','backpack')
wait(50)
If UO.GetQuantity('finditem')>0 then
uo.useobject('finditem')
while not UO.InJournal('put|left|see the target')
wait(50)
wend
end if
wait(50)
IF UO.Weight >= 700 then
uo.findtype('0x1BEF','0x0000','backpack')
wait(50)
If uo.FindCount()>0 then
wait(50)
uo.moveitem('finditem',0,'meshokz')
wait(500)
end if
endif
uo.findtype('0x19B9','0x0000','meshokz')
wait(50)
wend
uo.Print("End Of Minng")
end sub ## Version 1.1a ##
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
CxC
сообщение 19.5.2010, 16:41
Сообщение #9


Местный трепач
Group Icon

Группа: Пользователи
Сообщений: 1 732
Регистрация: 14.1.2009
Из: Краснодар
Пользователь №: 6 081
Спасибо сказали: 223 раз(а)
Класс: Рейнджер



ты тупанул и не там прописал..... посмотри начало темы


Спасибо сказали:
D&G,
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
D&G
сообщение 19.5.2010, 16:53
Сообщение #10


Гость
Group Icon

Группа: Пользователи
Сообщений: 48
Регистрация: 22.3.2009
Пользователь №: 6 250
Спасибо сказали: 4 раз(а)



все проперло спс!
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
D&G
сообщение 19.5.2010, 17:14
Сообщение #11


Гость
Group Icon

Группа: Пользователи
Сообщений: 48
Регистрация: 22.3.2009
Пользователь №: 6 250
Спасибо сказали: 4 раз(а)



да вот еще подскажи плиззз где в скрипте исправить чтоб он не брал с собой по 2 кирке каждый раз когда прилетает в дом!!!
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Alucard
сообщение 19.5.2010, 17:28
Сообщение #12


ДМ НТ
Group Icon

Группа: Пользователи
Сообщений: 4 801
Регистрация: 13.7.2006
Из: г. Иваново
Пользователь №: 3 276
Спасибо сказали: 351 раз(а)
Класс: Человек



если не загоняться то
Код
sub takereg()
DIM reg[5]
var i,n
reg[1]='0x0F86'; MR
reg[2]='0x0F7A'; BP
reg[3]='0x0F7B'; BM
reg[4]='0x097B';
reg[5]='0x097B';
for i=1 to 5

и так далее

Кстати спешу всех обрадовать У нас сообщения перевели на русский язык. Так что я знаю какой будет следующий вопрос в данной или подобной теме. И если увижу его то буду плюсить больно.
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
dale
сообщение 19.5.2010, 20:48
Сообщение #13


Подозрительный тип
Group Icon

Группа: Пользователи
Сообщений: 66
Регистрация: 24.2.2010
Из: Нерезиновая
Пользователь №: 7 188
Спасибо сказали: 4 раз(а)
Класс: Человек



Цитата(Alucard @ 19.5.2010, 21:28) *

если не загоняться то
Код
sub takereg()
DIM reg[5]
var i,n
reg[1]='0x0F86'; MR
reg[2]='0x0F7A'; BP
reg[3]='0x0F7B'; BM
reg[4]='0x097B';
reg[5]='0x097B';
for i=1 to 5

и так далее

Кстати спешу всех обрадовать У нас сообщения перевели на русский язык. Так что я знаю какой будет следующий вопрос в данной или подобной теме. И если увижу его то буду плюсить больно.

с переводом на русский разобраться проще чем заметить пробел или его отсутствие)
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 

Ответить в эту темуОткрыть новую тему
> >
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия Сейчас: 16.7.2018, 4:31
Design: Fisana  © 2005-2006 IBR Team