-
Notifications
You must be signed in to change notification settings - Fork 0
API UO GetActiveAbility
Codex edited this page Sep 21, 2026
·
6 revisions
Оглавление · Алфавитный указатель · Combat
ClassicUO • Runtime API
Читает имя активированной боевой способности своего персонажа.
UO.GetActiveAbility() -> Any
Выберите одну из зарегистрированных форм. Параметры передаются позиционно. Any означает значение BASIC с преобразованием внутри команды; Unit — отсутствие возвращаемого значения.
Параметров нет.
String — английское имя активированной способности, например Armor Ignore. Строка "0", если ни одна способность не активирована или персонаж отсутствует. Это не Integer 0, не ID способности и не подтверждение успешного удара.
- Читаются флаги PrimaryAbility/SecondaryAbility текущего персонажа. Если активны оба, выбирается первичная способность. Флаг активности исключается из номера перед поиском имени.
- Данные читаются локально; сам getter не активирует способность и не расходует ману. После атаки сервер может снять активацию.
# Показать активную способность
#
# Читает имя активированной боевой способности своего персонажа.
#
# String — английское имя активированной способности, например Armor Ignore. Строка "0", если ни
# одна способность не активирована или персонаж отсутствует. Это не Integer 0, не ID способности
# и не подтверждение успешного удара.
SUB Main()
# Аргументов нет; читается персонаж текущего клиента.
# При отсутствии активации печатается строка 0.
VAR name = UO.GetActiveAbility()
UO.Print(name)
END SUBРазбор параметров и выполнения:
- Аргументов нет; читается персонаж текущего клиента.
- При отсутствии активации печатается строка 0.
# Активировать первичную способность только при отсутствии активной
#
# Читает имя активированной боевой способности своего персонажа.
#
# String — английское имя активированной способности, например Armor Ignore. Строка "0", если ни
# одна способность не активирована или персонаж отсутствует. Это не Integer 0, не ID способности
# и не подтверждение успешного удара.
SUB Main()
# Сравнение выполняется со строкой 0. UsePrimaryAbility вызывается отдельно.
# Это запрос активации, а не доказательство успешного удара. Доступность зависит от оружия и
# правил сервера.
IF UO.GetActiveAbility() = '0' THEN
UO.UsePrimaryAbility()
END IF
END SUBРазбор параметров и выполнения:
- Сравнение выполняется со строкой 0. UsePrimaryAbility вызывается отдельно.
- Это запрос активации, а не доказательство успешного удара. Доступность зависит от оружия и правил сервера.
# Преобразовать имя в ID способности
#
# Читает имя активированной боевой способности своего персонажа.
#
# String — английское имя активированной способности, например Armor Ignore. Строка "0", если ни
# одна способность не активирована или персонаж отсутствует. Это не Integer 0, не ID способности
# и не подтверждение успешного удара.
SUB Main()
# GetAbilityID получает имя, возвращённое getter.
# ID способности не является serial оружия или персонажа. Сначала исключается отсутствие
# активной способности.
VAR name = UO.GetActiveAbility()
IF name <> '0' THEN
VAR id = UO.GetAbilityID(name)
UO.Print('Ability ID: ' + STR(id))
END IF
END SUBРазбор параметров и выполнения:
- GetAbilityID получает имя, возвращённое getter.
- ID способности не является serial оружия или персонажа. Сначала исключается отсутствие активной способности.
ClassicUO - Bad Newbie & Basic IDE Edition