当我的玩家击中一个项目时,我正在尝试将 +1000 添加到分数(我正在尝试进行无尽的跑步游戏)。 我的游戏管理器中有以下代码:
private float currentScore = 0;
void Update(){
if(!isGameEnded){
currentScore = Time.timeSinceLevelLoad * 10f;
if(scoreBonus){
currentScore += 1000;
scoreText.SetText(currentScore.ToString("0"));
scoreBonus = false;
}
scoreText.SetText(currentScore.ToString("0"));
}
}
我有一个 itemCollision 脚本,我更新了我的 GameManager 的 scoreBonus 变量:
void OnCollisionEnter(Collision collisionInfo){
if(collisionInfo.collider.tag == "Player"){
FindObjectOfType<PlayerCollision>().ActivateInvicibility(invisibilityDuration);
FindObjectOfType<GameManager>().scoreBonus = true;
Destroy(gameObject);
}
}
事情是当我点击项目时,分数更新得非常快,我可以看到 +1000 发生然后它消失了。我试着记录分数,但一切似乎都很正常,当他击中一个项目时,它的值在日志中发生变化,但在我的分数文本中没有变化。