<ゲームステージ間のデータの引き継ぎ>
(サンプルコード)
using UnityEngine;
using TMPro;
using UnityEngine.SceneManagement;
public class ScoreManager : MonoBehaviour
{
public TextMeshProUGUI scoreLabel;
// (ポイント)static修飾子
public static int score;
public static int sceneNum;
void Start()
{
scoreLabel.text = "SCORE:" + score;
}
void Update()
{
// スペースキーを押すとスコアを100点ずつ加算
if (Input.GetKeyDown(KeyCode.Space))
{
score += 100;
scoreLabel.text = "SCORE:" + score;
}
// Zキーを押すと次のステージに遷移
if (Input.GetKeyDown(KeyCode.Z))
{
sceneNum += 1;
SceneManager.LoadScene(sceneNum);
}
}
}
(実行確認)
<最終ステージのスコアをリザルトシーンに引き継ぐ>
(サンプルコード)
using UnityEngine;
using TMPro;
public class ResultManager : MonoBehaviour
{
public TextMeshProUGUI finalScoreLabel;
void Start()
{
// 「インスタンス不要」で、「ScoreManager」クラスに「直接アクセス」できる(ポイント)
finalScoreLabel.text = "FINAL SCORE: " + ScoreManager.score;
}
}
(実行確認)