Skip to content

API UO BookSetText fr

Codex edited this page Sep 23, 2026 · 1 revision

UO.BookSetText

ClassicUO / Basic IDE

Home · API · Books

Écrit à partir de la première page du livre modifiable ouvert.

Syntaxe exacte

UO.BookSetText(Text:Any) -> Unit

Paramètres

  • Text — Texte : Chr(10) sépare les lignes ; Chr(13) est retiré. Au plus 10 lignes par page et 53 caractères par ligne ; NUL est interdit.

Retour

Unit : aucune valeur. Il s’agit d’une demande d’écriture, pas de TRUE/FALSE ni d’une confirmation serveur. Le serveur peut refuser.

Comportement

  • Ouvrez d’abord le livre voulu dans le jeu. La commande vise le dernier livre ouvert, sans paramètre ID. Vérifiez la sélection si plusieurs livres sont ouverts. Get lit les données reçues et ne demande pas de page manquante.
  • Le gestionnaire conserve les livres dans la session, même sans affichage. Fermer et rouvrir la vue conserve livre et brouillon. Fermer le livre le retire des livres ouverts ; une déconnexion efface les livres serveur.
  • Seuls les livres modifiables acceptent l’écriture. Page invalide et texte excessif sont refusés. BookSetText valide toutes les pages avant l’envoi : une erreur tardive ne produit pas d’écriture partielle.
  • BookSetText sépare les pages par Chr(12), sinon par groupes de 10 lignes. Les anciennes pages restantes sont conservées ; appelez explicitement BookClearText avant un remplacement complet. Un texte vide ne remplace que la page une.

Fonctions internes : de l’appel au résultat

Le serveur envoie en-tête, nombre de pages et contenu. SessionBooks valide chaque paquet complet, conserve les données et actualise la vue. Basic sélectionne le dernier livre via le bridge ; SessionBook lit les lignes ou valide puis envoie les modifications. ModernBookGump affiche ces données et conserve les brouillons lors du détachement graphique.

1. GetOpenBook

Ouvrez d’abord le livre voulu dans le jeu. La commande vise le dernier livre ouvert, sans paramètre ID. Vérifiez la sélection si plusieurs livres sont ouverts. Get lit les données reçues et ne demande pas de page manquante.

Le gestionnaire conserve les livres dans la session, même sans affichage. Fermer et rouvrir la vue conserve livre et brouillon. Fermer le livre le retire des livres ouverts ; une déconnexion efface les livres serveur.

Source du projet: src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs; fonction GetOpenBook.

2. SessionBooks.ReceiveHeader/ReceivePages; SessionBook.Yoko*

Seuls les livres modifiables acceptent l’écriture. Page invalide et texte excessif sont refusés. BookSetText valide toutes les pages avant l’envoi : une erreur tardive ne produit pas d’écriture partielle.

Unit : aucune valeur. Il s’agit d’une demande d’écriture, pas de TRUE/FALSE ni d’une confirmation serveur. Le serveur peut refuser.

Source du projet: src/ClassicUO.Client/Game/Managers/SessionBooks.cs; fonction SessionBooks.ReceiveHeader/ReceivePages; SessionBook.Yoko*.

Ouvrez d’abord le livre voulu dans le jeu. La commande vise le dernier livre ouvert, sans paramètre ID. Vérifiez la sélection si plusieurs livres sont ouverts. Get lit les données reçues et ne demande pas de page manquante.

Exemples

Utilisation directe

# Utilisation directe
#
# Écrit à partir de la première page du livre modifiable ouvert.
#
# Unit : aucune valeur. Il s’agit d’une demande d’écriture, pas de TRUE/FALSE ni d’une
# confirmation serveur. Le serveur peut refuser.

SUB Main()
    # Le livre voulu doit être ouvert, ses pages reçues et modifiable pour écrire. 1, 2 et 3 sont
    # des numéros de page à vérifier. Noms et textes sont des exemples.

    UO.BookSetText("Mining route" + Chr(10) + "Start at camp")
END SUB

Explication des paramètres et du déroulement:

  • Le livre voulu doit être ouvert, ses pages reçues et modifiable pour écrire. 1, 2 et 3 sont des numéros de page à vérifier. Noms et textes sont des exemples.

Scénario pratique

# Scénario pratique
#
# Écrit à partir de la première page du livre modifiable ouvert.
#
# Unit : aucune valeur. Il s’agit d’une demande d’écriture, pas de TRUE/FALSE ni d’une
# confirmation serveur. Le serveur peut refuser.

SUB Main()
    # Le livre voulu doit être ouvert, ses pages reçues et modifiable pour écrire. 1, 2 et 3 sont
    # des numéros de page à vérifier. Noms et textes sont des exemples.

    UO.BookSetText("Camp A" + Chr(12) + "Camp B" + Chr(12) + "Return home")
END SUB

Explication des paramètres et du déroulement:

  • Le livre voulu doit être ouvert, ses pages reçues et modifiable pour écrire. 1, 2 et 3 sont des numéros de page à vérifier. Noms et textes sont des exemples.

Fonction auxiliaire complète

# Fonction auxiliaire complète
#
# Écrit à partir de la première page du livre modifiable ouvert.
#
# Unit : aucune valeur. Il s’agit d’une demande d’écriture, pas de TRUE/FALSE ni d’une
# confirmation serveur. Le serveur peut refuser.

SUB Main()
    # Le livre voulu doit être ouvert, ses pages reçues et modifiable pour écrire. 1, 2 et 3 sont
    # des numéros de page à vérifier. Noms et textes sont des exemples.

    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

Explication des paramètres et du déroulement:

  • Le livre voulu doit être ouvert, ses pages reçues et modifiable pour écrire. 1, 2 et 3 sont des numéros de page à vérifier. Noms et textes sont des exemples.

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

Clone this wiki locally