Помогите вставить.

Anything and all.

Moderators: Murderator+, Murderator

Neznaika
Posts: 30
Joined: 2005-03-11 23:00:30

Помогите вставить.

Post by Neznaika »

Помогите пожалуйста вставить в скрипт раскладку карт по уровням.

Code: Select all

################################################################################################# 
#   "Расшифровка карт"                                                                            # 
################################################################################################# 
#                 http://www.drw.ru                                                             # 
################################################################################################# 
#               Последнее изменение 14.03.2004                                                  # 
################################################################################################# 
#                 (c) AGRS, 2004                                                                # 
################################################################################################# 

################################################################################################# 
#   >>> Константы                                                                                 # 
################################################################################################# 

Var SrcCont      = 0x40072864      # SERIAL Контейнер-источник 
Var DstCont      = 0x401C96C9      # SERIAL Контейнер-приемник 
Var PackCont     = 0x400B9D61      # SERIAL Пак 
Var MapType      = 0x14EB          # TYPE Карта 
Var MapColor     = 0x0000          # COLOR Карта 
Var HideSkill    = "Stealth"        
Var Lagaet       = "Ohuenno"       # STR Если = "Ohuenno", то дополнительная проверка на лаги 

################################################################################################# 
#   >>> Запуск                                                                                    # 
################################################################################################# 

Sub Main() 
   While true 
      LoadItems(1, MapType, MapColor, SrcCont, PackCont) 
      CheckLag() 
      UO.FindType(STR(MapType), STR(MapColor), STR(PackCont)) 
      If UO.FindCount()>0 Then 
         UO.UseType(STR(MapType)) 
         Wait(300) 
      EndIf 
      MoveAllItems(MapType, MapColor, PackCont, DstCont) 
   Wend 
End Sub 

Sub Main2() 
var L1 = 0 
var L2 = 0 
var L3 = 0 
var L4 = 0 
var L5 = 0 
var TOUT 
  Repeat 
    UO.FindType(STR(MapType), STR(MapColor), STR(SrcCont)) 
    If UO.FindCount()>0 Then 
      UO.SetReceivingContainer("backpack") 
      UO.Grab("1", "finditem") 
      CheckLag() 
      UO.UseObject("finditem") 
      TOUT=0 
      Repeat 
        Wait(250) 
        TOUT=TOUT+250 
      Until UO.InJournal("map is level") or TOUT>500 
      Wait(800) 
      UO.Click("finditem") 
      Wait(800) 
      If UO.InJournal("1 level") Then 
        UO.MoveItem("finditem", "1", STR(DstCont), "20", "30", "0") 
        L1=L1+1 
      EndIf 
      If UO.InJournal("2 level") Then 
        UO.MoveItem("finditem", "1", STR(DstCont), "40", "45", "0") 
        L2=L2+1 
      EndIf 
      If UO.InJournal("3 level") Then 
        UO.MoveItem("finditem", "1", STR(DstCont), "60", "60", "0") 
        L3=L3+1 
      EndIf 
      If UO.InJournal("4 level") Then 
        UO.MoveItem("finditem", "1", STR(DstCont), "80", "75", "0") 
        L4=L4+1 
      EndIf 
      If UO.InJournal("5 level") Then 
        UO.MoveItem("finditem", "1", STR(DstCont), "100", "90", "0") 
        L5=L5+1 
      EndIf 
      CheckLag() 
      UO.FindType(STR(MapType), STR(MapColor), STR(SrcCont)) 
    EndIf 
    UO.TextClear() 
    UO.TextPrint("Level1="+STR(L1)) 
    UO.TextPrint("Level2="+STR(L2)) 
    UO.TextPrint("Level3="+STR(L3)) 
    UO.TextPrint("Level4="+STR(L4)) 
    UO.TextPrint("Level5="+STR(L5)) 
  Until UO.FindCount()<1 
End Sub 

################################################################################################# 
#   >>> Сервисные функции                                                                           # 
################################################################################################# 

#=> 
Sub LoadItems(fmiItemCount, fmiItemType, fmiItemColor, fmiSrcContainerSerial, fmiDstContainerSerial) 
Var fmiToGrab 
   If CountOf(fmiItemType, fmiItemColor, fmiDstContainerSerial)<fmiItemCount Then 
      UO.SetReceivingContainer(STR(fmiDstContainerSerial)) 
      Repeat 
         CheckLag() 
         fmiToGrab=fmiItemCount-CountOf(fmiItemType, fmiItemColor, fmiDstContainerSerial) 
         UO.FindType(STR(fmiItemType), STR(fmiItemColor), STR(fmiSrcContainerSerial)) 
         If UO.FindCount()>0 Then 
            UO.Grab(STR(fmiToGrab), 'finditem') 
            Wait(300) 
         EndIf 
      If Lagaet=="Ohuenno" Then 
         CheckLag() 
      EndIf 
      Until CountOf(fmiItemType, fmiItemColor, fmiSrcContainerSerial)==0 or CountOf(fmiItemType, fmiItemColor, fmiDstContainerSerial)>=fmiItemCount 
      UO.UnsetReceivingContainer() 
   End If 
Return CountOf(fmiItemType, fmiItemColor, fmiDstContainerSerial) 
End Sub 

Sub MoveAllItems(fmiItemType, fmiItemColor, fmiSrcContainerSerial, fmiDstContainerSerial) 
      UO.SetReceivingContainer(STR(fmiDstContainerSerial)) 
      Repeat 
         CheckLag() 
         UO.FindType(STR(fmiItemType), STR(fmiItemColor), STR(fmiSrcContainerSerial)) 
         If UO.FindCount()>0 Then 
            UO.Grab(0, 'finditem') 
            Wait(300) 
         EndIf 
      If Lagaet=="Ohuenno" Then 
         CheckLag() 
      EndIf 
      Until UO.FindCount()<1 
      UO.UnsetReceivingContainer() 
End Sub 

Sub CountOf(fcoItemType, fcoItemColor, fcoContainerSerial) 
Var fcoFindCount = 0 
Var fcoResult = 0 
   UO.FindType(STR(fcoItemType), STR(fcoItemColor), STR(fcoContainerSerial)) 
   fcoFindCount=UO.FindCount() 
   If fcoFindCount==1 Then 
      fcoResult=UO.GetQuantity('finditem') 
   EndIf 
   If fcoFindCount>1 Then 
      While fcoFindCount>0 
         UO.FindType(STR(fcoItemType), STR(fcoItemColor), STR(fcoContainerSerial)) 
         fcoResult=fcoResult+UO.GetQuantity('finditem') 
         UO.Ignore('finditem', 'on') 
         fcoFindCount=fcoFindCount-1 
      Wend 
      UO.IgnoreReset() 
   EndIf 
   Return fcoResult 
End Sub 

Sub Hide() 
   While Not UO.Hidden() 
      UO.DeleteJournal() 
      UO.UseSkill(HideSkill) 
      Repeat 
         Wait(100) 
      Until UO.InJournal('You have hidden') OR UO.InJournal('seem to hide') 
   Wend 
End Sub 

Sub CheckLag() 
   UO.DeleteJournal() 
   UO.Click('backpack') 
   Repeat 
      Wait(100) 
   Until UO.InJournal('backpack') 
   CheckSave() 
End Sub 

Sub CheckSave() 
   UO.DeleteJournal() 
   If UO.InJournal('save has been') then 
      Wait(10000) 
   EndIf 
   UO.DeleteJournal() 
End Sub 
#=> 
Можно отсюда?

Code: Select all

sub Decode() 
var count 
UO.DeleteJournal() 
UO.AddObject('Bag for 1st level maps') 
while uo.Targeting() 
      wait(1000) 
      wend 
UO.DeleteJournal() 
UO.AddObject('Bag for 2nd level maps') 
while uo.Targeting() 
      wait(1000) 
      wend 
UO.DeleteJournal() 
UO.AddObject('Bag for 3rd level maps') 
while uo.Targeting() 
      wait(1000) 
      wend 
UO.DeleteJournal() 
UO.AddObject('Bag for 4th level maps') 
while uo.Targeting() 
      wait(1000) 
      wend 
UO.DeleteJournal() 
UO.AddObject('Bag for 5th level maps') 
while uo.Targeting() 
      wait(1000) 
      wend 
UO.DeleteJournal() 
UO.AddObject('Bag for Treasure Map') 
while uo.Targeting() 
      wait(1000) 
      wend 
repeat 
   uo.deletejournal() 
   uo.findtype(0x14EB) 
   uo.useobject('finditem') 
   count=0 
   while not uo.injournal("map") and count<20 
      count=count+1 
      wait(100) 
      wend 
   if uo.injournal("level 1") then 
      uo.moveitem('finditem',0,'Bag for 1st level maps') 
      CheckLag() 
      endif 
   if uo.injournal("level 2") then 
      uo.moveitem('finditem',0,'Bag for 2nd level maps') 
      CheckLag() 
      endif 
   if uo.injournal("level 3") then 
      uo.moveitem('finditem',0,'Bag for 3rd level maps') 
      CheckLag() 
      endif 
   if uo.injournal("level 4") then 
      uo.moveitem('finditem',0,'Bag for 4th level maps') 
      CheckLag() 
      endif 
   if uo.injournal("level 5") then 
      uo.moveitem('finditem',0,'Bag for 5th level maps') 
      CheckLag() 
      endif 
   if uo.injournal("no chance") then 
      uo.moveitem('finditem',0,'Bag for Treasure Map') 
       CheckLag() 
      endif 
   until UO.FindCount()==0 
UO.Print("Done") 
end sub 

sub CheckLag() 
    UO.DeleteJournal() 
    UO.Click('backpack') 
     repeat 
      Wait(500) 
     Until uo.InJournal('backpack') 
end sub 


Заранее благодарен.[/code]
Neznaika
Posts: 30
Joined: 2005-03-11 23:00:30

Post by Neznaika »

Помогите пожалуйста :roll:
Destruction
Junior Expert
Posts: 3221
Joined: 2004-06-24 22:08:56

Post by Destruction »

Мб. поиск?
Last edited by Destruction on 2005-05-04 01:39:21, edited 1 time in total.
YokoInjection CodeSweeper
Function not found?
Possession of mathematics at the level of art - a gift that is only available for election.
Sorry for my clumsy English.
Telegram: @tatikom
Neznaika
Posts: 30
Joined: 2005-03-11 23:00:30

Post by Neznaika »

Destruction wrote:Мб. поиск?
Не помогло :(
I'm
Expert!
Posts: 1396
Joined: 2004-10-15 22:38:04
Location: Moscow City.
Contact:

Post by I'm »

В поиске нет я помню все темы про карты ;)
А по этому вопросу Агрызыч оставил "домашнее задание" :lol:
Neznaika
Posts: 30
Joined: 2005-03-11 23:00:30

Post by Neznaika »

I'm wrote:В поиске нет я помню все темы про карты ;)
А по этому вопросу Агрызыч оставил "домашнее задание" :lol:
:(
Не могли бы вы мне помоч вставить? Пожалуйста :oops:
AGRS
Expert!
Posts: 1007
Joined: 2004-04-04 21:40:09
Contact:

Post by AGRS »

:idea: Дык он и есть с раскладкой по уровням! :evil:
Neznaika
Posts: 30
Joined: 2005-03-11 23:00:30

Post by Neznaika »

AGRS wrote::idea: Дык он и есть с раскладкой по уровням! :evil:
Дык он всё в один мешок сваливает :(
Beyonder
Expert!
Posts: 388
Joined: 2005-04-23 10:19:43
Contact:

Post by Beyonder »

Замени начало скрипта на это:

Code: Select all

#################################################################################################
#   >>> Константы                                                                                 #
#################################################################################################

Var SrcCont      = 0x40072864      # SERIAL Контейнер-источник

Var DstCont1     = 0x401C96C9      # SERIAL Контейнер-приемник 1 уровень
Var DstCont2     = 0x401C96C9      # SERIAL Контейнер-приемник 2 уровень
Var DstCont3     = 0x401C96C9      # SERIAL Контейнер-приемник 3 уровень
Var DstCont4     = 0x401C96C9      # SERIAL Контейнер-приемник 4 уровень
Var DstCont5     = 0x401C96C9      # SERIAL Контейнер-приемник 5 уровень

Var PackCont     = 0x400B9D61      # SERIAL Пак
Var MapType      = 0x14EB          # TYPE Карта
Var MapColor     = 0x0000          # COLOR Карта
Var HideSkill    = "Stealth"       
Var Lagaet       = "Ohuenno"       # STR Если = "Ohuenno", то дополнительная проверка на лаги

#################################################################################################
#   >>> Запуск                                                                                    #
#################################################################################################
sub Main()
var L1 = 0
var L2 = 0
var L3 = 0
var L4 = 0
var L5 = 0
var TOUT
  Repeat
    UO.FindType(STR(MapType), STR(MapColor), STR(SrcCont))
    If UO.FindCount()>0 Then
      UO.SetReceivingContainer("backpack")
      UO.Grab("1", "finditem")
      CheckLag()
      UO.UseObject("finditem")
      TOUT=0
      Repeat
        Wait(250)
        TOUT=TOUT+250
      Until UO.InJournal("map is level") or TOUT>500
      Wait(800)
      UO.Click("finditem")
      Wait(800)
      If UO.InJournal("1 level") Then
        UO.MoveItem("finditem", "1", STR(DstCont1), "20", "30", "0")
        L1=L1+1
      EndIf
      If UO.InJournal("2 level") Then
        UO.MoveItem("finditem", "1", STR(DstCont2), "40", "45", "0")
        L2=L2+1
      EndIf
      If UO.InJournal("3 level") Then
        UO.MoveItem("finditem", "1", STR(DstCont3), "60", "60", "0")
        L3=L3+1
      EndIf
      If UO.InJournal("4 level") Then
        UO.MoveItem("finditem", "1", STR(DstCont4), "80", "75", "0")
        L4=L4+1
      EndIf
      If UO.InJournal("5 level") Then
        UO.MoveItem("finditem", "1", STR(DstCont5), "100", "90", "0")
        L5=L5+1
      EndIf
      CheckLag()
      UO.FindType(STR(MapType), STR(MapColor), STR(SrcCont))
    EndIf
    UO.TextClear()
    UO.TextPrint("Level1="+STR(L1))
    UO.TextPrint("Level2="+STR(L2))
    UO.TextPrint("Level3="+STR(L3))
    UO.TextPrint("Level4="+STR(L4))
    UO.TextPrint("Level5="+STR(L5))
  Until UO.FindCount()<1
End Sub 
Должно работать или я не понял что делала первая функция main и зачем их 2-е штуки :).
Beyonder
Expert!
Posts: 388
Joined: 2005-04-23 10:19:43
Contact:

Post by Beyonder »

Немного я еще скрипт расшифровал, и решил что для работы вообще должно хватить только моей части. Если я чего-то не заметил - поправте меня.
Neznaika
Posts: 30
Joined: 2005-03-11 23:00:30

Post by Neznaika »

Строка 34 ошибка , с CheckLag'ом что-то :roll:
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

Neznaika wrote:Строка 34 ошибка , с CheckLag'ом что-то :roll:
да ничего... прсто его надо в этот же файл добавить ;)
Neznaika
Posts: 30
Joined: 2005-03-11 23:00:30

Post by Neznaika »

Sfagnum wrote:
Neznaika wrote:Строка 34 ошибка , с CheckLag'ом что-то :roll:
да ничего... прсто его надо в этот же файл добавить ;)
Поясните пожалуйста , ничего не понимаю :roll:
flake
Expert!
Posts: 746
Joined: 2004-08-11 23:56:17
Location: The Citadel
Contact:

Post by flake »

Code: Select all

Sub CheckLag() 
   UO.DeleteJournal() 
   UO.Click('backpack') 
   repeat 
      wait(500) 
   until UO.InJournal('backpack') 
end sub
Вот это водь вставь в файл со скриптом, в самый конец.
Neznaika
Posts: 30
Joined: 2005-03-11 23:00:30

Post by Neznaika »

Объеденил. Но теперь когда я делаю бинд на кнопку "*" exec Main , он не запускается вообще и ничего не пишет :(

Code: Select all

################################################################################################# 
#   >>> Êîíñòàíòû                                                                                 # 
################################################################################################# 

Var SrcCont      = 0x4036DF82      # SERIAL Êîíòåéíåð-èñòî÷íèê 

Var DstCont1     = 0x401F28CD      # SERIAL Êîíòåéíåð-ïðèåìíèê 1 óðîâåíü 
Var DstCont2     = 0x401F28CE      # SERIAL Êîíòåéíåð-ïðèåìíèê 2 óðîâåíü 
Var DstCont3     = 0x4030E694      # SERIAL Êîíòåéíåð-ïðèåìíèê 3 óðîâåíü 
Var DstCont4     = 0x40302D3B      # SERIAL Êîíòåéíåð-ïðèåìíèê 4 óðîâåíü 
Var DstCont5     = 0x401912AC      # SERIAL Êîíòåéíåð-ïðèåìíèê 5 óðîâåíü 

Var PackCont     = 0x4017B5E1      # SERIAL Ïàê 
Var MapType      = 0x14EB          # TYPE Êàðòà 
Var MapColor     = 0x0000          # COLOR Êàðòà 
Var HideSkill    = "Stealth"        
Var Lagaet       = "Ohuenno"       # STR Åñëè = "Ohuenno", òî äîïîëíèòåëüíàÿ ïðîâåðêà íà ëàãè 

################################################################################################# 
#   >>> Çàïóñê                                                                                    # 
################################################################################################# 
sub Main() 
var L1 = 0 
var L2 = 0 
var L3 = 0 
var L4 = 0 
var L5 = 0 
var TOUT 
  Repeat 
    UO.FindType(STR(MapType), STR(MapColor), STR(SrcCont)) 
    If UO.FindCount()>0 Then 
      UO.SetReceivingContainer("backpack") 
      UO.Grab("1", "finditem") 
      CheckLag() 
      UO.UseObject("finditem") 
      TOUT=0 
      Repeat 
        Wait(250) 
        TOUT=TOUT+250 
      Until UO.InJournal("map is level") or TOUT>500 
      Wait(800) 
      UO.Click("finditem") 
      Wait(800) 
      If UO.InJournal("1 level") Then 
        UO.MoveItem("finditem", "1", STR(DstCont1), "20", "30", "0") 
        L1=L1+1 
      EndIf 
      If UO.InJournal("2 level") Then 
        UO.MoveItem("finditem", "1", STR(DstCont2), "40", "45", "0") 
        L2=L2+1 
      EndIf 
      If UO.InJournal("3 level") Then 
        UO.MoveItem("finditem", "1", STR(DstCont3), "60", "60", "0") 
        L3=L3+1 
      EndIf 
      If UO.InJournal("4 level") Then 
        UO.MoveItem("finditem", "1", STR(DstCont4), "80", "75", "0") 
        L4=L4+1 
      EndIf 
      If UO.InJournal("5 level") Then 
        UO.MoveItem("finditem", "1", STR(DstCont5), "100", "90", "0") 
        L5=L5+1 
      EndIf 
      CheckLag() 
      UO.FindType(STR(MapType), STR(MapColor), STR(SrcCont)) 
    EndIf 
    UO.TextClear() 
    UO.TextPrint("Level1="+STR(L1)) 
    UO.TextPrint("Level2="+STR(L2)) 
    UO.TextPrint("Level3="+STR(L3)) 
    UO.TextPrint("Level4="+STR(L4)) 
    UO.TextPrint("Level5="+STR(L5)) 
  Until UO.FindCount()<1 
End Sub 

################################################################################################# 
#   >>> Ñåðâèñíûå ôóíêöèè                                                                           # 
################################################################################################# 

#=> 
Sub LoadItems(fmiItemCount, fmiItemType, fmiItemColor, fmiSrcContainerSerial, fmiDstContainerSerial) 
Var fmiToGrab 
   If CountOf(fmiItemType, fmiItemColor, fmiDstContainerSerial)<fmiItemCount Then 
      UO.SetReceivingContainer(STR(fmiDstContainerSerial)) 
      Repeat 
         CheckLag() 
         fmiToGrab=fmiItemCount-CountOf(fmiItemType, fmiItemColor, fmiDstContainerSerial) 
         UO.FindType(STR(fmiItemType), STR(fmiItemColor), STR(fmiSrcContainerSerial)) 
         If UO.FindCount()>0 Then 
            UO.Grab(STR(fmiToGrab), 'finditem') 
            Wait(300) 
         EndIf 
      If Lagaet=="Ohuenno" Then 
         CheckLag() 
      EndIf 
      Until CountOf(fmiItemType, fmiItemColor, fmiSrcContainerSerial)==0 or CountOf(fmiItemType, fmiItemColor, fmiDstContainerSerial)>=fmiItemCount 
      UO.UnsetReceivingContainer() 
   End If 
Return CountOf(fmiItemType, fmiItemColor, fmiDstContainerSerial) 
End Sub 

Sub MoveAllItems(fmiItemType, fmiItemColor, fmiSrcContainerSerial, fmiDstContainerSerial) 
      UO.SetReceivingContainer(STR(fmiDstContainerSerial)) 
      Repeat 
         CheckLag() 
         UO.FindType(STR(fmiItemType), STR(fmiItemColor), STR(fmiSrcContainerSerial)) 
         If UO.FindCount()>0 Then 
            UO.Grab(0, 'finditem') 
            Wait(300) 
         EndIf 
      If Lagaet=="Ohuenno" Then 
         CheckLag() 
      EndIf 
      Until UO.FindCount()<1 
      UO.UnsetReceivingContainer() 
End Sub 

Sub CountOf(fcoItemType, fcoItemColor, fcoContainerSerial) 
Var fcoFindCount = 0 
Var fcoResult = 0 
   UO.FindType(STR(fcoItemType), STR(fcoItemColor), STR(fcoContainerSerial)) 
   fcoFindCount=UO.FindCount() 
   If fcoFindCount==1 Then 
      fcoResult=UO.GetQuantity('finditem') 
   EndIf 
   If fcoFindCount>1 Then 
      While fcoFindCount>0 
         UO.FindType(STR(fcoItemType), STR(fcoItemColor), STR(fcoContainerSerial)) 
         fcoResult=fcoResult+UO.GetQuantity('finditem') 
         UO.Ignore('finditem', 'on') 
         fcoFindCount=fcoFindCount-1 
      Wend 
      UO.IgnoreReset() 
   EndIf 
   Return fcoResult 
End Sub 

Sub Hide() 
   While Not UO.Hidden() 
      UO.DeleteJournal() 
      UO.UseSkill(HideSkill) 
      Repeat 
         Wait(100) 
      Until UO.InJournal('You have hidden') OR UO.InJournal('seem to hide') 
   Wend 
End Sub 

Sub CheckLag() 
   UO.DeleteJournal() 
   UO.Click('backpack') 
   Repeat 
      Wait(100) 
   Until UO.InJournal('backpack') 
   CheckSave() 
End Sub 

Sub CheckSave() 
   UO.DeleteJournal() 
   If UO.InJournal('save has been') then 
      Wait(10000) 
   EndIf 
   UO.DeleteJournal() 
End Sub 
#=> 
Neznaika
Posts: 30
Joined: 2005-03-11 23:00:30

Post by Neznaika »

Помогите пожалуйста кто-нибудь :!:
ОООоочень прошу :!:
Beyonder
Expert!
Posts: 388
Joined: 2005-04-23 10:19:43
Contact:

Post by Beyonder »

Да не может быть, хоть что-то он должен писать или делать.
На всякий случай проверь точно ли при нажатии на свой бекпак появляеться надпись backpack.

Кстати, какой шард?
Neznaika
Posts: 30
Joined: 2005-03-11 23:00:30

Post by Neznaika »

Beyonder wrote:Да не может быть, хоть что-то он должен писать или делать.
На всякий случай проверь точно ли при нажатии на свой бекпак появляеться надпись backpack.

Кстати, какой шард?
Проверил на 2-ух компьютерах с разными версиями инжекта , переменные забил правильно , проверял раз 5.
При нажатии на бинд вообще ничего не пишет (кнопка работает :) )
DRW.
Neznaika
Posts: 30
Joined: 2005-03-11 23:00:30

Post by Neznaika »

Всё , разобрался!
Всем огромное спасибо за помощ!
Скрипт замечательно работает!!!
Спасибо.
Beyonder
Expert!
Posts: 388
Joined: 2005-04-23 10:19:43
Contact:

Post by Beyonder »

А если не секрет, то в чем был прикол?
Post Reply