前提・実現したいこと
ここに質問の内容を詳しく書いてください。
(例)PHP(CakePHP)で●●なシステムを作っています。
■■な機能を実装中に以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
unityでベストタイムを表示したいのですが、このプログラミングをunityで動かしてみたらベストタイムのところに「0」っと出てしまいベストタイムが出ません。
おそらく保存されていないから「0」っと出ているのでしょうけど、どうやったら保存されるようになりますか?
エラーメッセージ
該当のソースコード
unityのc#
1ソースコード 2```using System.Collections; 3using System.Collections.Generic; 4using UnityEngine; 5using UnityEngine.UI; 6using UnityEngine.SceneManagement; 7 8public class zikanstaone : MonoBehaviour 9{ 10 //カウントアップ 11 public static float countup = 0.0f; 12 public static float up = 0.02f; 13 public Text BestTimeText; //ベストタイムを表示するText 14 private float BestTime=100000.4f; //ベストタイム用変数 15 16 17 18 //時間を表示するText型の変数 19 public Text timeText; 20 21 void Start() 22 { 23 PlayerPrefs.DeleteAll(); 24 BestTime = PlayerPrefs.GetFloat("TIME", 0); 25 //保存しておいたベストタイムをキーで呼び出し取得し保存されていなければ0になる 26 BestTimeText.text = "ベストタイム: " + BestTime.ToString(); 27 //ベストタイムを表示 28 } 29 30 31 32 33 34 // Update is called once per frame 35 void OnCollisionEnter(Collision collision) 36 { 37 if (collision.gameObject.CompareTag("pCube1")) 38 { 39 countup = 0; 40 } 41 if (collision.gameObject.CompareTag("Cube2")) 42 { 43 up = 0; 44 } 45 46 } 47 void FixedUpdate() 48 { 49 if (Input.GetKey(KeyCode.R)) 50 { 51 countup = 0; 52 SceneManager.LoadScene("unity1week4"); 53 } 54 if (Input.GetMouseButtonDown(0)) 55 { 56 countup = 0; 57 up = 0.02f; 58 } 59 //時間をカウントする 60 countup += up; 61 62 //時間を表示する 63 timeText.text = "今のタイム: " + countup.ToString("f1") + "秒"; 64 65 66 67 if (countup < BestTime) 68 { 69 70 BestTime = countup; 71 //ベストタイム更新 72 73 PlayerPrefs.SetFloat("TIME", BestTime); 74 PlayerPrefs.Save(); 75 //ベストタイムを保存 76 77 BestTimeText.text = "ベストタイム: " + BestTime.ToString("f1") + "秒"; 78 //ベストタイムを表示 79 } 80 81 } 82 83} 84 85 86### 試したこと 87 88ここに問題に対して試したことを記載してください。 89 90### 補足情報(FW/ツールのバージョンなど) 91 92ここにより詳細な情報を記載してください。
コードやエラーはマークダウンのcode機能を利用してご提示ください。
https://teratail.com/questions/238564