For example, if I made a local script saying:
local plr = game.Players.LocalPlayer;
local m = plr:GetMouse();
m.Button1Down:connect(function()
print(plr.Name.."'s mouse clicked");
end)
it would work perfectly in-studio test mode, but when you go to play the actual game on your ROBLOX client (In-game) it doesn't work at all! Now your next instinct may be to use UserInputService, but if I altered the local script to:
local plr = game.Players.LocalPlayer;
game:GetService("UserInputService").InputBegan:connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
print("plr.Name.."'s mouse clicked");
end
end)
But this still behaves the same way! It STILL will only work in-studio mode, and it literally won't work at all in-game. Did ROBLOX deprecate these methods? should I be using a remote function instead? I am kind of lost with this, I need to get this mouse click input to work in-game. Any help would be much appreciated, thanks.

2 comments
What a terrible answer.
are you trolling or something devan? The game I am making the script in is filteringEnabled, I use a remoteEvent to check and fire when a player first joins, there would be no need for a repeat wait() until plr in my main local script.