API UO GetStaticArt - LIHACHTETAN/ClassicUO-BadNewbie-BasicIDE GitHub Wiki

UO.GetStaticArt

ClassicUO / Basic IDE

Оглавление · Алфавитный указатель · World & Geometry

Loads the requested static art from the active ClassicUO asset loaders (MUL/UOP), applies hue/partial-hue rules and encodes a complete 24-bit BMP byte array.

Синтаксис

UO.GetStaticArt(ObjType:Any, Hue:Any) -> Any

Регистр имени не важен. Any — динамическое значение Basic; Unit — отсутствие возвращаемого значения. Integer — знаковое 32-битное число, Decimal — число с плавающей точкой. Правила типов, serial, индексов и ожиданий.

Параметры

Имя Назначение
ObjType Позиционный аргумент этой перегрузки. Подробности использования указаны в описании/фактической ветви runtime ниже.
Hue Hue/color filter. -1 commonly means any hue where the overload supports wildcard filtering.

Параметры обязательны внутри каждой показанной сигнатуры. Опустить аргумент можно только при наличии более короткой перегрузки; пропуск позиции посередине не подразумевается.

Допустимые значения

ObjType — Decimal or 0x-prefixed graphic/body/tile ID; -1/0xFFFF is wildcard only where Behavior explicitly allows it.

  • Hue — Decimal or 0x-prefixed hue; -1 is any/default only where Behavior explicitly allows it.

Ограничения

Requires decodable art assets in the active ClassicUO data source. Empty Array means art is unavailable/undecodable.

Примеры

Каждый блок — самостоятельный скрипт из мануала проекта. Параметры демонстрационного объекта/контейнера и условия действия необходимо сопоставить с вашей игровой ситуацией.

Пример 1

SUB Main()
    VAR result = UO.GetStaticArt(0x0190, -1)
END SUB

Пример 2

SUB Main()
    VAR result = UO.GetStaticArt(1, -1)
    UO.Print(CStr(result))
END SUB

Пример 3

SUB Main()
    VAR arg1 = 1 # ObjType
    VAR arg2 = -1 # Hue
    VAR result = UO.GetStaticArt(arg1, arg2)
    UO.Print(CStr(result))
END SUB

Пример 4

SUB ReadResult()
    VAR arg1 = 1 # ObjType
    VAR arg2 = -1 # Hue
    VAR result = UO.GetStaticArt(arg1, arg2)
    UO.Print(CStr(result))
END SUB

SUB Main()
    ReadResult()
END SUB
Реализация и проверка контракта
  • InjectionScript.Runtime.InjectionApiUO+<>c__DisplayClass38_0.<RegisterStealthCompatibility>b__0

Соответствующая ветвь совместимого обработчика в InjectionApiUO.cs. Arg(i)/Text(i) читают позицию с нуля; bridge обращается к клиенту. Прямые типизированные перегрузки перечислены выше и могут иметь отдельный маршрут.

return new InjectionValue(bridge.GetStaticArt(Arg(0), Arg(1)).Select(value => new InjectionValue(value)).ToArray());

Источник реестра и отчёт сверки. Примеры проверяются загрузчиком/парсером включённого runtime. Действия на игровом сервере этой проверкой не исполняются.

⚠️ **GitHub.com Fallback** ⚠️