-
Notifications
You must be signed in to change notification settings - Fork 0
API UO GetGumpCount
Codex edited this page Sep 19, 2026
·
5 revisions
Оглавление · Алфавитный указатель · Gumps
ClassicUO • Runtime API
Короткий вариант GetGumpsCount: число активных серверных гампов.
UO.GetGumpCount() -> Integer
Выберите одну из зарегистрированных форм. Параметры передаются позиционно. Any означает значение BASIC с преобразованием внутри команды; Unit — отсутствие возвращаемого значения.
Параметров нет.
Integer >= 0 — количество окон, не индекс последнего окна. 0 — список пуст.
- Работает с активными серверными гампами. Рюкзак, карта, настройки и другие локальные окна не входят в этот список. Один вызов читает данные в игровом потоке; разные вызовы могут увидеть разные состояния списка.
# Проверить наличие окон
#
# Короткий вариант GetGumpsCount: число активных серверных гампов.
#
# Integer >= 0 — количество окон, не индекс последнего окна. 0 — список пуст.
SUB Main()
# Аргументов нет. count=0 означает отсутствие серверных окон в текущем списке.
VAR count = UO.GetGumpsCount()
IF count = 0 THEN
UO.Print('No server gumps')
END IF
END SUBРазбор параметров и выполнения:
- Аргументов нет. count=0 означает отсутствие серверных окон в текущем списке.
# Перечислить ID
#
# Короткий вариант GetGumpsCount: число активных серверных гампов.
#
# Integer >= 0 — количество окон, не индекс последнего окна. 0 — список пуст.
SUB Main()
# i — индекс с 0. Полученные ID идентифицируют типы окон, а не позиции в списке.
# Если окна меняются во время обхода, список нужно перечитать; count не блокирует интерфейс.
VAR count = UO.GetGumpsCount()
VAR i = 0
WHILE i < count
UO.Print(Hex(UO.GetGumpID(i)))
i = i + 1
WEND
END SUBРазбор параметров и выполнения:
- i — индекс с 0. Полученные ID идентифицируют типы окон, а не позиции в списке.
- Если окна меняются во время обхода, список нужно перечитать; count не блокирует интерфейс.
# Прочитать крайний элемент списка
#
# Короткий вариант GetGumpsCount: число активных серверных гампов.
#
# Integer >= 0 — количество окон, не индекс последнего окна. 0 — список пуст.
SUB Main()
# count-1 — последний индекс текущего списка, не гарантия самого нового окна. info пуст, если
# окно исчезло до чтения.
VAR count = UO.GetGumpsCount()
IF count > 0 THEN
VAR info = UO.GetGumpInfo(count - 1)
UO.Print(GetArrayLength(info))
END IF
END SUBРазбор параметров и выполнения:
- count-1 — последний индекс текущего списка, не гарантия самого нового окна. info пуст, если окно исчезло до чтения.
ClassicUO - Bad Newbie & Basic IDE Edition