Skip to content

API UO Say it

Codex edited this page Sep 26, 2026 · 1 revision

UO.Say

ClassicUO / Basic IDE

Home · API · Journal

Invia al server il parlato normale del personaggio, per esempio una richiesta al banchiere o un ordine a un animale.

Sintassi esatta

UO.Say(message:String) -> Unit

Parametri

  • message — Testo del messaggio. Unire i numeri esplicitamente con CStr; nomi e coordinate non vengono sostituiti automaticamente. Le virgolette delimitano la stringa e non vengono inviate.

Restituisce

Unit: nessun valore restituito. Chiamare su una riga separata; il risultato non è True/False, un serial o un conteggio. Il ritorno dalla chiamata non conferma una risposta del server.

Comportamento

  • Richiede un personaggio connesso. Il testo viene inviato come parlato normale senza interpretare il prefisso dei comandi Basic. bank e Shadow follow me sono esempi: adattarli al server e al nome dell’animale. Portata, permessi e reazioni NPC dipendono dal server; la chiamata non attende un gump e non garantisce un’azione.
  • Dal protocollo 2.0.0 si usa parlato Unicode, per versioni precedenti ASCII. SayU non forza Unicode sul vecchio protocollo. Senza colore si usa SpeechHue del profilo; anche 0xFFFF in UO.UOSayColor lo seleziona. Il testo non viene eseguito come codice.
  • UO.Print · UO.CharPrint · UO.Say · UO.ConColor

Funzioni interne: dalla chiamata al risultato

Richiede un personaggio connesso. Il testo viene inviato come parlato normale senza interpretare il prefisso dei comandi Basic. bank e Shadow follow me sono esempi: adattarli al server e al nome dell’animale. Portata, permessi e reazioni NPC dipendono dal server; la chiamata non attende un gump e non garantisce un’azione.

1. Say

Testo del messaggio. Unire i numeri esplicitamente con CStr; nomi e coordinate non vengono sostituiti automaticamente. Le virgolette delimitano la stringa e non vengono inviate.

Unit: nessun valore restituito. Chiamare su una riga separata; il risultato non è True/False, un serial o un conteggio. Il ritorno dalla chiamata non conferma una risposta del server.

Sorgente del progetto: external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs; funzione Say.

2. SendServerSpeech

Invia al server il parlato normale del personaggio, per esempio una richiesta al banchiere o un ordine a un animale.

Richiede un personaggio connesso. Il testo viene inviato come parlato normale senza interpretare il prefisso dei comandi Basic. bank e Shadow follow me sono esempi: adattarli al server e al nome dell’animale. Portata, permessi e reazioni NPC dipendono dal server; la chiamata non attende un gump e non garantisce un’azione.

Sorgente del progetto: src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs; funzione SendServerSpeech.

3. Say

Testo del messaggio. Unire i numeri esplicitamente con CStr; nomi e coordinate non vengono sostituiti automaticamente. Le virgolette delimitano la stringa e non vengono inviate.

Dal protocollo 2.0.0 si usa parlato Unicode, per versioni precedenti ASCII. SayU non forza Unicode sul vecchio protocollo. Senza colore si usa SpeechHue del profilo; anche 0xFFFF in UO.UOSayColor lo seleziona. Il testo non viene eseguito come codice.

Sorgente del progetto: src/ClassicUO.Client/Game/GameActions.cs; funzione Say.

Esempi

Rivolgersi al banchiere

# Rivolgersi al banchiere
#
# Invia al server il parlato normale del personaggio, per esempio una richiesta al banchiere o
# un ordine a un animale.
#
# Unit: nessun valore restituito. Chiamare su una riga separata; il risultato non è True/False,
# un serial o un conteggio. Il ritorno dalla chiamata non conferma una risposta del server.

SUB Main()
    # Connected viene controllato prima dell’invio. bank è una frase, non un nome API. Di solito
    # serve un NPC adatto nelle vicinanze; sostituire la frase secondo il server.

    IF UO.Connected() THEN
        UO.Say("bank")
    END IF
END SUB

Spiegazione dei parametri e dell’esecuzione:

  • Connected viene controllato prima dell’invio. bank è una frase, non un nome API. Di solito serve un NPC adatto nelle vicinanze; sostituire la frase secondo il server.

Ordinare a un animale per nome

# Ordinare a un animale per nome
#
# Invia al server il parlato normale del personaggio, per esempio una richiesta al banchiere o
# un ordine a un animale.
#
# Unit: nessun valore restituito. Chiamare su una riga separata; il risultato non è True/False,
# un serial o un conteggio. Il ritorno dalla chiamata non conferma una risposta del server.

SUB Main()
    # petName è il nome dell’animale, qui Shadow. Produce Shadow follow me, che ordina all’animale
    # di seguirti; UO.Follow invece muove il tuo personaggio.

    VAR petName = "Shadow"
    IF UO.Connected() THEN
        UO.Say(petName + " follow me")
    END IF
END SUB

Spiegazione dei parametri e dell’esecuzione:

  • petName è il nome dell’animale, qui Shadow. Produce Shadow follow me, che ordina all’animale di seguirti; UO.Follow invece muove il tuo personaggio.

Chiedere la banca solo in sovrappeso

# Chiedere la banca solo in sovrappeso
#
# Invia al server il parlato normale del personaggio, per esempio una richiesta al banchiere o
# un ordine a un animale.
#
# Unit: nessun valore restituito. Chiamare su una riga separata; il risultato non è True/False,
# un serial o un conteggio. Il ritorno dalla chiamata non conferma una risposta del server.

SUB Main()
    # RequestBankIfHeavy verifica connessione e limite positivo noto. Solo in sovrappeso invia bank
    # e restituisce 1 per una richiesta inviata, altrimenti 0. È il risultato dell’ausilio, non del
    # comando di parlato.

    RETURN RequestBankIfHeavy()
END SUB

SUB RequestBankIfHeavy()
    IF NOT UO.Connected() THEN
        RETURN 0
    END IF
    VAR maximum = UO.MaxWeight()
    IF maximum <= 0 OR UO.Weight() < maximum THEN
        RETURN 0
    END IF
    UO.Say("bank")
    RETURN 1
END SUB

Spiegazione dei parametri e dell’esecuzione:

  • RequestBankIfHeavy verifica connessione e limite positivo noto. Solo in sovrappeso invia bank e restituisce 1 per una richiesta inviata, altrimenti 0. È il risultato dell’ausilio, non del comando di parlato.

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

Clone this wiki locally