Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

How to check if clicker is in the table?

Asked by
Nidoxs 190
8 years ago

I have a click detector and I want only the people (names of them) in the table to be able to click it.

First I gather all the people in my group and everyone with a specific rank. (No IDs yet)

Admins = {}

for i, v in pairs(game.Players:GetChildren())do
    if v:IsInGroup() and v.GetRankInGroup()then
        table.insert(Admins, v.Name)
    end
end

Then I tried to make a function to check if the clicker is in the table but then realized how do I do that? Hehe, help would be much appreciated! Thanks.

function onClick(click)
if click.Name == Admins then
end
end

2 answers

Log in to vote
0
Answered by 8 years ago

admins = { "Potatoe", "Potatoe2" } function check(name) lol = false for i,v in pairs(admins) do if v:lower() == name:lower() then lol = true end end return lol end function onClick(player) if check(player.Name) then --put the things that happen if the players an admin end end
Ad
Log in to vote
1
Answered by 8 years ago

I reccomend you use a for statement to search within a table for the player that you want to check is in the table. Look below!

Admins = {}
for i, v in pairs(game.Players:GetChildren())do
    if v:IsInGroup() and v.GetRankInGroup()then
        table.insert(Admins, v.Name)
    end
end

function check(PlayerName)
    for index, name in pairs(Admins) do
        if name == PlayerName then
            return true
        end
    end
    return false
end

function onClick(player)
    if check(player.Name) then
        print("Player is an admin!")
    end
end


The code above should check wether the player with that name is entered into the Admins table, and if they are, then "Player is an admin!" should get printed. If the player is not an admin, nothing should happen.

Answer this question