Remove self from gameObject before instantiate

I am instantiating a new scaled down prefab based on the current gameObject. But, I do not want the current script (the one that is doing the duplicating) to be on that new object.

I have tried to destroy the current script before duplicating the prefab but it still shows up on the new clone, which when doing this recursively means the new objects each have a stack of duplicate scripts.

Hope that makes an ounce of sense, but I am not sure how to make it any clearer.

Try this

GameObject newClone = Instantiate(...);

Destroy( newClone.GetComponent<theScriptYouDontWant>() )

This will remove your script as and when clones instantiate.