Local Script:
local plrmouse = game.Players.LocalPlayer:GetMouse()
game.ReplicatedStorage.Events.SendMouse:FireServer(plrmouse)
plrmouse.Button1Down:Connect(function()
game.ReplicatedStorage.Events.Clicked:FireServer(plrmouse)
end)
Regular Script:
local plr
local mouse
function whichsquare(plrmouse)
print(plrmouse.Target.Name)
end
game.Workspace.Plot1.Touched:Connect(function(hit)
if hit.Parent:FindFirstChild("Humanoid") then
if not plr then
plr = hit.Parent.Name
end
end
end)
game.ReplicatedStorage.Events.SendMouse.OnServerEvent:Connect(function(plr,plrmouse)
print(plrmouse.ClassName)
mouse = plrmouse
end)
game.ReplicatedStorage.Events.Clicked.OnServerEvent:Connect(function(plr,plrmouse)
whichsquare(plrmouse)
end)
I've probably got some useless stuff I've made while trying to create this.

1 comment
Mouse instance is created locally and you don't need it server side.