Yoko
http://forum.yoko.com.ua/

Uni Craft
http://forum.yoko.com.ua/viewtopic.php?f=3&t=14323
Page 1 of 1

Author:  ADEPT_ABP [ 2009-01-24 14:13:54 ]
Post subject:  Uni Craft

Хочу сделать скрипт для всех крафтовых скиллов. Вопрос, были ли такие попытки(искал в форуме - не нашёл). Кто-нибудь писал подобное для себя? Какие "подводные камни" меня могут остановить(про лень можете не говорить - в курсе :mrgreen:)?

Предварительный набросок\шаблон:
Code:
###############################################################
### UniCraft (Adept_abp) ##################################
###############################################################
# Скрипт написан(сконструирован :) ) для всех крафтовых скилов,
# чтобы не заморачиваться с разнообразием. :)
# Для работы требуется наличие
# а) Ресурс\сырьё(ingot\log\reagent\(blank map\scroll))
# б) Инструмент(Tinker Tools\hammer\mortar or etc.)
# в) Сундук\мешок куда\откуда все берётся\складывается
# г) Начальный 30% скилл для раскачки
# д) Умение вставить нужные параметры переменных в скрипте
var pack, sunduk, q, r, c, tools   ; резервируем переменные
pack='backpack'                    ; контейнер куда будет перемещаться сырьё, для последующего использования
sunduk='0x4021B76D'                  ; Контейнер где хранится сырьё и куда будут складываться готовые изделия
q=1                                        ; Количество перемещаемого сырья из sunduk в pack
r='0x1BDD'                             ; Тип сырья
c='0x047C'                             ; Цвет сырья
tools='0x0F52'                         ; Тип инструмента

var promt, choice, promt1, choice1, promt2, choice2, promt3, choice3
promt='What do you'      ; Название первого кравтового меню
choice='shaft'         ; Первый выбор
promt1=' '            ; Название Второго кравтового меню
choice1=' '            ; Второй выбор
promt2=' '            ; Название Третого кравтового меню
choice2=' '            ; Третий выбор
promt3=' '            ; Название Четвёртого кравтового меню   
choice3=' '            ; Четвёртый выбор

Sub automenu()
uo.cancelmenu()
if promt3<>' ' then
uo.automenu(promt3,choice3)
endif
if promt2<>' ' then
uo.automenu(promt2,choice2)
endif
if promt1<>' ' then
uo.automenu(promt1,choice1)
endif
uo.automenu(promt,choice)
end sub

sub main()
uo.useobject(pack)
wait(500)
CheckLag()
uo.useobject(sunduk)
wait(500)
CheckLag()
while not uo.dead()
   if uo.Count(r,c)<1 then
      mi(r,c,q,sunduk,pack)
      CheckLag()
      wait(500)
   endif
   if uo.hidden() then
       craft()
   else
       hide()
   endif
   wait(200)
wend
end sub

Sub mi(item,color,q,box,box2)
uo.useobject(box)
CheckLag()
wait(500)
uo.findtype(item,color,box)
uo.moveitem('finditem',q,box2)
wait(400)
CheckLag()
end sub

sub cm()
uo.cancelmenu()
end sub

Sub craft()
cm()
AutoMenu()
while uo.Count(r,c) > 0
   uo.waittargettype(r,c)
    UO.usetype(tools);Попытка взять в руки инструмент
InJournal("You put the|failed.")
CheckLag()
wend
end sub

Sub Hide()
  if not uo.dead() then
    if not uo.hidden() then
      uo.warmode(0)
      uo.useskill("Hiding")
    endif
    InJournal("You have been revealed|You can't seem")
  endif
end sub

Sub InJournal(t)
var timer=uo.timer()
  DelTextInJournal(t)
  while not uo.InJournal(t) && uo.timer()<timer+90
    wait(200)
  wend
end sub

Sub DelTextInJournal(msg) ; msg это параметр, см. выше как его передают
  var nom=UO.InJournal(msg) ; ищем сообщение и в переменную его
  if nom>0 then
    UO.SetJournalLine(Nom - 1," ") ; подменим сообщение
    DelTextInJournal(msg) ; вызов функцией самой себя, рекурсия
  endif
end sub

Sub CheckLag()
  DelTextInJournal("backpack") ; вытрим ТОЛЬКО нужные нам сообщения в журнале
  UO.Click('backpack') ; одиночный клик по вашему backpack
InJournal("backpack")   ;       ждем сообщения в журнале
end sub


Некоторые функции взяты с форума. Не помню кто автор, сами отпишитесь. :D

P.S. Предлагайте свои идеи. По улучшению.

Author:  Savage [ 2009-01-24 15:16:24 ]
Post subject: 

А собственно зачем?

Author:  ADEPT_ABP [ 2009-01-24 15:18:22 ]
Post subject: 

А чтобы было. Чем не вариант? :)

Author:  Savage [ 2009-01-24 15:29:20 ]
Post subject: 

Ну дерзай. А что нужно крафтать как определять будешь?

Author:  Successful [ 2009-01-24 15:38:37 ]
Post subject: 

Code:
########################################################## 
###   Universal Craft / Универсальный Крафт v1.2 Beta  ###
##########################################################
### Внимание:
### Для  работы скрипта нужна версия YokoInjection 4DZ.
### Скачать dll этой версии можно                     
### от сюда: www.swines.nm.ru/injection.zip     
##########################################################
############################
### Описание и настройка ###
############################
### Для правильной работы скрипта нужно:
### 1.Поставить галочку в пункет Verbose Menu, в закладке Main.
### 2.Поменять переменные, приведеные инжекте.                   
### 3.Поменять функцию Craft.                               
###
### Universal Craft работает с: Blacksmitchy, Alchemy, Tailoring, Carpentry, Tinkering, Inscription.
### Все ресурсы, пустые мешки и т.д. берет из одного ящика.
### Защита от бага с физлами, когда ни с того, ни с сего подряд идут только физлы.
### Работает с любой сделанной продукцией, которую нельзя складывать в кучки: даггеры, ожерелья, палки, катаны, удочки и т.д.
### Берёт пусте мешочки, закидывает в другой контейнер и набивает до предела(255 вещей).
### Потом опять берёт пустой мешочек.
### Возможность "регулировать" частоту юзания дополнительного скилла(к примеру Spirit Speak, или же Arms Lore, все что вы пожелаете).
### Отлаженный алгоритм не смогут сбить лаги, WorldSave'ы или же FastLoot(UNSP, здесь я применил уникальное решение, которое ни разу не видел на форуме).
### Скрипт в большинстве случаев ждет событий, а не просто какое-то время(wait(...)), из-за этого увеличивается его надежность.
### Единственный минус скрипта: работает только для прокачки Alchemy и Inscription, так как когда у вас будут эти скиллы ГМы, вся продукция будет лежать в одной куче, а не в разных.
###                       
##################
### Переменные ###
##################
ух ты!
#####################
### Функция Craft ###
#####################
вай!

Author:  ADEPT_ABP [ 2009-01-24 16:06:32 ]
Post subject: 

Я же в поиске вбивал Uni + Craft!!? Как так? :?

Author:  Successful [ 2009-01-24 18:42:46 ]
Post subject: 

это не с еко :)

Author:  ADEPT_ABP [ 2009-01-24 21:26:02 ]
Post subject: 

Фух... Камень с души упал, да прямо на ноги. Тогда буду мучать скрипт, а не форум. :)

Page 1 of 1 All times are UTC+02:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/