*Взятие ресурсов+написание скролов+выгрузка в сундук*

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
Toxuyc
Posts: 3
Joined: 2010-12-26 15:15:17

*Взятие ресурсов+написание скролов+выгрузка в сундук*

Post by Toxuyc »

Сообственно реализовал такую вещь:
1)Берётся из сундука по 1 ресурсу
2)Пишется 1 скролл
3)Скрол выгружается в сундук с готовыми скролами,одевается арм(восстанавливающий ману)+медитация до полной маны,одевается арм в котором пишем скролы,далее пункт 1)

Code: Select all

######################################################################
########################Пишем скролы Mana Vampir(ресы в сундуке)######
######################################################################

#0x0F7B ; BM
#0x0F7A ; BP
#0x0F84 ; GA
#0x0F85 ; GI
#0x0F86 ; MR
#0x0F88 ; NS
#0x0F8C ; SA
#0x0F8D ; SS
#0x0f87 ; глазки


sub ScrollManaVampire()
 ##################################################
 ########### У С Т А Н О В К И ####################
 ##################################################
 uo.automenu('Spell Circles','Circle 7')
 uo.automenu('Spell Circle 7','Mana Vampire')
 #Записываем сундук с ресурсами#
 UO.CharPrint('0x0385',"Где лежат ресурсы??")
 wait(200)
 uo.addobject('resourse')
 while uo.targeting()
 wait(200)
 wend
 #Записываем сундук куда складываем готовые скролы#
 UO.CharPrint('0x0385',"Куда складываем готовые скролы?")
 uo.addobject('complete')
 while uo.targeting()
 wait(200)
 wend
 ##################################################
 ########### НАПИСАНИЕ СВИТКОВ ####################
 ##################################################
 repeat
  wait(500)
  UO.CharPrint('0x0385',"Берём реги и пустой скрол...")
  Getregandscroll()
  wait(500)
  UO.CharPrint('0x0385',"Пишем свитки Mana Vampire...")
  Make()
  wait(500)
  UO.CharPrint('0x0385',"Складываем готовые свитки в сундук...")
  AddToContainer()
  UO.CharPrint('0x0385',"Одеваем драгон,медитируем до полной маны...")
  Meditation()
 until UO.Dead()
 ##################################################
 ########### К  О  Н  Е  Ц ########################
 ##################################################
end sub
 ##################################################
 ########### Описание функций #####################
 ##################################################

sub   Getregandscroll()
 UO.FindType('0x0e34',-1,'resourse') #реги
 UO.MoveItem('finditem',1,'backpack')
 wait(500)
 UO.FindType('0x0F7B',-1,'resourse') #реги
 UO.MoveItem('finditem',1,'backpack')
 wait(500)
 UO.FindType('0x0F7A',-1,'resourse') #реги
 UO.MoveItem('finditem',1,'backpack')
 wait(500)
 UO.FindType('0x0F86',-1,'resourse') #реги
 UO.MoveItem('finditem',1,'backpack')
 wait(500)
 UO.FindType('0x0F8D',-1,'resourse') #реги
 UO.MoveItem('finditem',1,'backpack')
 wait(500)
end sub

sub Make()
  UO.DeleteJournal()
  UO.UseType('0x097b') #Еда
  UO.UseType('0x0e34') #скрол пустой
  wait(500)
  while NOT UO.InJournal("You put") AND NOT UO.InJournal("You fail")
   wait(1000)
  wend
end sub

sub AddToContainer()
  UO.FindType('0x1f61',-1,'backpack') #мана вампир скролл
  Uo.Moveitem('finditem',0,'complete')
end sub

sub Meditation()
 UO.UseType('0x1415') #грудь
 wait(100)
 UO.UseType('0x1411') #ноги
  wait(100)
 UO.UseType('0x1410') #плечи
  wait(100)
 UO.UseType('0x1414') #руки
  wait(100)
 UO.UseType('0x1413') #горжетка
  wait(100)
 UO.UseType('0x1412') #шлем
 repeat
  uo.UseSkill('Meditation')
  wait(1000)
 until UO.InJournal("You are at peace")
 UO.UseType('0x13ca') #грудь
  wait(100)
#UO.UseType('0x1411') #ноги
 UO.UseType('0x13c5') #плечи
  wait(100)
 UO.UseType('0x13c6') #руки
  wait(100)
 UO.UseType('0x13c7') #горжетка
  wait(100)
 UO.UseType('0x1db9') #шлем
end sub

######################################################################
########################К       О       Н       Е      Ц############################
######################################################################


Проблема: Инжект периодически вылетает-пишет Terminate.....
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: *Взятие ресурсов+написание скролов+выгрузка в сундук*

Post by Mirage »

1) Можно ПОПРОБОВАТЬ использовать команду dress
Описание: dress •

uo.dress(name)

Снимает всю одежду, потом одевает одежду набора my_name, запомненую предварительно командой setdress. Набор одежды содержит конкретные вещи, и при потере вещи набора инжект всё равно будет пытаться её надеть, что может париводить к ошибкам клиента. Рекомендуется выставить задержку между одеваниями отдельных вещей командой setdressspeed.


2) UO.FindType('0x0F7B',-1,'resourse') #реги
UO.MoveItem('finditem',1,'backpack')
Не очень удачная форма записи. Лучше писать вот так:

Code: Select all

UO.FindType('0x0F7B',-1,'resourse') #реги
   if UO.FindCount() > 0 Then
      UO.MoveItem('finditem',1,'backpack')
      wait(500)
   else
      return
   endif
UO.FindType('...

Тогда если предмет есть его переместит, если его нет скирпт прекратит работу.

3) Зачем передвигать по 1 регу? Постоянно дрюкать туда сюда... Можно же штук по 100 всех регов набрать и крафтить пока они есть в паке

Code: Select all

if uo.count('0x0F7B')<1 then
   UO.FindType('0x0F7B',-1,'resourse') #реги
   if UO.FindCount() > 0 Then
      UO.MoveItem('finditem',100,'backpack')
      wait(500)
   else
      return
   endif
endif

4) У тебя не везде паузы ПОСЛЕ перемещения или использования объектов присутствуют.
5) всякие кричалки и сообщалки вставляются в скрипт толко на момент настройки. Лучше от них тоже постепенно отказываться уменьшая строки кода.
6) вверху перед автоменю добавь строку UO.CancelMenu()
7)

Code: Select all

repeat
  Getregandscroll()
  Make()
  AddToContainer()
  Meditation()
until UO.Dead()

все остальное (паузы и сообщения) растащить по соответствующим процедурам.

Если все равно будет крашить то попробую сам код переписать немного.
Toxuyc
Posts: 3
Joined: 2010-12-26 15:15:17

Re: *Взятие ресурсов+написание скролов+выгрузка в сундук*

Post by Toxuyc »

Спасибо огромное за советы!!!!Буду пробовать
Post Reply