Yoko

All sides of Injection
It is currently 2025-11-05 14:00:25

All times are UTC+02:00




Post new topic  This topic is locked, you cannot edit posts or make further replies.  [ 10 posts ] 
Author Message
PostPosted: 2006-05-09 18:32:05 
Offline

Joined: 2005-06-21 20:31:26
Posts: 80
вот скрипт:

Code:
;|            |--------------------| 
;|            | Full Armor Crafter |                     
;|------------| ver 1.02           |-------->
;|            | crafted by Flake   |
;|            |--------------------|


sub CraftFullArmor()

VAR IngotsNeed = '118'    ; Кол-во ингов, требуемое на крафт.
VAR ArmBag = '0x0E76'   ; Тип мешков под арм
VAR IngotsType, IngotsColor, ArmBagSer, QuantBefore, QuantFizzl, AddIngots, k, a, c

Dim Choise[7]
Choise[1] = "'Armor' 'Shields'  'Shields'  'Heater Shield'"
Choise[2] = "'Armor' 'Plate Mail' 'Plate Mail' 'Platemail Gorget'"
Choise[3] = "'Armor' 'Plate Mail' 'Plate Mail' 'Platemail Gauntlets'"
Choise[4] = "'Armor' 'Plate Mail' 'Plate Mail' 'Plate Helm'"
Choise[5] = "'Armor' 'Plate Mail' 'Plate Mail' 'Platemail Arms'"
Choise[6] = "'Armor' 'Plate Mail' 'Plate Mail' 'Platemail Legs'"
Choise[7] = "'Armor' 'Plate Mail' 'Plate Mail' 'Platemail'"
 
Dim ArmPart[7]
ArmPart[1] = 0x1415 ;Platemail
ArmPart[2] = 0x1411 ;PlatemailLegs
ArmPart[3] = 0x1410 ;PlatemailArms
ArmPart[4] = 0x1414 ;PlatemailGauntlets
ArmPart[5] = 0x1412 ;PlatemailHelm
ArmPart[6] = 0x1413 ;PlatemailHelm
ArmPart[7] = 0x1B76 ;Heater

 UO.Print( 'Укажите контейнер с ингами!' )
 UO.Exec('addobject CraftBox')
   While UO.Targeting()
     Wait(100)
   Wend

 UO.Print( 'Укажите Инги для крафта!' )
 UO.Exec('addobject Ingots')
   While UO.Targeting()
     Wait(100)
   Wend

    IngotsType = UO.GetGraphic( 'Ingots' )
     IngotsColor = UO.GetColor( 'Ingots' )
   
 
   
 UO.FindType( IngotsType, IngotsColor, 'CraftBox' )
  While UO.GetQuantity( 'finditem' ) > IngotsNeed
    UO.Grab( IngotsNeed,  'finditem' )
     CheckLag()

         ;------------- Крафтим------------
     For c=1 To 7 
      Craft:
     UO.FindType( IngotsType )
       QuantBefore = UO.GetQuantity( 'finditem' )
        UO.DeleteJournal()
        UO.Exec('waitmenu '+Choise[c])
        UO.UseType( IngotsType )
         k = 0
             While NOT UO.InJournal('You put') AND NOT UO.InJournal('fail') AND ( k < 30 )             
           k = k + 1   
           Wait(500)
           Wend
             If UO.InJournal('fail') Then
         ;----- Физл! Добовляем нужное кол-во инго и повторяем крафт. ------
         UO.FindType( IngotsType )
           QuantFizzl = UO.GetQuantity( 'finditem' )
           AddIngots = QuantBefore - QuantFizzl
             UO.FindType( IngotsType, IngotsColor, 'CraftBox' )
           If UO.GetQuantity( 'finditem' ) > AddIngots Then
          UO.Grab( AddIngots, 'finditem' )
          CheckLag()
                   GoTo Craft
           Else
          UO.Print( 'Не достаточно ингов, завершаем крафт!' )
          UO.Exec( 'terminate CraftFullArmor' )
           EndIf         
             EndIf
     Next

               ;-----Сгружаем Арм в мешок, а затем кидаем мешок в сундук
     UO.FindType( ArmBag )
     ArmBagSer = UO.GetSerial( 'finditem' )
      For a=1 To 7
         UO.FindType( ArmPart[a] )
               If UO.FindCount() > 0 then
               UO.MoveItem( 'finditem', -1, ArmBagSer )
               CheckLag()
             EndIf
        Next
     UO.MoveItem( ArmBagSer, -1, 'CraftBox' )
     CheckLag()
     UO.FindType( IngotsType, IngotsColor, 'CraftBox' )
  Wend
end sub



берет реги, открывает меню крафта и останавливается...не пойму в чем дело
может галки каие проставить нада?


Top
   
 
PostPosted: 2006-05-09 18:48:26 
Offline
Expert!
User avatar

Joined: 2006-02-07 08:51:40
Posts: 1348
Location: г. Старый Оскол
Nort777 wrote:
вот скрипт:

Code:
;|            |--------------------| 
;|            | Full Armor Crafter |                     
;|------------| ver 1.02           |-------->
;|            | crafted by Flake   |
;|            |--------------------|


sub CraftFullArmor()

VAR IngotsNeed = '118'    ; Кол-во ингов, требуемое на крафт.
VAR ArmBag = '0x0E76'   ; Тип мешков под арм
VAR IngotsType, IngotsColor, ArmBagSer, QuantBefore, QuantFizzl, AddIngots, k, a, c

Dim Choise[7]
Choise[1] = "'Armor' 'Shields'  'Shields'  'Heater Shield'"
Choise[2] = "'Armor' 'Plate Mail' 'Plate Mail' 'Platemail Gorget'"
Choise[3] = "'Armor' 'Plate Mail' 'Plate Mail' 'Platemail Gauntlets'"
Choise[4] = "'Armor' 'Plate Mail' 'Plate Mail' 'Plate Helm'"
Choise[5] = "'Armor' 'Plate Mail' 'Plate Mail' 'Platemail Arms'"
Choise[6] = "'Armor' 'Plate Mail' 'Plate Mail' 'Platemail Legs'"
Choise[7] = "'Armor' 'Plate Mail' 'Plate Mail' 'Platemail'"
 
Dim ArmPart[7]
ArmPart[1] = 0x1415 ;Platemail
ArmPart[2] = 0x1411 ;PlatemailLegs
ArmPart[3] = 0x1410 ;PlatemailArms
ArmPart[4] = 0x1414 ;PlatemailGauntlets
ArmPart[5] = 0x1412 ;PlatemailHelm
ArmPart[6] = 0x1413 ;PlatemailHelm
ArmPart[7] = 0x1B76 ;Heater

 UO.Print( 'Укажите контейнер с ингами!' )
 UO.Exec('addobject CraftBox')
   While UO.Targeting()
     Wait(100)
   Wend

 UO.Print( 'Укажите Инги для крафта!' )
 UO.Exec('addobject Ingots')
   While UO.Targeting()
     Wait(100)
   Wend

    IngotsType = UO.GetGraphic( 'Ingots' )
     IngotsColor = UO.GetColor( 'Ingots' )
   
 
   
 UO.FindType( IngotsType, IngotsColor, 'CraftBox' )
  While UO.GetQuantity( 'finditem' ) > IngotsNeed
    UO.Grab( IngotsNeed,  'finditem' )
     CheckLag()

         ;------------- Крафтим------------
     For c=1 To 7 
      Craft:
     UO.FindType( IngotsType )
       QuantBefore = UO.GetQuantity( 'finditem' )
        UO.DeleteJournal()
        UO.Exec('waitmenu '+Choise[c])
        UO.UseType( IngotsType )
         k = 0
             While NOT UO.InJournal('You put') AND NOT UO.InJournal('fail') AND ( k < 30 )             
           k = k + 1   
           Wait(500)
           Wend
             If UO.InJournal('fail') Then
         ;----- Физл! Добовляем нужное кол-во инго и повторяем крафт. ------
         UO.FindType( IngotsType )
           QuantFizzl = UO.GetQuantity( 'finditem' )
           AddIngots = QuantBefore - QuantFizzl
             UO.FindType( IngotsType, IngotsColor, 'CraftBox' )
           If UO.GetQuantity( 'finditem' ) > AddIngots Then
          UO.Grab( AddIngots, 'finditem' )
          CheckLag()
                   GoTo Craft
           Else
          UO.Print( 'Не достаточно ингов, завершаем крафт!' )
          UO.Exec( 'terminate CraftFullArmor' )
           EndIf         
             EndIf
     Next

               ;-----Сгружаем Арм в мешок, а затем кидаем мешок в сундук
     UO.FindType( ArmBag )
     ArmBagSer = UO.GetSerial( 'finditem' )
      For a=1 To 7
         UO.FindType( ArmPart[a] )
               If UO.FindCount() > 0 then
               UO.MoveItem( 'finditem', -1, ArmBagSer )
               CheckLag()
             EndIf
        Next
     UO.MoveItem( ArmBagSer, -1, 'CraftBox' )
     CheckLag()
     UO.FindType( IngotsType, IngotsColor, 'CraftBox' )
  Wend
end sub



берет реги, открывает меню крафта и останавливается...не пойму в чем дело
может галки каие проставить нада?


Скорее всего пропиши тут:
Code:
Dim Choise[7] 
Choise[1] = "'Armor' 'Shields'  'Shields'  'Heater Shield'"
Choise[2] = "'Armor' 'Plate Mail' 'Plate Mail' 'Platemail Gorget'"
Choise[3] = "'Armor' 'Plate Mail' 'Plate Mail' 'Platemail Gauntlets'"
Choise[4] = "'Armor' 'Plate Mail' 'Plate Mail' 'Plate Helm'"
Choise[5] = "'Armor' 'Plate Mail' 'Plate Mail' 'Platemail Arms'"
Choise[6] = "'Armor' 'Plate Mail' 'Plate Mail' 'Platemail Legs'"
Choise[7] = "'Armor' 'Plate Mail' 'Plate Mail' 'Platemail'"

пути в меню для крафта соответствующих вещей, посмотри свое меню, везде они разные


Top
   
 
 Post subject:
PostPosted: 2006-05-09 19:00:29 
Offline

Joined: 2005-06-21 20:31:26
Posts: 80
неа. не помогает:(

попробовал другой скрипт, но тока он начинает крафт и крафтит ноги
и физлы постоянно (бс гм), может с задержкой че не так?

Code:
sub MakeFull() 
   VAR CCurIng='0x0000', TCurIng=0
   VAR jser, WCurIng=0, Kolvo = 200      ; На фулл с запасом
   VAR Sunduk = '0x4024386F'            ; Cундук с инготами
   VAR Meshok = '0x0E76'               ; Тип мешка для фулов
   VAR CIngots = '0x0000'               ; Цвет инготов
   VAR CurMesh, BagForFull='0x4014B1CF'   ; Сериал мешка и сумки для них
   
   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


Top
   
 
 Post subject:
PostPosted: 2006-05-09 20:04:59 
Offline
Expert!

Joined: 2004-04-03 17:36:29
Posts: 2544
Location: Saint-Petersburg
offtopic on:
Code:
...
- А вы мыться пробовали?
- Пробовал, не помогает. Через месяц снова чешусь

offtopic off

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

_________________
Ни один скрипт не работает? Пора обновить Инжект...
Все работает, но хочется большего? Пора переходить на стелс...


Top
   
 
 Post subject:
PostPosted: 2006-05-09 20:06:42 
Offline

Joined: 2005-06-21 20:31:26
Posts: 80
шард дрв, он не успевает сделать одну вещь и начинает другую (2й скрипт), отсюда физлы
я не пойму где там задержку поставить


Top
   
 
 Post subject:
PostPosted: 2006-05-09 20:08:15 
Offline
Expert!

Joined: 2004-04-03 17:36:29
Posts: 2544
Location: Saint-Petersburg
Вырежи нужный кусок и запость. Я принципиально не читаю чужие скрипты длиннее 30 строк.

_________________
Ни один скрипт не работает? Пора обновить Инжект...

Все работает, но хочется большего? Пора переходить на стелс...


Top
   
 
 Post subject:
PostPosted: 2006-05-09 20:24:02 
Offline

Joined: 2005-06-21 20:31:26
Posts: 80
Edred wrote:
Вырежи нужный кусок и запость. Я принципиально не читаю чужие скрипты длиннее 30 строк.

знал бы где кроется ошибка, методом тыка наверно исправил бы


Top
   
 
 Post subject:
PostPosted: 2006-05-09 20:36:43 
Offline
Expert!
User avatar

Joined: 2006-02-25 21:48:38
Posts: 1032
Nort777 wrote:
Edred wrote:
Вырежи нужный кусок и запость. Я принципиально не читаю чужие скрипты длиннее 30 строк.

знал бы где кроется ошибка, методом тыка наверно исправил бы


Тогда сначало сюда загляни... http://www.utro.ru/articles/2006/04/10/538692.shtml ...а потом уже к нам с результатами :lol: :wink: :lol:

_________________
DerMeister сейчас на нейрале!


Top
   
 
 Post subject:
PostPosted: 2006-05-09 20:38:36 
Offline

Joined: 2005-06-21 20:31:26
Posts: 80
как говорится, мир не без "добрых" людей


Top
   
 
 Post subject:
PostPosted: 2006-05-09 21:01:01 
Offline

Joined: 2005-06-21 20:31:26
Posts: 80
всем спасибо, друзья помогли, дали другой скрипт


Top
   
 
Display posts from previous:  Sort by  
Post new topic  This topic is locked, you cannot edit posts or make further replies.  [ 10 posts ] 

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 0 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