Skip to content

API UO MoveBoat

Codex edited this page Sep 19, 2026 · 4 revisions

UO.MoveBoat

ClassicUO / Basic IDE

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

Управляет лодкой, которой правит персонаж, через пакетное HS-управление (тот же механизм, что и управление мышью в официальном клиенте; пакет 0xBF, субкоманда 0x33).

Синтаксис

UO.MoveBoat(Direction:Any, Speed:Any) -> Unit

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

Параметры

Имя Назначение
Direction Позиционный аргумент этой перегрузки. Подробности использования указаны в описании/фактической ветви runtime ниже.
Speed Boat speed enum: 0=stop, 1=slow, 2=fast; values above 2 are clamped to 2.

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

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

Direction — 0=N, 1=NE, 2=E, 3=SE, 4=S, 5=SW, 6=W, 7=NW; string aliases only where Behavior lists them.

  • Speed — Boat speed enum: 0=stop, 1=slow, 2=fast; values above 2 are clamped to 2.

Возвращает: Unit — значения нет. Выполняйте вызов отдельной строкой; его нельзя использовать как проверку успеха. Эффект и ограничения зависят от команды.

Примеры

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

Пример 1

SUB Main()
    UO.MoveBoat(0, 0)
END SUB

Пример 2

SUB Main()
    UO.MoveBoat(1, 2)
END SUB

Пример 3

SUB Main()
    VAR arg1 = 1 # Direction
    VAR arg2 = 2 # Speed
    UO.MoveBoat(arg1, arg2)
END SUB

Пример 4

SUB ReadResult()
    VAR arg1 = 1 # Direction
    VAR arg2 = 2 # Speed
    UO.MoveBoat(arg1, arg2)
END SUB

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

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

bridge.MoveBoat(Arg(0), Arg(1)); return InjectionValue.Unit;

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

Clone this wiki locally