Thanks for all your help Fattie, I managed just great. I'm sure that your tutorial below will prove itself useful to many Unity newbies like me ^_^. Thanks for everything. I would close the question but I'm not sure how :).

The question has been closed Apr 20, 2013 at 08:25 PM by Eugenius for the following reason:

don't use the "GUI" system at all. use IMAGE buttons that you sit there (perhaps using 2DToolkit for example).

then just write your own "buttons" (a collider with 2 lines of code). in this way you can very easily completely control everything.

bear in mind that many people feel that Unity's "GUI" system is rubbish, and just don't use it. (for me it's just a placeholder system, for development etc.)

also - there are various alternate GUI systems you can buy for €2 on the asset store. but (IMO) they are very inelegant (anything that takes more than 20 seconds to learn is not for me) - but that could be a solution for you. (I am sure they would do everything you describe, and much more)

Now, here's some totally typical - not elegant at all !!!!!! -- code for buttons.

make a scene, say with some background images or whatever

simply make the buttons floating in space so they look correct for the user (They could be animated, exploding, anything - they could be 2DToolkit flat sprites, or, actually just 3D spaceships, neon lights or whatever you want)

now, make an empty game object called "my happy buttons". inside that game object (folder if you will), make a number of simply "cubes"... sit them sort of between your camera and the button images

on the cubes, REMOVE the renderer so it's nothing more than a box collider. make these colliders fairly flat, and the correct shape of the buttons (and probably a bit bigger on iPad). those are in fact the buttons. you must carefully name those objects (the buttons) correctly (eg, from the example below, "about" etc)

To be clear, this all "shapes" better if your project is using an orthographic camera, but it will be fine in 3D camera, too. you may prefer, or have to, make another camera (ortho) to handle just the buttons - but that's just a click. it's no problem having two cameras in a scene and one should learn about this anyway. So, your "buttons" (nothing more than trivial colliders) will look like this ..

in the example code below those three colliders would be named "about" "home" etc. Note that the actual "buttons" (the colliders) do absolutely nothing - they have no code attached whatsoever. the only quantum feature they possess is their name string.

(TBC, it's perfectly OK to use spheres, planes or anything you want as the colliders there. Also, recall that people's fingers are enormous compared to the glass, accuracy is not important.)

Note as a general comment in unity you can and should learn about the physics Layers system - you can use that so that your Ninjas, etc do not collide with the "about" button! heh. /Documentation/Components/LayerBasedCollision.html

Note that the code example below includes full working code for the unity editor too. In practice, you have to have that or it's impossible to work with - often the stupid editor code takes more fooling around with than the real code for the glass on the ipad.

Note that it uses the extremely simple touch metaphor that the user must ONLY be using one finger. In practice (particularly for children's apps) you have to allow for all sorts of screwing around by users - think about how people grab the edges of screens, how chidren touch screens and so on. In practice that software takes BILLIONS of lines of code and is often more complex than the whole other software project! heh. But here you simply must touch cleanly with one finger

@Fattie I managed to trick the Unity GUI system somehow so I must ask a question before I rewrite 500 lines of code :)). Why do you consider Unity's GUI system as rubbish? I'm a newbie and that's why I'm asking so that I could maybe completely revise my code and not use GUI at all.

The tutorial you provided is more than great, I've already tried it and it works wonders :D, but calling GUI's is a bit easier in this case - considering that I cannot use the loadlevel function, because my app will not be structured on levels that need to be loaded from another scene. :)

OK, i would say it is confusing to use - it's that simple. I would urge you to ask a new question "Please explain to a new user why the GUI is held in low opinion" and you will get more intelligent answers than from me! :)

that would be a good question on thsi site

PS normally I guess you'd use "Comment" for a comment - I might move your post since the other moderators would get angry (not me of course, I'm not anal at all :) )

Thanks for the reply. The thing is, I would like the GUI to still be displayed but not working. Easily put, I would like to make whatever exists beside the prompt, to inactive without making them disappear. An invisible wall or anything if something like that is possible?

[EDIT]: Sorry about that, I read through the whole wiki and it might be something i could use. I'm going to come back with a reply afterwards and tell you if it worked.

Sorry, my bad. Through prompt, I am referring to a pop-up type of window which lets the user know he has leveled up or that he has no energy (or any other information).

I am considering what you said about writing down my own button. I am probably going to stick to that for now. Thank you! @Fattie could you transform the comment to an answer so that I can mark it as the correct one?