Komando obrolan teks khusus

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

TextChatService telah membangun perintah obrolan bawaan untuk tujuan umum, seperti menyilaukan pemain lain dan menggunakan emote avatar.Anda dapat mengaktifkannya dengan menetapkan CreateDefaultCommands ke true di jendela Properti Studio.

Anda juga dapat menambahkan perintah khusus menggunakan TextChatCommand .Pengguna mengirim perintah yang didefinisikan di bilah input obrolan memicu panggil balas yang didefinisikan oleh TextChatCommand.Triggered untuk melakukan tindakan kustom Anda.

Contoh berikut menunjukkan cara membuat perintah obrolan yang memungkinkan pemain meningkatkan atau mengurangi ukuran karakter mereka saat mereka memasukkan /super atau /mini.

  1. Tambahkan instansi TextChatCommand di dalam TextChatService .

  2. Ganti namanya menjadi Perintah Ukuran .

  3. Tetapkan properti PrimaryAlias nya ke /super dan SecondaryAlias ke /mini.

  4. Masukkan berikut ini Script di dalam ServerScriptService untuk mendefinisikan panggilan balik untuk perintah obrolan yang menyesuaikan ukuran karakter:

    Skrip

    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)