Unity 3D Game Engine – Text Rotator
How to create an easy to use Text-Rotator using Javascript Arrays
1. MAIN TOP MENU> GameObject> Create Other> GUIText
2. MAIN TOP MENU> GameObject> Create Empty> name it DialogueController, assign DialogueController.JS
DialogueController.JS:
#pragma strict var character: GUITexture; // Assegnare in Inspector var baloon: GUITexture; // Assegnare in Inspector var baloonText: GUIText; // Assegnare in Inspector var transitionTime : int = 3; // da Inspector dare il tempo di transizione var i : int = 0; // indice dell'array di frasi // array di frasi INIZIO ####################### var sentences = new Array (); sentences[0] = "Statement-1"; sentences[1] = "Statement-2"; sentences[2] = "Statement-3"; sentences[3] = "Statement-4"; // array di frasi FINE ######################### function Start () { // Dimensiono e posiziono gli elementi di interfaccia INIZIO ############### // lo faccio da codice per renderli responsivi basandomi sulla risoluzione video character.pixelInset = new Rect(0f, 0f, Screen.width/6, Screen.width/6); // la miniatura con la faccia del personaggio è 1/6 della risoluzione character.transform.position = Vector3(0, 0, 0); // posiziono la faccia in basso a sinistra baloon.pixelInset = new Rect(0f, 0f, Screen.width, Screen.width/6); // baloon baloon.transform.position = Vector3(0, 0, 0); baloon.color = Color.blue; // colore del baloon baloon.color.a = 0.25f; // trasparenza del baloon // Dimensiono e posiziono gli elementi di interfaccia FINE ################# } function BaloonContent(){ // NB: In anteprima può dare un flickering che scompare con la Build Finale baloonText.text = sentences[i].ToString();// scrivi la frase a video, convertire a stringa altrimenti verrà effettuato un - implicit downcast t0 string - con messaggio di avvertimento nella console yield WaitForSeconds (transitionTime); // attendi x secondi i = 1; yield WaitForSeconds (transitionTime); i = 2; yield WaitForSeconds (transitionTime); i = 3; // ultimo indice } function Update () { BaloonContent(); // richiama scrittura testo }// End Update()
4. Hierarchy> DRAG AND DROP GUIText over DialogueController.JS GUIText var
Done!