- Home /
My own GuiSkin on the script
Hi... I have this script
var score = 0; var scoreText = "Score: 0";
function OnTriggerEnter( other : Collider ) { Debug.Log("OnTriggerEnter() was called"); if (other.tag == "Coin") { Debug.Log("Other object is a coin"); score += 5; scoreText = "Score: " + score; Debug.Log("Score is now " + score); Destroy(other.gameObject); } }
function OnGUI () { GUI.Label (Rect (10, 10, 100, 20), scoreText.ToString()); }
I have a GuiSkin and i want the things in the script like "Score: " to take the font, color etc from my GuiSkin. What i have to put in my code to fix that? Please correct it! Thank you.
Answer by Eric5h5 · Nov 22, 2010 at 08:19 PM
In your script, have
var mySkin : GUISkin;
as a public variable (and drag the skin onto it in the inspector of course). Then your OnGUI function should be
function OnGUI () {
GUI.skin = mySkin;
// rest of stuff here
}
Answer by GlennHeckman · Nov 22, 2010 at 08:08 PM
Add this to the top of your script:
var myScoreStyle:GUIStyle;
now change your GUI.Label from
GUI.Label (Rect (10, 10, 100, 20), scoreText.ToString());
to
GUI.Label(Rect(10,10,100,20),scoreText.ToString(),myScoreStyle);
Note the addition of the "myScoreStyle" at the end of the GUI.Label.
Now, locate the properties panel for this script and you'll see a drop down (arrow thingy) with the name myScoreStyle ... open that up and change the style as you see fit.
Any time you want to override the default GUISkin, create a new GUIStyle variable and assign that to your GUIObject.
OR .. you can scroll to the bottom of your GUISkin and in the Custom Styles drop down, add a new element to the size property and you can adjust your new custom style there. In order to reference this new custom style, you will have to change your GUI.Label to look like this:
GUI.Label(Rect(10,10,100,20),scoreText.ToString(),"myScoreStyle");
Note the Quotes around the myScoreStyle. Also, with this approach, you no longer need to create a GUIStyle variable at the top of your script.
Your answer
Follow this Question
Related Questions
Problem with the GUISkin on the script 1 Answer
The name 'Joystick' does not denote a valid type ('not found') 2 Answers
GUI Sliders in the same script. Question (Js.) 1 Answer
Need help with my script 0 Answers
I need Help With a Speed up script 1 Answer