Page 1 of 2

Как отменить таргет....

Posted: 2006-03-31 03:26:11
by Moke
При использовании эксплоужена нужно отменить таргет, так чтобы эксплоужен остался в паке....Вручную таргет отменяется кнопкой ESC, но я невижу способа нажать эту кнопку инжектом. Функция UO.canceltarget() не отменяет прицел, пишет no target to cancel....

Помогите пожалуста решить проблему. :)

Posted: 2006-03-31 10:09:10
by Grin
а почему бы таргет не адресовать не не существующий объект или свою сумку?

Posted: 2006-03-31 18:25:36
by Savage
Координаты для клика лучше поправить на свои, для этого в скрипте в верхней строке давим прицел и тыкаем в чара потом переносим координаты в скрипт. Так как чар всегда в центре экрана то скрипт сбиваться небудет. Если токо не передвигать окно игровое.

Code: Select all

sub ppp()
   If UO.Targeting() Then
      UO.LCLick(400,270)
   Else
      UO.Print("No target to cancel!")
   Endif
end sub

Posted: 2006-03-31 19:43:28
by Grin
мде... через клики... ужас...

Posted: 2006-04-01 00:53:07
by Moke
Извините, конечно, но если бы проблема была в клике по несуществующему обьекту или паку - я бы не морочил вам голову.... Дело в том, что при клике таргетом по люьому обьекту бутылка летит либо в обьект (если это чар в зоне действия..) или падает на пол под моего чара (если это пак или несуществующий обьект и т.д.), при этом весь смысл бутылки эксплоужена теряется, так как она должна взорваться именно в ПАКЕ. Для того чтобы она осталась в паке нужно никуда не кликать пока бутылка не взорвалась, но при этом таргет висит и я немогу кинуть атаку не нажав предварительно ESC, а вот КАК ЭТО сделать инжектом я и просил мне обьяснить.

Posted: 2006-04-01 02:46:12
by Sfagnum
Moke wrote:Извините, конечно, но если бы проблема была в клике по несуществующему обьекту или паку - я бы не морочил вам голову.... Дело в том, что при клике таргетом по люьому обьекту бутылка летит либо в обьект (если это чар в зоне действия..) или падает на пол под моего чара (если это пак или несуществующий обьект и т.д.), при этом весь смысл бутылки эксплоужена теряется, так как она должна взорваться именно в ПАКЕ. Для того чтобы она осталась в паке нужно никуда не кликать пока бутылка не взорвалась, но при этом таргет висит и я немогу кинуть атаку не нажав предварительно ESC, а вот КАК ЭТО сделать инжектом я и просил мне обьяснить.
ну и в чём трабла то? uo.press() тебе в помосчЪ... думаю код ESC'па сам найдёшь ;)

Posted: 2006-04-01 09:17:15
by Edred
Sfagnum wrote:ну и в чём трабла то? uo.press() тебе в помосчЪ... думаю код ESC'па сам найдёшь ;)


С каких пор UO.Press() может посылать Esc? Я что-то пропустил?

Posted: 2006-04-01 12:58:18
by Savage
Каждый когда то пробовал написать подобную феню с эксплодами. Затея утопичная пока, проще кидать эксплод под врага и взрывать его стрелкой.

Posted: 2006-04-01 13:17:32
by Grin
Edred а что есть проблемы с посылание Эскейпа?;)

Posted: 2006-04-01 13:19:11
by Grin
честно так и не понял в чем трабла сего топа? надо оставить бомбу в паке и в чем трабла? ловушку на саму бомбу на пак или еще чего нить ..

Posted: 2006-04-01 15:45:46
by Moke
Собрались все Expert!ы YOKO форума....

Grin
Проблема в невнимательнгом чтении...Я ведь написал, что при кидании таргета на любой обьект, даже не существующий - бутылка выпадает под ноги, а мне нужно чтобы она осталасть в пке. Именно для этого я спросил как ОТМЕНИТЬ таргет, а не КУДА КИНУТЬ таргет.

Мнения экспертов разошлись по поводу функции UO.Press() ,вы уж определитесь, может она нажать ESC или нет. Sfagnum, не мог бы ты мне помоч с кодом ESC'па ?

Edred, ты как основной эксперт-учитель мог бы помочь, вместо того, чтобы задавать дополнительные вопросы.

Эксперт Savage наверняка не читал суть вопроса, а сделал выводы увидев слово "эксплоужен". Я забыл сказать, что активация эксплоужена на нашем шарде производится только дабл кликом....стрелки, кинжалы никакого отношения не имеют к этому.

Я все еще надеюсь на вашу помощь...

Posted: 2006-04-01 16:27:52
by Grin
был очень удивлен когда пред действительно не смог отправить Эскейп (код клавиши 27)
На что пришлось воспользоватся альтернативой
uo.Say(chr(27))
примерный скрипт

Code: Select all

uo.usetype(expl)
while not uo.Targeting
wait(100)
wend
uo.Say(chr(27))


P.S. Вскрыл исходники иоказалась и в правду хреновенько сообщение формеруется.

Posted: 2006-04-01 16:45:23
by SLAK
код альта не даш? А то в едиторе пишет НЕТ и код не вводит

Posted: 2006-04-01 16:51:42
by Grin
18
только врятли тебе это мпоможет скорей всего;)

Posted: 2006-04-01 16:58:15
by SLAK
Grin wrote:18
только врятли тебе это мпоможет скорей всего;)

Да , непомогло... Думал alt+Lclick сварганить :(

Posted: 2006-04-01 17:01:22
by Grin
ну я так и подумал что ты комбинацию послать хочешь;)
Кстати господа возможен хорошей задел для заявок в новый модуль%)

Posted: 2006-04-01 19:18:22
by SLAK
Вот - вот, нужна как раз возможность комбинации клавиш посылать :)

Posted: 2006-04-01 19:25:57
by Grin
через перл только в путь

Posted: 2006-04-02 00:06:27
by Moke
Спасибо,Grin, все работает. Думаю мой топик будет полезен многим, кто столкнется с необходимостью отменить таргет инжектом. Дело в том, что я не знаток всех тонкостей инжекта, и даже не знал что есть функция chr(), как и незнаю о многих других полезных функциях, которых нету в списке на http://yoko.netroof.net/help/ . Где взять полноценный список функций инжекта - это другой вопрос.....

Posted: 2006-04-02 22:17:23
by Edred
Тем у кого есть приватная версия АСМа такой способ не нужен, так как есть:

Code: Select all

asmPCancelTarget()
Снимает ловушку прицела, если таковая имеется.


А по поводу списка функций, попробуй использовать в стандартном АСМе функцию:

Code: Select all

asmFuncList()
Функция открывает текстовое окно Injection, очищает его и выводит в него список всех функций Injection и ASM. Напоминаю что использование недокументированных функций потенциально опасно для здоровья вашего персонажа.