Помогите в написании Ходилки, прошу.

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
Titar
Posts: 11
Joined: 2005-08-14 00:25:58

Помогите в написании Ходилки, прошу.

Post by Titar »

Вот на одном шарде, в мире в обределённых местах стоят камни с рудой, и только из ных можно накопать руду, вот мне нужен такой скрипт, чтобы работал по такому принципу: я в отдельном файле делаю вейпоинты с координатоми, по которым чар должен хоидить, эти координаты добываются с помощью ,infotile ,я это сохраняю в файл, путь к файлю указываю в скрипте, и когда он доходит до последней точки, то допустим, выскакиет, сообшение от инжекта, допустим выскакивает: go mining!. Вот как сделать такой скрипт-ходилку, вот то чтобы копал делать не надо, это я уже сам сделаю, вот мне надо что бы чар ходил по координатом, от точки до точки, и таким образом добирался до камня. Я вам предоставлю один такой скрипт от мининга обычного, но почему-то он отдельно не работает:

Code: Select all

sub go(n)
 VAR X,Y,D,dx1,dy1,dx,dy,i,t,tile,destx="",desty=""
 VAR key="506301427",f=file("C:\mining.wp.txt")
 f.open()
 if n>1 then
  for i=1 to n-1
   f.ReadLn()
  next
 endif
 tile=f.ReadLn()
 uo.print(str(n))
 uo.print(tile)
 f.close()
 while true
  dx=val(extract(tile,"2")) - UO.GetX()
  dy=val(extract(tile,"3")) - UO.GetY()
  dx1=Sign(dx)
  dy1=Sign(dy)
  if ((dx==-1 or dx==0 or dx==1)and (dy==-1 or dy==0 or dy==1)) then
    mine(tile)
   return
  endif
  X=UO.GetX()
  Y=UO.GetY()
  D=UO.GetDir()
  UO.Press(val(Key[4+dy1*3+dx1])+33)
  t=UO.Timer()
  while ((UO.GetX() == X) and (UO.GetY() == Y) and UO.GetDir() == D)
   wait(100)
   if ((UO.Timer()-T) > 30) then
    UO.Print("Lag")
    UO.Press(val(Key[4+dy1*3+dx1])+33)
    T = UO.Timer()
   endif
  wend
 wend
end sub



Не запускаетйса, что-то, вот очень прошу, что надо переделать, или лучше, если не трудно сами переделайте, прошу!
flake
Expert!
Posts: 746
Joined: 2004-08-11 23:56:17
Location: The Citadel
Contact:

Post by flake »

Дык расскажи, что с ним не так?
Что не работает, какие ошикби и т.д.?
Titar
Posts: 11
Joined: 2005-08-14 00:25:58

Post by Titar »

Invalid number of arguments - go .

Как сделать так, чтобы чар самостоятельно перешел в тайл, координаты которого указаны в скрипте?
flake
Expert!
Posts: 746
Joined: 2004-08-11 23:56:17
Location: The Citadel
Contact:

Post by flake »

А ты пытаешся запустить этот скритп на прямую?
Его ведь нужно вызывать, передавая значение n.
А самостоятельно чар ничего не сделает, его нужно будет передвинуть скриптом или ручками.
Titar
Posts: 11
Joined: 2005-08-14 00:25:58

Post by Titar »

flake wrote:А ты пытаешся запустить этот скритп на прямую?
Его ведь нужно вызывать, передавая значение n.
А самостоятельно чар ничего не сделает, его нужно будет передвинуть скриптом или ручками.


Я в этих скриптах плохо разбираюсь, вот, пожалуйста, сделайте такой скрипт, который я описал в первом посте.
Titar
Posts: 11
Joined: 2005-08-14 00:25:58

Post by Titar »

Как сделать так, чтобы чар самостоятельно перешел в тайл, координаты которого указаны в скрипте?
flake
Expert!
Posts: 746
Joined: 2004-08-11 23:56:17
Location: The Citadel
Contact:

Post by flake »

Вот как раз для этого тебе нужна ходилка.
Titar
Posts: 11
Joined: 2005-08-14 00:25:58

Post by Titar »

flake wrote:Вот как раз для этого тебе нужна ходилка.



Ну можете ее написать, если обьяснить как ее написать, какие комманды надо использовать?
flake
Expert!
Posts: 746
Joined: 2004-08-11 23:56:17
Location: The Citadel
Contact:

Post by flake »

Есть готовые на форуме, ищи топики Savage
Titar
Posts: 11
Joined: 2005-08-14 00:25:58

Post by Titar »

СПасбо.

А как сделать, что чар ложил руду в банк, а то я посмотрел крипты, и он везде ложит в сундук в доме, а вот как в банк, там ведь проде нельзя никак узнать ИД код банка...
flake
Expert!
Posts: 746
Joined: 2004-08-11 23:56:17
Location: The Citadel
Contact:

Post by flake »

Вобщем можно так сделать, кладешь в банк любой мешок/сундук...
И в начале скрипта на сброс просто добавь

Code: Select all

UO.MSG( 'BANK' )
Wait(400)

Чтобы открыть банк.
Post Reply