Getting the player who clicked a button on a surface GUI

I am making an ordering system and would like to get the player who clicked a button on a surface GUI hopefully without using .Adornee since I am going to have multiple registers. I’m not sure if a player added event would work since it would most likely get the player that was added not that clicked the button. If you have any idea how I could do this please let me know!

Thanks,
Space

I Tried this btw:

script.Parent.MouseButton1Click:Connect(function(Player)
	print(Player.Name .. " Clicked Button")
end)

You can contact me here for support.

1 Like
  1. you can set up invisible parts with clickdetectors
    or
  2. you can replicate the guis to the each of the player guis and adornee to the register so then the
    script.Parent.MouseButton1Click:Connect(function(Player)
    print(Player.Name .. " Clicked Button")
    end)
    would actually work
1 Like

Yes, #1 wouldn’t work as I am trying to go for a sleek modern look. #2 would work but it’s just a pain to do that for like 10 registers LOL.

well game design is a pain at times

I mean it’s only being used for like 1 or 2 things to get their name then I could parent it back to the register since I’m trying not to use any remote events.

I’m also trying to use a module so I want to do a lot of things on the server once I get the player who claimed the register.

if you arent trying to use remote events/functions then i would suggest the click detectors since most client detection needs remote events

I have a solution! If anyone has any more possible ways any replies are appreciated.

I don’t know if I am correct but you can check to see if someone inputed (using the userinputservice) the right/left mouse button etc. and check if “GameProcessed” or not, if not then you can send that single through a RemoteEvent and that could be a way to get the users name. You can also do a touch part.

1 Like