Page 1 of 1

Помогите с реализацией бега

Posted: 2008-03-14 14:26:41
by some
Эксперты у меня есть скрипт но бег в нем реализован через кнопки на нампаде , как сделать так , чтобы он бегал на клавишах "вверх" и тд(которые слева от нампада) ?
заранее благодарен

Code: Select all

sub chase() 
   If uo.getglobal('chase')=='On' then 
   uo.setglobal ('chase',0) 
   uo.print(' !!! -= Chase Terminated =- !!! ') 
   uo.exec('Terminate chase') 
   else 
   uo.setglobal('chase','On') 
   uo.print(' !!! -= Chasing =- !!! ') 
   endif 

  VAR target 
  target = uo.getserial('lasttarget') 

   while not uo.dead() and target<>"" and uo.getdistance(target) 
    if UO.GetDistance(target)>-1 then 
    uo.say('') 
    Chaser(target) 
    endif 
   wend 

  uo.setglobal('chase',0) 
  uo.print(' !!! -= Chasing ended =- !!! ') 
end sub 
;----------------------------------------------------------------- 
sub Chaser(Target) 
   VAR dx, dy 
While 1 
   If Target<>"" and not uo.dead() Then 
   dx=UO.GetX(Target)-UO.GetX() 
   dy=UO.GetY(Target)-UO.GetY() 
    If UO.GetDistance(Target)<0 Then 
     return 
    Endif 
    else 
     Return 
   Endif 

   If dx<>0 AND dy<>0 Then 
    If dx>0 AND dy>0 Then 
    UO.Press(40); DownArrow 
    Endif 

    If dx>0 AND dy<0 Then 
    UO.Press(39); RightArrow 
    Endif 

    If dx<0 AND dy>0 Then 
    UO.Press(37); LeftArrow 
    Endif 

    If dx<0 AND dy<0 Then 
    UO.Press(38); UpArrow 
    Endif 
   Endif 
    
   If dx<>0 AND dy==0 Then 
     If dx>0 Then 
    UO.Press(34); PgDown 
    Endif 

    If dx<0 Then 
    UO.Press(36); Home key 
    Endif 
   Endif 

   If dx==0 AND dy<>0 Then 
    If dy>0 Then 
    UO.Press(35); End 
    Endif 

    If dy<0 Then 
    UO.Press(33); PgUp 
    Endif 
   Endif 
Wend 
end sub

Posted: 2008-03-14 18:47:12
by korzh

Code: Select all

UO.Press(40); DownArrow
UO.Press(39); RightArrow
UO.Press(37); LeftArrow
UO.Press(38); UpArrow
UO.Press(34); PgDown
UO.Press(36); Home key
UO.Press(35); End
UO.Press(33); PgUp
И где ты тут нумпад нашел? :)

Posted: 2008-03-14 20:17:13
by some
Я серьезно говорю он на нампаде бегает - тк у меня на нампаде забиты скрипты и соответственно при нажатии этих кнопок выполняет их а не бежит за чаром

Posted: 2008-03-14 20:32:10
by Grin
а на простых стрелках не бегает?;) анрил

Posted: 2008-03-14 20:35:07
by some
Вот я и хочу чтобы он бегал на стрелках :) Но не знаю как реализовать :oops:
Подскажите как реализовать ?

Posted: 2008-03-14 20:45:06
by korzh
UO.Press(40); DownArrow
UO.Press(39); RightArrow
UO.Press(37); LeftArrow
UO.Press(38); UpArrow
UO.Press(34); PgDown
UO.Press(36); Home key
UO.Press(35); End
UO.Press(33); PgUp


ЗЫ на нумлок нажми... :roll:

Posted: 2008-03-14 20:54:38
by some
Все равно на нампадных стрелках рулит =) :D
А мне надо чтобы на стандартных стрелочках

Posted: 2008-03-14 21:01:50
by korzh
Никогда не обращал внимание что на кнопках на нумпаде на цифрах 7,9,1,3 написано home, end и тд?
Так вот, пока у тебя не нажат нумлок эти кнопки работают как хом,енд итд..
Решение: включить нумлок и перезаписать макросы с включенным нумлоком и потом его не выключать :)

Posted: 2008-03-14 21:02:07
by Kynep
some wrote:Все равно на нампадных стрелках рулит =) :D
А мне надо чтобы на стандартных стрелочках
Тут поменяй кода на коды стрелок:

Code: Select all

UO.Press(40); DownArrow 
UO.Press(39); RightArrow 
UO.Press(37); LeftArrow 
UO.Press(3'8'); UpArrow 
Только он перестанет ходить по диагонали ))) за это отвечают эти клавиши:

Code: Select all

UO.Press(34); PgDown 
UO.Press(36); Home key 
UO.Press(35); End 
UO.Press(33); PgUp
Хочешь оставляй, не хочешь удаляй совсем. Тока ХЗ как он у тя
ходить будет. Интерестно, а если намлок отжат, коды те же?

Posted: 2008-03-14 21:03:27
by some
Сейчас проверю

Posted: 2008-03-14 21:04:42
by korzh
Kynep wrote:......
Хочешь оставляй, не хочешь удаляй совсем. Тока ХЗ как он у тя ходить будет. Интерестно, а если намлок отжат, коды те же?
За минуту до тебя написал :)

Posted: 2008-03-14 21:07:38
by Kynep
korzh wrote:
Kynep wrote:......
Хочешь оставляй, не хочешь удаляй совсем. Тока ХЗ как он у тя ходить будет. Интерестно, а если намлок отжат, коды те же?
За минуту до тебя написал :)
Я в это время писал пост )

Posted: 2008-03-14 21:53:31
by some
Проверил когда намлок не горит - код кнопок такой

Code: Select all

UO.Press(40); DownArrow 
UO.Press(39); RightArrow 
UO.Press(37); LeftArrow 
UO.Press(3; UpArrow 
UO.Press(34); PgDown 
UO.Press(36); Home key 
UO.Press(35); End 
UO.Press(33); PgUp
Когда намлок ГОРИТ - совершенно другой , но если намлок ГОРИТ то ходилка естественно не работает :)
Как же сделать на обычных стрелочках?
ПС и как узнать код кнопок ? я думаю просто подставить коды и названия нужных мне кнопок в срипт ....[/code][/quote]

Posted: 2008-03-15 00:51:39
by Grin
херней ты страдаешь... тебе все дали...
стрелыки н клаве только одни... других не существует кодуних одинаковый...

Posted: 2008-03-15 05:40:06
by some
Спс грин разобрался :)
p.s один удар по голове заменяет 2 часа политработы :D