How to Delete an Object from coming Back in Game (C#)

This might sound a little bit confusing at first, but in my game I am trying to use a key system to unlock bonus levels. I have applied a Destroy() command to the key object but the keys keep coming back each time the level is reloaded (without restarting game) because it reloads the level as it was to start. Is there a way to permanently terminate an object until the game is reloaded (game stopped then played again)? Thanks for the help.

Check out the persistent data tutorial. Choose the appropriate technique for your game. Then store a bool on your gameObject. In Awake() you can check if the bool is true, then destroy the object.

Alternatively you could only create the object if the bool is true. Up to you.