Page 1 of 1
Меню крафта.
Posted: 2009-10-13 14:26:26
by CoFFiN
Добрый день. Подскажите пожалуйста как определить названия меню крафта.
ПРосто все скрипты скажем на БС не работают на шарде УТОПИЯ.
Тоесть я так понимаю что названия крафтерских меню отличается от других шардов.....
Вопрос:
1. Как определить название менюшек
2. Как правильно написать данную команду
UO.WaitMenu('Blacksmithing','Armor,'Platemail,'Platemail gloves').......может я что-то неправильно делаю ???...
Posted: 2009-10-13 14:46:16
by elke
нуу =) меню крафта:
сверху когда крафтишь есть названия менюшек, их и надо вписывать в UO.WaitMenu ('1,2, 2,3, 3,4') где 1,2 ето 1 - ето самое первое название менюки, 2 - ето когда ты наводишь на чтото либо сверху тоже пишется, и так далее
пример:
Code: Select all
('What do you want to carve', 'Bowyer Items', 'Bowyer Items', 'Shafts' )
пример из бовкрафта
в твоем случаее
Code: Select all
UO.WaitMenu('Blacksmithing' , 'Armor', 'Armor' , 'Platemail' , 'Platemail' , 'Platemail gloves')
Posted: 2009-10-13 16:14:27
by CoFFiN
Спасибо большое. ))))
Принцип понял. ))))) тока в моем случае получается так )))
UO.WaitMenu('What do you wish to make?' , 'Armor', 'Select armor' , 'Platemail' , 'Select item' , 'Platemail gloves')
главное понять принцип ))))))) премного благодарен ))) тему можна закрывать )
Posted: 2009-10-13 19:42:19
by Mirage
не обязательно писать полностью фразы и названия. достаточно первые буквы первого слова
UO.WaitMenu('Wh' , 'Arm', 'Sele' , 'Plat' , 'Sel' , 'Plate')
'Select *****' помоему лишнее

Posted: 2009-10-14 17:59:26
by CoFFiN
Тут все ясно )))) простите за еще один вопрос.....
UO.FindType( 'Logi', -1, 1 ) ; Ищем логи на полу
wait( 2000 )
If UO.FindCount()<75 Then
UO.Print("Logs not found, script terminated")
return
Else
UO.DeleteJournal()
UO.CancelMenu()
wait (100)
UO.WaitMenu ('Choose a category.', 'Dye Tub', 'Choose an item', 'Dye Tub' )
UO.WaitTargetobject('finditem')
UO.UseType( Rubanok )
почему не работает ?????
Клиент пишет waitmenu cancelled: Choose a category.
просто я изучал програмирование в школе...очень давно и на базе паскаля.........так что простите за глупые вопросы ))
Posted: 2009-10-15 11:15:08
by elke
Code: Select all
UO.WaitMenu ('Choose a category.', 'Dye Tub', 'Choose an item', 'Dye Tub' )
а говоришь все понял

Code: Select all
UO.WaitMenu ('Choose a category.', 'Dye Tub')
мне кажется вот так надо! ну судя по твоим записям

[/code]
Posted: 2009-10-15 13:43:24
by Mirage
CoFFiN wrote:Choose a category.
Селект на Чуз поменял

))
То что пишется ВНИЗУ игрового окна не нужно указывать в меню. только то что пишется в ОКНЕ КРАФТА ВВЕРХУ и сам ВЫБОР . И все
обычно выглядят так:
Code: Select all
UO.WaitMenu ('What do you', 'Bow')
UO.WaitMenu ('What do you', 'Torch')
UO.WaitMenu ('Tinkering','Keys','Keys','Iron key' )
UO.WaitMenu ('Tinkering', 'Tools', 'Tools', 'lockpick' )
UO.WaitMenu ('Blacksmithing', 'Weapons', 'Fencing', 'Dagger' )
UO.WaitMenu ('Carpentry', 'Weapons', 'Weapons', 'Club')
UO.WaitMenu ('What sort of potion', 'Strength potion')
Posted: 2009-10-15 18:35:20
by CoFFiN
elke wrote:Code: Select all
UO.WaitMenu ('Choose a category.', 'Dye Tub', 'Choose an item', 'Dye Tub' )
а говоришь все понял

В том то и дело что все понял......причем вот в таком виде меню работает........если написать скрипт
sub 123()
UO.WaitMenu ('Choose a category.', 'Dye Tub', 'Choose an item', 'Dye Tub' )
endsub
а потом этот скрипт запустить.........то вручную нажимаю на рубанок..потом на логи....и меню срабатывает...он сразу начинает крафтить.......
Проблема в том что я не понимаю в какой порядке все делать...сначала вейт меню....потом вейттарджетобьект(на логи)....и потом на рубанок так ??? и какие паузы между командами
Posted: 2009-10-15 20:54:31
by Scripts Writer
Для таких не понятливых написаны уроки, 1 из которых по меню был написан мною.
Ссылка в подписи.
Posted: 2009-10-17 07:05:22
by CoFFiN
Спасибо....до этого почему то не мог найти ни одного урока про меню крафта.........
в принципе мне и надо было урок ))))......проще прочитать чем задовать вопросы..премного благодарен
Posted: 2009-10-17 07:10:34
by CoFFiN
Прочитал уроки....пришел к выводу что мой скрипт написан корректно....
В таком случае вопрос ...ПОЧЕМУ ОН НЕ РАБОТАЕТ ??Г?
Posted: 2009-10-17 13:35:41
by Mirage
наверное потому что ты в нем гдето ошибся
Скрипт и название шарда напиши. Если есть возможность то прикреми картинку ПЕРВОГО окна с меню - чето меня сомнения берут насчет твоего "Choose a category."
PS простой крафт 1 единицы.
Code: Select all
sub CarpentryClub()
VAR saw = '0x1034' #пила#
VAR log = '0x1BDD'
VAR LastTimer
UO.DeleteJournal()
LastTimer=UO.Timer()
UO.WaitMenu ('Carpentry', 'Weapons', 'Weapons', 'Club')
UO.Usetype( saw )
repeat
wait( 300 )
until UO.InJournal("You put|положили|fail|не удалось|You broke|сломали") or UO.Timer()>LastTimer+300
end sub
на моем шарде только кузнецу надо прицелом сырье указывать.
Posted: 2009-10-21 21:26:37
by CoFFiN
Шард "Utopia"
скрип предназначен для крафта красок...после крафта смотрит...Если туба с редким цветом в один мешок...если туба обычная то либо во второй мешок либо в треш
на счет скрина....щас времени нет делать...НО ТОЧНО МОГУ СКАЗАТЬ....КОМАНДА UO.waitmenu РАБОТАЕТ.....пусть тебя не берут сомнения...бардак гдето в районе использования инструмента и логов....
вот мои наработки......кстати на утопии почти везде надо указывать прицелом сырье для крафта и для тинкера и для карпентера и для БСа
sub carpentry()
VAR Sunduk1 = '0x42FE5AD6' ; Сериал сундука с VIP-красками
VAR Sunduk2 = '0x42FE7A33' ; Сериал сундука с обычными красками
VAR Logi = '0x1BDD' ; Тип логов
VAR Rubanok = '0x1035' ; Тип инструмента карпентера
VAR Tyb = '0x0FAB' ; Тип тубы с краской
VAR Kolvo = 75 ; Брать логов (75 логов = 1 туба краски)
VAR j, k
While UO.Life > 0
UO.FindType( 'Logi', -1, 1 ) ; Ищем логи на полу
wait( 2000 )
If UO.FindCount()<75 Then
UO.Print("Logs not found, script terminated")
return
Else
UO.DeleteJournal()
UO.CancelMenu()
UO.WaitTargetground('finditem')
UO.UseType( Rubanok )
UO.WaitMenu ('Choose a category.', 'Dye Tub', 'Choose an item', 'Dye Tub' )
k = 0
while NOT UO.InJournal('You make') AND NOT UO.InJournal('fail') AND ( k < 30 )
k = k + 1
wait(500)
wend
; Wait( 14000 )
; Скрафтили краску
; Сразу переложим ее в мешок
While UO.Count( Tyb, '0x0000' ) > 0
UO.FindType( Tyb, '0x0000' ,-1, 'backpack' )
UO.MoveItem( 'finditem', 0, 'Sunduk2' )
wait (2000)
wend
Wend
end sub
там недоделано пока перекладывание в мешки...но это уже другая проблема
Posted: 2009-10-22 13:20:08
by Mirage
Давай начнем с простого. ТИПО крафт одного предмета. Сразу вопрос. У вас можно юзать сырье с пола? Не обязательно брать в пак? Если да то проверь вот это:
Code: Select all
VAR Logi = '0x1BDD' ; Тип логов
VAR Rubanok = '0x1035' ; Тип инструмента карпентера
sub carpentry()
UO.FindType( 'Logi', -1, -1 )
UO.DeleteJournal()
UO.WaitMenu ('Choose a category.', 'Dye Tub', 'Choose an item', 'Dye Tub' )
UO.WaitTargetObject('finditem')
UO.UseType( Rubanok )
repeat
wait( 300 )
until UO.InJournal('make|fail')
end sub
Если всетаки нужно с пака то надо сделать так.
Возьми 50 логов в пак и рубанок. Запусти вот такой скрипт:
Code: Select all
VAR Logi = '0x1BDD' ; Тип логов
VAR Rubanok = '0x1035' ; Тип инструмента карпентера
sub carpentry()
UO.DeleteJournal()
UO.WaitMenu ('Choose a category.', 'Dye Tub', 'Choose an item', 'Dye Tub' )
UO.Waittargettype ( Logi )
UO.UseType( Rubanok )
repeat
wait( 300 )
until UO.InJournal('make|fail')
end sub
Posted: 2009-10-23 20:42:25
by CoFFiN
У нес с пола крафтить можно...
в первом варианте пишет
You can only use that on wood!