2016-11-09 7 views
-2

Моя проблема: я играю в игру, и я хочу, чтобы, если вы проиграли, сразу же в верхней части экрана должен появиться текст с надписью «Запись: X», мне не нужна смена сцены или что-то еще, нет , Я только хочу положить текст в верхней части экрана в одной и той же сцены, как в StackКак отобразить текст в сцене?

возможно?

Мой код, например, представляет собой 2 объекта с коллизией, и когда они сталкиваются, я хочу поместить этот текст в начало.

public class Colision : MonoBehaviour { 

    public Text points; 
    int contador=0; 
    int Veces_Pequeño=0; 

    void OnCollisionEnter(Collision col){ 
     if (col.gameObject.name == "Cube") { 
      col.gameObject.SetActive (false); 
     } 

     if (col.gameObject.name == "Cube1") { 
      col.gameObject.SetActive (false); 
     } 
    } 
} 
+0

Я хочу как в стоге! STACK начинается с текста и чуть ниже появляется игра с кнопкой и сценой, и если вы проигрываете, текст «RECORD» сразу появляется сверху. Как?? –

+0

Язык C# –

+0

Единство :) извините! –

ответ

3

У меня трудно понять, что вы спрашиваете, но если это так просто, как я думаю, что это, убедитесь, что точки отключается при запуске игры и добавить этот код, когда вы хотите точки для отображения.

//Set the text to what ever you would like. 
points.text = "Record: " + contador; 
//Enable the gameobject for it to be seen. 
points.gameObject.SetActive(true); 
+0

да, но я хочу, чтобы «ЗАПИСЬ» с моим собственным шрифтом –

+0

Хорошо, тогда я рекомендую использовать два текста внутри горизонтальной группы макета, где первый имеет текст «ЗАПИСЬ» с вашим специальным шрифтом, а второй - тот, который подключен к переменные точки. – Alox

+0

но как я могу представить этот текст? Макет внутри внутри сцены? –

0

Ну, вы можете просто изменить text и enabled свойства Text.

Я предполагаю, что у вас есть GameObject с компонентом текста и Canvas ...

public class Colision : MonoBehaviour { 

    public Text points; 
    int contador = 0; 
    int Veces_Pequeño = 0; 
    public string beforeText = "record: "; //just added this so it is easy to change in unity editor 

    void Start(){ 
     points.enabled = false; 
    } 

    void OnCollisionEnter(Collision col){ 
     if (col.gameObject.name == "Cube") { 
      col.gameObject.SetActive (false); 
      points.text = beforeText + contador.toString(); 
      points.enabled = true; 
     } 

     if (col.gameObject.name == "Cube1") { 
      col.gameObject.SetActive (false); 

      points.text = beforeText + contador.toString(); 
      points.enabled = true; 
     } 
    } 
} 

Это должно помочь много: https://docs.unity3d.com/Manual/script-Text.html