I have no error, I want it to be a group, rank and if the player is on a certain team, they get the tools
01 | --[[ |
02 | Copyright® 2015 Code Much? |
03 | --]] |
04 | --[[ |
05 | To get this script to work, you need to do one script for ONE (1) tool for every tool. If you have any |
06 | problems, contact CoderOfTheMonth. |
07 | --]] |
08 |
09 |
10 | local groupId = 0 -- Group Id V - Put tool in ServerStorage OR change that to Lighting and put the tool in lighting. |
11 | local tool = game.ServerStorage -- Tool |
12 | function onPlayerSpawned(player) |
13 | if player:IsIngroup(groupId) then |
14 | tool:Clone().Parent = player.Backpack |
15 | end |
You have two functions of the same name. Assuming that you're unsure which function to use, I'd opt for the first one for simplification reasons, but it really doesn't make that much of a difference.
What you should be focusing on is the PlayerAdded/CharacterAdded anonymous function.
01 | local groupId = 0 |
02 | local tool = game.ServerStorage -- Tool |
03 |
04 | function onPlayerSpawned(player) |
05 | if player:IsInGroup(groupId) then |
06 | tool:Clone().Parent = player.Backpack |
07 | end |
08 | end |
09 |
10 | game.Players.PlayerAdded:connect( function (player) |
11 | onPlayerSpawned(player) |
12 | player.CharacterAdded:connect( function (character) |
13 | onPlayerSpawned(game.Players:GetPlayerFromCharacter(character)) |
14 | end ) |
15 | end ) |
:GetPlayerFromCharacter()
gets the player instance from the character object.
The script is pretty much saying for every player that joins the game, do this to the player.
For every character that joins the workspace, do this to the player.
You could also add it to the player's StarterGear if you don't want the script to take up activity (the activity it takes up is pretty much insignificant, but oh well).
01 | local groupId = 0 |
02 | local tool = game.ServerStorage -- Tool |
03 |
04 | function onPlayerSpawned(player) |
05 | if player:IsInGroup(groupId) then |
06 | tool:Clone().Parent = player.StarterGear |
07 | end |
08 | end |
09 |
10 | game.Players.PlayerAdded:connect( function (player) |
11 | onPlayerSpawned(player) |
12 | end ) |
Make sure that
the script
is a server-sided script
is located in the Workspace or ServerScriptService
the tool
I don't see anything wrong with it, at all.
it should work.