Page 1 of 1

Проблема!!!

Posted: 2009-12-16 13:16:04
by elke
Вот код:, когда запускаешь FindPlayer (чар должен реколится от любого игрока) и идешь рубить, чар при появлении игрока пишет *реколимся от атаки* и стоит на месте,( делаешь шаг он рекоится) не пойму в чем проблема :?
в инже стоят галки:
Image

Code: Select all

sub FindPlayer()
   VAR a, b
   DIM Chars[2]
   uo.ignore('self', 'on')
   Chars[0] = '0x0190' #тип игрока мужского пола#
   Chars[1] = '0x0191' #тип игрока женского пола#
   while not uo.dead()
      for a = 0 to 1
         uo.set('finddistance', '15')
         uo.findtype(Chars[a], '-1', '1')
         if uo.findcount() > 0 then
            Pause()
            RecallAtAttack()
            UO.Exec( 'terminate PermResend' )
         endif
         wait ( 200 )
      next
      wait ( 200 )
   wend
   uo.IgnoreReset()
end sub

sub RecallAtAttack()
   var d = uo.getx('self')
   uo.Exec('terminate ToHide')
   uo.print('Реколимся от атаки...')
   if uo.Waiting() then
      uo.CancelTarget()
   end if
   repeat
      uo.deletejournal()
      uo.waittargetobject('runeHome')
      if UO.Count("0x1f4c") > 0 then
         UO.Exec("usetype 0x1f4c")
      else
         uo.cast('Recall')
      EndIf
      repeat
         wait( 200 )
      until d <> uo.getx('self') or uo.injournal('The spell fizzles.')
   until not uo.injournal('The spell fizzles.')
   if RecallDrop == 1 then
      DropLogs()
   end if
   UO.print('Ждем 3 минуты, и реколимся обратно')
   wait(60000)
   UO.print('Ждем еще 2 минуты.')
   wait(60000)
   UO.print('Ждем еще 1 минуту.')
   wait(50000)
   UO.print('Ждем еще 10 секунд.')
   wait(5000)
   UO.print('4 ...')
   wait(1000)
   UO.print('3 ...')
   wait(1000)
   UO.print('2 ...')
   wait(1000)
   UO.print('1 ...')
   wait(1000)
   uo.DeleteJournal()
   RecallToLumber()
   Resume()
end sub

Posted: 2009-12-16 16:37:40
by Mirage
как и написано в скрипте - срабатывает пауза. Больше пока ничего необычного не вижу :)

Posted: 2009-12-16 16:50:57
by Destruction
Mirage wrote:как и написано в скрипте - срабатывает пауза. Больше пока ничего необычного не вижу :)

sub pause вероятно не имеет отношения к делу.

Ты дальше читай.

Posted: 2009-12-16 17:11:02
by elke
ну как и сказал Дестр, пауза не имеет не какого отношения!

Code: Select all

sub pause() 
uo.setglobal( "paused", "1" )
endsub

ну так что есть у кого предположения:? вот реально пишет что реколится и стоит на месте, делаешь шаг сразу идет рекол и продолжения действия ! Блин так приэтом не могу понять раньше вроде все нормальн обыло =( что за хрень (

Posted: 2009-12-16 17:27:16
by CuHTpoH
что за UO.Exec( 'terminate PermResend' )?

Posted: 2009-12-16 18:47:07
by elke
отключает ходилку (ходилка -*NeedGo v.1.02 (c) Edred*- )...

Posted: 2009-12-17 09:35:43
by elke
ну так что не у кого нету идеи :?

Posted: 2009-12-17 11:39:47
by Mirage
until d <> uo.getx('self')
ждет пока чар не двинется (сменит координату)

ГРАМОТНЕЕ проверку на убыток маны сделать это раз и фразы сократи это два. Как вы любите писать полные фразы со знаками припинания пипец просто.

Posted: 2009-12-17 11:56:37
by elke
ну я понимаю ) но мне кажется ето к делу не оч относится, ибо он не реколится, а ето первее чем проверка =)

может ли быть что когда выполняется вот эта проверка:

Code: Select all

repeat 
      wait( 200 )
until uo.injournal( break + "|" + continue )

var continue = "You put|Вы отменили|but fail|wrong"
var break = "in rock|far away|в другом месте|no logs"

то он и не хочет реколиться :?

Posted: 2009-12-17 14:12:23
by CuHTpoH
Mirage wrote:until d <> uo.getx('self')
ждет пока чар не двинется (сменит координату)

ГРАМОТНЕЕ проверку на убыток маны сделать это раз и фразы сократи это два. Как вы любите писать полные фразы со знаками припинания пипец просто.

ГРАМОТНЕЕ делать проверку по Х и Y
"Убыток" - порадовало )

elke wrote:

Code: Select all

repeat 
      wait( 200 )
until uo.injournal( break + "|" + continue )

var continue = "You put|Вы отменили|but fail|wrong"
var break = "in rock|far away|в другом месте|no logs"


а я такой конструкцией не пользовался никада, не могу сказать (

Posted: 2009-12-17 16:22:22
by elke
АаааАА =) в гроб сведет меня этот скрипт ;)
Ладно СПС всеМ кто Ответил ;) буду пытаться Этот скрипт усмерить сам ;)

Posted: 2009-12-17 17:12:42
by Destruction
Mirage wrote:until d <> uo.getx('self')
ждет пока чар не двинется (сменит координату)

Ага, но предварительно он кастует рекол.. Логично ожидать смены координат после рекола.

Posted: 2009-12-18 10:06:16
by Mirage
Он не написал выше моего поста что каст проходит ;)
если филз был и он пишется не такой как в скрипте фразой то скрипт зависает... Хотя конечно это не оправдывает прыжка после шага.

Ну я так - фантазирую 8)