Поиск в паке выкопанной выхи

Anything and all.

Moderators: Murderator+, Murderator

DIKIY
Posts: 53
Joined: 2004-10-07 15:42:12
Location: Москва
Contact:

Post by DIKIY »

ща попробую смувить!
DIKIY
Posts: 53
Joined: 2004-10-07 15:42:12
Location: Москва
Contact:

Post by DIKIY »

Вот скрипт..

Code: Select all

sub unloadore() 
 var Time,Space
 Time = Time()
Space = ' '

   VAR TempX,TempY,i,Exit, Exit1, ConTainer, j
   VAR SundukX=5518
   VAR SundukY=1088
   VAR Index=16 ; количество элементов массива
   DIM Ore[12], Colors[16]

Colors[0]="0x09F0" ; Gorgan
Colors[1]="0x09D3" ; Steel
Colors[3]="0x0BA7" ; Eldar
Colors[4]="0x08AF" ; Plut
Colors[5]="0x0085" ; Dragon
Colors[6]="0x0060" ; Aqua
Colors[7]="0x09E6" ; Elvin
Colors[8]="0x010F" ; Krinit
Colors[9]="0x09DA" ; Vulkan
Colors[10]="0x09EC" ; Blood Crest
Colors[11]="0x008F" ; Sand Rock
Colors[12]="0x09B9" ; Acid
Colors[13]="0x09A4" ; Crystaline
Colors[14]="0x0455" ; BlackRock
Colors[15]="0x0028" ; Obsid



   TempX=UO.GetX()
   TempY=UO.GetY()
   
   walkn(SundukX,SundukY,"")
   ToHide()
   
   UO.UseObject('Sunduk')
   wait(500)
   UO.UseObject('BESTBag')
   wait(500)
   UO.UseObject('IronBag')

Ore[0]=0x19B9 ; >3 ore
Ore[1]=0x19B7 ; 1 ore
Ore[2]=0x19BA ; 2 ore
Ore[3]=0x19B8 ; 3 ore
Ore[4]=0x0F11 ; saphires
Ore[5]=0x0F16 ; amethysts
Ore[6]=0x0F18 ; tourmalines
Ore[7]=0x0F15 ; citrines
Ore[8]=0x0F10 ; emeralds
Ore[9]=0x0F0F ; star sapphires
Ore[10]=0x0F26 ; diamonds
Ore[11]=0x1F4C ; recall scrolls
Ore[12]=0x0EED ; gold

   For i=0 to 12
      Exit=0
      repeat
         UO.FindType(Ore[i])
         
         if UO.GetQuantity('finditem')>0 then
            If UO.GetColor('finditem')=='0x0000' Then
               Container=UO.GetSerial('IronBag')
            Else
               Container=UO.GetSerial('OtherBag')
               Exit1=0
               j=0
               While j<Index AND Exit1<>1
                  If UO.GetColor('finditem')==Colors[j] Then
                     Container=UO.GetSerial('BESTBag')
                     Exit1=1
                  Endif
                  j=j+1
               Wend
            Endif
            UO.MoveItem('finditem',0,Container)
            CheckLag()
            wait(1000)
         Else
            Exit=1
         endif
      until Exit==1
   Next
ToEat()
uo.textopen()
UO.TextPrint('Выгрузка произведена: '+Space +Time) 
   walkn(TempX,TempY,"")
   ToHide()
end sub


Как сюда встаивть нашь получившийся?
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

перед мове итем проверку на цвет и репорт если это выха .
Сделал дело - флуди смело !!!
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

или перед вот этим репорт сразу

Code: Select all

Container=UO.GetSerial('BESTBag')
Сделал дело - флуди смело !!!
DIKIY
Posts: 53
Joined: 2004-10-07 15:42:12
Location: Москва
Contact:

Post by DIKIY »

Code: Select all

                  If UO.GetColor('finditem')==Colors[j] Then 
                  tColor = uo.getcolor('finditem')
            if (tColor>='0x09A4') or (tColor=='0x0060') or (tColor=='0x0085') or (tColor=='0x008F') or (tColor=='0x010F') then
uo.textopen()
UO.TextPrint('Выха: '+uo.getname('finditem'))
Endif
                     Container=UO.GetSerial('BESTBag')


получаеться что название не пишет.. просто

Выха:
Выха:
Выха:
DIKIY
Posts: 53
Joined: 2004-10-07 15:42:12
Location: Москва
Contact:

Post by DIKIY »

т.е. он количество правильно определяет, но название не пишет!
DIKIY
Posts: 53
Joined: 2004-10-07 15:42:12
Location: Москва
Contact:

Post by DIKIY »

UO.TextPrint('Выха: '+uo.getname('finditem'))

Эта строчка на половину отрабатывает -)
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

Code: Select all

uo.click('finditem')


Смари выше.
Сделал дело - флуди смело !!!
DIKIY
Posts: 53
Joined: 2004-10-07 15:42:12
Location: Москва
Contact:

Post by DIKIY »

Это где?
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

в моём куске кода

Code: Select all

uo.click('finditem') 
Cheklag()


тыкает по найденной руде чтоб высветилось имя и инжа это имя зафиксировало у себя где та в памяти ...
чек лаг чтоб наверняка тык прошёл ...
Сделал дело - флуди смело !!!
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

и в твоём варианте уже нет смысла проверять на цвет. Уже проверено.
нада просто
тык
чеклаг
репорт
Сделал дело - флуди смело !!!
DIKIY
Posts: 53
Joined: 2004-10-07 15:42:12
Location: Москва
Contact:

Post by DIKIY »

Всё, добили...

Вот код:

sub unloadore()
var Time,Space
var tColor = uo.getcolor('finditem')
Time = Time()
Space = ' '

VAR TempX,TempY,i,Exit, Exit1, ConTainer, j
VAR SundukX=5518
VAR SundukY=1088
VAR Index=16 ; количество элементов массива
DIM Ore[12], Colors[16]

Colors[0]="0x09F0" ; Gorgan
Colors[1]="0x09D3" ; Steel
Colors[3]="0x0BA7" ; Eldar
Colors[4]="0x08AF" ; Plut
Colors[5]="0x0085" ; Dragon
Colors[6]="0x0060" ; Aqua
Colors[7]="0x09E6" ; Elvin
Colors[8]="0x010F" ; Krinit
Colors[9]="0x09DA" ; Vulkan
Colors[10]="0x09EC" ; Blood Crest
Colors[11]="0x008F" ; Sand Rock
Colors[12]="0x09B9" ; Acid
Colors[13]="0x09A4" ; Crystaline
Colors[14]="0x0455" ; BlackRock
Colors[15]="0x0028" ; Obsid



TempX=UO.GetX()
TempY=UO.GetY()

walkn(SundukX,SundukY,"")
ToHide()

UO.UseObject('Sunduk')
wait(500)
UO.UseObject('BESTBag')
wait(500)
UO.UseObject('IronBag')

Ore[0]=0x19B9 ; >3 ore
Ore[1]=0x19B7 ; 1 ore
Ore[2]=0x19BA ; 2 ore
Ore[3]=0x19B8 ; 3 ore
Ore[4]=0x0F11 ; saphires
Ore[5]=0x0F16 ; amethysts
Ore[6]=0x0F18 ; tourmalines
Ore[7]=0x0F15 ; citrines
Ore[8]=0x0F10 ; emeralds
Ore[9]=0x0F0F ; star sapphires
Ore[10]=0x0F26 ; diamonds
Ore[11]=0x1F4C ; recall scrolls
Ore[12]=0x0EED ; gold

For i=0 to 12
Exit=0
repeat
UO.FindType(Ore[i])

if UO.GetQuantity('finditem')>0 then
If UO.GetColor('finditem')=='0x0000' Then
Container=UO.GetSerial('IronBag')
Else
Container=UO.GetSerial('OtherBag')
Exit1=0
j=0
While j<Index AND Exit1<>1
If UO.GetColor('finditem')==Colors[j] Then
uo.click('finditem')
CheckLag()
tColor = uo.getcolor('finditem')
if (tColor>='0x09A4') or (tColor=='0x0060') or (tColor=='0x0085') or (tColor=='0x008F') or (tColor=='0x010F') then
uo.textopen()
UO.TextPrint('Выха: '+uo.getname('finditem'))
Endif
Container=UO.GetSerial('BESTBag')
Exit1=1
Endif
j=j+1
Wend
Endif
UO.MoveItem('finditem',0,Container)
CheckLag()
wait(1000)
Else
Exit=1
endif
until Exit==1
Next
ToEat()
uo.textopen()
UO.TextPrint('Выгрузка произведена: '+Space +Time)
walkn(TempX,TempY,"")
ToHide()
end sub


Всё получилось! Огромное спасибо!
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

да эт старо как мир на самом деле . давно написано и работает.
а проверка на цвет в твоей версии уже нафихх не нуна ...
Сделал дело - флуди смело !!!
DIKIY
Posts: 53
Joined: 2004-10-07 15:42:12
Location: Москва
Contact:

Post by DIKIY »

Эммм... убери в коде, тогда как сделать? *(вот что я выкинул сейчас)
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

сформулируй плиз мысль последовательно, а то я ваще ничё не понял что ты сказал ...
Сделал дело - флуди смело !!!
DIKIY
Posts: 53
Joined: 2004-10-07 15:42:12
Location: Москва
Contact:

Post by DIKIY »

Выкини из моего кода не нужное =)
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

Было:

Code: Select all

If UO.GetColor('finditem')==Colors[j] Then 
uo.click('finditem')
CheckLag()
tColor = uo.getcolor('finditem')
if (tColor>='0x09A4') or (tColor=='0x0060') or (tColor=='0x0085') or (tColor=='0x008F') or (tColor=='0x010F') then
uo.textopen()
UO.TextPrint('Выха: '+uo.getname('finditem'))
Endif
Container=UO.GetSerial('BESTBag')



Лучше:

Code: Select all

If UO.GetColor('finditem')==Colors[j] Then 
uo.click('finditem')
CheckLag()
uo.textopen()
UO.TextPrint('Выха: '+uo.getname('finditem'))
Container=UO.GetSerial('BESTBag')
Сделал дело - флуди смело !!!
DIKIY
Posts: 53
Joined: 2004-10-07 15:42:12
Location: Москва
Contact:

Post by DIKIY »

Да, всё работает! огромное спасибо!
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

нзчт, обращайтесь (с) GM Manson
Сделал дело - флуди смело !!!
DIKIY
Posts: 53
Joined: 2004-10-07 15:42:12
Location: Москва
Contact:

Post by DIKIY »

Да, последнее... вот я копаюсь, копаюсь, у меня ломается лопата....

есть такой скрипт который подходит к сундуку и берёт в пак лопату?

чтобы ппри очередноё ломке лопаты не стоять ночь в пустую?
Post Reply