Page 1 of 1

Что с командой UO.JournalColor ?

Posted: 2006-03-23 03:06:03
by Moke
Немогу понять в чем проблема у меня с этой командой. Нехочеть работать хоть убей. Хочу написать скрипт для выхота из парализа с учетом цвета каста....ни нифега. Просто UO.InJournal работает нормально.

Вот например:

Code: Select all

sub main()
while not UO.Dead()
      if UO.InJournal("An Ex Por") then
   
         
uo.Print('bla bla bla')
         
                wait(500)
       end if
         wait(1000)
 
   wend
end sub


Этот скрипт срабатывает при касте и тогда, когда просто пишеш An Ex Por.

Тогда я пишу так:

Code: Select all


sub main()

   while not UO.Dead()
      if UO.JournalColor(UO.InJournal('Rel Por')-1)=='0x003f' then

         uo.Print('bla bla bla')
             
                UO.DeleteJournal()
                wait(500)
            end if
                wait(1000)
   
   wend
end sub


Не распознает ниразу, ....Вобщем я прошу обьяснить почему функция не срабатывает.
в
Цвет задаю в инжекте, на закладке main,
Версия инжы последняя - 505.18

Posted: 2006-03-23 03:44:26
by Grin
не судьба сделать тоже самое как и с парализом только в теле написать что бы он выводил цвет каста? как раз и проверишь...

Posted: 2006-03-23 22:51:23
by Moke
Видно и вправду не судьба, я ведь попросил помочь с конструкцией, а не советом что судьба а что нет. Все что я нашел на этом форуме по поводу этой функции я написал. И при всем при этом ничего неработает.

Posted: 2006-03-24 22:51:04
by Destruction
Ты уверен, что сабжа такого цвета?

Я - нет, проверь через JournalColor, чего он там выдаст.

Posted: 2006-03-26 03:35:29
by Moke
Я пишу код цведа в инжекте, на закладке MAIN, как еще мне убедиться, что цвет тот же самый ?
Обьясните плиз нормально....что значит проверить через JournalColor ?

Posted: 2006-03-26 12:26:07
by Grin

Code: Select all

sub main() 
   while not UO.Dead()
      if UO.InJournal("An Ex Por") then
         uo.Print(str(UO.JournalColor(UO.InJournal('An Ex Por')-1)))
         uo.DeleteJournal()
         wait(500)
      end if
      wait(1000)
   wend
end sub

Posted: 2006-03-27 13:09:27
by Destruction
Grin wrote:

Code: Select all

sub main() 
   while not UO.Dead()
      if UO.InJournal("An Ex Por") then
         uo.Print(str(UO.JournalColor(UO.InJournal('An Ex Por')-1)))
         uo.DeleteJournal()
         wait(500)
      end if
      wait(1000)
   wend
end sub

Опечатка?

JournalColor возващает строку.

Т.е. писать надо так:

Code: Select all

sub main() 
   while not UO.Dead()
      if UO.InJournal("An Ex Por") then
         uo.Print(UO.JournalColor(UO.InJournal('An Ex Por')-1))
         uo.DeleteJournal()
         wait(500)
      end if
      wait(1000)
   wend
end sub

Posted: 2006-03-27 14:25:21
by Grin
Не опечатка а предположение.
уо под руками нет, а хелп на эту команду не расчитан%))

Posted: 2006-03-29 23:42:13
by Destruction
Grin wrote:Не опечатка а предположение.
уо под руками нет, а хелп на эту команду не расчитан%))

Лично я для себя усвоил давно, всё, что может вернуть с иксом - возвращает строку.

По-моему - вполне разумно.