API UO InfoGump - LIHACHTETAN/ClassicUO-BadNewbie-BasicIDE GitHub Wiki
Оглавление · Алфавитный указатель · Diagnostics & Introspection
ClassicUO • Runtime API
Открывает подробный текстовый инспектор серверного гампа.
UO.InfoGump() -> Unit
UO.InfoGump(gump:Any) -> Unit
Выберите одну из зарегистрированных форм. Параметры передаются позиционно. Any означает значение BASIC с преобразованием внутри команды; Unit — отсутствие возвращаемого значения.
-
gump— Необязательный селектор окна. Integer или числовая строка: сначала ищется точное совпадение GumpID/serial, затем индекс с 0. -1 — выбранный этим скриптом гамп, а если его нет — последний в текущем списке. Другие отрицательные Integer сохраняют 32-битный ID. Это селектор, в отличие от строгого GumpIndex в NumGump*.
Unit — ничего не возвращает. Нельзя интерпретировать результат как подтверждение сервера или Boolean.
- Работает с активными серверными гампами. Рюкзак, карта, настройки и другие локальные окна не входят в этот список. Один вызов читает данные в игровом потоке; разные вызовы могут увидеть разные состояния списка.
- Инспектор показывает serial/GumpID, положение, размеры, страницы, кнопки и их ButtonID, переключатели, поля ввода и дерево контролов. Текст можно выделять и копировать.
- InfoGump без аргументов использует выбранное/последнее окно. InfoGumps без аргументов показывает таблицу индексов и ID всех окон. Аргумент у обеих команд открывает подробный инспектор одного окна.
- Открытие подробного инспектора делает исследуемый гамп выбранным для SendGumpSelect(buttonId). При отсутствии окна выводится сообщение; это не возвращает Boolean.
# Открыть инспектор
#
# Открывает подробный текстовый инспектор серверного гампа.
#
# Unit — ничего не возвращает. Нельзя интерпретировать результат как подтверждение сервера или
# Boolean.
SUB Main()
# Аргументов нет: InfoGump показывает выбранное/последнее окно, InfoGumps — список окон.
UO.InfoGump()
END SUBРазбор параметров и выполнения:
- Аргументов нет: InfoGump показывает выбранное/последнее окно, InfoGumps — список окон.
# Исследовать конкретный ID
#
# Открывает подробный текстовый инспектор серверного гампа.
#
# Unit — ничего не возвращает. Нельзя интерпретировать результат как подтверждение сервера или
# Boolean.
SUB Main()
# 0x87654321 — пример ID со старшим битом. Он сравнивается точно, а не заменяется последним
# окном.
UO.InfoGump(0x87654321)
END SUBРазбор параметров и выполнения:
- 0x87654321 — пример ID со старшим битом. Он сравнивается точно, а не заменяется последним окном.
# Посмотреть список, затем конкретное окно
#
# Открывает подробный текстовый инспектор серверного гампа.
#
# Unit — ничего не возвращает. Нельзя интерпретировать результат как подтверждение сервера или
# Boolean.
SUB Main()
# Первый вызов показывает список. Затем читается GumpID первого окна и открывается подробный
# инспектор; при одинаковых ID будет выбрано первое совпадение.
UO.InfoGumps()
IF UO.GetGumpsCount() > 0 THEN
VAR id = UO.GetGumpID(0)
UO.InfoGump(id)
END IF
END SUBРазбор параметров и выполнения:
- Первый вызов показывает список. Затем читается GumpID первого окна и открывается подробный инспектор; при одинаковых ID будет выбрано первое совпадение.