Skip to content

API Chr uk

Codex edited this page Oct 3, 2026 · 1 revision

Chr

API · BASIC

Русский · English · Українська · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어

ASC · Chr · len · StrComp

ClassicUO • Runtime API

Створює Unicode-символ для складання тексту.

Точний синтаксис

Chr(value:Integer) -> String

Параметри

  • value — Integer-код: обмежується до 0..0x10FFFF; сурогати 0xD800..0xDFFF спричиняють помилку, яку можна перехопити.

Повертає

String з однієї або двох одиниць UTF-16. Chr(0) — NUL, не порожній текст. Emoji займає дві одиниці; ASC не відновлює його повний код.

Поведінка

  • Виконується локально. Приклади повертають результат обробки заданих даних, не надсилають чат, не зупиняють скрипти та не звертаються до сервера.
  • Потрібен Integer, а не прямий Decimal. Табуляція й перенесення — символи, не натискання клавіш; вигляд залежить від вікна виводу.

Внутрішні функції: від виклику до результату

BasicChr обмежує код і викликає ConvertFromUtf32; допустимий код понад 0xFFFF утворює пару сурогатів.

1. BasicChr / Char.ConvertFromUtf32

BasicChr обмежує код і викликає ConvertFromUtf32; допустимий код понад 0xFFFF утворює пару сурогатів.

String з однієї або двох одиниць UTF-16. Chr(0) — NUL, не порожній текст. Emoji займає дві одиниці; ASC не відновлює його повний код.

Код проєкту: external/InjectionScript/src/InjectionScript/Runtime/InjectionApi.cs; функція BasicChr / Char.ConvertFromUtf32.

Потрібен Integer, а не прямий Decimal. Табуляція й перенесення — символи, не натискання клавіш; вигляд залежить від вікна виводу.

Приклади

Запис із табуляцією

# Запис із табуляцією
#
# Створює Unicode-символ для складання тексту.
#
# String з однієї або двох одиниць UTF-16. Chr(0) — NUL, не порожній текст. Emoji займає дві
# одиниці; ASC не відновлює його повний код.

SUB Main()
    # Chr(9) вставляє табуляцію; результат — ore<TAB>50 для подальшого використання.
    # Виконується локально. Приклади повертають результат обробки заданих даних, не надсилають чат,
    # не зупиняють скрипти та не звертаються до сервера.

    Dim resource = "ore"
    Dim amount = 50
    Return resource & Chr(9) & CStr(amount)
END SUB

Пояснення параметрів і виконання:

  • Chr(9) вставляє табуляцію; результат — ore50 для подальшого використання.
  • Виконується локально. Приклади повертають результат обробки заданих даних, не надсилають чат, не зупиняють скрипти та не звертаються до сервера.

Два рядки

# Два рядки
#
# Створює Unicode-символ для складання тексту.
#
# String з однієї або двох одиниць UTF-16. Chr(0) — NUL, не порожній текст. Emoji займає дві
# одиниці; ASC не відновлює його повний код.

SUB Main()
    # Chr(13) і Chr(10) вставляють CRLF між First та Second, нічого не надсилаючи.
    # Виконується локально. Приклади повертають результат обробки заданих даних, не надсилають чат,
    # не зупиняють скрипти та не звертаються до сервера.

    Dim summary = "First" & Chr(13) & Chr(10) & "Second"
    Return summary
END SUB

Пояснення параметрів і виконання:

  • Chr(13) і Chr(10) вставляють CRLF між First та Second, нічого не надсилаючи.
  • Виконується локально. Приклади повертають результат обробки заданих даних, не надсилають чат, не зупиняють скрипти та не звертаються до сервера.

Обробка помилки

# Обробка помилки
#
# Створює Unicode-символ для складання тексту.
#
# String з однієї або двох одиниць UTF-16. Chr(0) — NUL, не порожній текст. Emoji займає дві
# одиниці; ASC не відновлює його повний код.

SUB Main()
    # SafeCharacter повертає порожній текст при помилці коду. Для 0x1F600 Len повертає 2, хоча це
    # один Unicode-символ.
    # Виконується локально. Приклади повертають результат обробки заданих даних, не надсилають чат,
    # не зупиняють скрипти та не звертаються до сервера.

    Dim symbol = SafeCharacter(0x1F600)
    Return Len(symbol)
END SUB

Function SafeCharacter(code)
    Try
        Return Chr(code)
    Catch problem
        Return ""
    End Try
End Function

Пояснення параметрів і виконання:

  • SafeCharacter повертає порожній текст при помилці коду. Для 0x1F600 Len повертає 2, хоча це один Unicode-символ.
  • Виконується локально. Приклади повертають результат обробки заданих даних, не надсилають чат, не зупиняють скрипти та не звертаються до сервера.

Clone this wiki locally