Puoi utilizzare i seguenti moduli di chat per supportare i comportamenti lato client del sistema di chat Legacy.
Finestra di chat
Il ChatWindow è il modulo di chat principale del lato client del Sistema di chat Legacy.
Metodi
AggiungiChannel
- Restituzioni: ChatChannelUI
RimuoviChannel
- Restituzioni: void
OttieniChannel
Ottieni il canale corrente
- Descrizione: Restituisce l'attuale ChatChannelUI.
- Restituzioni: ChatChannelUI
Cambia il canale attuale
- Restituzioni: void
OttieniVisibile
- Parametri: Nessuno
- Descrizione: Restituisce se la finestra è visibile o no.Nota: questo si riferisce all'interfaccia utente di chat in Generale; quando la finestra di chat scompare trasparente a causa dell'inattività, la finestra è ancora considerata visibile.
- Restituzioni: bool
ImpostaVisibile
- Descrizione: Imposta la visibilità della finestra di chat.
- Restituzioni: void
Sbiadimento di sfondo
- Descrizione: Sbiadisce lo sfondo nel corso dei secondi duration dati.Nota: le chiamate successive per controllare la dissipazione in/fuori sostituiranno le chiamate precedenti.
- Restituzioni: void
Sbiadimento in background
- Descrizione: Scompare in background entro i secondi duration in secondi.Nota: le chiamate successive per controllare la dissipazione in/fuori sostituiranno le chiamate precedenti.
- Restituzioni: void
Testo di dissipazione
- Descrizione: Sbiadisce il testo sul dato in secondi.Nota: le chiamate successive per controllare la dissipazione in/fuori sostituiranno le chiamate precedenti.
- Restituzioni: void
Sbiadimento del testo
- Descrizione: Scompare nel testo entro i secondi dati duration in secondi.Nota: le chiamate successive per controllare la dissipazione in/fuori sostituiranno le chiamate precedenti.
- Restituzioni: void
Barra di chat
Il ChatBar gestisce l'ingresso del testo lato client per il sistema di chat Lua. Ci sono due componenti chiave del ChatBar:
- ChatBar , un TextBox , dove il giocatore inserisce messaggi e comandi (evidenziati in arancione)
- MessageMode , un TextLabel , che può visualizzare le informazioni sull' messaggio inviato (evidenziato in verde)
Metodi
OttieniTextBox
- Parametri: Nessuno
- Descrizione: Restituisce il TextBox della barra di chat.
- Restituzioni: TextBox
OttieniMessageModeTextLabel
- Parametri: Nessuno
- Descrizione: Ritorna il MessageMode TextLabel .
- Restituzioni: TextLabel
È focalizzato
- Parametri: Nessuno
- Descrizione: Restituisce se la barra di chat TextBox è in primo piano (il giocatore sta digitando nella Quadro di selezione).Equivalente a chiamare TextBox:IsFocused sul risultato di GetTextBox.
- Restituzioni: bool
CatturaFocus
- Parametri: Nessuno
- Descrizione: Forza il client a concentrarsi sulla barra di chat TextBox . Equivalente a chiamare TextBox:CaptureFocus sul risultato di GetTextBox.
- Restituzioni: void
Focalizzazione rilascio
- Descrizione: Rilascia il focus della barra di chat TextBox .Se submitted è vero, questo si comporterà come se il giocatore abbia premuto Invio per inviare il Messaggio.
- Restituzioni: void
Ripristina il testo
- Parametri: Nessuno
- Descrizione: Imposta il Text della barra di chat TextBox alla Stringavuota.
- Restituzioni: void
Imposta il testo della casella di testo
- Descrizione: Imposta il Text della barra di chat TextBox al dato text.
- Restituzioni: void
OttieniTextBoxText
- Parametri: Nessuno
- Descrizione: Ritorna il testo nella barra di chat TextBox.Text .
- Restituzioni: string
Imposta il testo della label SetTextLabel
- Descrizione: Imposta il Text del MessageMode TextLabel al dato text.
- Restituzioni: void
OttieniAbilitato
- Parametri: Nessuno
- Descrizione: Restituisce se la barra di chat è Visible .
- Restituzioni: bool
SetEnabled
- Descrizione: Imposta se la barra di chat è Visible .
- Restituzioni: void
Imposta dimensione del testo
- Descrizione: Imposta il TextSize di entrambi il bar di chat TextBox e MessageMode TextLabel .
- Restituzioni: void
Ripristina dimensione
- Parametri: Nessuno
- Descrizione: Ripristina la dimensione della barra di chat a una riga di testo.
- Restituzioni: void
ImpostaTargetChannel
- Descrizione: Imposta il bersaglio ChatChannelUI dato il suo channelName a cui la barra di chat dovrebbe inviare messaggi.
- Restituzioni: void
Sbiadimento di sfondo
- Descrizione: Sbiadisce lo sfondo nel corso dei secondi duration dati.Nota: le chiamate successive per controllare la dissipazione in/fuori sostituiranno le chiamate precedenti.
- Restituzioni: void
Sbiadimento in background
- Descrizione: Scompare in background entro i secondi duration in secondi.Nota: le chiamate successive per controllare la dissipazione in/fuori sostituiranno le chiamate precedenti.
- Restituzioni: void
Testo di dissipazione
- Descrizione: Sbiadisce il testo sul dato in secondi.Nota: le chiamate successive per controllare la dissipazione in/fuori sostituiranno le chiamate precedenti.
- Restituzioni: void
Sbiadimento del testo
- Descrizione: Scompare nel testo entro i secondi dati duration in secondi.Nota: le chiamate successive per controllare la dissipazione in/fuori sostituiranno le chiamate precedenti.
- Restituzioni: void
ChatChannelUI
Il ChatChannelUI è la versione client-side di ChatChannel.Riceve messaggi di chat dal server e li passa al ChatMessageLogDisplay. associato ad esso.
Metodi
AggiungiMessageToChannel
Parametri: Messaggio di chat
Descrizione: Aggiunge un messaggio di chat ricevuto dal server al ChatMessageLogDisplay.
Restituzioni: void
Rimuovi l'ultimo messaggio dal canale
- Parametri: Nessuno
- Restituzioni: void
CancellaMessageLog
- Parametri: Nessuno
- Restituzioni: void
LogMostraMessaggioChat
Il ChatMessageLogDisplay gestisce il rendering di ChatMessages in un ChatChannelUI.
Metodi
Aggiungi messaggio
- Descrizione: Aggiunge un message al display del registro dei messaggi.
- Restituzioni: void
Rimuovi ultimo messaggio
- Parametri: Nessuno
- Descrizione: Rimuove il più vecchio Messaggio di chat nel display del registro dei messaggi.
- Restituzioni: void
Riorganizza tutti i messaggi
- Parametri: Nessuno
- Descrizione: Riorganizza tutti gli schermi del messaggio in ordine crescente, in relazione alla dimensione dello schermo del messaggio.Questo deve essere chiamato se il display del registro dei messaggi viene ridimensionato.
- Restituzioni: void
Cancella
- Parametri: Nessuno
- Descrizione: Rimuove tutti i messaggi di chat dal display del log dei messaggi.
- Restituzioni: void
Testo di dissipazione
- Descrizione: Sbiadisce il testo sul dato in secondi.Nota: le chiamate successive per controllare la dissipazione in/fuori sostituiranno le chiamate precedenti.
- Restituzioni: void
Sbiadimento del testo
- Descrizione: Scompare nel testo entro i secondi dati duration in secondi.Nota: le chiamate successive per controllare la dissipazione in/fuori sostituiranno le chiamate precedenti.
- Restituzioni: void
Stato personalizzato della chat
Il ChatCustomState è un' interfaccia di richiami utilizzati quando si crea uno stato di chat personalizzato nella barra di chat.
La chat Whisper e la chat di squadra utilizzano ChatCustomState per indicare al giocatore dove verrà inviato il suo messaggio.
Ritorni
Testo aggiornato
- Parametri: Nessuno
- Descrizione: Chiamato quando il testo nella barra di chat viene aggiornato.
- Restituzioni: void
Ottieni messaggio
- Parametri: Nessuno
- Descrizione: Chiamato per recuperare il testo del messaggio come sarebbe scritto come un singolo comando.Questo viene utilizzato nel caso in cui il server debba elaborare il comando come testo, piuttosto che lo stato visualizzato del comando.
- Restituzioni: string
Messaggio completato del processo
- Parametri: Nessuno
- Descrizione: Chiamato quando il giocatore invia il messaggio che viene elaborato dallo stato personalizzato.Questo dovrebbe restituire vero se il messaggio non deve essere visualizzato o inviato al Server.
- Restituzioni: bool
Distruggi
- Parametri: Nessuno
- Descrizione: Chiamato come il ChatBar viene ripristinato al suo stato originale prima della modifica dello stato personalizzato.
- Restituzioni: void
Impostazioni chat
Il ChatSettings è un dizionario di impostazioni per il lato client del sistema di chat Lua.Sono memorizzati in un ModuleScript chiamato ChatSettings , che può essere trovato all'interno del servizio di gioco Chat , sotto il Folder chiamato ClientChatModules .Il modulo può essere richiesto e le sue proprietà possono essere cambiate durante l'esecuzione.
Per modificare una Configurazione, richiedi questo modulo utilizzando un LocalScript in modo seguente:
-- Richiedi il modulo ChatSettings (aspetta che si Caricare)local Chat = game:GetService("Chat")local ClientChatModules = Chat:WaitForChild("ClientChatModules")local ChatSettings = require(ClientChatModules:WaitForChild("ChatSettings"))-- Cambia le impostazioni come faresti con qualsiasi altra tabella.ChatSettings.MaximumMessageLength = 100
Impostazioni del comportamento della chat
FinestraDraggabile
- Tipo: bool
- Predefinito: false
FinestraResizable
- Tipo: bool
- Predefinito: false
- Descrizione: Determina se il ChatWindow può essere ridimensionato dal Giocatore
Navigazione del gamepad abilitata
- Tipo: bool
- Predefinito: false
- Descrizione: Determina se i gamepad possono navigare nell'interfaccia utente di chat.
MostraMessageFiltrato da Utente
- Tipo: bool
- Predefinito: true
- Descrizione: Determina se i giocatori dovrebbero vedere la versione filtrata dei loro messaggi di chat o il contenuto originale che hanno digitato.
Chatta su con TopBar Off
- Tipo: bool
- Predefinito: false
- Descrizione: Determina se l'interfaccia utente di chat è abilitata anche se la barra superiore è disabilitata.
BubbleChatAbilitato
- Tipo: bool
- Predefinito: game:GetService("Players").BubbleChat
- Descrizione: Determina se la chat delle bolle è abilitata.
ClassicChatAbilitato
- Tipo: bool
- Predefinito: game:GetService("Players").ClassicChat
- Descrizione: Determina se la chat classica è abilitata.
Impostazioni dimensione del testo della chat
Dimensione del testo di ChatWindow
- Tipo: int
- Predefinito: 18
- Descrizione: Determina la dimensione del testo nella ChatWindow.
Dimensione del testo della chatBar
ChatWindowTextSizePhone
- Tipo: int
- Predefinito: 14
- Descrizione: Determina la dimensione del testo nella ChatWindow per i telefoni.
Telefono dimensione del testo della chatBar
- Tipo: int
- Predefinito: 14
- Descrizione: Determina la dimensione del testo nella Barra di chat per i telefoni.
Impostazioni del carattere
Carattere predefinito
- Tipo: Enum.Font
- Predefinito: Enum.Font.SourceSansBold
Font della barra di chat
- Tipo: Enum.Font
- Predefinito: Enum.Font.SourceSansBold
Impostazioni colore
Colore di sfondo
- Tipo: Color3
- Predefinito: Color3.new(0, 0, 0)
Colore del messaggio predefinito
- Tipo: Color3
- Predefinito: Color3.new(1, 1, 1)
DefaultNameColor
- Tipo: Color3
- Predefinito: Color3.new(1, 1, 1)
- Descrizione: Determina il predefinito TextColor3 dei nomi degli speaker di ChatMessage nel ChatWindow.
Colore di sfondo della barra di chat
- Tipo: Color3
- Predefinito: Color3.new(0, 0, 0)
Colore della ChatBarBox
- Tipo: Color3
- Predefinito: Color3.new(1, 1, 1)
Colore del testo della chatbar
- Tipo: Color3
- Predefinito: Color3.new(0, 0, 0)
ErroreMessageTextColor
- Tipo: Color3
- Predefinito: Color3.fromRGB(245, 50, 50)
- Descrizione: Determina il TextColor3 di messaggi di errore.
Impostazioni finestra
Dimensione finestra minima
- Tipo: UDim2
- Predefinito: UDim2.new(0.3, 0, 0.25, 0)
- Descrizione: Determina la dimensione più piccola possibile del ChatWindow (dato che WindowResizable è abilitato).
Dimensione finestra massima
- Tipo: UDim2
- Predefinito: UDim2.new(1, 0, 1, 0)
- Descrizione: Determina la dimensione massima possibile del ChatWindow (dato che WindowResizable è abilitato).
- Note: Se questo viene cambiato per essere maggiore della dimensione dello schermo completo, iniziano a succedere cose strane con il controllo dei limiti di dimensione/posizione.
Posizione finestra predefinita
- Tipo: UDim2
- Predefinito: UDim2.new(0, 0, 0, 0)
- Descrizione: Determina la posizione predefinita della ChatWindow.
DefaultWindowSizePhone
- Tipo: UDim2
- Predefinito: UDim2.new(0.5, 0, 0.5, (7 * 2) + (5 * 2))
- Descrizione: Determina la dimensione predefinita della ChatWindow sui telefoni.
Tablet di dimensione finestra predefinita
- Tipo: UDim2
- Predefinito: UDim2.new(0.4, 0, 0.3, (7 * 2) + (5 * 2))
- Descrizione: Determina la dimensione predefinita del ChatWindow sui tavoli.
Desktop di dimensione finestra predefinita
- Tipo: UDim2
- Predefinito: UDim2.new(0.3, 0, 0.25, (7 * 2) + (5 * 2))
- Descrizione: Determina la dimensione predefinita della ChatWindow sul Desktop.
Sbiadire e nelle impostazioni
ChatWindowBackgroundFadeOutTime
- Tipo: float (secondi)
- Predefinito: 0.5
- Descrizione: Determina quanto tempo dovrebbe scomparire lo sfondo del ChatWindow.
Tempo di sbiadimento del testo della finestra di chat
- Tipo: float (secondi)
- Predefinito: 30
- Descrizione: Determina quanto tempo dovrebbe durare l'eliminazione del testo ChatWindow.
Durata della sbiadimento predefinita del chat
- Tipo: float (secondi)
- Predefinito: 0.8
- Descrizione: Determina quanto tempo dovrebbero durare gli elementi dell'interfaccia di chat in fase di dissoluzione.
ChatShouldFadeInFromNuoveInformazioni
- Tipo: bool
- Predefinito: false
- Descrizione: Determina se la chat debba scomparire quando riceve nuovi messaggi.
Animazione di chatFPS
- Tipo: float
- Predefinito: 20.0
- Descrizione: Determina il frame rate delle animazioni di dissolvenza nell'interfaccia utente di chat.
Impostazioni del canale
Nome generale del canale
- Tipo: string
- Predefinito: "All"
- Descrizione: Determina il nome del canale predefinito.
Messaggi EchoInGeneralChannel
- Tipo: bool
- Predefinito: true
- Descrizione: Determina se i messaggi ai canali diversi dal canale predefinito dovrebbero essere riprodotti nel canale predefinito.
Nome del canale massimo Length
- Tipo: int
- Predefinito: 12
- Descrizione: Determina la lunghezza massima di un nome di canale prima che venga troncato.
LengthPerChannel della storia dei messaggi
- Tipo: int
- Predefinito: 50
- Descrizione: Determina il numero massimo di Message di chat che può essere visualizzato in un canale di chat.
MostraHelpText di JoinAndLeave
- Tipo: bool
- Predefinito: false
- Descrizione: Determina se viene visualizzato il testo di aiuto per l'adesione/uscita dai canali.
Impostazioni messaggio
Lunghezza del messaggio massima
- Tipo: int
- Predefinito: 200
- Descrizione: Determina la lunghezza massima di Messaggi di chat.
Spazio bianco non consentito
- Tipo: array< string >
- Predefinito: {"\n", "\r", "\t", "\v", "\f"}
- Descrizione: Determina i caratteri di spazio bianco che sono vietati.
Fai clic su ClickOnPlayerNameToWhisper
- Tipo: bool
- Predefinito: true
- Descrizione: Determina se il giocatore può fare clic sul nome di un altro Giocatoreper entrare in una chat sussurrata con loro.
Fare clic su ClickOnChannelNameToSetMainChannel
- Tipo: bool
- Predefinito: true
- Descrizione: Determina se il giocatore può fare clic sulla scheda di un canale per impostarlo come loro canale principale.
Impostazioni varie
Nomi del giocatore di completamento automatico del comando Whisper
- Tipo: bool
- Predefinito: true
- Descrizione: Determina se il comando whisper debba completare automaticamente i nomi dei giocatori.
Eventi
Impostazioni cambiate
- Parametri: Library.string``settingName , Variante newValue
- Descrizione: Brucia quando una impostazione con il dato settingName viene cambiata in newValue .