I am making a simulator game where they can buy better tools. Sometimes, they don't spawn with the tool for some weird reason. I made this script that detects if they have the tool. When they don't have it, it errors not finding the tool, here is my script.
01 | game.Players.PlayerAdded:Connect( function (plr) |
02 | plr.CharacterAdded:Connect( function (char) |
03 | wait( 1 ) |
04 | local tool = plr.BackPack.Tool |
05 | If tool then |
06 | print (plr.. " has tool" ) |
07 | else |
08 | char:LoadCharacter() |
09 | print ( "Respawning" .. plr) |
10 | end |
11 | end ) |
12 | end ) |
The script should respawn them if there is no tool, it errors on line 5 when they don't have the tool, if they have the tool it works fine.
I want to thank everybody that spends their time trying to help me, even if they don't know the answer.
Best Wishes, JailBreaker_13
Hey there, use FindFirstChild to check if the object exists or not, like so.
01 | game.Players.PlayerAdded:Connect( function (plr) |
02 | plr.CharacterAdded:Connect( function (char) |
03 | wait( 1 ) |
04 | if plr.Backpack:FindFirstChild( 'Tool' ) then |
05 | print (plr.. " has tool" ) |
06 | else |
07 | char:LoadCharacter() |
08 | print ( "Respawning" .. plr) |
09 | end |
10 | end ) |
11 | end ) |
youy put a capital i on if
like quinzt said, you put a capital on if,=. I also formatted your code
01 | game.Players.PlayerAdded:Connect( function (plr) |
02 | plr.CharacterAdded:Connect( function (char) |
03 | wait( 1 ) |
04 | local tool = plr.BackPack.Tool |
05 | if tool then |
06 | print (plr.. " has tool" ) |
07 | else |
08 | char:LoadCharacter() |
09 | print ( "Respawning" .. plr) |
10 | end |
11 | end ) |
12 | end ) |