What do you want to achieve?
To reduce the amount of scripts for each tool for convenience’s sake as well as replication.
What is the issue?
When you assign
Tool.Activatedto a tool using CollectionService, the function is often assigned multiple times, leading to the Tool activating more than once.
What I would do is have the .Activated event inside a local script, and fire a remote event to a central server sided script. Alternatively, you could add a cooldown to each tool and that way it’d only fire once when activated.
Yeah, that’s usually how you’ll go about it. But I figured having less scripts for each and every tool would be beneficial for spawning a hundred or so of them. I also thought it would be easier for dataStore down the line.
Update: Just found out about ‘GetInstanceAddedSignal’, sorry, very sick can’t think well.
I mean local scripts run on the client so it’s at no expense to the server, but I didn’t know about GetInstanceAddedSignal either, so thanks for that.