Unity - 分数保持为 1

问题描述

在论坛里四处看看。最后,我决定加入这个大社区,因为它提供的支持

我创建这篇文章是因为我在 Unity 中创建的 2D 游戏中遇到了困难。

点击播放按钮后,游戏将继续获得第一名。收集食物后它会增加分数,但这里的问题是,一旦我点击“播放”按钮,分数就已经是“1”而不是“0”了。

以下语句中的代码

评分系统

收集 C#

感谢您的帮助!

解决方法

你可以做两件事:

  1. 在评分系统脚本中添加 Start() 函数。
private void Start(){
// This would make sure that score is 0 from the first frame
scoreText.GetComponent<Text>().text = " " + 0;
 }

2) 不是直接在触发器使用标签上运行代码,而是将 Player 标签分配给您的玩家游戏对象,然后添加此代码。

void OnTriggerEnter2D(Collider2D collision)
    {
      if(collision.tag == "Player"){
        ScoringSystem.theScore += 1;

      // Destroy(collision.gameObject);
      }
    }