Насчет UO.DeleteJournal

General Injection issues

Moderators: Murderator+, Murderator

Post Reply
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Насчет UO.DeleteJournal

Post by Edred »

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

Решение: вставляем в свои скрипты простенькую функцию:

Code: Select all

Sub DeleteJournal( string1 )
   VAR nom = UO.InJournal( string1 )
   If nom > 0 Then
      UO.SetJournalLine( Nom - 1, 'string replaced' )
      DeleteJournal( string1 )
   Endif
endsub



И вместо команды UO.DeleteJournal() используем команду DeleteJournal( текст ), где "текст" - это та строка, от которой вы хотите "избавиться" в журнале.
Yoko
Site Admin
Posts: 1964
Joined: 2004-04-03 16:49:38
Contact:

Post by Yoko »

я говорил об этом всем интересовавшимся
но так как люди не склонны самомтоятельно искать информацию то наверняка для котого это откровение
Savage
Expert!
Posts: 1205
Joined: 2004-04-04 11:13:54
Location: Балаково, Саратовская обл.
Contact:

Post by Savage »

Из своей практики скажу, что запуск паралельных скриптов - неоправданная и ненужная нагрузка. Все необходимые действия с чаром можно сделать последовательно.
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Post by Edred »

Yoko wrote:я говорил об этом всем интересовавшимся
но так как люди не склонны самомтоятельно искать информацию то наверняка для котого это откровение


Правда, у меня команда SetJournalLine не перезаписывает строку, а просто стирает ее, но я склонен относить это к тому, что до сих пор сижу на версии 312.19... :D Но не принципиально. Все равно цель достигается.
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Post by Edred »

Savage wrote:Из своей практики скажу, что запуск паралельных скриптов - неоправданная и ненужная нагрузка. Все необходимые действия с чаром можно сделать последовательно.


Добывающие скрипты. Блок рубки/копки/ловли. Удаление журнала и цикл паузы до появления нужной мессаги. Паралельно запущен скрипт на тревогу (появление элема, ПК, рипера и т.д.) - тоже простой цикл паузы до появления сообщения. Конечно, можно все это засандалить в один скрипт, но будет очень громоздко и не очень надежно. Зачем?
SVG
Posts: 73
Joined: 2004-04-15 14:50:06
Location: Moscow

Post by SVG »

Yoko wrote:я говорил об этом всем интересовавшимся
но так как люди не склонны самомтоятельно искать информацию то наверняка для котого это откровение


Я уже тоже слышал где то об этом, возможно и от тебя, тогда не плохо бы тем кто еще не знает в хелп ето написать. В хелпе по описанию этой команды нет ни каких передаваемых параметров. Ну короче немного исправить хелп.
Я где то рядом... 8)
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Post by Edred »

SVG wrote:
Yoko wrote:я говорил об этом всем интересовавшимся
но так как люди не склонны самомтоятельно искать информацию то наверняка для котого это откровение


Я уже тоже слышал где то об этом, возможно и от тебя, тогда не плохо бы тем кто еще не знает в хелп ето написать. В хелпе по описанию этой команды нет ни каких передаваемых параметров. Ну короче немного исправить хелп.


Ты про какую команду? UO.SetJournalLine? - там есть параметры (в хелпе, имею в виду). А про DeleteJournal - читай внимательнее - это просто функция, написанная мной, а не команда инжекта UO.DeleteJournal...
SVG
Posts: 73
Joined: 2004-04-15 14:50:06
Location: Moscow

Post by SVG »

:lol: Значит я где то чето напутал :roll: :roll:
Я где то рядом... 8)
Post Reply