Discussion:______________
http://yoko.netroof.net/forum/viewtopic.php?p=2574#2574
Author or poster:_________
Edred,
tercia@spb.lanck.net
Tested on:_______________
Цитадель
http://ultima.e-burg.ru
Must work:_______________
Sphere emu
Customization required:____
Yes/place (serial Sunduk1, Sunduk2; also check up types)
Description:______________
Скрипт для прокачки карпентера путем крафта удочек. Для работы вам потребуется поставить в доме два сундука, в один из них сложить кучу пустых мешков, второй сундук оставить пустым. Возьмите инструмент карпентера в пак, встаньте около сундуков, положите рядом с собой на пол логи.
Чар берет из первого сундука пустой мешок, помещает его во второй сундук, берет с пола 460 логов и крафтит удочки (1 удочка = 2 лога).
Готовые удочки сразу после крафта перекидывает в этот перемещенный мешок. По окончании крафта берет следующий мешок и по кругу. Если логи кончаются - останавливается.
Настройка: внесите в соответствующие переменные сериалы сундуков, проверьте типы логов, инструмента карпентера, мешков.
Yoko comment:___________
none
________________________
Code:
#####################################################################
; Carpentry. v.1.12b (c) Edred
;
; Чар берет из сундука 1 пустой мешок, кладет этот мешок в сундук 2,
; берет с пола логи, крафтит из них удочки и складывает эти удочки
; в этот мешок в сундуке 2. Если логи на полу или пустые мешки
; кончились - выход
;
sub carpentry()
VAR Sunduk1 = '0x4017439B' ; Сериал сундука с пустыми мешками
VAR Sunduk2 = '0x4000F46C' ; Сериал пустого сундука
VAR Meshok = '0x0E76' ; Тип мешка
VAR Logi = '0x1BDD' ; Тип логов
VAR Rubanok = '0x1031' ; Тип инструмента карпентера
VAR Udochka = '0xDBF' ; Тип удочки
VAR Kolvo = 460 ; Брать логов (2 лога = 1 удочка)
VAR MeshSer, j, k
While TRUE
UO.FindType( Logi, -1, 1 ) ; Ищем логи на полу
UO.Grab( Str( Kolvo ), 'finditem' ) ; Кладем логи в пак
wait( 2000 )
If UO.FindCount() == 0 Then
UO.Print("Logs not found, script terminated")
return
Endif
UO.FindType( Meshok, -1, Sunduk1 ) ; Ищем мешок в сундуке 1
MeshSer = UO.GetSerial( 'finditem' )
UO.Grab( '1', 'finditem' ) ; Кладем его в бэкпак
wait( 2000 )
UO.MoveItem( MeshSer, 0, Sunduk2 )
wait( 2000 )
While UO.Count( Logi ) > 0
; Пока в паке есть логи
UO.Print('Ostalos ' + Str( UO.Count( Logi ) ) + ' logov' )
UO.DeleteJournal()
UO.CancelMenu()
UO.WaitMenu ('Carpentry', 'Weapons & Tools', 'Weapons & Tools', 'fishing' )
UO.UseType( Rubanok )
k = 0
while NOT UO.InJournal('You put') AND NOT UO.InJournal('fail') AND ( k < 30 )
k = k + 1
wait(500)
wend
; Wait( 14000 )
; Скрафтили удочку
; Сразу переложим ее в мешок
if UO.Count( Udochka ) > 0 then
UO.FindType( Udochka, -1, 'backpack' )
UO.MoveItem( 'finditem', 0, MeshSer )
wait( 2000 )
UO.Print( 'Udochka perelozhena' )
end if
Wend
Wend
end sub