diff --git a/Assets/Scenes/MainMenu.unity b/Assets/Scenes/MainMenu.unity index 3e654001f1937763c95f8bf075403d5515a8e1e6..e68e864987a295031c4ebcb789214cec27feaffd 100644 --- a/Assets/Scenes/MainMenu.unity +++ b/Assets/Scenes/MainMenu.unity @@ -838,7 +838,7 @@ GameObject: - component: {fileID: 139369424} - component: {fileID: 139369423} m_Layer: 5 - m_Name: Text (TMP) + m_Name: Health - Text (TMP) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -1192,7 +1192,7 @@ GameObject: - component: {fileID: 240796740} - component: {fileID: 240796739} m_Layer: 5 - m_Name: Text (TMP) + m_Name: Playtime - Text (TMP) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -2478,7 +2478,7 @@ GameObject: - component: {fileID: 541559855} - component: {fileID: 541559854} m_Layer: 5 - m_Name: Text (TMP) + m_Name: Enemies - Text (TMP) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -3033,7 +3033,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 0 + m_IsActive: 1 --- !u!224 &663537829 RectTransform: m_ObjectHideFlags: 0 @@ -3743,7 +3743,7 @@ GameObject: - component: {fileID: 900130899} - component: {fileID: 900130898} m_Layer: 5 - m_Name: Text (TMP) + m_Name: Shot - Text (TMP) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -5188,6 +5188,7 @@ GameObject: - component: {fileID: 1418569990} - component: {fileID: 1418569992} - component: {fileID: 1418569991} + - component: {fileID: 1418569993} m_Layer: 5 m_Name: Panel m_TagString: Untagged @@ -5264,6 +5265,24 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1418569989} m_CullTransparentMesh: 1 +--- !u!114 &1418569993 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1418569989} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d9c5f1266872fe0439f9af1c09e93f6d, type: 3} + m_Name: + m_EditorClassIdentifier: + shotAccuracyText: {fileID: 900130898} + enemiesDefeatedText: {fileID: 541559854} + distanceTravelledText: {fileID: 1698993699} + totalDamageText: {fileID: 1719800934} + healthRecoveredText: {fileID: 139369423} + playtimeText: {fileID: 240796739} --- !u!1 &1437915169 GameObject: m_ObjectHideFlags: 0 @@ -5643,7 +5662,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!114 &1564611092 MonoBehaviour: m_ObjectHideFlags: 0 @@ -6203,7 +6222,7 @@ GameObject: - component: {fileID: 1698993700} - component: {fileID: 1698993699} m_Layer: 5 - m_Name: Text (TMP) + m_Name: Distance - Text (TMP) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -6337,7 +6356,7 @@ GameObject: - component: {fileID: 1719800935} - component: {fileID: 1719800934} m_Layer: 5 - m_Name: Text (TMP) + m_Name: Damage - Text (TMP) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -7712,6 +7731,7 @@ GameObject: m_Component: - component: {fileID: 1978860188} - component: {fileID: 1978860187} + - component: {fileID: 1978860189} m_Layer: 0 m_Name: MainMenu m_TagString: Untagged @@ -7749,6 +7769,24 @@ Transform: - {fileID: 663537829} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1978860189 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1978860186} + m_Enabled: 0 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d9c5f1266872fe0439f9af1c09e93f6d, type: 3} + m_Name: + m_EditorClassIdentifier: + shotAccuracyText: {fileID: 0} + enemiesDefeatedText: {fileID: 0} + distanceTravelledText: {fileID: 0} + totalDamageText: {fileID: 0} + healthRecoveredText: {fileID: 0} + playtimeText: {fileID: 0} --- !u!1 &1980923946 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/Statistic.cs b/Assets/Scripts/Statistic.cs index 8dcdcd65cf9d9ca49de6ce21e2907be6460d8e4f..bac5d985fc9ab6be4386c2716cbc2510073ed995 100644 --- a/Assets/Scripts/Statistic.cs +++ b/Assets/Scripts/Statistic.cs @@ -5,14 +5,6 @@ using TMPro; public class Statistic : MonoBehaviour { - // Dummy data - public string shotAccuracy = "80"; - public string enemiesDefeated = "150"; - public string distanceTravelled = "3.2"; - public string totalDamage = "45000"; - public string healthRecovered = "1200"; - public string playtime = "22h 50m 30s"; - // TMP_Text Component public TMP_Text shotAccuracyText; public TMP_Text enemiesDefeatedText; @@ -21,88 +13,71 @@ public class Statistic : MonoBehaviour public TMP_Text healthRecoveredText; public TMP_Text playtimeText; + void Start() + { + LoadStats(); + } + + // Load statistics from PlayerPrefs + void LoadStats() + { + ShotAccuracy = PlayerPrefs.GetString("ShotAccuracy", "0"); + EnemiesDefeated = PlayerPrefs.GetString("EnemiesDefeated", "0"); + DistanceTravelled = PlayerPrefs.GetString("DistanceTravelled", "0"); + TotalDamage = PlayerPrefs.GetString("TotalDamage", "0"); + HealthRecovered = PlayerPrefs.GetString("HealthRecovered", "0"); + Playtime = PlayerPrefs.GetString("Playtime", "0h 0m 0s"); + } + // Getter Function public string ShotAccuracy { - get { return shotAccuracy; } - set - { - shotAccuracy = value; - shotAccuracyText.text = $"{shotAccuracy}%"; - } + get => shotAccuracyText.text; + set => shotAccuracyText.text = $"{value}%"; } public string EnemiesDefeated { - get { return enemiesDefeated; } - set - { - enemiesDefeated = value; - enemiesDefeatedText.text = enemiesDefeated; - } + get => enemiesDefeatedText.text; + set => enemiesDefeatedText.text = value; } + + public string DistanceTravelled { - get { return distanceTravelled; } - set - { - distanceTravelled = value; - distanceTravelledText.text = $"{distanceTravelled} km"; - } + get => distanceTravelledText.text; + set => distanceTravelledText.text = $"{value} km"; } + public string TotalDamage { - get { return totalDamage; } - set - { - totalDamage = value; - totalDamageText.text = totalDamage; - } + get => totalDamageText.text; + set => totalDamageText.text = value; } + public string HealthRecovered { - get { return healthRecovered; } - set - { - healthRecovered = value; - healthRecoveredText.text = healthRecovered; - } + get => healthRecoveredText.text; + set => healthRecoveredText.text = value; } - public string Playtime - { - get { return playtime; } - set - { - playtime = value; - playtimeText.text = playtime; - } - } - - // Start is called before the first frame update - void Start() + public string Playtime { - ShotAccuracy = shotAccuracy; - EnemiesDefeated = enemiesDefeated; - DistanceTravelled = distanceTravelled; - TotalDamage = totalDamage; - HealthRecovered = healthRecovered; - Playtime = playtime; + get => playtimeText.text; + set => playtimeText.text = value; } - // Update is called once per frame - void Update() - { - - } public void UpdateStats(string newAccuracy, string newEnemiesDefeated, string newDistance, string newDamage, string newHealthRecovered, string newPlaytime) { - shotAccuracy = newAccuracy; - enemiesDefeated = newEnemiesDefeated; - distanceTravelled = newDistance; - totalDamage = newDamage; - healthRecovered = newHealthRecovered; - playtime = newPlaytime; + PlayerPrefs.SetString("ShotAccuracy", newAccuracy); + PlayerPrefs.SetString("EnemiesDefeated", newEnemiesDefeated); + PlayerPrefs.SetString("DistanceTravelled", newDistance); + PlayerPrefs.SetString("TotalDamage", newDamage); + PlayerPrefs.SetString("HealthRecovered", newHealthRecovered); + PlayerPrefs.SetString("Playtime", newPlaytime); + + // Update the displayed stats + LoadStats(); } }