Using the Chatted Event

From Legacy Roblox Wiki
Revision as of 20:14, 9 May 2012 by >NXTBoy (More consistent code style, and {{lua}} in place of <code>)
Jump to navigationJump to search

The chatted event fires whenever a player chats using the Roblox Chat feature in a game. This brief tutorial will show you how to setup a chatted event and make something happen.

Setting Chatted for All Players

There is an easy way to make the Chatted event registered on all players. Simply use the PlayerAdded event in combination with the Chatted event.

Game.Players.PlayerAdded:connect(function(player)
    player.Chatted:connect(function(msg)
        -- do stuff with msg and player
    end)
end)

That is the basic structure of a chatted event connecting to any player that joins a game. In that script, you can use the variables 'msg' for the message chatted, and 'player' for whoever chatted the message.

Setting Chatted for One Player

A simple way to make the Chatted event only register for one user is to detect if the incoming player's name is a certain string. This is shown in the following example. {{lua|= game.Players.PlayerAdded:connect(function(player)    if player.Name == "MrNicNac" then      player.Chatted:connect(function(msg)

    end)    end end)

You can change "MrNicNac", to the name you want the chatted event to register for.

Setting Chatted for a Group of Players

This is a bit more complicated. Here we are going to use a table that holds string indexes of the players' names. You want to have the Chatted event register to when they enter the game. We will use the indexes, and not the values, so we can avoid making a longer-than-needed check system.

local group = {
    ["MrNicNac"] = true;
    ["Yami"] = true;
    ["Joey Wheeler"] = true;
    ["mattchewy"] = true;
    ["Tomtomn00"] = true;
}

game.Players.PlayerAdded:connect(function(player)
    if group[player.Name] then 
        player.Chatted:connect(function(msg)
             --chatted code 
        end)
    end
end)

That will only make the chatted event register to the people who join with the same name as those in the 'People' table.