diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index ee8d20896..58bfd8dc8 100644 Binary files a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll and b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll differ diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index 5024ebd21..2bc2a9068 100644 Binary files a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll and b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll differ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll index 6bc2b9b83..894997ba6 100644 Binary files a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll and b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll differ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index da2ee29a6..af2d9012d 100644 Binary files a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll and b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll differ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index c0fa441ce..b67f102b5 100644 Binary files a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll and b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll differ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll index 6af51d955..da1306901 100644 Binary files a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll and b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll differ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index 212a06760..661d900bb 100644 Binary files a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll and b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll differ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index 3e7dee243..214468a47 100644 Binary files a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll and b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll differ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index 91b014236..6dd35287a 100644 Binary files a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll and b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll differ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll index 1580beca7..c84392156 100644 Binary files a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll and b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll differ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index 6582e57ee..ee5c9c6ff 100644 Binary files a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll and b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll differ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index 7dbb96a04..c6d4d52ad 100644 Binary files a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll and b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll differ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index 9a899a329..66b372a25 100644 Binary files a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll and b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll differ diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/ExistingWalletLogin.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/ExistingWalletLogin.cs index 7b74ea402..31178d19d 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/ExistingWalletLogin.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/ExistingWalletLogin.cs @@ -216,8 +216,7 @@ private void BuildWalletConnectConfig() // try and get saved value SavedSessionTopic = walletConnectConfig?.SavedSessionTopic, SupportedWallets = supportedWallets, - // save file closer to assets when in editor, more accessible - StoragePath = Application.isEditor ? Application.dataPath : Application.persistentDataPath, + StoragePath = Application.persistentDataPath, RedirectToWallet = redirectToWallet, KeepSessionAlive = autoLogin || rememberMeToggle.isOn, DefaultWallet = defaultWallet, diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/PlayerData.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/PlayerData.cs index bae38698e..7d1216749 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/PlayerData.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/PlayerData.cs @@ -1,9 +1,12 @@ -using System.Collections; -using System.Collections.Generic; using System.IO; using ChainSafe.Gaming.WalletConnect; using Newtonsoft.Json; +#if UNITY_EDITOR +using System.Diagnostics; +using UnityEditor; +#endif using UnityEngine; +using Debug = UnityEngine.Debug; /// /// Player Data that can be persisted through runtime and sessions in a PlayerData.json file. @@ -14,17 +17,7 @@ public class PlayerData { #region Save & Load - private string Path - { - get - { - // save closer to assets when in editor - // more accessible - string directory = Application.isEditor ? Application.dataPath : Application.persistentDataPath; - - return $"{System.IO.Path.Combine(directory, nameof(PlayerData))}.json"; - } - } + private string Path => $"{System.IO.Path.Combine(Application.persistentDataPath, nameof(PlayerData))}.json"; /// /// Singleton instance. @@ -98,6 +91,8 @@ public static void Clear() Instance = new PlayerData(); Save(); + + Debug.Log($"{nameof(PlayerData)} cleared."); } #endregion @@ -106,4 +101,47 @@ public static void Clear() /// Saved Wallet Connect Config used for restoring session (Remember Me) Implementation. /// [JsonProperty] public WalletConnectConfig WalletConnectConfig { get; set; } + +#if UNITY_EDITOR + [MenuItem("Tools/Player Data/Remove")] + public static void RemovePlayerData() + { + if (File.Exists(Instance.Path)) + { + File.Delete(Instance.Path); + } + else + { + Debug.LogError($"{nameof(PlayerData)} not found at {Instance.Path}."); + } + + Debug.Log($"{nameof(PlayerData)} Removed."); + } + + [MenuItem("Tools/Player Data/Clear")] + public static void ClearPlayerData() + { + Clear(); + } + + [MenuItem("Tools/Open Persistent Data Path")] + public static void OpenPersistentDataPath() + { + switch (Application.platform) + { + case RuntimePlatform.WindowsEditor: + Process.Start(Application.persistentDataPath); + break; + case RuntimePlatform.LinuxEditor: + Process.Start("xdg-open", Application.persistentDataPath); + break; + case RuntimePlatform.OSXEditor: + Process.Start("open", Application.persistentDataPath); + break; + default: + Debug.LogError($"Can't open on {Application.platform} Platform."); + break; + } + } +#endif } diff --git a/src/UnitySampleProject/.gitignore b/src/UnitySampleProject/.gitignore index fde00b818..727c26cbe 100644 --- a/src/UnitySampleProject/.gitignore +++ b/src/UnitySampleProject/.gitignore @@ -80,13 +80,6 @@ crashlytics-build.properties /Assets/WebGLTemplates /Assets/WebGLTemplates.meta -# Ignore generated data files -/Assets/PayerData.json -/Assets/PayerData.json.meta - -/Assets/walletconnect.json -/Assets/walletconnect.json.meta - # Ignore the project config since it can always be rebuilt /Assets/Resources.meta /Assets/Resources/ProjectConfigData.asset diff --git a/src/UnitySampleProject/Assets/Plugins.meta b/src/UnitySampleProject/Assets/Plugins.meta deleted file mode 100644 index a64f6fd98..000000000 --- a/src/UnitySampleProject/Assets/Plugins.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 9265622591a5741fca8ccae4087d191a -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/ExistingWalletLogin.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/ExistingWalletLogin.cs index 7b74ea402..31178d19d 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/ExistingWalletLogin.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/ExistingWalletLogin.cs @@ -216,8 +216,7 @@ private void BuildWalletConnectConfig() // try and get saved value SavedSessionTopic = walletConnectConfig?.SavedSessionTopic, SupportedWallets = supportedWallets, - // save file closer to assets when in editor, more accessible - StoragePath = Application.isEditor ? Application.dataPath : Application.persistentDataPath, + StoragePath = Application.persistentDataPath, RedirectToWallet = redirectToWallet, KeepSessionAlive = autoLogin || rememberMeToggle.isOn, DefaultWallet = defaultWallet, diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/PlayerData.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/PlayerData.cs index bae38698e..7d1216749 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/PlayerData.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/PlayerData.cs @@ -1,9 +1,12 @@ -using System.Collections; -using System.Collections.Generic; using System.IO; using ChainSafe.Gaming.WalletConnect; using Newtonsoft.Json; +#if UNITY_EDITOR +using System.Diagnostics; +using UnityEditor; +#endif using UnityEngine; +using Debug = UnityEngine.Debug; /// /// Player Data that can be persisted through runtime and sessions in a PlayerData.json file. @@ -14,17 +17,7 @@ public class PlayerData { #region Save & Load - private string Path - { - get - { - // save closer to assets when in editor - // more accessible - string directory = Application.isEditor ? Application.dataPath : Application.persistentDataPath; - - return $"{System.IO.Path.Combine(directory, nameof(PlayerData))}.json"; - } - } + private string Path => $"{System.IO.Path.Combine(Application.persistentDataPath, nameof(PlayerData))}.json"; /// /// Singleton instance. @@ -98,6 +91,8 @@ public static void Clear() Instance = new PlayerData(); Save(); + + Debug.Log($"{nameof(PlayerData)} cleared."); } #endregion @@ -106,4 +101,47 @@ public static void Clear() /// Saved Wallet Connect Config used for restoring session (Remember Me) Implementation. /// [JsonProperty] public WalletConnectConfig WalletConnectConfig { get; set; } + +#if UNITY_EDITOR + [MenuItem("Tools/Player Data/Remove")] + public static void RemovePlayerData() + { + if (File.Exists(Instance.Path)) + { + File.Delete(Instance.Path); + } + else + { + Debug.LogError($"{nameof(PlayerData)} not found at {Instance.Path}."); + } + + Debug.Log($"{nameof(PlayerData)} Removed."); + } + + [MenuItem("Tools/Player Data/Clear")] + public static void ClearPlayerData() + { + Clear(); + } + + [MenuItem("Tools/Open Persistent Data Path")] + public static void OpenPersistentDataPath() + { + switch (Application.platform) + { + case RuntimePlatform.WindowsEditor: + Process.Start(Application.persistentDataPath); + break; + case RuntimePlatform.LinuxEditor: + Process.Start("xdg-open", Application.persistentDataPath); + break; + case RuntimePlatform.OSXEditor: + Process.Start("open", Application.persistentDataPath); + break; + default: + Debug.LogError($"Can't open on {Application.platform} Platform."); + break; + } + } +#endif } diff --git a/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset b/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset index d83f4edd0..4763d64db 100644 --- a/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset +++ b/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset @@ -5,16 +5,6 @@ EditorBuildSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_Scenes: - - enabled: 1 - path: Assets/Samples/web3.unity SDK Web3Auth/2.5.2/Web3.Unity Web3Auth Samples/Scenes/SampleLogin - - Web3Auth.Unity - guid: 00000000000000000000000000000000 - - enabled: 1 - path: Assets/Samples/web3.unity SDK/2.5.4/Web3.Unity Samples/Scenes/SampleLogin.Unity - guid: 00000000000000000000000000000000 - - enabled: 1 - path: Assets/Samples/web3.unity SDK/2.5.4/Web3.Unity Samples/Scenes/SampleMain.Unity - guid: 00000000000000000000000000000000 - enabled: 1 path: Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scenes/SampleLogin - Web3Auth.unity