API remain - LIHACHTETAN/ClassicUO-BadNewbie-BasicIDE GitHub Wiki

remain

Оглавление · Алфавитный указатель · BASIC built-ins

ClassicUO • Runtime API

Проверяет наличие одного действия, сохранённого регистратором SetRec для UseRec.

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

remain() -> Integer

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

Параметры

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

Возвращает

Integer Boolean: 1 — сохранённая строка действия непуста, 0 — записи нет. Это не счётчик очереди, не число оставшихся воспроизведений и не время. Вызов UseRec не расходует запись: после него remain остаётся 1.

Поведение

  • SetRec очищает предыдущую запись и включает захват следующей поддерживаемой legacy-команды. После одного захвата запись отключается; сохраняются имя и типизированные аргументы действия.
  • remain только читает наличие записи. Отдельного имени UO.Remain в каталоге нет: вызывайте remain().

Примеры

Пример 1. Посмотреть наличие записи

# Посмотреть наличие записи
#
# Проверяет наличие одного действия, сохранённого регистратором SetRec для UseRec.
#
# Integer Boolean: 1 — сохранённая строка действия непуста, 0 — записи нет. Это не счётчик
# очереди, не число оставшихся воспроизведений и не время. Вызов UseRec не расходует запись:
# после него remain остаётся 1.

SUB Main()
    # Аргументов нет; проверяется сохранённое действие этого runtime.
    # 1 означает непустую запись, 0 — её отсутствие.

    VAR available = remain()
    UO.Print('Recording available 1/0: ' + STR(available))
END SUB

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

  • Аргументов нет; проверяется сохранённое действие этого runtime.
  • 1 означает непустую запись, 0 — её отсутствие.

Пример 2. Записать и повторить локальную установку имени объекта

# Записать и повторить локальную установку имени объекта
#
# Проверяет наличие одного действия, сохранённого регистратором SetRec для UseRec.
#
# Integer Boolean: 1 — сохранённая строка действия непуста, 0 — записи нет. Это не счётчик
# очереди, не число оставшихся воспроизведений и не время. Вызов UseRec не расходует запись:
# после него remain остаётся 1.

SUB Main()
    # SetRec сначала очищает старое действие. Следующий SetDefault сохраняется с именем saved_bag и
    # аргументом backpack.
    # UseRec повторяет сохранённый SetDefault. Запись остаётся доступной; это не перенос предметов.

    UO.SetRec()
    UO.SetDefault('saved_bag', 'backpack')
    IF remain() = 1 THEN
        UO.UseRec()
    END IF
END SUB

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

  • SetRec сначала очищает старое действие. Следующий SetDefault сохраняется с именем saved_bag и аргументом backpack.
  • UseRec повторяет сохранённый SetDefault. Запись остаётся доступной; это не перенос предметов.

Пример 3. Сбросить запись и проверить состояние до захвата

# Сбросить запись и проверить состояние до захвата
#
# Проверяет наличие одного действия, сохранённого регистратором SetRec для UseRec.
#
# Integer Boolean: 1 — сохранённая строка действия непуста, 0 — записи нет. Это не счётчик
# очереди, не число оставшихся воспроизведений и не время. Вызов UseRec не расходует запись:
# после него remain остаётся 1.

SUB Main()
    # Сразу после SetRec строка записи пуста.
    # available получает 0. Регистратор остаётся включён до следующей совместимой legacy-команды;
    # само чтение remain ничего не записывает.

    UO.SetRec()
    VAR available = remain()
    UO.Print(STR(available))
END SUB

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

  • Сразу после SetRec строка записи пуста.
  • available получает 0. Регистратор остаётся включён до следующей совместимой legacy-команды; само чтение remain ничего не записывает.