【发布时间】:2016-11-29 05:12:33
【问题描述】:
using UnityEngine;
using System.Collections;
public class Scoremanager : MonoBehaviour {
public static Scoremanager instance;
public int Score;
void Awake(){
if (instance == null) {
instance = this;
}
}
// Use this for initialization
void Start () {
Score = 0;
PlayerPrefs.SetInt ("Score", 0);
}
// Update is called once per frame
void Update () {
}
public void IncrementScore(){
Score++;
}
public void StopScore(){
PlayerPrefs.SetInt ("HighScore", Score);
if(PlayerPrefs.HasKey("HighScore")){
if (Score > PlayerPrefs.GetInt ("HighScore")) {
PlayerPrefs.SetInt ("HighScore", Score);
}
}
else{
PlayerPrefs.SetInt ("HighScore", Score);
}
}
游戏在统一编辑器游戏视图中运行良好,并且分数文本得到更新,但是当我在真实设备中安装游戏时,分数文本没有得到更新。我哪里错了?
【问题讨论】:
-
什么叫
IncrementScore?您发布的代码看起来甚至无法编译,您的大括号已经过时了。 -
增量分数是从另一个脚本调用的。
-
您仍然缺少右大括号,并且您还没有回答重要的问题,这些函数是如何调用的?
-
增量分数是从另一个脚本调用的。当我在统一游戏视图中运行游戏时,分数会很好地增加,但是当我在真实设备中运行游戏时,分数不会增加。