И снова ламбер, Поправьте скрипт
11 лет
Trasher
Сообщений: 90
Рег. 12.11.2013
7 декабря 2013 04:14
Сообщение #1
Привет всем!
Начал рубить лес.. но вот скрипт что то запинается, начинает рубить, но после появления сообщения о удачном вырубе или наоборот,просто стоит и ничего не делает, т.е рубит один раз и все... место куда вписывать фразы"фейлов" ненашел =( Если кто может помогите =)
Sub searchTree()
   var i, x, y, t, stp, max_search = 24; ìàêñèìàëüíàÿ äèñòàíöèÿ äëÿ ãåíåðàöèè êîîðäèíàò.
   var cx = uo.getX()
   var cy = uo.getY()
   for i = 1 to max_search
      for x =-i to i
         stp = 1
         if not i == abs( x ) then
            stp = abs( i ) * 2
         endif
         for y = -i to i step stp
            if NOT uo.getGlobal( 't:' + str( x + cx ) + "," + str( y + cy ) ) == "empty" then
               t = IsTreeTile( x + cx, y + cy )
               if not t == false then
                  uo.setGlobal( "tree_x", str( x + cx ) )
                  uo.setGlobal( "tree_y", str( y + cy ) )
                  uo.setGlobal( "tree_t", str( t ) )
                  return false
               else
                  uo.setGlobal( 't:' + str( x + cx ) + "," + str( y + cy ), 'empty' )
               endif
            endif
         next
      next
   next
   uo.print( "Çäåñü ïîëåçíàÿ äðåâåñèíà êîí÷èëàñü.|Ñëèøêîì äàëåêî." )
   uo.exec( "terminate autoLumber" )
   return false
endsub

sub autoLumber()
   searchTree()
   doMineTree()
   ttt()
endsub

Sub doMineTree()
   var x, y, t
   var end = "Çäåñü ïîëåçíàÿ äðåâåñèíà êîí÷èëàñü.|Ñëèøêîì äàëåêî."
   var try = "Ñëèøêîì äàëåêî."
   repeat
      x = val( uo.getGlobal( "tree_x" ) )
      y = val( uo.getGlobal( "tree_y" ) )
      t = val( uo.getGlobal( "tree_t" ) )
      uo.setGlobal( 't:' + str( x ) + "," + str( y ), "empty" )
      Walker( x, y, 1 )
      uo.exec( "exec searchTree" )
      repeat
         if uo.waiting() then
            uo.canceltarget()
         endif
         deljournal( try + "|" + end )
         uo.waittargettile( str( t ), str( x ), str( y ), str( uo.getZ() ) )
         uo.usetype( 0x0F43 )
         repeat
            wait( 100 )
         until uo.injournal( try + "|" + end )
      until uo.injournal( end )
      while uo.getGlobal( "tree_x" ) == str( x ) && uo.getGlobal( "tree_y" ) == str( y )
         wait( 100 )
      wend
   until false
endsub

Sub deljournal( msg )
   while uo.injournal( msg )
      uo.setjournalline( uo.injournal( msg ) -1, '' )
   wend
endsub

Sub IsTreeTile( x, y )
   var i, tree_count = 20
   DIM tree[ val( str( tree_count ) ) ]
   tree[0] = 3274
   tree[1] = 3275
   tree[2] = 3276
   tree[3] = 3277
   tree[4] = 3280
   tree[5] = 3283
   tree[6] = 3286
   tree[7] = 3289
   tree[8] = 3291
   tree[9] = 3292
   tree[10] = 3294
   tree[11] = 3295
   tree[12] = 3296
   tree[13] = 3299
   tree[14] = 3302
   tree[15] = 3394
   tree[16] = 3395
   tree[17] = 3417
   tree[18] = 3440
   tree[19] = 3461
   for i = 0 to tree_count -1
      if uo.privategettile( x, y, -1, tree[i], tree[i] ) then
         return tree[i]
      endif
   next
   return false
endsub
Маршал (73319389)14 летИнквизитор
Inquisitor
Сообщений: 1693
Рег. 19.06.2010
7 декабря 2013 06:31
Сообщение #2
   var end = "appears immune|nothing here|reach this|You can|far away|no line|here to chop|elsewhere|запрещена!"
   var try = "You put|fail|You hack|You decide|You must|is attacking"
11 лет
Trasher
Сообщений: 90
Рег. 12.11.2013
7 декабря 2013 18:38
Сообщение #3
Спасибо большое.. Слепой,незаметил =)))
Генерал Майор (20190253)11 летИнквизитор
Inquisitor
Сообщений: 442
Рег. 24.01.2013
8 декабря 2013 02:43
Сообщение #4
у меня чего то не работает вообще
Маршал (73319389)14 летИнквизитор
Inquisitor
Сообщений: 1693
Рег. 19.06.2010
8 декабря 2013 13:36
Сообщение #5
Ходилка от Beyonder'a
Генерал Майор (20190253)11 летИнквизитор
Inquisitor
Сообщений: 442
Рег. 24.01.2013
8 декабря 2013 15:46
Сообщение #6
у меня и ходилка прикручена и все дела) дело в том что он просто ничего вообще не делет постоит и потом выключаеться вовсе, настал такои момент после переустановки винды.до этого все четко работало.
Последние посетители (0):

 
Сейчас: 25 ноября 2024 02:37