Сьогодні: 07 червня 2025 18:54

Часовий пояс UTC+03:00




Створити нову тему  Відповісти  [ 1 повідомлення ] 
Автор Повідомлення
 Тема повідомлення: Мой макрос на ламбер
ПовідомленняДодано: 09 січня 2004 12:08 
Начинающий
Начинающий

З нами з: 07 жовтня 2002 00:00
Повідомлень: 33
Макрос с ламой. Расшринковуешь ламу, ложешь в сумку топор и запускаешь макрос.
В сундук, в который сбрасываеться (его ID устанавливаеться переменной %IDChest) ложиться в верхний левый угол другой сундук, в него и складываються логи (защита от тех кто любит положить свой сундук поверх того, в который складываеться), устанавливаеться максимальны вес переносимый чаром переменной
%MaxWeight. Да еще забыл про бинты, их надо тоже положить с сумку. Макрос автоматически бегает за Древодриадами и Риперами.

Как определить:
Код:
 %x 876
 %y 2178
 %t 3296
думаю многи знают, кто работал с ИзиУО

Кому непонятно задавайте вопросы. :)
******************************************************
Код:
  initEvents
****Настройки
  **ID Сундука
  set %IDChest MQCKDQE 
  set %MaxWeight 550
****Начальные установки
  set %PredID 0
  set %Temp 0
  set %LamaID 0
  set %Hatchet 0
  set %LamaPacID 0
*************
  gosub Beg
  gosub GetIDLama
l2:
  gosub Ignor
  set %ct 1
l1:
  msg %ct $
  gosub GoNextRubka
  set %ct %ct + 1
  if #weight > %MaxWeight
  {
     gosub WaitLama 
     gosub Sbros
  }
  set %Temp #maxhits - 40
  if #hits < %Temp
  {  
      gosub Ataka
  } 
  if %ct < 43 
  {
     goto l1
  }
  move 890 2150 0
  move 865 2150 
  gosub WaitLama  
  gosub GoBeg
  gosub WaitLama 
  gosub SbrosHome
  goto l2
  stop
*************
  sub Beg
    event macro 8 1
    wait 1s
    contpos  765 1
    event macro 8 2
    wait 1s
    event macro 10 2
    wait 1s
    contpos  440 605
    event macro 8 7
    wait 1s
    contpos  780 335
    finditem FSF_BSF
    if #findkind <> 0
    {
        msg Нет топора!!! $
        stop
    }
    set %Hatchet #findid
    **msg 'pc lang trans $ 
  return
*************
   sub Ignor
    **finditem HS
    ignoreItem GQNQS  
    ignoreItem HYRVAB
    ignoreItem KAUEY
  return
*************
  sub GoBeg
   gb1:
      move 865 2150 0 10s
      if #CharPosX = 865
      {
        if #CharPosY = 2150
        {
          goto gb2      
        }     
      }
      goto gb1
   gb2:
  return
*************
  sub SbrosHome
     ignoreItem reset
   sb1:
     set #LObjectID %IDChest
     event Macro 17 0 
     wait 10
     if #ContID <> %IDChest
     {
       goto sb1    
     }
     contpos  0 0
   sb2:
     set #lobjectid %LamaID
     event macro 17 0  
     wait 10
     if #ContID <> %LamaPacID
     {
       goto sb2    
     }
     contpos  780 540
   sb3: 
     findItem MMK_MZF_WZF_POF
     if %PredID = #findID
     {
       ignoreItem #findID
       goto sb3
     }  
     set %PredID #findID
     if #findKind <> -1
     {
       event Drag #findID
       key Enter
       wait 20
       click 48 123 p
       goto sb3 
     }  
     click 95 75 r
  return
*************
  sub GetIDLama
   gl1:
     findItem WN_BO
     if #findKind = 1
     { 
       set %Temp #CharPosX + 1 
       if #findX > %Temp
       {
         ignoreItem #findID
         goto gl1
       }
       set %Temp #CharPosX - 1     
       if #findX < %Temp
       {
         ignoreItem #findID
         goto gl1
       }    
       set %Temp #CharPosY + 1
       if #findY > %Temp
       {
         ignoreItem #findID
         goto gl1
       }
       set %Temp #CharPosY - 1    
       if #findY < %Temp
       {
         ignoreItem #findID
         goto gl1
       }
       set %LamaID #findID
       **Определение ID сумки
       set #lobjectid %LamaID
       event macro 17 0  
       wait 2s
       set %LamaPacID #contID
       set %Temp #ContPosX + 100 
       click %Temp #ContPosY r
       msg All come$
       goto gl2
     }
     goto gl1
   gl2:      
  return
*************
  sub GoNextRubka
        if %ct = 1 
        {
          set %x 864
          set %y 2160
          set %t 3296
        }
        if %ct = 2 
        {
          move 868 2161 0
          gosub WaitLama
          set %x 864
          set %y 2166
          set %t 3277
        }
        if %ct = 3 
        {
          set %x 864
          set %y 2169
          set %t 3290
        }
        if %ct = 4 
        {
          set %x 868
          set %y 2169
          set %t 3283
        }
        if %ct = 5 
        {
          set %x 864
          set %y 2175
          set %t 3283
        }
        if %ct = 6 
        {
          set %x 868
          set %y 2175
          set %t 3283
        }
        if %ct = 7 
        {
          set %x 868
          set %y 2178
          set %t 3280
        }
        if %ct = 8 
        {
          set %x 872
          set %y 2181
          set %t 3277
        }
        if %ct = 9 
        {
          set %x 876
          set %y 2181
          set %t 3293
        }
        if %ct = 10 
        {
          set %x 876
          set %y 2178
          set %t 3296
        }
       if %ct = 11 
        {
          set %x 876
          set %y 2175
          set %t 3283
        }    
       if %ct = 12 
        {
          set %x 872
          set %y 2172
          set %t 3293
        }
        if %ct = 13 
        {
          set %x 872
          set %y 2169
          set %t 3286
        }  
        if %ct = 14 
        {
          set %x 872
          set %y 2160
          set %t 3296
        }
        if %ct = 15 
        {
          set %x 876
          set %y 2157
          set %t 3299
        }
        if %ct = 16 
        {
          set %x 876
          set %y 2154
          set %t 3293
        }
        if %ct = 17 
        {
          set %x 872
          set %y 2154
          set %t 3280
        }
        if %ct = 18 
        {
          set %x 876
          set %y 2151
          set %t 3302
        }
        if %ct = 19 
        {
          set %x 880
          set %y 2151
          set %t 3290
        }
        if %ct = 20 
        {
          set %x 884
          set %y 2154
          set %t 3293
        }
        if %ct = 21 
        {
          set %x 884
          set %y 2157
          set %t 3293
        }
        if %ct = 22 
        {
          set %x 880
          set %y 2157
          set %t 3302
        }
        if %ct = 23 
        {
          set %x 880
          set %y 2160
          set %t 3283
        }
        if %ct = 24 
        {
          set %x 884
          set %y 2160
          set %t 3296
        }
        if %ct = 25 
        {
          move 881 2162 0    
          gosub WaitLama
          set %x 884
          set %y 2166
          set %t 3302
        }
        if %ct = 26 
        {
          set %x 884
          set %y 2169
          set %t 3296
        }
        if %ct = 27 
        {
          set %x 884
          set %y 2172
          set %t 3280
        }
        if %ct = 28 
        {
          set %x 880
          set %y 2172
          set %t 3293
        }
        if %ct = 29 
        {
          set %x 880
          set %y 2175
          set %t 3296
        }
        if %ct = 30 
        {
          set %x 880
          set %y 2178
          set %t 3299
        }
        if %ct = 31 
        {
          set %x 884
          set %y 2178
          set %t 3296
        }
        if %ct = 32 
        {
          set %x 880
          set %y 2181
          set %t 3299
        }
        if %ct = 33 
        {
          set %x 888
          set %y 2181
          set %t 3288
        }
        if %ct = 34 
        {
          set %x 888
          set %y 2178
          set %t 3280
        }
        if %ct = 35 
        {
          set %x 892
          set %y 2178
          set %t 3277
        }
        if %ct = 36 
        {
          set %x 892
          set %y 2175
          set %t 3302
        }
        if %ct = 37 
        {
          set %x 892
          set %y 2166
          set %t 3299
        }
        if %ct = 38 
        {
          set %x 888
          set %y 2163
          set %t 3296
        }
        if %ct = 39 
        {
          set %x 892
          set %y 2160
          set %t 3286
        }
        if %ct = 40 
        {
          set %x 888
          set %y 2157
          set %t 3286
        }
        if %ct = 40 
        {
          set %x 888
          set %y 2154
          set %t 3290
        }
        if %ct = 41 
        {
          set %x 892
          set %y 2154
          set %t 3283
        }
        if %ct = 42 
        {
          set %x 892
          set %y 2151
          set %t 3290
        }
    ********
        move %x %y 2 
   ********
        set #lobjectid %hatchet
        set #ltargetX %x
        set #ltargetY %y
        set #ltargetZ 0
        set #ltargetkind 3
        set #ltargettile %t
      r3:  
        event macro 17 0      
        target 5s
        if #targcurs <> 1
        {
            goto r3
        }
        event macro 22 0   
        wait 2s
   ********
     r5:
       scanjournal 1
       if [202] in #journal 
       {
          goto r4
       }
       if _0B0:C5B_ in #journal
       {  
          gosub Ataka
       } 
       scanjournal 2
       if [202] in #journal
       {
          goto r4
       }
       if _0B0:C5B_ in #journal
       {  
          gosub Ataka
       }
       set %Temp #maxhits - 40
       if #hits < %Temp
       {  
          gosub Ataka
       } 
      ********************
       if #sysmsg = N/A 
       {
         wait 1s
         if #sysmsg = N/A 
         {
            goto r4
         }
       }
    goto r5
  r4:
   *********
  return
*************
  sub Sbros
   s1: 
     set #lobjectid %LamaID
     event macro 17 0  
     wait 10
     if #ContID <> %LamaPacID
     {
       goto s1    
     }
     contpos  780 540
     s2:
       finditem MMK_WZF_MZF_POF
       if #findkind <> -1 
       {
         if %PredID = #findID
         {
           ignoreItem #findID
           goto s2
         }  
       }
       set %PredID #findID
       if #findkind <> -1 
       {
          event drag #findid
          key Enter
          wait 20
          click 895 600 p
          ignoreItem #findID
          goto s2
       }
       click 923 644 r
  return
*************
  sub Ataka
     msg All stop $
     set %XV #CharPosX
     set %YV #CharPosY   
   at1:
     finditem HS_JE
     if #findkind = 1
     {
       move #FindX #FindY 0 5s
       goto at1
     }
     move %XV %YV 1 10s
     if #hits < #maxhits
     {
        gosub Heal
     } 
     msg All come $ 
  return
*************
 sub Heal  
    he1:
     if #hits < #maxhits
     {
        msg 'pc heal self $
        wait 8s
        goto he1       
     }
  return
*************
  sub WaitLama  
   wl1:
     finditem %LamaID
     if #findKind = 1
     { 
       set %Temp #CharPosX + 1 
       if #findX > %Temp
       {
         goto wl1
       }
       set %Temp #CharPosX - 1     
       if #findX < %Temp
       {
         goto wl1
       }    
       set %Temp #CharPosY + 1
       if #findY > %Temp
       {
         goto wl1
       }
       set %Temp #CharPosY - 1    
       if #findY < %Temp
       {
         goto wl1
       }
       goto wl2
     }
     goto wl1
   wl2:
  return
*************

_________________
Я думаю, значит я существую.


Догори
Показувати повідомлення за:  Сортувати за  
Створити нову тему  Відповісти  [ 1 повідомлення ] 

Часовий пояс UTC+03:00


Хто зараз онлайн

Користувачі, які зараз переглядають цей форум: Немає зареєстрованих користувачів


Ви не можете створювати нові теми у цьому форумі
Ви не можете відповідати на теми у цьому форумі
Ви не можете редагувати ваші повідомлення у цьому форумі
Ви не можете видаляти ваші повідомлення у цьому форумі
Ви не можете додавати файли у цьому форумі

Знайти: