The Developer Hub has a good article about events, and disconnecting the signal. The example might help you implement it in your own code;
What it comes down to is that any :Connect() method returns a RBXScriptConnection which you can store in a variable. Calling :Disconnect() on this variable will then stop the event from triggering again.