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

UO.PlayWav

ClassicUO / Basic IDE

Оглавление · Алфавитный указатель · Sound & Visual Environment

Воспроизводит WAV-файл асинхронно.

Синтаксис

UO.PlayWav(file:String) -> Integer
UO.PlayWav(FileName:Any) -> Any

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

Параметры

Имя Назначение
file Позиционный аргумент этой перегрузки. Подробности использования указаны в описании/фактической ветви runtime ниже.
FileName Позиционный аргумент этой перегрузки. Подробности использования указаны в описании/фактической ветви runtime ниже.

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

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

FileName — Quoted BASIC string. Fixed keywords/enums, when present, are listed in Behavior/Notes.

Примеры

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

Пример 1

SUB Main()
    VAR result = UO.PlayWav('example.txt')
END SUB

Пример 2

SUB Main()
    VAR result = UO.PlayWav('example.txt')
    UO.Print(CStr(result))
END SUB

Пример 3

SUB Main()
    VAR arg1 = 'example.txt' # file
    VAR result = UO.PlayWav(arg1)
    # Пример порога; выберите подходящий смыслу команды.
    IF result > 0 THEN
        UO.Print(CStr(result))
    END IF
END SUB

Пример 4

FUNCTION ReadResult()
    VAR arg1 = 'example.txt' # file
    VAR result = UO.PlayWav(arg1)
    RETURN result
END FUNCTION

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

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

return new InjectionValue(bridge.PlayWav(Text(0)));

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

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