-
Notifications
You must be signed in to change notification settings - Fork 0
API UO BookSetText uk
ClassicUO / Basic IDE
Записує текст із першої сторінки відкритої редагованої книги.
UO.BookSetText(Text:Any) -> Unit
-
Text— Текст: Chr(10) розділяє рядки; Chr(13) видаляється. До 10 рядків на сторінку і 53 символів у рядку. Нульовий символ заборонено.
Unit — значення немає. Це запит запису, не TRUE/FALSE і не підтвердження сервера. Сервер може заборонити редагування.
- Спочатку відкрийте потрібну книгу ігровою дією. Команди працюють з останньою відкритою книгою, без аргументу ID. За кількох книг перевірте вибір. Get читає наявні дані й не запитує відсутню сторінку.
- Менеджер зберігає книгу в сеансі й без графіки. Закриття та повторне відкриття ігрового вікна зберігає книгу й чернетку. Закриття самої книги прибирає її зі списку відкритих; розрив з’єднання скидає серверні книги.
- Запис дозволений лише для редагованої книги. Неправильні сторінки та завеликий текст відхиляються. BookSetText перевіряє всі сторінки до надсилання: помилка пізнішої сторінки не спричиняє часткового запису.
- BookSetText: Chr(12) явно розділяє сторінки; без нього кожні 10 рядків утворюють сторінку. Решта старих сторінок лишається: для повної заміни спочатку окремо викличте BookClearText. Порожній текст замінює лише першу сторінку.
Сервер надсилає заголовок/кількість сторінок і вміст. SessionBooks повністю перевіряє пакет, зберігає дані й оновлює подання. Basic через bridge вибирає останню книгу; SessionBook читає рядки або перевіряє запис і надсилає книжний пакет. ModernBookGump показує ті самі дані й зберігає чернетку при від’єднанні графіки.
Спочатку відкрийте потрібну книгу ігровою дією. Команди працюють з останньою відкритою книгою, без аргументу ID. За кількох книг перевірте вибір. Get читає наявні дані й не запитує відсутню сторінку.
Менеджер зберігає книгу в сеансі й без графіки. Закриття та повторне відкриття ігрового вікна зберігає книгу й чернетку. Закриття самої книги прибирає її зі списку відкритих; розрив з’єднання скидає серверні книги.
Код проєкту: src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs; функція GetOpenBook.
Запис дозволений лише для редагованої книги. Неправильні сторінки та завеликий текст відхиляються. BookSetText перевіряє всі сторінки до надсилання: помилка пізнішої сторінки не спричиняє часткового запису.
Unit — значення немає. Це запит запису, не TRUE/FALSE і не підтвердження сервера. Сервер може заборонити редагування.
Код проєкту: src/ClassicUO.Client/Game/Managers/SessionBooks.cs; функція SessionBooks.ReceiveHeader/ReceivePages; SessionBook.Yoko*.
Спочатку відкрийте потрібну книгу ігровою дією. Команди працюють з останньою відкритою книгою, без аргументу ID. За кількох книг перевірте вибір. Get читає наявні дані й не запитує відсутню сторінку.
# Прямий виклик
#
# Записує текст із першої сторінки відкритої редагованої книги.
#
# Unit — значення немає. Це запит запису, не TRUE/FALSE і не підтвердження сервера. Сервер може
# заборонити редагування.
SUB Main()
# Приклади потребують уже відкритої книги та отриманих сторінок; запис потребує дозволу
# редагування. 1, 2 і 3 — номери сторінок, які мають існувати. Назви й текст демонстраційні.
UO.BookSetText("Mining route" + Chr(10) + "Start at camp")
END SUBПояснення параметрів і виконання:
- Приклади потребують уже відкритої книги та отриманих сторінок; запис потребує дозволу редагування. 1, 2 і 3 — номери сторінок, які мають існувати. Назви й текст демонстраційні.
# Практичний сценарій
#
# Записує текст із першої сторінки відкритої редагованої книги.
#
# Unit — значення немає. Це запит запису, не TRUE/FALSE і не підтвердження сервера. Сервер може
# заборонити редагування.
SUB Main()
# Приклади потребують уже відкритої книги та отриманих сторінок; запис потребує дозволу
# редагування. 1, 2 і 3 — номери сторінок, які мають існувати. Назви й текст демонстраційні.
UO.BookSetText("Camp A" + Chr(12) + "Camp B" + Chr(12) + "Return home")
END SUBПояснення параметрів і виконання:
- Приклади потребують уже відкритої книги та отриманих сторінок; запис потребує дозволу редагування. 1, 2 і 3 — номери сторінок, які мають існувати. Назви й текст демонстраційні.
# Повна допоміжна функція
#
# Записує текст із першої сторінки відкритої редагованої книги.
#
# Unit — значення немає. Це запит запису, не TRUE/FALSE і не підтвердження сервера. Сервер може
# заборонити редагування.
SUB Main()
# Приклади потребують уже відкритої книги та отриманих сторінок; запис потребує дозволу
# редагування. 1, 2 і 3 — номери сторінок, які мають існувати. Назви й текст демонстраційні.
WriteRoute("Northern mine", "Bring bandages")
END SUB
SUB WriteRoute(destination, supplies)
VAR firstPage = "Destination" + Chr(10) + destination
VAR secondPage = "Supplies" + Chr(10) + supplies
UO.BookSetText(firstPage + Chr(12) + secondPage)
END SUBПояснення параметрів і виконання:
- Приклади потребують уже відкритої книги та отриманих сторінок; запис потребує дозволу редагування. 1, 2 і 3 — номери сторінок, які мають існувати. Назви й текст демонстраційні.
Русский · English · Українська · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
ClassicUO
Bad Newbie & Basic IDE
Найти в справочнике
Клиент и скрипты
Каталоги значений
Разработка и помощь