API UO ClearSystemJournal - LIHACHTETAN/ClassicUO-BadNewbie-BasicIDE GitHub Wiki

UO.ClearSystemJournal

Оглавление · Алфавитный указатель · Journal

ClassicUO • Runtime API

Удаляет строки с именем автора System.

Точный синтаксис

UO.ClearSystemJournal() -> Unit

Выберите одну из зарегистрированных форм. Параметры передаются позиционно. Any означает значение BASIC с преобразованием внутри команды; Unit — отсутствие возвращаемого значения.

Параметры

Параметров нет.

Возвращает

Unit — нет возвращаемого значения. Не возвращает число удалённых строк. Счётчик совпадений и выбор текущего скрипта сбрасываются.

Поведение

  • Общий буфер доступен всем скриптам: удалённые строки перестают находиться. Снимки, ранее сохранённые другими скриптами, могут остаться, но их индекс станет -1.
  • System распознаётся по имени автора без учёта регистра; это адаптация отдельного системного журнала Stealth.
  • Первичный справочник: https://stealth.od.ua/api/ClearSystemJournal/ .

Примеры

Пример 1. Очистить выбранную область журнала

# Очистить выбранную область журнала
#
# Удаляет строки с именем автора System.
#
# Unit — нет возвращаемого значения. Не возвращает число удалённых строк. Счётчик совпадений и
# выбор текущего скрипта сбрасываются.

SUB Main()
    # Аргументов нет. Удаляются только строки System.
    # Счётчик последнего поиска становится 0; Print после очистки может добавить новую строку.

    UO.ClearSystemJournal()
    VAR count = UO.LineCount()
    UO.Print('Search matches after clear: ' + STR(count))
END SUB

Разбор параметров и выполнения:

  • Аргументов нет. Удаляются только строки System.
  • Счётчик последнего поиска становится 0; Print после очистки может добавить новую строку.

Пример 2. Очистить перед ожиданием

# Очистить перед ожиданием
#
# Удаляет строки с именем автора System.
#
# Unit — нет возвращаемого значения. Не возвращает число удалённых строк. Счётчик совпадений и
# выбор текущего скрипта сбрасываются.

SUB Main()
    # Очистка выполняется до сохранения временной метки. 1000 — ограниченное ожидание в
    # миллисекундах.
    # Для исключения старых сообщений обычно достаточно метки времени; очистка затрагивает и другие
    # скрипты.

    UO.ClearSystemJournal()
    VAR started = Now()
    VAR found = UO.WaitJournalLine(started, 'notice', 1000)
    UO.Print(STR(found))
END SUB

Разбор параметров и выполнения:

  • Очистка выполняется до сохранения временной метки. 1000 — ограниченное ожидание в миллисекундах.
  • Для исключения старых сообщений обычно достаточно метки времени; очистка затрагивает и другие скрипты.

Пример 3. Проверить сброс выбранной записи

# Проверить сброс выбранной записи
#
# Удаляет строки с именем автора System.
#
# Unit — нет возвращаемого значения. Не возвращает число удалённых строк. Счётчик совпадений и
# выбор текущего скрипта сбрасываются.

SUB Main()
    # После очистки через текущий скрипт index=-1, даже если удалялась только часть буфера.
    # Переменная text сохраняет ранее прочитанную копию, а GetFoundedText уже очищен.

    VAR text = UO.Journal(0)
    UO.ClearSystemJournal()
    VAR index = UO.LineIndex()
    UO.Print(STR(index))
END SUB

Разбор параметров и выполнения:

  • После очистки через текущий скрипт index=-1, даже если удалялась только часть буфера.
  • Переменная text сохраняет ранее прочитанную копию, а GetFoundedText уже очищен.