This part of my local script here, (tool is defined as script.Parent), sends a signal to a remote function,
script.Parent.Equipped:Connect(function()
game.ReplicatedStorage.equipstatus:FireServer(tool)
script.Parent.equip.Value = 1
idleanim.Priority = Enum.AnimationPriority.Action2
idleanim.Looped = true
idleanim:Play()
script.Parent.scytheblade.CanCollide = false
script.Parent.Handle.CanCollide = false
script.Parent.scytheblade.Anchored = false
script.Parent.Handle.Anchored = false
end)
This is the script associated with the remote event,
game.ReplicatedStorage.equipstatus.OnServerEvent:Connect(function(tool)
tool.equip.Value = 1
end)
It errors, saying, "equip is not a valid member of Player "Players.Stiles8353" " yet my definition for tool is the local scripts parent, so how is this possible?

6 comments
Nvm I edited it
Sadly this wouldn't work anyway since scytheblade.Parent is the tool. Even so, I still get an error saying "scytheblade is not a valid member of Model "Workspace.chars.Stiles8353""
Accidentally marked it as answer
Well but, in that case, we just look for the tool, like i said, the script I gave you is just what i assumed would work but it's hard for me to make an example script when I can't even see how you made the tool, let me edit the normal script so i can make it easier for you
Found out player is the first variable sent by the remote event.
Yes that's literally why i said we can just get the tool THROUGH the player