|
Full spellbook
| |
MaG1StR_Yoda | Дата: Пятница, 26.06.2020, 19:30 | Сообщение # 1 |
Генералиссимус
Группа: Администраторы
Сообщений: 1026
Статус: Оффлайн
| Пока не готов
|
|
| |
ling | Дата: Воскресенье, 28.06.2020, 19:16 | Сообщение # 2 |
Рядовой
Группа: Пользователи
Сообщений: 7
Статус: Оффлайн
| sub full_sb() var ii var jj var scroll_type = 0x0E34 for ii = 1 to 8 for jj = 1 to 8 uo.automenu('circle', '(ii)') uo.automenu('spell', '(jj)') uo.usetype(0x0E34) wait(7000) next next end sub
Сделал такой вариант. У меня нет, к сожалению, перса, чтобы проверить. Буду благодарен за баг репорты. У меня не получается реализовать его через waitmenu, хотя это было бы изящнееДобавлено (28.06.2020, 19:16) --------------------------------------------- Да, надо в бекпаке иметь достаточно регов и скролов
|
|
| |
MaG1StR_Yoda | Дата: Воскресенье, 28.06.2020, 19:43 | Сообщение # 3 |
Генералиссимус
Группа: Администраторы
Сообщений: 1026
Статус: Оффлайн
| Цитата ling ( ) Сделал такой вариант. У меня нет, к сожалению, перса, чтобы проверить. Буду благодарен за баг репорты.У меня не получается реализовать его через waitmenu, хотя это было бы изящнее Неа , не пашет ... я скрипт пишу сейчас на нее , у меня на каждый скрол - впринципе он скролы уже печатает норм , сейчас думаю над действием - как это всё загнать в спелл бук. Потому что 2 спелбука конфликтуют в бекпаке
|
|
| |
ling | Дата: Воскресенье, 28.06.2020, 20:08 | Сообщение # 4 |
Рядовой
Группа: Пользователи
Сообщений: 7
Статус: Оффлайн
| Оказалось, что все, что в одинарных ковычках, инжект воспринимает как строку, поэтому пришлось чуть подшаманить Так должно работать
sub full_sb() var ii var jj var scroll_type = 0x0E34 for ii = 1 to 8 for jj = 1 to 8 uo.automenu('circle', '('+str(ii)+')') uo.automenu('spell', '('+str(jj)+')') uo.usetype(0x0E34) wait(8000) next next end sub
|
|
| |
MaG1StR_Yoda | Дата: Воскресенье, 28.06.2020, 20:48 | Сообщение # 5 |
Генералиссимус
Группа: Администраторы
Сообщений: 1026
Статус: Оффлайн
| Цитата ling ( ) Оказалось, что все, что в одинарных ковычках, инжект воспринимает как строку, поэтому пришлось чуть подшаманить Так должно работатьsub full_sb() var ii var jj var scroll_type = 0x0E34 for ii = 1 to 8 for jj = 1 to 8 uo.automenu('circle', '('+str(ii)+')') uo.automenu('spell', '('+str(jj)+')') uo.usetype(0x0E34) wait(8000) next next end sub Ну уже пошло , но он без остановки делает только Первый скрол из спеллбука - Clumsy
|
|
| |
ling | Дата: Пятница, 17.07.2020, 21:51 | Сообщение # 6 |
Рядовой
Группа: Пользователи
Сообщений: 7
Статус: Оффлайн
| sub full_sb() var ii var jj var scroll_type = 0x0E34 var trigger = 'finish scribing' uo.deletejournal() for ii = 1 to 8 for jj = 1 to 8 uo.deletejournal() uo.automenu('circle', '('+str(ii)+')') uo.automenu('spell', '('+str(jj)+')') uo.usetype(0x0E34) while not uo.injournal(trigger) wait(1000) wend wait(2000) if uo.mana < 50 then while uo.mana < 50 uo.useskill('Meditation') wait(5500) wend end if next next end sub
по-моему прелесть
|
|
| |
Гость | Дата: Среда, 29.07.2020, 08:40 | Сообщение # 7 |
Группа: Гости
| А что делать с физлами при рисовании?
|
|
| |
MaG1StR_Yoda | Дата: Среда, 29.07.2020, 21:27 | Сообщение # 8 |
Генералиссимус
Группа: Администраторы
Сообщений: 1026
Статус: Оффлайн
| Цитата Гость ( ) А что делать с физлами при рисовании? Ну этот скрипт на общую рисовку , просто пока некогда заниматься .... Впринципе , если этот доработать - вписать сюда "журнал" то должен получиться репит , т.е. если физл рисовки - повторить данный скрол ...
|
|
| |
ling | Дата: Среда, 29.07.2020, 22:11 | Сообщение # 9 |
Рядовой
Группа: Пользователи
Сообщений: 7
Статус: Оффлайн
| Работающий (вроде бы) вариант. Добирает ресурсы, складывает готовые книги в указанный мешок (не в бекпаке).
Код #Full spellbook script made by dr. Denis #Have another backpack with reagents, scrolls and empty books in it. The script runs until you have all of the resources #When yourun the script you need to choose the bag with resources and also a bag where you will put the full spellbooks #Run full_sb
sub full_sb() var ii var jj var scroll_type = 0x0E34 var sb_type = 0x0EFA var trigger_1 = 'finish scribing' var trigger_2 = 'fail to scribe' var trigger_3 = 'lack reagents' uo.addobject('resources_bag') while uo.targeting() uo.print('Select a bag with resources and empty books') wait(1000) wend uo.addobject('spellbook_bag') while uo.targeting() uo.print('Select a bag with filled spellbooks') wait(1000) wend uo.useobject('resources_bag') wait(700) uo.deletejournal() while uo.count('bp', -1, 'resources_bag') > 0 and uo.count('bm', -1, 'resources_bag') > 0 and uo.count('ga', -1, 'resources_bag') > 0 and uo.count('gs', -1, 'resources_bag') > 0 and uo.count('mr', -1, 'resources_bag') > 0 and uo.count('ns', -1, 'resources_bag') > 0 and uo.count('sa', -1, 'resources_bag') > 0 and uo.count('ss', -1, 'resources_bag') > 0 and uo.count(scroll_type, -1, 'resources_bag') > 0 and uo.count(sb_type, -1, 'resources_bag') > 0 for ii = 1 to 8 for jj = 1 to 8 uo.deletejournal() restock() wait(700) while not uo.injournal(trigger_1) uo.deletejournal() uo.cancelmenu() wait(500) uo.automenu('circle', '('+str(ii)+')') uo.automenu('spell', '('+str(jj)+')') uo.usetype(0x0E34) while not (uo.injournal(trigger_1) or uo.injournal(trigger_2) or uo.injournal(trigger_3)) wait(1000) wend restock() wait(3000) wend wait(1000) if uo.mana < 70 then while uo.mana < 70 uo.useskill('Meditation') wait(5500) wend end if next next fill_spellbook() remove_all() uo.print('Spellbook has beed filled') wend uo.print('We ran out of resources. Script ended.') end sub
sub restock() var reg_bp var scroll_type = 0x0E34 uo.print('bp = ' + str(uo.count('bp'))) uo.print('bm = ' + str(uo.count('bm'))) uo.print('ga = ' + str(uo.count('ga'))) uo.print('gs = ' + str(uo.count('gs'))) uo.print('mr = ' + str(uo.count('mr'))) uo.print('ns = ' + str(uo.count('ns'))) uo.print('sa = ' + str(uo.count('sa'))) uo.print('ss = ' + str(uo.count('ss'))) uo.print('scrolls = ' + str(uo.count(scroll_type))) wait(500) uo.useobject('resources_bag') wait(1000) uo.print('Restocking resources') while uo.count('bp') < 1 reg_bp = uo.findtype('bp', '-1', 'resources_bag') uo.moveitem(reg_bp, 1) wait(700) wend while uo.count('bm') < 1 reg_bp = uo.findtype('bm', '-1', 'resources_bag') uo.moveitem(reg_bp, 1) wait(700) wend while uo.count('ga') < 1 reg_bp = uo.findtype('ga', '-1', 'resources_bag') uo.moveitem(reg_bp, 1) wait(700) wend while uo.count('gs') < 1 reg_bp = uo.findtype('gs', '-1', 'resources_bag') uo.moveitem(reg_bp, 1) wait(700) wend while uo.count('mr') < 1 reg_bp = uo.findtype('mr', '-1', 'resources_bag') uo.moveitem(reg_bp, 1) wait(700) wend while uo.count('ns') < 1 reg_bp = uo.findtype('ns', '-1', 'resources_bag') uo.moveitem(reg_bp, 1) wait(700) wend while uo.count('sa') < 1 reg_bp = uo.findtype('sa', '-1', 'resources_bag') uo.moveitem(reg_bp, 1) wait(700) wend while uo.count('ss') < 1 reg_bp = uo.findtype('ss', '-1', 'resources_bag') uo.moveitem(reg_bp, 1) wait(700) wend while uo.count(scroll_type) < 1 reg_bp = uo.findtype(scroll_type, '-1', 'resources_bag') uo.moveitem(reg_bp, 1) wait(700) wend wait(500) uo.print('bp = ' + str(uo.count('bp'))) uo.print('bm = ' + str(uo.count('bm'))) uo.print('ga = ' + str(uo.count('ga'))) uo.print('gs = ' + str(uo.count('gs'))) uo.print('mr = ' + str(uo.count('mr'))) uo.print('ns = ' + str(uo.count('ns'))) uo.print('sa = ' + str(uo.count('sa'))) uo.print('ss = ' + str(uo.count('ss'))) uo.print('scrolls = ' + str(uo.count(scroll_type))) end sub
sub remove_all() var reg_bp if uo.count('bp') > 0 then reg_bp = uo.findtype('bp', '-1') uo.moveitem(reg_bp, 0, 'resources_bag') wait(700) end if if uo.count('bm') > 0 then reg_bp = uo.findtype('bm', '-1') uo.moveitem(reg_bp, 0, 'resources_bag') wait(700) end if if uo.count('ga') > 0 then reg_bp = uo.findtype('ga', '-1') uo.moveitem(reg_bp, 0, 'resources_bag') wait(700) end if if uo.count('gs') > 0 then reg_bp = uo.findtype('gs', '-1') uo.moveitem(reg_bp, 0, 'resources_bag') wait(700) end if if uo.count('mr') > 0 then reg_bp = uo.findtype('mr', '-1') uo.moveitem(reg_bp, 0, 'resources_bag') wait(700) end if if uo.count('ns') > 0 then reg_bp = uo.findtype('ns', '-1') uo.moveitem(reg_bp, 0, 'resources_bag') wait(700) end if if uo.count('sa') > 0 then reg_bp = uo.findtype('sa', '-1') uo.moveitem(reg_bp, 0, 'resources_bag') wait(700) end if if uo.count('ss') > 0 then reg_bp = uo.findtype('ss', '-1') uo.moveitem(reg_bp, 0, 'resources_bag') wait(700) end if wait(500) uo.print('bp = ' + str(uo.count('bp'))) uo.print('bm = ' + str(uo.count('bm'))) uo.print('ga = ' + str(uo.count('ga'))) uo.print('gs = ' + str(uo.count('gs'))) uo.print('mr = ' + str(uo.count('mr'))) uo.print('ns = ' + str(uo.count('ns'))) uo.print('sa = ' + str(uo.count('sa'))) uo.print('ss = ' + str(uo.count('ss'))) end sub
sub fill_spellbook() var jj var scroll_jj var hex_jj var sb_type = 0x0EFA var sp_serial sp_serial = uo.findtype(sb_type, -1, 'resources_bag') uo.moveitem(sp_serial, 1) wait(1500) for jj = 1 to 64 hex_jj = uo.int2hex(7980 + jj) uo.print(jj) scroll_jj = uo.findtype(hex_jj) uo.moveitem(scroll_jj, 1, sp_serial) wait(3000) next uo.moveitem(sp_serial, 1, 'spellbook_bag') end sub
Добавлено (01.08.2020, 01:39) --------------------------------------------- Цитата ling ( ) Работающий (вроде бы) вариант. Добирает ресурсы, складывает готовые книги в указанный мешок (не в бекпаке). При физле делает скролл заново. Устойчив к лагам и севам (насколько я мог наблюдать). Единственный косяк, при конлосте или остановке скрипта, начинает писать скроллы заново, а не продолжает предыдущую сессию. На это сил уже не хватило
Сообщение отредактировал ling - Среда, 29.07.2020, 22:12 |
|
| |
|