Yoko

All sides of Injection
It is currently 2025-12-09 03:04:02

All times are UTC+02:00




Post new topic  Reply to topic  [ 9 posts ] 
Author Message
PostPosted: 2008-08-12 16:17:05 
Offline
User avatar

Joined: 2007-08-11 16:44:45
Posts: 39
Location: www.drw.ru
Code:
sub MakeFull() 
   VAR CCurIng='0x0000', TCurIng=0
   VAR jser, WCurIng=0, Kolvo = 160      ; На фулл с запасом
   VAR Sunduk = '0x404CD019'            ; Cундук с инготами
   VAR Meshok = '0x0E76'               ; Тип мешка для фулов
   VAR CIngots = '0x0000'               ; Цвет инготов
   VAR CurMesh, BagForFull='0x40463C1F'   ; Сериал мешка и сумки для них
   
   UO.Print("Script started")
   DIM TIngots[4], Part[7], CIng[14], WIng[14]
   
   TIngots[0]='0x1BEF'            ; Типы инготов
   TIngots[1]='0x1BE3'
   TIngots[2]='0x1BF5'
   TIngots[3]='0x1BE9'
   
   Part[0]='Platemail (25'         ; Названия частей фулла
   Part[1]='Platemail Legs'
   Part[2]='Heater Shield'
   Part[3]='Platemail Arms'
   Part[4]='Plate Helm'
   Part[5]='Platemail Gauntlets'
   Part[6]='Platemail Gorget'
   
   CIng[0]='0x0750'            ; Цвета инготов
   CIng[1]='0x0590'
   CIng[2]='0x060A'
   CIng[3]='0x0488'
   CIng[4]='0x096B'
   CIng[5]='0x0014'
   CIng[6]='0x0193'
   CIng[7]='0x04C2'
   CIng[8]='0x07D5'
   CIng[9]='0x00CE'
   CIng[10]='0x052D'
   CIng[11]='0x0455'
   CIng[12]='0x0028'
   CIng[13]='0x08AF'
   
   WIng[0]='Rusty'               ; Названия инготов
   WIng[1]='Old Copper'
   WIng[2]='Dull Copper'
   WIng[3]='Bronze'
   WIng[4]='Shadow'
   WIng[5]='Rose'
   WIng[6]='Agapite'
   WIng[7]='Blood Rock'
   WIng[8]='Verite'
   WIng[9]='Valorite'
   WIng[10]='Mytheril'
   WIng[11]='Black Rock'
   WIng[12]='Obsidian'
   WIng[13]='Plutonium'
   
   UO.IgnoreReset()
   UO.DeleteJournal()
   UO.UseObject(Sunduk)
   For Var k=0 to 3                  ; Узнаем тип
      UO.FindType(TIngots[k],-1,Sunduk)   ; Ищем любые инготы в сундуке
      If UO.FindCount() > 0 Then
         If UO.GetColor('finditem') == '0x0000' AND k == 0 Then
            UO.MSG("I make a iron full!")
            MakeIron(TIngots[k],'0x0000',Kolvo,Sunduk,Meshok,BagForFull)
            Return
         Else
            If UO.GetQuantity('finditem') < Kolvo Then   ; Для фула мало инготов
               UO.MSG("I need "+STR(Kolvo)+" or more ingots")
               UO.MoveItem('finditem','0',BagForFull)
               Wait(500)
               Return
            Else
               If TCurIng == 0 Then
                  TCurIng=TIngots[k]
               EndIf
               If UO.GetColor('finditem') == CIng[2] Then
                  UO.MSG("Dull Copper? I not make this full.")
                  UO.MoveItem('finditem',-1,BagForFull)
                  Wait(500)
                  Return
               EndIf
               If UO.GetColor('finditem') == CIng[3] Then
                  UO.MSG("Bronze? I not make this full.")
                  UO.MoveItem('finditem',-1,BagForFull)
                  Wait(500)
                  Return
               EndIf
               UO.Print("Avaible is "+STR(UO.GetQuantity('finditem'))+" ingots.")
               UO.Print("Ingots type is "+TIngots[k])
            EndIf
         EndIf
      Else
         If k == 3 AND TCurIng == 0 Then
            UO.Print("No avaible ingots. Script terminated.")
            Return
         EndIf
      EndIf
      Wait(1000)
   Next
   UO.FindType(TCurIng,-1,Sunduk)
   For Var n=0 to 13                  ; Узнаем цвет
      If CIng[n] == UO.GetColor('finditem') Then
         WCurIng = WIng[n]
         CCurIng = CIng[n]
      EndIf
   Next
   If CCurIng == '0x0000' Then
      If TCurIng == TIngots[1] Then
         WCurIng = 'Copper'
      Else
         If TCurIng == TIngots[2] Then
            WCurIng = 'Silver'
         Else
            If TCurIng == TIngots[3] Then
               WCurIng = 'Golden'
            EndIf
         EndIf
      EndIf
   EndIf
   UO.MSG("Found "+(WCurIng)+" ingots.")
   UO.FindType(Meshok,-1,Sunduk)      ; Ищем мешки для фуллов
   If UO.FindCount() == 0 Then
      UO.MSG("No bag - NO FULL !!!")
      Return
   Else
      CurMesh=UO.GetSerial('finditem')
   EndIf
   UO.FindType(TCurIng,CCurIng,Sunduk)
   UO.MoveItem('finditem',STR(Kolvo),'backpack ')   ; Забираем скока поднимем
   Wait(500)
   UO.Grab('1',CurMesh)            ; Берем мешок в пэк
   Wait(500)
   CheckLag()
   UO.SetCatchBag(CurMesh)         ; Всё что сделаем в мешок
   Var i=0
   Repeat
      UO.MSG("Try make the "+WCurIng+" "+Part[i])
      UO.AutoMenu('Blacksmithing','Colored')
      UO.AutoMenu('Colored',WCurIng+' Armor')
      UO.AutoMenu(WCurIng+' Armor',WCurIng+' Plate Armor')
      UO.AutoMenu(WCurIng+' Plate Armor',Part[i])
      Repeat
         jser=0
         UO.FindType(TCurIng,CCurIng,-1)
         IF UO.FindCount() > 0 Then
            UO.DeleteJournal()
            UO.UseObject('finditem')
         Else
            UO.Print("Ingots not found")
            UO.UnSetCatchBag()
            Repeat
               UO.FindType(TCurIng,CCurIng,-1)
               If UO.FindCount() > 0 Then
                  UO.MoveItem('finditem','-1',BagForFull)   ; Обратно в сундук
                  Wait(500)
               EndIf
            Until UO.Count(TCurIng,CCurIng) == 0       ; Все инготы в пэке
            UO.DropHere(CurMesh)
            Wait(500)
            Return
         EndIf
         While NOT UO.InJournal("put") AND NOT UO.InJournal("failed")
            Wait(100)
         WEnd
         If UO.InJournal("put") Then
            jser=1
         EndIf
      Until jser == 1
      i=i+1
      UO.CancelMenu()
   Until i > 6
   UO.UnSetCatchBag()
   Repeat
      UO.FindType(TCurIng,CCurIng,-1)
      If UO.FindCount() > 0 Then
         UO.MoveItem('finditem','-1',BagForFull)   ; Обратно в сундук
         Wait(500)
      EndIf
   Until UO.Count(TCurIng,CCurIng) == 0       ; Все инготы в пэке
   UO.MSG("FULL")
   UO.MoveItem(CurMesh,'-1',BagForFull)
   Wait(500)
end sub

sub MakeIron(TCurIng,CCurIng,Kolvo,Sunduk,Meshok,BagForFull)
   Var jser, CurMesh = 0
   
   DIM Part[6]
   
   Part[0]='platemail (25'         ; Названия частей фулла
   Part[1]='platemail legs'
   Part[2]='platemail arms'
   Part[3]='plate helm'
   Part[4]='platemail gloves'
   Part[5]='platemail gorget'
   
   UO.FindType(Meshok,-1,Sunduk)
   If UO.FindCount() == 0 Then
      UO.MSG("No bag - NO FULL !!!")
      Return
   Else
      CurMesh=UO.GetSerial('finditem')
   EndIf
   
   UO.FindType(TCurIng,CCurIng,Sunduk)
   If UO.GetQuantity('finditem') < Kolvo Then
      UO.MSG("I need "+STR(Kolvo)+" or more ingots")
      UO.MoveItem('finditem','-1',BagForFull)   ; Обратно в сундук
      Wait(500)
      Return
   Else
      UO.MoveItem('finditem',STR(Kolvo),'backpack ')   ; Забираем скока поднимем
      Wait(500)
      UO.Grab('1',CurMesh)            ; Берем мешок в пэк
      Wait(500)
   EndIf
   CheckLag()
   UO.SetCatchBag(CurMesh)         ; Всё что сделаем в мешок
   Var i=0
   Repeat
      UO.MSG("Try make the Iron "+Part[i])
      UO.AutoMenu('Blacksmithing','Armor')
      UO.AutoMenu('Armor','Plate Mail')
      UO.AutoMenu('Plate Mail',Part[i])
      Repeat
         jser=0
         UO.FindType(TCurIng,CCurIng,-1)
         If UO.FindCount() > 0 Then
            UO.DeleteJournal()
            UO.UseObject('finditem')
         Else
            UO.Print("Ingots not found")
            UO.UnSetCatchBag()
            Repeat
               UO.FindType(TCurIng,CCurIng,-1)
               If UO.FindCount() > 0 Then
                  UO.MoveItem('finditem','-1',BagForFull)   ; Обратно в сундук
                  Wait(500)
               EndIf
            Until UO.Count(TCurIng,CCurIng) == 0       ; Все инготы в пэке
            UO.DropHere(CurMesh)
            Wait(500)
            Return
         EndIf
         While NOT UO.InJournal("put") AND NOT UO.InJournal("failed")
            Wait(100)
         WEnd
         If UO.InJournal("put") Then
            jser=1
         EndIf
      Until jser == 1
      i=i+1
      UO.CancelMenu()
   Until i > 5
   UO.MSG("Try make the Iron heater shield")
   UO.AutoMenu('Blacksmithing','Shields')
   UO.AutoMenu('Shields','heater shield')
   UO.DeleteJournal()
   Repeat
      jser=0
      UO.FindType(TCurIng,CCurIng,-1)
      IF UO.FindCount() > 0 Then
         UO.UseObject('finditem')
      Else
         UO.Print("Ingots not found")
         UO.UnSetCatchBag()
         Repeat
            UO.FindType(TCurIng,CCurIng,-1)
            If UO.FindCount() > 0 Then
               UO.MoveItem('finditem','-1',BagForFull)   ; Обратно в сундук
               Wait(500)
            EndIf
         Until UO.Count(TCurIng,CCurIng) == 0       ; Все инготы в пэке
         UO.DropHere(CurMesh)
         Wait(500)
         Return
      EndIf
      While NOT UO.InJournal("put") AND NOT UO.InJournal("failed")
         Wait(100)
      WEnd
      If UO.InJournal("put") Then
         jser=1
      EndIf
   Until jser == 1
   UO.CancelMenu()
   UO.UnSetCatchBag()
   Repeat
      UO.FindType(TCurIng,CCurIng,-1)
      If UO.FindCount() > 0 Then
         UO.MoveItem('finditem','-1',BagForFull)   ; Обратно в сундук
         Wait(500)
      EndIf
   Until UO.Count(TCurIng,CCurIng) == 0       ; Все инготы в пэке
   UO.MSG("FULL")
   UO.MoveItem(CurMesh,'-1',BagForFull)
   Wait(500)
end sub

sub CheckLag()
   UO.DeleteJournal()
   UO.Click('backpack')
   repeat
      wait(50)
   until UO.InJournal('backpack')
end sub


Куёт фулл, потом пишет фаст лут и останавливаетса.
Подскажите плиз где задержку поменять?


Top
   
 Post subject:
PostPosted: 2008-08-12 16:26:46 
Offline
User avatar

Joined: 2007-08-11 16:44:45
Posts: 39
Location: www.drw.ru
ещё мешок с фулом не скидывает в бекпек, а скидывает туда остатки ингов.


Top
   
 Post subject:
PostPosted: 2008-08-13 21:59:23 
Offline
Expert!
User avatar

Joined: 2006-02-07 08:51:40
Posts: 1348
Location: г. Старый Оскол
Dillersss wrote:
ещё мешок с фулом не скидывает в бекпек, а скидывает туда остатки ингов.

Дилл, а попросить не судьба?


Top
   
 Post subject:
PostPosted: 2008-08-13 22:25:56 
Offline
User avatar

Joined: 2007-08-11 16:44:45
Posts: 39
Location: www.drw.ru
Да я стучал те в асю, думал ты занет и не стал доставать.


Top
   
 Post subject:
PostPosted: 2008-08-13 23:40:53 
Offline
Expert!
User avatar

Joined: 2006-02-07 08:51:40
Posts: 1348
Location: г. Старый Оскол
Dillersss wrote:
Да я стучал те в асю, думал ты занет и не стал доставать.

Че та я не помню такого... Щас да, я реально занят, не когда даже поиграть, реал... лето кончается, пытаемся отрываться по полной :lol:


Top
   
 Post subject:
PostPosted: 2008-08-14 07:01:50 
Offline
User avatar

Joined: 2007-08-11 16:44:45
Posts: 39
Location: www.drw.ru
ыыыыыы, прально.


Top
   
 Post subject:
PostPosted: 2008-09-20 17:01:09 
Offline

Joined: 2008-09-20 16:54:28
Posts: 25
Я не шарю в скриптах :lol:


Top
   
 Post subject:
PostPosted: 2008-09-20 17:18:38 
Offline
Expert!
User avatar

Joined: 2006-02-07 08:51:40
Posts: 1348
Location: г. Старый Оскол
robchik wrote:
Я не шарю в скриптах :lol:

+1, Поздравляю!!! Возьми пирожок с полочки!


Top
   
 Post subject:
PostPosted: 2008-09-22 08:00:00 
Offline
Sphere expert
User avatar

Joined: 2004-10-01 08:27:38
Posts: 1143
Location: Уфа
<ссылко по теме )))>

_________________
Сделал дело - флуди смело !!!


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 9 posts ] 

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 6 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited