Comandi di chat di testo personalizzati

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

TextChatService ha comandi di chat integrati per scopi comuni, come il silenziamento di altri giocatori e l'utilizzo di emote di avatar.Puoi abilitarli impostando CreateDefaultCommands su true nella finestra Proprietà di Studio .

Puoi anche aggiungere comandi personalizzati utilizzando TextChatCommand .Gli utenti che inviano un comando definito nella barra di input della chat attivano una richiamata definita da TextChatCommand.Triggered per eseguire le tue azioni personalizzate.

L'esempio seguente mostra come creare un comando di chat che consente ai giocatori di aumentare o diminuire la dimensione del loro personaggio quando inseriscono /super o /mini .

  1. Aggiungi un'istanza TextChatCommand dentro TextChatService.

  2. Rinominalo in Comando di dimensione .

  3. Imposta la sua proprietà PrimaryAlias a /super e la sua SecondaryAlias a /mini .

  4. Inserisci quanto segue Script dentro ServerScriptService per definire un callback per il comando chat che ridimensiona la dimensione del personaggio:

    Scrittura

    local TextChatService = game:GetService("TextChatService")
    local Players = game:GetService("Players")
    local sizeCommand: TextChatCommand = TextChatService:WaitForChild("SizeCommand")
    sizeCommand.Triggered:Connect(function(textSource, message)
    local scaleMult = 1
    local messageWords = string.split(message, " ")
    if messageWords[1] == "/super" then
    scaleMult = 2
    elseif messageWords[1] == "/mini" then
    scaleMult = 0.5
    end
    local player = Players:GetPlayerByUserId(textSource.UserId)
    if player then
    local character = player.Character
    if character then
    local humanoid = character:FindFirstChildWhichIsA("Humanoid")
    if humanoid then
    for _, child in humanoid:GetChildren() do
    if child:IsA("NumberValue") then
    child.Value *= scaleMult
    end
    end
    end
    end
    end
    end)