var x=uo.getx()
var y=uo.gety()
uo.press(36) #west
wait(500)
if (x==uo.getx() and y==uo.gety()) then
uo.print('низя сюда идти')
endif
типа запоминаем текущие координаты чара, делаем шаг и сморим изменились координаты чара или нет.
но не нравится задержка эта на шаг, хочу чтоб чар быстро бегал, да и при лагах может спокойно глючить
а на сколько мне извесно - позволяют, иначе смысл в так называемых догонялках ? в этих скриптах чар бегает за другим чаром причём ооооочень быстро. Могу выложить одну такую для примера.
;-----------------------------------------------------------------
;--------------------------NMY------------------------------------
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
посмарел ходилки, походу без задержки никак не сделать норм обходилку. а без обхода препятствий чар норм бегает)
мона конечно сделать кучу мегапроверок, смотреть тип тайла куда делаешь шаг, смареть стоит ли ктонить в етом тайле, скока у тя стамины итд, но слишком гимора много, проще обходилку с задержкой сделать тада)
если в клиенте выставить постоянный бег, то будет быстро ходить, рывками
для нормального бега нужно определять на несколько тайлов от чара, проходные или нет, для начала нужно переписать всю статику в текстовый файл вот тогда чар будет просто летать