我尝试使用单身人士来保存他们刚刚获得的球员得分并将其传递给下一个场景,但我收到了错误:Inaccessible due its protection level
。
public class Score : MonoBehaviour
{
public static Score instance { get; private set;}
public int score = 0;
void Awake()
{
InvokeRepeating("increaseScore", 1, 1);
}
void Update()
{
score++;
// Set the score text.
guiText.text = "Score: " + score;
instance = this;
}
}
这是在场景1中进行比赛的代码。
public class endScore : MonoBehaviour
{
void getScore()
{
Score.instance.Update();
}
}
这是我在下一个场景中调用它的地方。
编辑:
public class endScore : MonoBehaviour { void getScore() { Score.instance.Update(); guiText.text = "Score: " + score; } }
它确实识别+ score
?我以为单身人士从集合实例中抓取了所有变量?
答案 0 :(得分:0)
您需要将类Update
的方法Score
更改为public,以便可以通过调用Score
的实例
将其更改为“公开”以使其更易于访问或可能更好受保护以使其不如公开访问,但超过私有(read more about that here)
Public void Update ()
{
score++;
// Set the score text.
guiText.text = "Score: " + score;
instance = this;
}
答案 1 :(得分:0)
如果您没有意识到这一点,Unity中的Update
是每帧{1}}类脚本调用一次的方法。你真的不应该自己打电话了!