i made a tool that will change part position, tried to do it with fireserver() but it wont change so i do with FireClient() but i got this?
"12:14:16.314 - FireClient: player argument must be a Player object"
help script:
local tool = script.Parent
local player = game:GetService("Players")
script.Parent.Activated:Connect(function(plr)
script.Parent.RemoteEvent:FireClient(plr)
end)
local script:
script.Parent.OnClientEvent:Connect(function(plr)
script.Parent.Parent.Handle.Position = script.Parent.Parent.Part1.Position
script.Parent.Parent.Part1.Transparency = 1
end)

2 comments
in the localscript use localplayer instead of script.parent because when you overuse script.parent you can get confused easily
Really, you shouldn't be sending things that the server can do to the client because it is wasting memory and time. You should set the position and transparency, CanCollide, etc. on the Server.