Перейти к содержанию
Форум шарда Middle-Earth
Авторизация  
Yeti

Крафт Ножниц

Рекомендуемые сообщения

Доброе утро!

 

Помогите плз разобраться, почему скрипт не доделывает свою работу до конца. Настроил два варианта производства ножниц через меню "Tools" и через меню "Metal Items", но оба скрипта останавливаются войдя каждый в свое меню, где нужно выбрать из списка вещей уже сами ножницы, но ножницы не выбираются и все останавливается висеть на этом меню. Причем если промотать меню вправо вручную и нажать на ножницы, то скрафтив их повторяет этот процесс и останавливается снова там же. Вот оба варианта скрипта:

 

1.

 

#Универсальный скрипт, всё работает, всё проверено, лёгким движением руки переделываем скрипт под нужный и вуаля !!!!

 

sub tinker()

Repeat

uo.deletejournal()

uo.usetype(0x097B)

UO.Exec("waitmenu 'Select an Item' 'Tools' 'Choose an Item' 'Scissors'") #делаем что-то

uo.exec("waittargetobject 0x58D22E4E") #ID-тряпки и/или лога(ID через пробел)

UO.Exec("usetype 0x1EBC") # Type рубанка или даггер(тинкер тулз)

wait(9000)

Until (1 == 0)

end sub

 

 

2.

 

#Универсальный скрипт, всё работает, всё проверено, лёгким движением руки переделываем скрипт под нужный и вуаля !!!!

 

sub tinker()

Repeat

uo.deletejournal()

uo.usetype(0x097B)

UO.Exec("waitmenu 'Select an Item' 'Metal Items' 'Choose an Item' 'Scissors'") #делаем что-то

uo.exec("waittargetobject 0x58D22E4E") #ID-тряпки и/или лога(ID через пробел)

UO.Exec("usetype 0x1EBC") # Type рубанка или даггер(тинкер тулз)

wait(9000)

Until (1 == 0)

end sub

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

sub scissors()
Repeat
uo.deletejournal()
UO.Exec("waitmenu 'Select an Item' 'Tools' 'Select an Item' 'Scissors'")
UO.exec("waittargettype 0x1BF2")
UO.Exec("usetype 0x1EBC")
wait(10000)
Until (1 == 0)
end sub

 

в сумку тинкер тулс и инги.

делает по типу ингов, так что лучше в пак положить один вид ингов и все. Если в паке много разных ингов и надо делать из определенных, то в UO.exec("waittargettype 0x1BF2") вместо типа вписываем айди, который получаем через ,info

 

UO.Exec("waitmenu 'Select an Item' 'Metal Items' 'Choose an Item' 'Scissors'") #делаем что-то

Ваша ошибка в этой строке. Скрипт тормозит потому что в том меню нету Choose an Item, там есть Select an Item ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
UO.exec("waittargettype 0x1BF2")

И да, лучше использовать таргет по типу а не по обджекту ... каждый раз вписывать обджект тайп, не очень удобно.

 

################################################################
##                   dev: Hi Jack a.k.a. Bullet                     ##
##                    shard: Middle-Earth 2015                         ##
################################################################


Sub Eat()
    UO.FindType('0x097B')
    Wait(200)
    If UO.FindCount() Then            # '0x097B' - жаренная рыба
        UO.UseObject('finditem')    # '0x09F2' - жаренное мясо
    Else                            # '0x171F' - бананы
        UO.Print("Нет еды!")
    End If
End Sub

################################################################

Sub Check(t)
    UO.DeleteJournal(UO.GetName())
    UO.Click('self')
    Repeat
        Wait(t)
    Until UO.InJournal(UO.GetName())
End Sub

################################################################

Sub Scissors()
    Var t,i=0
    Var max=0                    #max - к-во предметов для изготовления, в бекпек влезает 255
    UO.Exec('addobject bag')     #указываем сумку, в которую будут перемещены готовые итемы
    While UO.Targeting() 
        Wait(500)
    WEnd
    UO.Exec("useobject bag")
    If UO.GetQuantity('^0x1BF2') >= 4 Then
          While not i >= max
            t=0
            Check(500)
            UO.DeleteJournal('You create|You make|You destroy')
            UO.Exec("waitmenu 'Select' 'Tools' 'Select' 'Scissors'")
            UO.Exec("waittargettype 0x1BF2")
            UO.Exec("usetype 0x1EBC")
            While Not (UO.InJournal('You create|You make|You destroy')) Or t== 30
                  Wait(1000)
                  t=t+1
            WEnd
            If UO.InJournal ('You create|You make') Then
                   UO.Exec("moveitem '^0x0F9E' '' 'bag'")
                   Check(500)
                   i=i+1
             End If
            Eat()
             UO.Msg('Now '+STR(i)+' items out of '+STR(Max)+' are done.')
           WEnd
           UO.Msg('Done!')
           UO.Msg('Stop working.')
       Else 
           UO.Msg('Have no enougth ingots!')
           UO.Msg('Stop working.')
    End If
End Sub

################################################################

SUB MAIN()
    UO.Exec("terminate Scissors")
    UO.Exec("exec Scissors")
END SUB

 

Вот скрипт на изготовлене ножниц большими объемами.

Ест фишстейки, чекает лаги, перемещает готовое изделие в контейнер указанный при старте (прицелом тык).

Писал с работы, без клиента, мб где и пропустил что, отпишись если что ...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо большое за помощь!)

Скрипт от Данон работает отлично, а вот скрипт от Буллет почему то не видет кнопка инжи "Run function". Первый раз с таким сталкиваюсь, как обычно скопировал скрипт и вставил в блокнот файл, изменив расширение на .sc

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
почему то не видет кнопка инжи "Run function"

 

Возле кнопки есть выпадающее меню, выбери мейн и нажми "Run function".

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
Авторизация  

×
×
  • Создать...