ランゲームを開発しています。プレイ中にお金を集めてその総額をplayerprefsで保存したいと考えています。しかし、データの保存はされているのですが最初に取ったお金に加算ではなく上書きしてしまいます。
理想
1コイン習得→保存→総数1枚→ゲーム終了→1コイン習得した状態で再開→1コイン習得→保存→総数2枚としたいのですが
現状
1コイン習得した状態で再開→1コイン習得→保存→総数1枚と、前回とった1コインを加算してくれないので前回とったコインに現状のコインを足していく形をとれるようにするにはどうしたらよいか助言を頂けると幸いです。
public class PlayerManeger : MonoBehaviour { public static int totalScore; // トータルスコア void Start(){ } //お金のトータルデータがあればデータをロードしてなければ作る if (PlayerPrefs.HasKey("TOTAL_SCORE")) { PlayerPrefs.GetInt("TOTAL_SCORE"); Debug.Log(PlayerPrefs.GetInt("TOTAL_SCORE")+"円"); } else { totalScore= PlayerPrefs.GetInt("TOTAL_SCORE", 0); Debug.Log("現在所持金のデータはありません"); } private void OnTriggerEnter2D(Collider2D collision) { //お金に当たった時の処理 if (collision.gameObject.tag == "coin") { totalScoreSave(1);//お金をとってセーブ(1円) } } //セーブ関数 void totalScoreSave(int x) { totalScore += x; PlayerPrefs.SetInt("TOTAL_SCORE", totalScore); PlayerPrefs.Save(); Debug.Log(totalScore + "円"); } }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/01/04 08:32