How to reset some specific game objects in the scene via a button?

Hi all,
I am quite newcomer here and very very beginner on C# scripting.

The help I needed is;

I have a tray and there are some items (game objects) on it. I have used “OnMouseDown” and when you click on an object its statement turns deactive in hiyerarchy (dissapears from the scene). I want to reset the game objects statements (all of them must be active, deactivated ones and already activated ones included) Is there a way to reset all the items and their scripts attached on them?

Thanks for your helps by now.

You want something like the code below. Then go into the inspector and attach all the objects you want to control to the list called ListOfObjects, then call the public method ActivateAllObjects whenever you want to do it, you can put it in a button or call it from another object.
I also added the line to getcomponent in case you want to access/enable/disable the script on that object, just replace the TestScript with your class name.

    public List<GameObject> ListOfObjects;

    public void ActivateAllObjects()
        foreach (GameObject gameObj in ListOfObjects)
            gameObj.GetComponent<TestScript>().enabled = true;

Here’s a couple of very usefull solutions to get deactivated objects: Find an inactive game object - Questions & Answers - Unity Discussions
Also, if those objects are children of your tray object then you could get them all with:

// 'transform' is your tray transform if you attach the script to it
void Update ()
    if (Input.GetKeyDown (KeyCode.F)) {
        Component[] childrens = transform.GetComponentsInChildren (typeof(Transform), true);
            foreach (Component tr in childrens) {
                // set all of them active
                tr.gameObject.SetActive (true);

If you want to use some UI button, I don’t know how to use them, sorry.