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 ничего не записывает.