API UO GetSerial - LIHACHTETAN/ClassicUO-BadNewbie-BasicIDE GitHub Wiki
UO.GetSerial
Оглавление · Алфавитный указатель · Items
ClassicUO • Runtime API
Разрешает имя объекта в его serial и форматирует serial как hex-строку.
Точный синтаксис
UO.GetSerial() -> String
UO.GetSerial(id:String) -> String
Выберите одну из зарегистрированных форм. Параметры передаются позиционно. Any означает значение BASIC с преобразованием внутри команды; Unit — отсутствие возвращаемого значения.
Параметры
id— Необязательная строка: стандартный алиас, имя AddObject или числовой текст (десятичный/hex). Без аргумента используется serial текущего персонажа.
Возвращает
String вида "0x40001234" — уникальный serial/ID объекта, восемь hex-цифр после 0x. Неразрешённое имя даёт "0x00000000". Это не type. Числовой текст форматируется даже если такой объект не загружен; GetSerial сам по себе не проверяет Exists.
Поведение
- Имена алиасов читаются из текущего состояния скрипта/клиента. Сохранённая строка serial не меняется автоматически, если алиас впоследствии указывает на другой объект.
Примеры
Пример 1. Получить ID своего персонажа
# Получить ID своего персонажа
#
# Разрешает имя объекта в его serial и форматирует serial как hex-строку.
#
# String вида "0x40001234" — уникальный serial/ID объекта, восемь hex-цифр после 0x.
# Неразрешённое имя даёт "0x00000000". Это не type. Числовой текст форматируется даже если такой
# объект не загружен; GetSerial сам по себе не проверяет Exists.
SUB Main()
# Параметров нет, выбран self.
# serial — hex-строка. Значение 0x00000000 означает отсутствие serial персонажа.
VAR serial = UO.GetSerial()
UO.Print(serial)
END SUB
Разбор параметров и выполнения:
- Параметров нет, выбран self.
- serial — hex-строка. Значение 0x00000000 означает отсутствие serial персонажа.
Пример 2. Безопасно использовать последнее выбранное имя
# Безопасно использовать последнее выбранное имя
#
# Разрешает имя объекта в его serial и форматирует serial как hex-строку.
#
# String вида "0x40001234" — уникальный serial/ID объекта, восемь hex-цифр после 0x.
# Неразрешённое имя даёт "0x00000000". Это не type. Числовой текст форматируется даже если такой
# объект не загружен; GetSerial сам по себе не проверяет Exists.
SUB Main()
# id="lasttarget" разрешается в serial последней цели.
# Exists проверяет наличие объекта, GetName читает его известное клиенту имя.
VAR serial = UO.GetSerial('lasttarget')
IF UO.Exists(serial) THEN
UO.Print(UO.GetName(serial))
ELSE
UO.Print('Target is not loaded')
END IF
END SUB
Разбор параметров и выполнения:
- id="lasttarget" разрешается в serial последней цели.
- Exists проверяет наличие объекта, GetName читает его известное клиенту имя.
Пример 3. Сравнить числовые представления
# Сравнить числовые представления
#
# Разрешает имя объекта в его serial и форматирует serial как hex-строку.
#
# String вида "0x40001234" — уникальный serial/ID объекта, восемь hex-цифр после 0x.
# Неразрешённое имя даёт "0x00000000". Это не type. Числовой текст форматируется даже если такой
# объект не загружен; GetSerial сам по себе не проверяет Exists.
SUB Main()
# id — строка с десятичным serial 1073746484.
# Результат 0x40001234 показывает форматирование. Это пример числа, он не создаёт объект и не
# гарантирует его наличие.
VAR serial = UO.GetSerial('1073746484')
UO.Print(serial)
END SUB
Разбор параметров и выполнения:
- id — строка с десятичным serial 1073746484.
- Результат 0x40001234 показывает форматирование. Это пример числа, он не создаёт объект и не гарантирует его наличие.