显示用户在游戏中失去生命后得分

时间:2015-12-24 07:21:44

标签: unity3d

我显示得分有问题。我正在制作手机游戏,我需要在失去“生命”后显示我的分数。我在玩游戏时已经显示了分数。但是我希望在失去生命后显示出那个分数。我该怎么办?

这是我的项目附加到我的脚本的一部分(到球组件)。我有一个可收集物品“硬币”的球。失去生命后,我怎样才能显示我的countText的结果?

public Text countText;


//Usethisfor initialization
void Start () 
{ 
     count = 0;
     countText.text = count.ToString ();


}

//Updateiscalledonceper frame
void Update ()
{

}


void OnTriggerEnter2D (Collider2D other)
{


     if (other.gameObject.CompareTag ("coins")){
     other.gameObject.SetActive (false);
     count += 1;
     countText.text = count.ToString ();
}

谢谢,

亲切的问候

1 个答案:

答案 0 :(得分:0)

我认为有很多方法可以解决这个问题。试试我的解决方案:

  1. 创造"你死了" UI游戏对象中的屏幕。
  2. 使用公共方法PointsEarned(int points)附加脚本(实现很明显 - 设置私有int字段和/或修改Text元素 - 取决于您的要求)
  3. 从这样的问题修改脚本:
  4. (代码不完整)

     MyScript screenController;    
    
     //Usethisfor initialization
     void Start () 
     { 
         count = 0;
         countText.text = count.ToString ();
    
         screenController = GameObject.FindObjectOfType<MyScript>();
    }
    
    1. 然后,当您发现该玩家已经死亡时,只需致电screenController.PointsEarned(count);
    2. 根据您希望死亡屏幕的行为,您可能需要在死亡屏幕或其他任何游戏对象上使用SetActive