Scripting HelpersARCHIVE
A little piece of Roblox history. Preserved for everyone, one question at a time.Read about the archive →
COMMUNITY QUESTION

GUI Visibility Error?

Hello,

Throughout the past few days, I've been dealing with a bug. In short, I have a 'class' system set up, where when the value gets updated, your character changes.

Then, I wanted it to be if someone respawns on a certain team or has a 'monster' class, it would show a GUI. I did it; it worked in Play Solo mode.

However, the functionality ends there. I went to test it in online mode, and it did not work, the GUI did not show up on respawn, whether I was a monster or not, nor did the class updating script that changes your character, which had worked for the past two months. I removed it, and the character script continued to work.

I later installed an online output monitoring script to see if I could catch the error. I did actually find an output, which was:

"Class is not a valid member of player"

Finally, I added a wait(1.5) function in between the character respawning and the first trace/declaration of the Class StringValue inside the player. It still gave me the same exact error as the last time.

This is the script:

Monsters = {"Zombie","Ogre","Nighthunter","Thing","Imp","Golem","Savage"}
Players = game.Players

print("A")

Players.PlayerAdded:connect(function(Player)
	print("B "..Player.Name)
	Player.CharacterAdded:connect(function(Character)
		print("C")
		wait(1.5)
		x = Player.Class.Value
			if x == "Zombie" or x == "Ogre" or x == "Nighthunter" or x == "Thing" or x == "Imp" or x == "Golem" or x == "Savage" then
				print("D")
				
				ms = game.ServerStorage.MonsterSelect:clone()
				ms.Parent = Player.PlayerGui
				print("E")
				
			end	
	end)
end)

print("F")

It was originally a LocalScript, instead of a server-side script, but I had to experiment with different things in hope that I'd get it to work, because originally, I had it running _G variables with LocalScripts, which doesn't work. I'll revert back to a LocalScript format if I can.

Thanks for reading; all replies are appreciated!

1 answer

Try chaning line 11 to this:

        x = Player:FindFirstChild("Class").Value

1 comment

0

changing*

This discussion is preserved as it was. New answers, comments, and votes are closed.