There are no errors listed in the output and it doesn't print out line 16.(the last line of this part). The Player's TeamColor is the same as name.Name:sub(4) which is "BtnBright green". This is only PART of the script.
01 | function FindName() |
02 | for i,v in pairs (Workspace:GetChildren()) do |
03 | for i,a in pairs (v:GetChildren()) do |
04 | if a:FindFirstChild( "ClickDetector" ) then |
05 | print (a) |
06 | return a |
07 | end |
08 | end |
09 | end |
10 | end |
11 | local player = script.Parent.Parent.Parent.Parent |
12 | script.Parent.MouseButton 1 Down:connect( function () |
13 | local name = FindName() |
14 | print (name) -- Works until next line |
15 | if name.Name:sub( 4 ) = = player.TeamColor then |
16 | print (name.. "!" ) -- Does not show? |
Please note that this is only part of the script.
So what exactly are you trying to acomplish... It seems that the sub might mess things up. Or it may be that it's not matching the player.TeamColor, I suggest doing this:
01 | function FindName() |
02 | for i,v in pairs (Workspace:GetChildren()) do |
03 | for i,a in pairs (v:GetChildren()) do |
04 | if a:FindFirstChild( "ClickDetector" ) then |
05 | print (a) |
06 | return a |
07 | end |
08 | end |
09 | end |
10 | end |
11 | local player = script.Parent.Parent.Parent.Parent |
12 | script.Parent.MouseButton 1 Down:connect( function () |
13 | local name = FindName() |
14 | print (name) -- Works until next line |
15 | if name.Name:sub( 4 ) = = player.TeamColor then |
16 | print (name.. "!" ) -- Does not show? |
17 | elseif name.Name:sub( 4 ) ~ = player.TeamColor then |
18 | print ( 'False' ) |
19 | end |
20 | end ) |
This will allow you to see if it even goes past the if, if not then the IF is incorrect.
It may also be that since both for loops use "i" as an index, the script may be getting confused. It's worth a shot anyways.
Just replace the first "for i,v" with "for _,v" and see if it does anything differently.