Прошу написать пару простеньких и полезных скриптов

Anything and all.

Moderators: Murderator+, Murderator

Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

[quote="1a2a3a4a5a6a
Не очень я понял, как работает эта ходилка. А в какую координату она пойдет? И у мя выдавалась ошибка. Что-то дополнительно нужно ставить к ней?[/quote]

Вставь координаты вместо х и у, например в скрипте она выглядит так:

Code: Select all

GotoXY(1111,1111)


Идет в 1111 и 1111
1a2a3a4a5a6a
Posts: 173
Joined: 2006-02-10 13:26:37

Post by 1a2a3a4a5a6a »

Если запустить данный скрипт без правки, то выдается ошибка: "Line71: Invalid number of arguments - GotoXY".
А если же запустить с правкой

Code: Select all

GotoXY(1111,1111) 
то выдается ошибка: "Line1: Parse error".

Чего-то я не понимаю... :?
Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

1a2a3a4a5a6a wrote:Если запустить данный скрипт без правки, то выдается ошибка: "Line71: Invalid number of arguments - GotoXY".
А если же запустить с правкой

Code: Select all

GotoXY(1111,1111) 
то выдается ошибка: "Line1: Parse error".

Чего-то я не понимаю... :?


Попробуй кавычки поставь
1a2a3a4a5a6a
Posts: 173
Joined: 2006-02-10 13:26:37

Post by 1a2a3a4a5a6a »

Cooper wrote:
1a2a3a4a5a6a wrote:Если запустить данный скрипт без правки, то выдается ошибка: "Line71: Invalid number of arguments - GotoXY".
А если же запустить с правкой

Code: Select all

GotoXY(1111,1111) 
то выдается ошибка: "Line1: Parse error".

Чего-то я не понимаю... :?


Попробуй кавычки поставь

Как не крути...
А у тебя то работает?
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Post by Edred »

1a2a3a4a5a6a wrote:Если запустить данный скрипт без правки, то выдается ошибка: "Line71: Invalid number of arguments - GotoXY".
А если же запустить с правкой

Code: Select all

GotoXY(1111,1111) 
то выдается ошибка: "Line1: Parse error".

Чего-то я не понимаю... :?


Эхе-хе... Ты прежде чем в скрипты инжекта лезть, хоть какую-нибудь книжку по программированию для чайников почитай. Или юзай ассист. Иначе нет шансов никаких.

ЗЫ: В самом этом скрипте ты не должен править ничего, а вот из своего скрипта надо вызывать этот передавая параметрами координаты. Если ты это не понял - лучше используй ассист.
Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

идея с кавычками еще круче...
1a2a3a4a5a6a
Posts: 173
Joined: 2006-02-10 13:26:37

Post by 1a2a3a4a5a6a »

Edred wrote:
1a2a3a4a5a6a wrote:Если запустить данный скрипт без правки, то выдается ошибка: "Line71: Invalid number of arguments - GotoXY".
А если же запустить с правкой

Code: Select all

GotoXY(1111,1111) 
то выдается ошибка: "Line1: Parse error".

Чего-то я не понимаю... :?


Эхе-хе... Ты прежде чем в скрипты инжекта лезть, хоть какую-нибудь книжку по программированию для чайников почитай. Или юзай ассист. Иначе нет шансов никаких.

ЗЫ: В самом этом скрипте ты не должен править ничего, а вот из своего скрипта надо вызывать этот передавая параметрами координаты. Если ты это не понял - лучше используй ассист.

По поводу первого:
Работаю в дельфи и в html. Не хвастаюсь, как некоторые (не в обиду).
Потом, я незнал, что эта ходилка не работает на "простом" инжекте, потому так и получилось. Вообще с ходилками не работал.
Потом, в скрипте на ламбер есть ходилка. Она ведь работает прекрасно и без всяких доп. АСМ и прочего!?

Может, что-то и не понимаю, но не надо меня обзывать чайником. :)

И как можно реализовать наипростейщую ходилку, хоть и без обхода препятствий? Главное, чтобы до коорд. нужных была.
Или ходилку, как на ламбере!?
Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

1a2a3a4a5a6a wrote:
Edred wrote:
1a2a3a4a5a6a wrote:Если запустить данный скрипт без правки, то выдается ошибка: "Line71: Invalid number of arguments - GotoXY".
А если же запустить с правкой

Code: Select all

GotoXY(1111,1111) 
то выдается ошибка: "Line1: Parse error".

Чего-то я не понимаю... :?


Эхе-хе... Ты прежде чем в скрипты инжекта лезть, хоть какую-нибудь книжку по программированию для чайников почитай. Или юзай ассист. Иначе нет шансов никаких.

ЗЫ: В самом этом скрипте ты не должен править ничего, а вот из своего скрипта надо вызывать этот передавая параметрами координаты. Если ты это не понял - лучше используй ассист.

По поводу первого:
Работаю в дельфи и в html. Не хвастаюсь, как некоторые (не в обиду).
Потом, я незнал, что эта ходилка не работает на "простом" инжекте, потому так и получилось. Вообще с ходилками не работал.
Потом, в скрипте на ламбер есть ходилка. Она ведь работает прекрасно и без всяких доп. АСМ и прочего!?

Может, что-то и не понимаю, но не надо меня обзывать чайником. :)

И как можно реализовать наипростейщую ходилку, хоть и без обхода препятствий? Главное, чтобы до коорд. нужных была.
Или ходилку, как на ламбере!?


Эта ходилка из Ламбера ))
1a2a3a4a5a6a
Posts: 173
Joined: 2006-02-10 13:26:37

Post by 1a2a3a4a5a6a »

Cooper wrote:Эта ходилка из Ламбера ))

Может тогда объясните, как она работает? В ламбере создавался всего-лишь один файл с координатами.
Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

1a2a3a4a5a6a wrote:
Cooper wrote:Эта ходилка из Ламбера ))

Может тогда объясните, как она работает? В ламбере создавался всего-лишь один файл с координатами.


Едред написал же, она читает координаты из переменных, создай две переменных:

Code: Select all

VAR CoordX=' ' #Поставь коорды
VAR CoordY=' '

И вставь в скрипт:

Code: Select all

GotoXY(CoordX, CoordY)
1a2a3a4a5a6a
Posts: 173
Joined: 2006-02-10 13:26:37

Post by 1a2a3a4a5a6a »

Тогда полный скрипт получается таким:

Code: Select all

VAR CoordX='1234' #Поставь коорды 
VAR CoordY='123'

sub GotoXY(CoordX, CoordY)
var myX,myY,lastX=0,lastY=0,i,halt=0,z,r=0
for i=1 to 60
myX=uo.getX();
myY=uo.getY();
if LastX==myX and LastY==myY then
halt=halt+1
else
halt=0
end if
if halt>=10 then
if uo.GetDir()==1 then
for z=0 to 8
uo.Press(40)
next
end if
if uo.GetDir()==3 then
for z=0 to 8
uo.Press(37)
next
end if
if uo.GetDir()==5 then
for z=0 to 8
uo.Press(38)
next
end if
if uo.GetDir()==7 then
for z=0 to 8
uo.Press(39)
next
end if
halt=15
end if
if Numb(x-myX)<=1 and Numb(y-myY)<=2 then
return 1
end if
if x<=myX then
if y<=myY then
for z=0 to 3
uo.Press(38)
next
else
for z=0 to 3
uo.Press(37)
next
end if
else
if y<=myY then
for z=0 to 3
uo.Press(39)
next
else
for z=0 to 3
uo.Press(40)
next
end if
end if
lastX=myX
lastY=myY
wait(200)
next
return 0
end sub

sub Numb(num)
if num>=0 then
return num
else
return num*(-1)
end if
end sub

Что не так?
Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

1a2a3a4a5a6a wrote:Тогда полный скрипт получается таким:

Code: Select all

VAR CoordX='1234' #Поставь коорды 
VAR CoordY='123'

sub GotoXY(CoordX, CoordY)
var myX,myY,lastX=0,lastY=0,i,halt=0,z,r=0
for i=1 to 60
myX=uo.getX();
myY=uo.getY();
if LastX==myX and LastY==myY then
halt=halt+1
else
halt=0
end if
if halt>=10 then
if uo.GetDir()==1 then
for z=0 to 8
uo.Press(40)
next
end if
if uo.GetDir()==3 then
for z=0 to 8
uo.Press(37)
next
end if
if uo.GetDir()==5 then
for z=0 to 8
uo.Press(38)
next
end if
if uo.GetDir()==7 then
for z=0 to 8
uo.Press(39)
next
end if
halt=15
end if
if Numb(x-myX)<=1 and Numb(y-myY)<=2 then
return 1
end if
if x<=myX then
if y<=myY then
for z=0 to 3
uo.Press(38)
next
else
for z=0 to 3
uo.Press(37)
next
end if
else
if y<=myY then
for z=0 to 3
uo.Press(39)
next
else
for z=0 to 3
uo.Press(40)
next
end if
end if
lastX=myX
lastY=myY
wait(200)
next
return 0
end sub

sub Numb(num)
if num>=0 then
return num
else
return num*(-1)
end if
end sub

Что не так?


Неет это не меняй:

Code: Select all

sub GotoXY(CoordX, CoordY) 

Оставь как было:

Code: Select all

sub GotoXY(x, y)


А себе в скрипт, где он по идеи должен начинать идти вставь:

Code: Select all

GotoXY(CoordX, CoordY) 
1a2a3a4a5a6a
Posts: 173
Joined: 2006-02-10 13:26:37

Post by 1a2a3a4a5a6a »

Тогда получается вот это:

Code: Select all

sub go()
VAR CoordX='1234' #Поставь коорды
VAR CoordY='123'
   GotoXY(CoordX, CoordY)
end sub

sub GotoXY(x, y)
var myX,myY,lastX=0,lastY=0,i,halt=0,z,r=0
for i=1 to 60
myX=uo.getX();
myY=uo.getY();
if LastX==myX and LastY==myY then
halt=halt+1
else
halt=0
end if
if halt>=10 then
if uo.GetDir()==1 then
for z=0 to 8
uo.Press(40)
next
end if
if uo.GetDir()==3 then
for z=0 to 8
uo.Press(37)
next
end if
if uo.GetDir()==5 then
for z=0 to 8
uo.Press(38)
next
end if
if uo.GetDir()==7 then
for z=0 to 8
uo.Press(39)
next
end if
halt=15
end if
if Numb(x-myX)<=1 and Numb(y-myY)<=2 then
return 1
end if
if x<=myX then
if y<=myY then
for z=0 to 3
uo.Press(38)
next
else
for z=0 to 3
uo.Press(37)
next
end if
else
if y<=myY then
for z=0 to 3
uo.Press(39)
next
else
for z=0 to 3
uo.Press(40)
next
end if
end if
lastX=myX
lastY=myY
wait(200)
next
return 0
end sub

sub Numb(num)
if num>=0 then
return num
else
return num*(-1)
end if
end sub
Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

1a2a3a4a5a6a wrote:Тогда получается вот это:

Code: Select all

sub go()
VAR CoordX='1234' #Поставь коорды
VAR CoordY='123'
   GotoXY(CoordX, CoordY)
end sub



Типа того :D
1a2a3a4a5a6a
Posts: 173
Joined: 2006-02-10 13:26:37

Post by 1a2a3a4a5a6a »

Cooper wrote:
1a2a3a4a5a6a wrote:Тогда получается вот это:

Code: Select all

sub go()
VAR CoordX='1234' #Поставь коорды
VAR CoordY='123'
   GotoXY(CoordX, CoordY)
end sub



Типа того :D

А что не так? :)
Мне нужно просто заставить чара пойти в нужную координату.
Может тогда исправишь мою кривость? :)
Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

1a2a3a4a5a6a wrote:
Cooper wrote:
1a2a3a4a5a6a wrote:Тогда получается вот это:

Code: Select all

sub go()
VAR CoordX='1234' #Поставь коорды
VAR CoordY='123'
   GotoXY(CoordX, CoordY)
end sub



Типа того :D

А что не так? :)
Мне нужно просто заставить чара пойти в нужную координату.
Может тогда исправишь мою кривость? :)


Смари:

Code: Select all

sub go()
VAR CordX=' '
VAR CordY=' '

While UO.GetX('self') <> CordX
GotoXY(CordX, CordY)
wend
end sub
1a2a3a4a5a6a
Posts: 173
Joined: 2006-02-10 13:26:37

Post by 1a2a3a4a5a6a »

Cooper wrote:Смари:

Code: Select all

sub go()
VAR CordX=' '
VAR CordY=' '

While UO.GetX('self') <> CordX
GotoXY(CordX, CordY)
wend
end sub


Вставил я этот код и ниже вставил саму ходилку. Поставил координаты. Когда запускаю go, то выдает ошибку: "Line 43: Runtime error - Invalid operation for this type".
Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

1a2a3a4a5a6a wrote:
Cooper wrote:Смари:

Code: Select all

sub go()
VAR CordX=' '
VAR CordY=' '

While UO.GetX('self') <> CordX
GotoXY(CordX, CordY)
wend
end sub


Вставил я этот код и ниже вставил саму ходилку. Поставил координаты. Когда запускаю go, то выдает ошибку: "Line 43: Runtime error - Invalid operation for this type".


Вот, ща протестил, ходит тока координаты поменяй:

Code: Select all

sub go() 
VAR CX=1794
VAR CY=1563

If UO.GetX() <> CX and UO.Gety() <> CY then
GotoXY(CX, CY)
endif
end sub

ТОка ходилка тупит, поточнее надо
1a2a3a4a5a6a
Posts: 173
Joined: 2006-02-10 13:26:37

Post by 1a2a3a4a5a6a »

Да, у меня тоже работает! Огромное спасибо!
А ходилка действительно запинается.
SLAK
Posts: 182
Joined: 2005-08-19 16:12:23
Contact:

Post by SLAK »

Запускать ходилку вы уже научились, а ходилки по качественее тут:
http://forum.yoko.com.ua/viewtopic.php?t=6743 :D
Post Reply