我正在尝试为我的游戏统一制作一个高分系统,但我不确定如何做到这一点,但我仍然尝试了此代码并且我不断收到错误消息。
我试图搜索这些错误,但由于我对统一和编码非常陌生,因此那里的任何解决方案对我来说都没有意义。
public Transform player;
public Text scoreText;
public Text highScore;
// Update is called once per frame
void Update()
{
scoreText.text = player.position.z.ToString("0");
scoreText = scoreText.int.Parse;
if (scoreText > PlayerPrefs.GetInt("High Score", 0)) ;
{
PlayerPrefs.SetInt("High Score", scoreText);
highScore.text = scoreText.ToString;
}
这些是显示的错误消息
Assets\Score.cs(15,31):错误 CS1001:需要标识符
Assets\Score.cs(15,31): 错误 CS1002: ; 预期的
你现在所拥有的将不起作用。如果您能学习 C# 的基本语法以避免此类问题,那就太好了。
Text
是一个类,scoreText
在这种情况下是Text
类的一个实例。你不能只这样做:
scoreText = scoreText.int.Parse;
除非当然,scoreText.int.Parse
(虽然不起作用)返回一个Text
.
我认为您要做的是获取玩家的位置并转换为 int,因此您可以使用PlayerPrefs
.
您可以简单地创建一个 int 变量。
private int _score;
然后像这样使用:
_score=int.Parse(scoreText.text);
您可以使用PlayerPrefs
.
PlayerPrefs.SetInt("High Score", _score);
我希望这有帮助。
这一行也有错误:
highScore.text = scoreText.ToString;
应该 :
highScore.text = scoreText.ToString();
因为ToString()
是一种方法。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句