Чет скрипт криво пашет, Хелп
Младший Сержант (388649)8 лет
Ranger
Сообщений: 125
Рег. 17.09.2016
4 января 2018 16:42
Сообщение #1
Sub HealOpponent()
uo.print('heal opponent')
repeat
uo.waittargetobject('opponent')
uo.usetype('0x0E21') #?????
wait(5000)
until uo.getHP('opponent') == uo.getMaxHP('opponent')    ## Вот тут проблема
uo.print('opponent heal complete')
end Sub


В общем почему-то работает криво, а именно вроде норм хилит, чекает максхп и делает Until, а вот если встречает сообщение вы пытайтесь захилить мумию! - сразу зависает на репите и не Utilит. Видимо ловит сообщение про мумию из-за того что оппонент, хилится сам еще.

Попытался через InJournal сделать проверку, на слова (вы пытаетесь захилить мумию) - почему -то тоже виснет тупо на репите, в чем может быть дело?
Лейтенант (4548828)11 лет
Dragonstalker
Сообщений: 3319
Рег. 19.11.2013
4 января 2018 20:03
Сообщение #2
у цели не определяется максимальное хп
Младший Сержант (388649)8 лет
Ranger
Сообщений: 125
Рег. 17.09.2016
4 января 2018 21:04
Сообщение #3
А как его определить? П.с а почему через инжорнал не работает? Это отрывок из скрипта спариг , который на первой странице в готовых скриптах
Лейтенант (4548828)11 лет
Dragonstalker
Сообщений: 3319
Рег. 19.11.2013
4 января 2018 22:32
Сообщение #4
Форум плохо передает интонации.
*Серьезное лицо с категорическим взглядом примерно как на аватарке*
У цели не определяется максимальное хп. Инжект этого просто не умеет. Вот такое гавно.
*с сожалением качаю головой из стороны в сторону, пожимаю плечами*


Можно сравнивать с числом. Но число надо подбирать подбором. Например когда в игре 25 жизней инжект показывает толи 13 толи 14. Но это не точно.
Младший Сержант (388649)8 лет
Ranger
Сообщений: 125
Рег. 17.09.2016
5 января 2018 14:30
Сообщение #5
Mirage,

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

Sub HealOpponent()
uo.print('heal opponent')
uo.deletejournal()
repeat
uo.waittargetobject('opponent')
uo.usetype('0x0E21')
wait(5000)
until UO.InJournal("Не пытайтесь изобразить мумию!")
uo.print('opponent heal complete')
end Sub
Лейтенант (4548828)11 лет
Dragonstalker
Сообщений: 3319
Рег. 19.11.2013
5 января 2018 21:12
Сообщение #6
А условие выхода из цикла выполняется? Руками полечи человека и посмотри надпись когда лечишь здорового.
Ефрейтор (208556)7 лет
Ranger
Сообщений: 71
Рег. 14.11.2017
6 января 2018 18:34
Сообщение #7
Цитата: Sun Shine
Хорошо, а почему тогда вот такой вариант отказывается работать? тоже тупо висит на репите и не унтилит

Sub HealOpponent()
uo.print('heal opponent')
uo.deletejournal()
repeat
uo.waittargetobject('opponent')
uo.usetype('0x0E21')
wait(5000)
until UO.InJournal("Не пытайтесь изобразить мумию!")
uo.print('opponent heal complete')
end Sub


Ты начинаешь лечить "покоцанного", до момента пока он не станет "чаром с полным ХП (мумией)", как только у него бкдет фул ХП, все "break' (твой цикл закончится), а если таргет на типа с "полным ХП", то ты сходу получишь "break"

На сколько я понимаю проще, не писать полнюсть фразу из UO.InJournal, а проще UO.InJournal("Не пытайтесь")
Младший Сержант (388649)8 лет
Ranger
Сообщений: 125
Рег. 17.09.2016
17 января 2018 04:19
Сообщение #8
Мираж, ну объясни ты, ради интереса уже просто, в чем я туплю то?! Решил пока-что проблему нюбским способом until uo.dead() - но это не по феншую же))

Цитата: Mirage
А условие выхода из цикла выполняется? Руками полечи человека и посмотри надпись когда лечишь здорового.


Не пытайтесь изобразить мумию!

until UO.InJournal("Не пытайтесь") - так тоже пробовал
Последние посетители (0):

 
Сейчас: 23 ноября 2024 18:19