diff --git a/Assets/Scenes/AccountMenu.unity b/Assets/Scenes/AccountMenu.unity index 996dbd6..709b4b6 100644 --- a/Assets/Scenes/AccountMenu.unity +++ b/Assets/Scenes/AccountMenu.unity @@ -10762,6 +10762,52 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1644648865} m_CullTransparentMesh: 1 +--- !u!1 &1724546899 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1724546901} + - component: {fileID: 1724546900} + m_Layer: 0 + m_Name: LatestVersionText + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1724546900 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1724546899} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0ce6d4ae1a102accbe4dfb608a5b75e, type: 3} + m_Name: + m_EditorClassIdentifier: + text: {fileID: 0} + updateButton: {fileID: 0} +--- !u!4 &1724546901 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1724546899} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0.52066, y: -3.66337, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1728561204 GameObject: m_ObjectHideFlags: 0 @@ -14172,5 +14218,6 @@ SceneRoots: m_ObjectHideFlags: 0 m_Roots: - {fileID: 720281946} + - {fileID: 1724546901} - {fileID: 1094007101} - {fileID: 682940903} diff --git a/Assets/Scenes/GamePlayer.unity b/Assets/Scenes/GamePlayer.unity index 075ab1f..0370b48 100644 --- a/Assets/Scenes/GamePlayer.unity +++ b/Assets/Scenes/GamePlayer.unity @@ -2002,6 +2002,52 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1203455957} m_CullTransparentMesh: 1 +--- !u!1 &1261483214 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1261483216} + - component: {fileID: 1261483215} + m_Layer: 0 + m_Name: LatestVersionText + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1261483215 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1261483214} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0ce6d4ae1a102accbe4dfb608a5b75e, type: 3} + m_Name: + m_EditorClassIdentifier: + text: {fileID: 0} + updateButton: {fileID: 0} +--- !u!4 &1261483216 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1261483214} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0.52066, y: -3.66337, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1324594959 GameObject: m_ObjectHideFlags: 0 @@ -3003,6 +3049,7 @@ SceneRoots: m_ObjectHideFlags: 0 m_Roots: - {fileID: 519420032} + - {fileID: 1261483216} - {fileID: 1625416040} - {fileID: 808236451} - {fileID: 1811565639} diff --git a/Assets/Scenes/IconsMenu.unity b/Assets/Scenes/IconsMenu.unity index 887de83..9c68862 100644 --- a/Assets/Scenes/IconsMenu.unity +++ b/Assets/Scenes/IconsMenu.unity @@ -2599,6 +2599,52 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 817018164} m_CullTransparentMesh: 1 +--- !u!1 &834607533 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 834607535} + - component: {fileID: 834607534} + m_Layer: 0 + m_Name: LatestVersionText + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &834607534 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 834607533} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0ce6d4ae1a102accbe4dfb608a5b75e, type: 3} + m_Name: + m_EditorClassIdentifier: + text: {fileID: 0} + updateButton: {fileID: 0} +--- !u!4 &834607535 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 834607533} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0.52066, y: -3.66337, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &839120340 GameObject: m_ObjectHideFlags: 0 @@ -6202,5 +6248,6 @@ SceneRoots: m_ObjectHideFlags: 0 m_Roots: - {fileID: 1062570983} + - {fileID: 834607535} - {fileID: 1844786183} - {fileID: 2134364725} diff --git a/Assets/Scenes/LeaderboardMenu.unity b/Assets/Scenes/LeaderboardMenu.unity index 2e4aae8..9215d53 100644 --- a/Assets/Scenes/LeaderboardMenu.unity +++ b/Assets/Scenes/LeaderboardMenu.unity @@ -2437,6 +2437,52 @@ RectTransform: m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 30} m_Pivot: {x: 0.5, y: 1} +--- !u!1 &1711730330 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1711730332} + - component: {fileID: 1711730331} + m_Layer: 0 + m_Name: LatestVersionText + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1711730331 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1711730330} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0ce6d4ae1a102accbe4dfb608a5b75e, type: 3} + m_Name: + m_EditorClassIdentifier: + text: {fileID: 0} + updateButton: {fileID: 0} +--- !u!4 &1711730332 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1711730330} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0.52066, y: -3.66337, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1796839150 GameObject: m_ObjectHideFlags: 0 @@ -3092,6 +3138,7 @@ SceneRoots: m_ObjectHideFlags: 0 m_Roots: - {fileID: 1455063616} + - {fileID: 1711730332} - {fileID: 1991415992} - {fileID: 639712736} - {fileID: 1820585371} diff --git a/Assets/Scenes/LoadingMenu.unity b/Assets/Scenes/LoadingMenu.unity index 1690e24..aec8076 100644 --- a/Assets/Scenes/LoadingMenu.unity +++ b/Assets/Scenes/LoadingMenu.unity @@ -712,6 +712,52 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 798394518} m_CullTransparentMesh: 1 +--- !u!1 &842325108 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 842325110} + - component: {fileID: 842325109} + m_Layer: 0 + m_Name: LatestVersionText + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &842325109 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 842325108} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0ce6d4ae1a102accbe4dfb608a5b75e, type: 3} + m_Name: + m_EditorClassIdentifier: + text: {fileID: 0} + updateButton: {fileID: 0} +--- !u!4 &842325110 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 842325108} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0.52066, y: -3.66337, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1024664076 GameObject: m_ObjectHideFlags: 0 @@ -1110,5 +1156,6 @@ SceneRoots: m_ObjectHideFlags: 0 m_Roots: - {fileID: 705564545} + - {fileID: 842325110} - {fileID: 734849810} - {fileID: 759356942} diff --git a/Assets/Scenes/MainMenu.unity b/Assets/Scenes/MainMenu.unity index 781079b..1409ea8 100644 --- a/Assets/Scenes/MainMenu.unity +++ b/Assets/Scenes/MainMenu.unity @@ -255,6 +255,52 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 40776219} m_CullTransparentMesh: 1 +--- !u!1 &101625091 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 101625093} + - component: {fileID: 101625092} + m_Layer: 0 + m_Name: LatestVersionText + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &101625092 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 101625091} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0ce6d4ae1a102accbe4dfb608a5b75e, type: 3} + m_Name: + m_EditorClassIdentifier: + text: {fileID: 0} + updateButton: {fileID: 0} +--- !u!4 &101625093 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 101625091} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0.52066, y: -3.66337, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &263297568 GameObject: m_ObjectHideFlags: 0 @@ -690,7 +736,7 @@ Transform: m_GameObject: {fileID: 583716565} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 379.66296, y: 442.51105, z: 0} + m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] @@ -709,6 +755,8 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: exitButton: {fileID: 1354600018} + updateText: {fileID: 673338280} + updateButton: {fileID: 1292044491} --- !u!1 &673338277 GameObject: m_ObjectHideFlags: 0 @@ -720,7 +768,6 @@ GameObject: - component: {fileID: 673338278} - component: {fileID: 673338281} - component: {fileID: 673338280} - - component: {fileID: 673338282} m_Layer: 5 m_Name: LatestVersionText m_TagString: Untagged @@ -847,19 +894,6 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 673338277} m_CullTransparentMesh: 1 ---- !u!114 &673338282 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 673338277} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d0ce6d4ae1a102accbe4dfb608a5b75e, type: 3} - m_Name: - m_EditorClassIdentifier: - updateButton: {fileID: 1292044491} --- !u!1 &889892184 GameObject: m_ObjectHideFlags: 0 @@ -2836,6 +2870,7 @@ SceneRoots: m_ObjectHideFlags: 0 m_Roots: - {fileID: 519420032} + - {fileID: 101625093} - {fileID: 583716567} - {fileID: 1263503583} - {fileID: 1513462405} diff --git a/Assets/Scenes/SettingsMenu.unity b/Assets/Scenes/SettingsMenu.unity index 4f00292..41a6b55 100644 --- a/Assets/Scenes/SettingsMenu.unity +++ b/Assets/Scenes/SettingsMenu.unity @@ -582,6 +582,52 @@ RectTransform: m_AnchoredPosition: {x: 0, y: -145} m_SizeDelta: {x: 600, y: 100} m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &233625535 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 233625537} + - component: {fileID: 233625536} + m_Layer: 0 + m_Name: LatestVersionText + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &233625536 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 233625535} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0ce6d4ae1a102accbe4dfb608a5b75e, type: 3} + m_Name: + m_EditorClassIdentifier: + text: {fileID: 0} + updateButton: {fileID: 0} +--- !u!4 &233625537 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 233625535} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0.52066, y: -3.66337, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &313320701 GameObject: m_ObjectHideFlags: 0 @@ -3076,5 +3122,6 @@ SceneRoots: m_ObjectHideFlags: 0 m_Roots: - {fileID: 313320704} + - {fileID: 233625537} - {fileID: 1246405077} - {fileID: 99615555} diff --git a/Assets/Scripts/LatestVersionText.cs b/Assets/Scripts/LatestVersionText.cs index c0f069f..e2fe010 100644 --- a/Assets/Scripts/LatestVersionText.cs +++ b/Assets/Scripts/LatestVersionText.cs @@ -5,25 +5,40 @@ using UnityEngine.UI; public class LatestVersionText : MonoBehaviour { + public static LatestVersionText Instance; + public TMP_Text text; public Button updateButton; - private TMP_Text text; + private string latest = null; void Awake() { - text = gameObject.GetComponent(); - updateButton.onClick.AddListener(() => + if (Instance != null && Instance != this) { - Application.OpenURL("https://berrydash.lncvrt.xyz/download"); - }); - if (Application.platform == RuntimePlatform.WebGLPlayer) + Destroy(gameObject); + return; + } + + Instance = this; + DontDestroyOnLoad(gameObject); + + if (updateButton != null) { - text.text = ""; + updateButton.onClick.AddListener(() => + { + Application.OpenURL("https://berrydash.lncvrt.xyz/download"); + }); } } void Start() { - if (Application.platform != RuntimePlatform.WebGLPlayer) GetLatestVersion(); + RefreshText(); + if (Application.platform != RuntimePlatform.WebGLPlayer && latest == null) GetLatestVersion(); + } + + void OnEnable() + { + RefreshText(); } async void GetLatestVersion() @@ -35,14 +50,26 @@ public class LatestVersionText : MonoBehaviour await request.SendWebRequest(); if (request.result != UnityWebRequest.Result.Success) { - text.text = "Latest: N/A"; - return; + latest = "-1"; } - string response = request.downloadHandler.text; - text.text = "Latest: v" + response; - if (response != Application.version) + else { - updateButton.gameObject.SetActive(true); + latest = request.downloadHandler.text; } + RefreshText(); + if (latest != Application.version && updateButton != null) updateButton.gameObject.SetActive(true); + } + + public void RefreshText() + { + if (text == null) return; + if (Application.platform == RuntimePlatform.WebGLPlayer) + text.text = ""; + else if (latest == null) + text.text = "Latest: Loading..."; + else if (latest == "-1") + text.text = "Latest: N/A"; + else + text.text = "Latest: " + latest; } } diff --git a/Assets/Scripts/MainMenu.cs b/Assets/Scripts/MainMenu.cs index 3255e44..e3ac682 100644 --- a/Assets/Scripts/MainMenu.cs +++ b/Assets/Scripts/MainMenu.cs @@ -1,12 +1,19 @@ +using TMPro; using UnityEngine; using UnityEngine.UI; public class MenuScript : MonoBehaviour { public Button exitButton; + public TMP_Text updateText; + public Button updateButton; void Awake() { + LatestVersionText.Instance.text = updateText; + LatestVersionText.Instance.updateButton = updateButton; + LatestVersionText.Instance.RefreshText(); + if (Application.isMobilePlatform || Application.isEditor || Application.platform == RuntimePlatform.WebGLPlayer) { exitButton.gameObject.SetActive(false);