Trying to create a seat that when a player sits on it, it shows them a special gui, let's call it an control gui.
I've tried this but I don't know how to make it detect which player is sitting on it and to make it fire for the certain player:
Seat = script.Parent function fireThis() game.StarterGui.ScreenGui.Frame.Visible = false end Seat.Changed:connect(function(property) if property == "Occupant" then fireThis() end end)
Any help would be appreciated! Thanks Light
Problem
You can't detect the player
Solution
Use a .Touched function
to detect a player that touched it
Suggestions
The variable is only used once, so remove that and type that itself.
You are making the frame disappear by changing the property to false, make it true.
Remove the function, as you only use it once. And take away the .Changed function
.
In a sense, I'm redoing this entire script.
Tweening is a much more clean option, you can look into that here.
Final Script
script.Parent.Touched:connect(function(hit) local hum = hit.Parent:FindFirstChild("Humanoid") if hum then local plr = game.Players:FindFirstChild(hit.Parent.Name) if plr then plr.PlayerGui.ScreenGui.Frame.Visible = true end end end)
Remember, if this helped, be sure to hit that accept button; it helps us both!