Gday all,
I have made a GUI skin for a game I am working on and I have run into an issue.
I have several scripts that call OnGUI so ideally I would like one initial script to set up the GUI for the whole game.
This worked initially when I was setting it like:
GUI.skin.button.something? = somevariable;
(I cant remember the aspect after .button that I would set…) this would set the normal button texture to the texture I assigned to somevariable and it would persist through the whole game. The issue was on mouse over, the buttons would revert to the unity default.
I have since made a separate GUI skin and use the following script:
#pragma strict
var cursorImage : Texture;
var standardSkin : GUISkin;
function Start () {
DontDestroyOnLoad (transform.gameObject);
Screen.showCursor = false;
}
function Update () {
}
function OnGUI(){
GUI.skin = standardSkin;
var mousePos : Vector3 = Input.mousePosition;
var pos : Rect = Rect(mousePos.x,Screen.height - mousePos.y,40,40);
GUI.Label(pos,cursorImage);
}
This now doesnt work and to get the skin applied I have to apply it to each individual script OnGUI. When it is applied to individual GUI scripts it works great though! Does anyone know how to fix this? Assistance much appreciated!