help help

quick question:

I would like to build a menu with multiple choices and sub menus for each choice…
I am happy to use buttons on the screen, which appear whenever the first button (choice) is pressed.

Layout ----------------------> Tilt------- ------------> Shade
|5||45|
|3|
|0|
__________|-45| |down|
________________________________________|up|

How to do this???

I tried some coding with the if (button) {if (button)} idea in mind, see below.
Unfortunately nothing happens.

Deadline is approaching, any help?
Super thanks
G.

var mySkin : GUISkin;

//all levels names
private var all_names1 = [Layers.op1, Layers.op2, Layers.op3,Layers.op4, Layers.op5, Layers.op6];
private var all_names2 = [Layers.op1, Layers.op2, Layers.op3,Layers.op4, Layers.op5, Layers.op6];

//the starting selection
private var names = [Layers.op1,Layers.others ];

//offset for buttons layout
private var L1 = 0;
private var L2= 120;
private var L3 = 240;

function OnGUI() {
//when esc is pressed the interface opens
if (Input.GetKey ("escape") ) { 

	GUI.skin = mySkin;	
	GUI.Box (Rect (10+L1,10,150,125+20), "Layout Selection");
	
	//when I press on this button another butto is shown
	if (GUI.Button (Rect (25+L1,20+45,120,20), "5 Mullions")) {

	GUI.Box (Rect (10+L2,10,150,125+20), "Tilt Selection");

	//when I press on this button another button is shown
	if (GUI.Button (Rect (25+L2,20+45,120,20), "+45")) {

		GUI.Box (Rect (10+L3,10,150,125+20), "Blinds");

		if (GUI.Button (Rect (25+L3,20+45,120,20), "Open")) {
		names[0] = all_names1[0];
		}
		if (GUI.Button (Rect (25+L3,20+45,120,20), "Deployed")) {
		names[0] = all_names2[0];
		}
	}	


//five mullions
	}

	if (GUI.Button (Rect (25,155+20,120,20), "Main Menu")) {
	Application.LoadLevel("menu");
	}
	
camera.cullingMask = Layers.CreateInclusiveMask(names);
//when esc is presse
	}
//function
}

The if(Button()) is only true on the MouseUp Event. Try creating a bool to store if the second level is open, and which ‘id’ it if, then you can just enumerate a list of second level options which contain buttons to open third level options, in the same way as the second.

I solved this thanks to Eric5h5.
see here:
http://forum.unity3d.com/viewtopic.php?t=12691

solution as you say is to use an extra variable.
thanks to all
G