Page 1 of 2
Always Run On|Off
Posted: 2009-12-09 09:30:13
by TarantuL
Доброго времени суток..
Помогите с такой вещичкой..
Code: Select all
sub AR_On()
UO.DeleteJournal()
uo.press(38)
wait(200)
if uo.injournal ('Always Run is now on.')
then uo.print('Бежим')
else uo.press(38)
uo.print('Бежим')
endif
end sub
sub AR_Off()
UO.DeleteJournal()
uo.press(38)
wait(200)
if uo.injournal ('Always Run is now off.')
then uo.print('Идём...')
else uo.press(38)
uo.print('Идём...')
endif
end sub
Как то так чтоли?
Re: Always Run On|Off
Posted: 2009-12-09 12:02:08
by Mirage
Если у тебя на кнопке с кодом 38 забит переключатель то да так
Code: Select all
sub AR_On()
UO.DeleteJournal()
uo.press(38)
wait(200)
if uo.injournal ('Always Run is now on.')
else
uo.press(38)
endif
uo.print('Бежим')
end sub
sub AR_Off()
UO.DeleteJournal()
uo.press(38)
wait(200)
if uo.injournal ('Always Run is now off.')
else
uo.press(38)
endif
uo.print('Идём...')
end sub
Posted: 2009-12-09 16:01:00
by TarantuL
кнопка наобум, ваще на 115 стоит.. Но не работает, вот в чем фигня)
Там совсем криво.. вот тут вроде покрасивше, но тоже не то))
Code: Select all
sub AR_Off()
UO.DeleteJournal()
wait(100)
uo.press(115)
wait(500)
if uo.injournal('now off') then
wait(100)
uo.print('Идём...')
else
if uo.injournal('now on') then
wait(100)
uo.press(115)
wait(100)
uo.print('Идём...')
endif
end sub
Posted: 2009-12-09 18:26:29
by Mirage
Code: Select all
sub AR_Off()
if uo.GetRun('self')>0 then
uo.press(45)
endif
uo.print('Шаг')
end sub
sub AR_On()
if uo.GetRun('self')==0 then
uo.press(45)
endif
uo.print('Бег')
end sub

Code: Select all
event macro 32 0
if #SYSMSG = ALWAYS_RUN_IS_NOW_OFF.
event macro 32 0
halt
и все

Posted: 2009-12-10 04:18:10
by TarantuL
Спс

) Да, изи в элементарных вещах Тема

Posted: 2009-12-10 09:28:23
by CuHTpoH
чо за шаг бег??? как вы это контролите? без перла
Posted: 2009-12-10 10:00:51
by Mirage
uo.GetRun('self')>0
она работает только на себя. При беге выдает 1 при шаге 0
Re:
Posted: 2011-02-12 18:53:32
by -=#MIB#=-
Mirage wrote:Code: Select all
sub AR_Off()
if uo.GetRun('self')>0 then
uo.press(45)
endif
uo.print('Шаг')
end sub
sub AR_On()
if uo.GetRun('self')==0 then
uo.press(45)
endif
uo.print('Бег')
end sub

Code: Select all
event macro 32 0
if #SYSMSG = ALWAYS_RUN_IS_NOW_OFF.
event macro 32 0
halt
и все

Доброго времени суток, Мirage будь добр объясни что означает 2ой код, как использовать его (для чего он вообще)

Re: Always Run On|Off
Posted: 2011-02-12 21:16:59
by Mirage
тоже самое что в первом скрипте только для изиуо
Re: Always Run On|Off
Posted: 2012-02-26 00:05:57
by Nearga
Наблюдаются траблы с этим на ДВРе.
Бег включается/выключается, но uo.GetRun('self') всегда возвращает значение 1. Посему AR_Off() переключает AlwaysRun, а AR_On() вообще ничего не делает.
Хм, пока это писал - uo.GetRun('self') стало возвращать всегда 0. Может больше подождать нужно?
Вызвал несколько раз подряд AR_On(), затем AR_Off().

Re: Always Run On|Off
Posted: 2012-02-26 00:07:28
by Nearga
Упс, даблпостинг

Re: Always Run On|Off
Posted: 2012-02-26 19:43:09
by Mirage
Можно предположить что кнопка которая забиндена в игре как Always Run совпадает с кнопкой хоткеем AR_Off() либо AR_On(). В данном примере это должны быть 3 разные кнопки.
Можно сократить до 2 если использовать глобальные переменные.
PS я просто забиндил на Alt+R "Always Run" и все

Re: Always Run On|Off
Posted: 2012-02-26 19:52:54
by Nearga
Можно предположить что кнопка которая забиндена в игре как Always Run совпадает с кнопкой хоткеем AR_Off() либо AR_On(). В данном примере это должны быть 3 разные кнопки.
Предположение хорошее, но я вызываю функции в скрипте, они эмулируют нажатие на кнопку переключения бега. Тоесть всего 1 кнопка, и та эмулируется

Мне нужно из скрипта управлять ОлвейзРаном. Когда копаемся в шахте - ходим (ибо стелс), когда бежим домой - бег (ибо пешком дольше).
Тоесть нужно установить, что в определенный момент времени чар 100% бежит/идет.
Перепроверю хоткеи еще раз.
Re: Always Run On|Off
Posted: 2012-02-26 22:12:26
by Nmy
для меня на дрв вроде корректно работало сейчас этот скрипт
Re: Always Run On|Off
Posted: 2012-02-28 16:15:24
by Nearga
Та же срань... включается-выключается когда хочет.
Nmy, а что именно ты юзаешь?
Re: Always Run On|Off
Posted: 2013-10-04 12:18:17
by Petrovich
А как сделать чтобы он при вхождение в стеалтч выключал always run, а при выходе из стеалтч опять включал ?
Re: Always Run On|Off
Posted: 2013-10-04 14:22:16
by RL_ka
Petrovich wrote:А как сделать чтобы он при вхождение в стеалтч выключал always run, а при выходе из стеалтч опять включал ?
Через опции забиндить на кнопку AlwaysRun, а потом из скрипта ловить строчки стелса и нажимать нужную кнопку
Re: Always Run On|Off
Posted: 2013-10-04 14:32:18
by Petrovich
RL_ka wrote:Petrovich wrote:А как сделать чтобы он при вхождение в стеалтч выключал always run, а при выходе из стеалтч опять включал ?
Через опции забиндить на кнопку AlwaysRun, а потом из скрипта ловить строчки стелса и нажимать нужную кнопку
Это все понятно... Что надо в скрипте пару строчек вставить...
Если бы знал, что вставлять и как, то не спрашивал бы
Re: Always Run On|Off
Posted: 2013-10-06 16:44:42
by Petrovich
ХЗ, туплю не могу разобраться....
sub main()
while not UO.Dead()
UO.DeleteJournal()
UO.UseSkill('Hiding')
while not (UO.InJournal('seem') or UO.InJournal('hidden'))
wait(200)
UO.Press(35)
wend
if UO.InJournal('seem') then
else
UO.Press(35)
endif
while not UO.INJournal('revealed')
UO.Press(35)
wend
wend
end sub
Re: Always Run On|Off
Posted: 2013-10-06 17:19:32
by Mirage
Code: Select all
Sub test()
UO.UseSkill('Hiding')
AR_Off()
while uo.Hidden()
wait(100)
wend
AR_On()
end sub
sub AR_Off()
if uo.GetRun('self')>0 then
uo.press(45)
endif
end sub
sub AR_On()
if uo.GetRun('self')==0 then
uo.press(45)
endif
end sub
как то так.
Вот прет то вас всякие костыли для ПВП делать. Руками и забинденными кнопками играть уже не прилично?