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

UO.ClearJournal

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

ClassicUO • Runtime API

Удаляет строки из общего локального журнала.

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

UO.ClearJournal() -> Unit

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

Параметры

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

Возвращает

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

Поведение

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

Примеры

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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