diff --git a/Assets/Neo/Core/NEP5.cs b/Assets/Neo/Core/NEP5.cs index 38cebeea..8692e308 100644 --- a/Assets/Neo/Core/NEP5.cs +++ b/Assets/Neo/Core/NEP5.cs @@ -87,17 +87,17 @@ public IEnumerator BalanceOf(byte[] addressHash, Action callback) }); } - public IEnumerator Transfer(UnspentEntries unspent, NeoKeys from_key, string to_address, BigInteger amount, string interop, Action callback) + public IEnumerator Transfer(UnspentEntries unspent, NeoKeys from_key, string to_address, BigInteger amount, string interop, Action callback) { return Transfer(unspent, from_key, to_address.GetScriptHashFromAddress(), amount, interop, callback); } - public IEnumerator Transfer(UnspentEntries unspent, NeoKeys from_key, UInt160 to_address_hash, BigInteger amount, string interop, Action callback) + public IEnumerator Transfer(UnspentEntries unspent, NeoKeys from_key, UInt160 to_address_hash, BigInteger amount, string interop, Action callback) { return Transfer(unspent, from_key, to_address_hash.ToArray(), amount, interop, callback); } - public IEnumerator Transfer(UnspentEntries unspent, NeoKeys from_key, byte[] to_address_hash, BigInteger amount, string interop, Action callback) + public IEnumerator Transfer(UnspentEntries unspent, NeoKeys from_key, byte[] to_address_hash, BigInteger amount, string interop, Action callback) { var sender_address_hash = from_key.Address.GetScriptHashFromAddress(); return api.CallContract(callback, unspent, from_key, ScriptHash, "transfer", new object[] { sender_address_hash, to_address_hash, amount}, interop); diff --git a/Assets/Neo/Core/NeoAPI.cs b/Assets/Neo/Core/NeoAPI.cs index 9c2065af..faa62084 100644 --- a/Assets/Neo/Core/NeoAPI.cs +++ b/Assets/Neo/Core/NeoAPI.cs @@ -591,18 +591,18 @@ public void GenerateInputsOutputs(UnspentEntries unspent, UInt160 from_script_ha } } - public IEnumerator CallContract(Action callback, UnspentEntries unspent, NeoKeys key, UInt160 scriptHash, string operation, object[] args, string interop, string attachSymbol = null, IEnumerable attachTargets = null) + public IEnumerator CallContract(Action callback, UnspentEntries unspent, NeoKeys key, UInt160 scriptHash, string operation, object[] args, string interop, string attachSymbol = null, IEnumerable attachTargets = null) { return CallContract(callback, unspent, key, scriptHash, new object[] { operation, args }, interop, attachSymbol, attachTargets); } - public IEnumerator CallContract(Action callback, UnspentEntries unspent, NeoKeys key, UInt160 scriptHash, object[] args, string interop, string attachSymbol = null, IEnumerable attachTargets = null) + public IEnumerator CallContract(Action callback, UnspentEntries unspent, NeoKeys key, UInt160 scriptHash, object[] args, string interop, string attachSymbol = null, IEnumerable attachTargets = null) { var bytes = GenerateScript(scriptHash, args); return CallContract(callback, unspent, key, scriptHash, bytes, interop, attachSymbol, attachTargets); } - public IEnumerator CallContract(Action callback, UnspentEntries unspent, NeoKeys key, UInt160 scriptHash, byte[] bytes, string interop, string attachSymbol = null, IEnumerable attachTargets = null) + public IEnumerator CallContract(Action callback, UnspentEntries unspent, NeoKeys key, UInt160 scriptHash, byte[] bytes, string interop, string attachSymbol = null, IEnumerable attachTargets = null) { List inputs = null; List outputs = null; @@ -636,9 +636,9 @@ public IEnumerator CallContract(Action callback, UnspentEntries uns transaction.Sign(key); - return SendTransaction(transaction, (success) => + return SendTransaction(transaction, (error) => { - callback(success ? transaction : null); + callback(string.IsNullOrEmpty(error) ? transaction : null, error); }); } @@ -648,7 +648,7 @@ public IEnumerator GetTransaction(string hash, Action callback) return GetTransaction(val, callback); } - public IEnumerator SendAsset(Action callback, UnspentEntries unspent, NeoKeys fromKey, string toAddress, string symbol, decimal amount, string interop) + public IEnumerator SendAsset(Action callback, UnspentEntries unspent, NeoKeys fromKey, string toAddress, string symbol, decimal amount, string interop) { if (String.Equals(fromKey.Address, toAddress, StringComparison.OrdinalIgnoreCase)) { @@ -661,7 +661,7 @@ public IEnumerator SendAsset(Action callback, UnspentEntries unspen return SendAsset(callback, unspent, fromKey, symbol, targets, interop); } - public IEnumerator SendAsset(Action callback, UnspentEntries unspent, NeoKeys fromKey, string symbol, IEnumerable targets, string interop) + public IEnumerator SendAsset(Action callback, UnspentEntries unspent, NeoKeys fromKey, string symbol, IEnumerable targets, string interop) { List inputs; List outputs; @@ -681,13 +681,13 @@ public IEnumerator SendAsset(Action callback, UnspentEntries unspen tx.Sign(fromKey); - return SendTransaction(tx, (success) => + return SendTransaction(tx, (error) => { - callback(success ? tx : null); + callback(string.IsNullOrEmpty(error) ? tx : null, error); }); } - public IEnumerator ClaimGas(UnspentEntries unspent, NeoKeys ownerKey, List claimable, decimal amount, Action callback) + public IEnumerator ClaimGas(UnspentEntries unspent, NeoKeys ownerKey, List claimable, decimal amount, Action callback) { var targetScriptHash = new UInt160(ownerKey.Address.AddressToScriptHash()); @@ -727,9 +727,9 @@ public IEnumerator ClaimGas(UnspentEntries unspent, NeoKeys ownerKey, List + return SendTransaction(tx, (error) => { - callback(sucess ? tx : null); + callback(string.IsNullOrEmpty(error) ? tx : null, error); }); } @@ -903,7 +903,7 @@ public IEnumerator GetClaimable(UInt160 hash, Action, decimal , ErrorHandler, url); } - public IEnumerator SendRawTransaction(string hexTx, Action callback) + public IEnumerator SendRawTransaction(string hexTx, Action callback) { return ExecuteRequestRPC((response) => { @@ -920,17 +920,17 @@ public IEnumerator SendRawTransaction(string hexTx, Action callback) result = response.AsBool(); } - callback(result); + callback(result ? null :"sendrawtx rpc returned false"); } - catch + catch (Exception e) { - callback(false); + callback(e.ToString()); } }, ErrorHandler, "sendrawtransaction", new object[] { hexTx }); } - protected IEnumerator SendTransaction(Transaction tx, Action callback) + protected IEnumerator SendTransaction(Transaction tx, Action callback) { var rawTx = tx.Serialize(true); var hexTx = rawTx.ByteToHex(); diff --git a/Assets/Plugins/Phantasma.Blockchain.dll b/Assets/Plugins/Phantasma.Blockchain.dll index 28ef667f..61bfdcf3 100644 Binary files a/Assets/Plugins/Phantasma.Blockchain.dll and b/Assets/Plugins/Phantasma.Blockchain.dll differ diff --git a/Assets/Plugins/Phantasma.Contracts.dll b/Assets/Plugins/Phantasma.Contracts.dll index 6af5d968..dd3f80cd 100644 Binary files a/Assets/Plugins/Phantasma.Contracts.dll and b/Assets/Plugins/Phantasma.Contracts.dll differ diff --git a/Assets/Plugins/Phantasma.Core.dll b/Assets/Plugins/Phantasma.Core.dll index e2dfe2f1..6c91777c 100644 Binary files a/Assets/Plugins/Phantasma.Core.dll and b/Assets/Plugins/Phantasma.Core.dll differ diff --git a/Assets/Plugins/Phantasma.Cryptography.dll b/Assets/Plugins/Phantasma.Cryptography.dll index 9629ebb5..893bd6be 100644 Binary files a/Assets/Plugins/Phantasma.Cryptography.dll and b/Assets/Plugins/Phantasma.Cryptography.dll differ diff --git a/Assets/Plugins/Phantasma.Domain.dll b/Assets/Plugins/Phantasma.Domain.dll index 037675aa..08c323c2 100644 Binary files a/Assets/Plugins/Phantasma.Domain.dll and b/Assets/Plugins/Phantasma.Domain.dll differ diff --git a/Assets/Plugins/Phantasma.Numerics.dll b/Assets/Plugins/Phantasma.Numerics.dll index a2660367..90d429ff 100644 Binary files a/Assets/Plugins/Phantasma.Numerics.dll and b/Assets/Plugins/Phantasma.Numerics.dll differ diff --git a/Assets/Plugins/Phantasma.P2P.dll b/Assets/Plugins/Phantasma.P2P.dll deleted file mode 100644 index 755cfe04..00000000 Binary files a/Assets/Plugins/Phantasma.P2P.dll and /dev/null differ diff --git a/Assets/Plugins/Phantasma.P2P.dll.meta b/Assets/Plugins/Phantasma.P2P.dll.meta deleted file mode 100644 index 97de48be..00000000 --- a/Assets/Plugins/Phantasma.P2P.dll.meta +++ /dev/null @@ -1,33 +0,0 @@ -fileFormatVersion: 2 -guid: 8a91cee987233e342bcceadc533d6da3 -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Any: - second: - enabled: 1 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - - first: - Windows Store Apps: WindowsStoreApps - second: - enabled: 0 - settings: - CPU: AnyCPU - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Plugins/Phantasma.VM.dll b/Assets/Plugins/Phantasma.VM.dll index 71b0aceb..6d0924bd 100644 Binary files a/Assets/Plugins/Phantasma.VM.dll and b/Assets/Plugins/Phantasma.VM.dll differ diff --git a/Assets/Resources/Tokens/ACAT.png b/Assets/Resources/Tokens/ACAT.png new file mode 100644 index 00000000..d2d9e484 Binary files /dev/null and b/Assets/Resources/Tokens/ACAT.png differ diff --git a/Assets/Resources/Tokens/ACAT.png.meta b/Assets/Resources/Tokens/ACAT.png.meta new file mode 100644 index 00000000..360422e5 --- /dev/null +++ b/Assets/Resources/Tokens/ACAT.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: 431529e91181d64489f7fb1b2f7d41ad +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/APH.png b/Assets/Resources/Tokens/APH.png new file mode 100644 index 00000000..7d056c99 Binary files /dev/null and b/Assets/Resources/Tokens/APH.png differ diff --git a/Assets/Resources/Tokens/APH.png.meta b/Assets/Resources/Tokens/APH.png.meta new file mode 100644 index 00000000..29860136 --- /dev/null +++ b/Assets/Resources/Tokens/APH.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: 28e976b14a764df4d961a185eecd5d9a +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/AVA.png b/Assets/Resources/Tokens/AVA.png new file mode 100644 index 00000000..2133831f Binary files /dev/null and b/Assets/Resources/Tokens/AVA.png differ diff --git a/Assets/Resources/Tokens/AVA.png.meta b/Assets/Resources/Tokens/AVA.png.meta new file mode 100644 index 00000000..d635aab9 --- /dev/null +++ b/Assets/Resources/Tokens/AVA.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: 7426faedf5303d945b27f65d12d47faa +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/CGAS.png b/Assets/Resources/Tokens/CGAS.png new file mode 100644 index 00000000..02b7340c Binary files /dev/null and b/Assets/Resources/Tokens/CGAS.png differ diff --git a/Assets/Resources/Tokens/CGAS.png.meta b/Assets/Resources/Tokens/CGAS.png.meta new file mode 100644 index 00000000..93a36c76 --- /dev/null +++ b/Assets/Resources/Tokens/CGAS.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: 2fa822745001eea4d813ee36499c4582 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/DBC.png b/Assets/Resources/Tokens/DBC.png new file mode 100644 index 00000000..d2a87eaf Binary files /dev/null and b/Assets/Resources/Tokens/DBC.png differ diff --git a/Assets/Resources/Tokens/DBC.png.meta b/Assets/Resources/Tokens/DBC.png.meta new file mode 100644 index 00000000..f44ad512 --- /dev/null +++ b/Assets/Resources/Tokens/DBC.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: 889efc7aff0dce547898e1bd9b8794b2 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/FTW.png b/Assets/Resources/Tokens/FTW.png new file mode 100644 index 00000000..9157ccf2 Binary files /dev/null and b/Assets/Resources/Tokens/FTW.png differ diff --git a/Assets/Resources/Tokens/FTW.png.meta b/Assets/Resources/Tokens/FTW.png.meta new file mode 100644 index 00000000..3420ddc7 --- /dev/null +++ b/Assets/Resources/Tokens/FTW.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: d6d539474d7216944954423c158fc57d +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/LRN.png b/Assets/Resources/Tokens/LRN.png new file mode 100644 index 00000000..d4b5863a Binary files /dev/null and b/Assets/Resources/Tokens/LRN.png differ diff --git a/Assets/Resources/Tokens/LRN.png.meta b/Assets/Resources/Tokens/LRN.png.meta new file mode 100644 index 00000000..60b28d47 --- /dev/null +++ b/Assets/Resources/Tokens/LRN.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: 937baefe2aa96584e8cdf55cd89ebb57 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/LX.png b/Assets/Resources/Tokens/LX.png new file mode 100644 index 00000000..1de0fc9f Binary files /dev/null and b/Assets/Resources/Tokens/LX.png differ diff --git a/Assets/Resources/Tokens/LX.png.meta b/Assets/Resources/Tokens/LX.png.meta new file mode 100644 index 00000000..94d789c3 --- /dev/null +++ b/Assets/Resources/Tokens/LX.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: 5f6b2e2644aa1d540b1fad7ba90bcbee +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/MCT.png b/Assets/Resources/Tokens/MCT.png new file mode 100644 index 00000000..adfa4c3d Binary files /dev/null and b/Assets/Resources/Tokens/MCT.png differ diff --git a/Assets/Resources/Tokens/MCT.png.meta b/Assets/Resources/Tokens/MCT.png.meta new file mode 100644 index 00000000..a97775b8 --- /dev/null +++ b/Assets/Resources/Tokens/MCT.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: e85bd019100ae964d8324858cafd4ad3 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/NKN.png b/Assets/Resources/Tokens/NKN.png new file mode 100644 index 00000000..889d3e99 Binary files /dev/null and b/Assets/Resources/Tokens/NKN.png differ diff --git a/Assets/Resources/Tokens/NKN.png.meta b/Assets/Resources/Tokens/NKN.png.meta new file mode 100644 index 00000000..3fc0eb60 --- /dev/null +++ b/Assets/Resources/Tokens/NKN.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: 0d73ccd4c20523042a49b21f4a7c5d3c +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/NOS (1).png b/Assets/Resources/Tokens/NOS (1).png new file mode 100644 index 00000000..b66f3611 Binary files /dev/null and b/Assets/Resources/Tokens/NOS (1).png differ diff --git a/Assets/Resources/Tokens/NOS (1).png.meta b/Assets/Resources/Tokens/NOS (1).png.meta new file mode 100644 index 00000000..935e8a0b --- /dev/null +++ b/Assets/Resources/Tokens/NOS (1).png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: a2e0ccb1a27c67542bf66204f02c0ab6 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/NRVE.png b/Assets/Resources/Tokens/NRVE.png new file mode 100644 index 00000000..1d8bfb85 Binary files /dev/null and b/Assets/Resources/Tokens/NRVE.png differ diff --git a/Assets/Resources/Tokens/NRVE.png.meta b/Assets/Resources/Tokens/NRVE.png.meta new file mode 100644 index 00000000..90c8e9d5 --- /dev/null +++ b/Assets/Resources/Tokens/NRVE.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: 14b6b0b3ba8aa614fb725130515024db +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/OBT.png b/Assets/Resources/Tokens/OBT.png new file mode 100644 index 00000000..f8d3664c Binary files /dev/null and b/Assets/Resources/Tokens/OBT.png differ diff --git a/Assets/Resources/Tokens/OBT.png.meta b/Assets/Resources/Tokens/OBT.png.meta new file mode 100644 index 00000000..19ff84cd --- /dev/null +++ b/Assets/Resources/Tokens/OBT.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: 7a0dde1b1f3412b45a393048a106a4a5 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/PHX.png b/Assets/Resources/Tokens/PHX.png new file mode 100644 index 00000000..d214bfce Binary files /dev/null and b/Assets/Resources/Tokens/PHX.png differ diff --git a/Assets/Resources/Tokens/PHX.png.meta b/Assets/Resources/Tokens/PHX.png.meta new file mode 100644 index 00000000..c575015f --- /dev/null +++ b/Assets/Resources/Tokens/PHX.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: 095edf8cb612cfe438306be1fc7a6b25 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/QLC.png b/Assets/Resources/Tokens/QLC.png new file mode 100644 index 00000000..3df4ca12 Binary files /dev/null and b/Assets/Resources/Tokens/QLC.png differ diff --git a/Assets/Resources/Tokens/QLC.png.meta b/Assets/Resources/Tokens/QLC.png.meta new file mode 100644 index 00000000..d1c85c65 --- /dev/null +++ b/Assets/Resources/Tokens/QLC.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: bc8caa689bfb26c43934059b3e460678 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/RHT.png b/Assets/Resources/Tokens/RHT.png new file mode 100644 index 00000000..5037ff00 Binary files /dev/null and b/Assets/Resources/Tokens/RHT.png differ diff --git a/Assets/Resources/Tokens/RHT.png.meta b/Assets/Resources/Tokens/RHT.png.meta new file mode 100644 index 00000000..f5f67f33 --- /dev/null +++ b/Assets/Resources/Tokens/RHT.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: 922ccce64e8838d48bd48b3b0071d336 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/SDS.png b/Assets/Resources/Tokens/SDS.png new file mode 100644 index 00000000..dd33462b Binary files /dev/null and b/Assets/Resources/Tokens/SDS.png differ diff --git a/Assets/Resources/Tokens/SDS.png.meta b/Assets/Resources/Tokens/SDS.png.meta new file mode 100644 index 00000000..11882dee --- /dev/null +++ b/Assets/Resources/Tokens/SDS.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: 6eab1afde50622a4b9a9003358abedf7 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/SENNO.png b/Assets/Resources/Tokens/SENNO.png new file mode 100644 index 00000000..8f0d1178 Binary files /dev/null and b/Assets/Resources/Tokens/SENNO.png differ diff --git a/Assets/Resources/Tokens/SENNO.png.meta b/Assets/Resources/Tokens/SENNO.png.meta new file mode 100644 index 00000000..d155759b --- /dev/null +++ b/Assets/Resources/Tokens/SENNO.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: e109206ca24f9ab41938c0dfa13b3dea +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/TKY.png b/Assets/Resources/Tokens/TKY.png new file mode 100644 index 00000000..65adca68 Binary files /dev/null and b/Assets/Resources/Tokens/TKY.png differ diff --git a/Assets/Resources/Tokens/TKY.png.meta b/Assets/Resources/Tokens/TKY.png.meta new file mode 100644 index 00000000..c401ce4a --- /dev/null +++ b/Assets/Resources/Tokens/TKY.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: 27e87436550c91b42bc0b4225074c11d +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/TOLL.png b/Assets/Resources/Tokens/TOLL.png new file mode 100644 index 00000000..94d25f93 Binary files /dev/null and b/Assets/Resources/Tokens/TOLL.png differ diff --git a/Assets/Resources/Tokens/TOLL.png.meta b/Assets/Resources/Tokens/TOLL.png.meta new file mode 100644 index 00000000..dd8211e3 --- /dev/null +++ b/Assets/Resources/Tokens/TOLL.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: 4c3af3e3380e49145b82dbf5b33583ad +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Tokens/ZPT.png b/Assets/Resources/Tokens/ZPT.png new file mode 100644 index 00000000..bff3afac Binary files /dev/null and b/Assets/Resources/Tokens/ZPT.png differ diff --git a/Assets/Resources/Tokens/ZPT.png.meta b/Assets/Resources/Tokens/ZPT.png.meta new file mode 100644 index 00000000..885934ab --- /dev/null +++ b/Assets/Resources/Tokens/ZPT.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: b2f1159ab13d24541b45f73864d3f244 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Wallet/AccountManager.cs b/Assets/Scripts/Wallet/AccountManager.cs index 6087d3cc..7857c0c3 100644 --- a/Assets/Scripts/Wallet/AccountManager.cs +++ b/Assets/Scripts/Wallet/AccountManager.cs @@ -145,6 +145,8 @@ public class Balance public class AccountManager : MonoBehaviour { + public const string WalletIdentifier = "PGT1.2"; + public static readonly int MinGasLimit = 800; public Settings Settings { get; private set; } @@ -304,6 +306,30 @@ private void PrepareTokens(Token[] tokenArray) tokens.Add(new Token() { symbol = "NOS", hash = "c9c0fc5a2b66a29d6b14601e752e6e1a445e088d", decimals = 8, maxSupply = "710405560", name = "nOS", flags = nep5Flags }); tokens.Add(new Token() { symbol = "MKNI", hash = Hash.FromString("MKNI").ToString(), decimals = 0, maxSupply = "1000000", name = "Mankini", flags = TokenFlags.Fungible.ToString() }); tokens.Add(new Token() { symbol = "NACHO", hash = Hash.FromString("NACHO").ToString(), decimals = 8, maxSupply = "1000000", name = "Nachos", flags = TokenFlags.Fungible.ToString() }); + tokens.Add(new Token() { symbol = "TKY", hash = "132947096727c84c7f9e076c90f08fec3bc17f18", decimals = 8, maxSupply = "1000000000", name = "The Key", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "CGAS", hash = "74f2dc36a68fdc4682034178eb2220729231db76", decimals = 8, maxSupply = "1000000000", name = "NEP5 GAS", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "MCT", hash = "a87cc2a513f5d8b4a42432343687c2127c60bc3f", decimals = 8, maxSupply = "1000000000", name = "Master Contract", flags = nep5Flags }); + + tokens.Add(new Token() { symbol = "DBC", hash = "b951ecbbc5fe37a9c280a76cb0ce0014827294cf", decimals = 8, maxSupply = "1000000000", name = "DeepBrain Coin", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "FTW", hash = "11dbc2316f35ea031449387f615d9e4b0cbafe8b", decimals = 8, maxSupply = "1000000000", name = "For The Win", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "ZPT", hash = "ac116d4b8d4ca55e6b6d4ecce2192039b51cccc5", decimals = 8, maxSupply = "1000000000", name = "Zeepin Token", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "ACAT", hash = "7f86d61ff377f1b12e589a5907152b57e2ad9a7a", decimals = 8, maxSupply = "1000000000", name = "Alphacat", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "QLC", hash = "0d821bd7b6d53f5c2b40e217c6defc8bbe896cf5", decimals = 8, maxSupply = "1000000000", name = "Qlink Token", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "TNC", hash = "08e8c4400f1af2c20c28e0018f29535eb85d15b6", decimals = 8, maxSupply = "1000000000", name = "Trinity Network Credit", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "PHX", hash = "1578103c13e39df15d0d29826d957e85d770d8c9", decimals = 8, maxSupply = "1000000000", name = "Red Pulse Phoenix", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "APH", hash = "a0777c3ce2b169d4a23bcba4565e3225a0122d95", decimals = 8, maxSupply = "1000000000", name = "Aphelion", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "GALA", hash = "9577c3f972d769220d69d1c4ddbd617c44d067aa", decimals = 8, maxSupply = "1000000000", name = "Galaxy Token", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "AVA", hash = "de2ed49b691e76754c20fe619d891b78ef58e537", decimals = 8, maxSupply = "1000000000", name = "Travala", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "NKN", hash = "c36aee199dbba6c3f439983657558cfb67629599", decimals = 8, maxSupply = "1000000000", name = "NKN", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "LRN", hash = "06fa8be9b6609d963e8fc63977b9f8dc5f10895f", decimals = 8, maxSupply = "1000000000", name = "Loopring Neo Token", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "ASA", hash = "a58b56b30425d3d1f8902034996fcac4168ef71d", decimals = 8, maxSupply = "1000000000", name = "Asura World Coin", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "OBT", hash = "0e86a40588f715fcaf7acd1812d50af478e6e917", decimals = 8, maxSupply = "1000000000", name = "Orbis", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "NRVE", hash = "a721d5893480260bd28ca1f395f2c465d0b5b1c2", decimals = 8, maxSupply = "1000000000", name = "Narrative Token", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "RHT", hash = "2328008e6f6c7bd157a342e789389eb034d9cbc4", decimals = 8, maxSupply = "1000000000", name = "HashPuppy Token", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "NOS", hash = "c9c0fc5a2b66a29d6b14601e752e6e1a445e088d", decimals = 8, maxSupply = "1000000000", name = "Neo Operating System", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "LX", hash = "bb3b54ab244b3658155f2db4429fc38ac4cef625", decimals = 8, maxSupply = "1000000000", name = "Moonlight Lux", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "TOLL", hash = "78fd589f7894bf9642b4a573ec0e6957dfd84c48", decimals = 8, maxSupply = "1000000000", name = "Bridge Protocol", flags = nep5Flags }); + tokens.Add(new Token() { symbol = "", hash = "e9a85bc36e409e3f5cca5c43bc3bff338d7ada08", decimals = 8, maxSupply = "1000000000", name = "imusify Token", flags = nep5Flags }); CurrentTokenCurrency = ""; @@ -435,7 +461,7 @@ public decimal AmountFromString(string str, int decimals) return UnitConversion.ToDecimal(n, decimals); } - public void SignAndSendTransaction(string chain, byte[] script, Action callback) + public void SignAndSendTransaction(string chain, byte[] script, Action callback) { var account = this.CurrentAccount; @@ -444,13 +470,13 @@ public void SignAndSendTransaction(string chain, byte[] script, Action cal case PlatformKind.Phantasma: { var keys = PhantasmaKeys.FromWIF(account.WIF); - StartCoroutine(phantasmaApi.SignAndSendTransaction(keys, script, chain, (hashText) => + StartCoroutine(phantasmaApi.SignAndSendTransactionWithPayload(keys, Settings.nexusName, script, chain, WalletIdentifier, (hashText) => { var hash = Hash.Parse(hashText); - callback(hash); + callback(hash, null); }, (error, msg) => { - callback(Hash.Null); + callback(Hash.Null, msg); })); break; } @@ -463,7 +489,7 @@ public void SignAndSendTransaction(string chain, byte[] script, Action cal if (transfer.amount <=0) { - callback(Hash.Null); + callback(Hash.Null, $"invalid transfer amount: {transfer.amount}"); } else if (transfer.platform == CurrentPlatform) @@ -480,16 +506,16 @@ public void SignAndSendTransaction(string chain, byte[] script, Action cal if (transfer.symbol == "NEO" || transfer.symbol == "GAS") { - StartCoroutine(neoApi.SendAsset((tx) => + StartCoroutine(neoApi.SendAsset((tx, error) => { if (tx != null) { var hash = Hash.Parse(tx.Hash.ToString()); - callback(hash); + callback(hash, null); } else { - callback(Hash.Null); + callback(Hash.Null, error); } }, unspent, keys, transfer.destination, transfer.symbol, transfer.amount, transfer.interop) ); @@ -504,22 +530,22 @@ public void SignAndSendTransaction(string chain, byte[] script, Action cal var nep5 = new NEP5(neoApi, token.hash); StartCoroutine(nep5.Transfer(unspent, keys, transfer.destination, amount, transfer.interop, - (tx) => + (tx, error) => { if (tx != null) { var hash = Hash.Parse(tx.Hash.ToString()); - callback(hash); + callback(hash, null); } else { - callback(Hash.Null); + callback(Hash.Null, error); } })); } else { - callback(Hash.Null); + callback(Hash.Null, "invalid token: "+transfer.symbol); } } @@ -531,12 +557,13 @@ public void SignAndSendTransaction(string chain, byte[] script, Action cal return; } } - catch + catch (Exception e) { - // just continue + callback(Hash.Null, e.ToString()); + return; } - callback(Hash.Null); + callback(Hash.Null, "something weird happened"); break; } } @@ -623,9 +650,11 @@ private void ReportWalletHistory(PlatformKind platform, List histo } } + + private const int neoMaxConfirmations = 12; private const string TempConfirmError = "Something went wrong when confirming.\nThe transaction might have been succesful.\nCheck back later."; - public void RequestConfirmation(string transactionHash, Action callback) + public void RequestConfirmation(string transactionHash, int confirmationCount, Action callback) { switch (CurrentPlatform) { @@ -644,7 +673,14 @@ public void RequestConfirmation(string transactionHash, Action callback) StartCoroutine(WebClient.RESTRequest(url, (error, msg) => { - callback(TempConfirmError); + if (confirmationCount <= neoMaxConfirmations) + { + callback("pending"); + } + else + { + callback(TempConfirmError); + } }, (response) => { @@ -654,7 +690,14 @@ public void RequestConfirmation(string transactionHash, Action callback) } else { - callback(TempConfirmError); + if (confirmationCount <= neoMaxConfirmations) + { + callback("pending"); + } + else + { + callback(TempConfirmError); + } } })); break; @@ -863,7 +906,7 @@ public void RefreshBalances(bool force, Action callback = null) var state = new AccountState() { address = keys.Address, - name = "anonymous", // TODO support NNS + name = ValidationUtils.ANONYMOUS, // TODO support NNS balances = balanceMap.Values.ToArray(), flags = AccountFlags.None }; @@ -881,6 +924,23 @@ public void RefreshBalances(bool force, Action callback = null) } } + public void BlankState() + { + var platforms = CurrentAccount.platforms.Split(); + + _states.Clear(); + foreach (var platform in platforms) + { + _states[platform] = new AccountState() + { + address = GetAddress(CurrentIndex, platform), + balances = new Balance[0], + flags = AccountFlags.None, + name = ValidationUtils.ANONYMOUS, + }; + } + } + private void MergeSwaps(string platform, Dictionary balanceMap, Swap[] swaps) { foreach (var swap in swaps) @@ -930,6 +990,7 @@ internal void InitDemoAccounts(NexusKind nexusKind) { var accounts = new List(); + /* if (nexusKind != NexusKind.Main_Net) { accounts.Add(new Account() { name = "genesis", platforms = PlatformKind.Phantasma | PlatformKind.Neo, WIF = "L2LGgkZAdupN2ee8Rs6hpkc65zaGcLbxhbSDGq8oh6umUxxzeW25", password = "lol", misc = "" }); @@ -942,6 +1003,7 @@ internal void InitDemoAccounts(NexusKind nexusKind) accounts.Add(new Account() { name = "other", platforms = PlatformKind.Phantasma | PlatformKind.Neo, WIF = "Kweyrx8ypkoPfzMsxV4NtgH8vXCWC1s1Dn3c2KJ4WAzC5nkyNt3e", password = "", misc = "" }); accounts.Add(new Account() { name = "monk", platforms = PlatformKind.Phantasma | PlatformKind.Neo, WIF = "Kx4GzZxzGZsQNt8URu36SnvR5KGSzg8s8ZxH8cunzZGh2JLmxHsW", password = "", misc = "" }); } + */ this.Accounts = accounts.ToArray(); SaveAccounts(); @@ -1071,9 +1133,7 @@ private string GetNeoscanTransactionURL(string hash) private string GetNeoscanAPIUrl(string request) { - var protocol = Settings.neoscanURL.StartsWith("https") ? "https://" : "http://"; - - var url = Settings.neoscanURL.Substring(protocol.Length); + var url = Settings.neoscanURL; if (!url.EndsWith("/")) { @@ -1241,26 +1301,22 @@ public string GetAddress(int index, PlatformKind platform) if (index == _selectedAccountIndex) { - foreach (var entry in _states) + if (_states.ContainsKey(platform)) { - if (entry.Key == platform) - { - return entry.Value.address; - } + return _states[platform].address; } } - else + + var wif = Accounts[index].WIF; + switch (platform) { - var wif = Accounts[index].WIF; - switch (platform) - { - case PlatformKind.Phantasma: - return PhantasmaKeys.FromWIF(wif).Address.Text; + case PlatformKind.Phantasma: + return PhantasmaKeys.FromWIF(wif).Address.Text; - case PlatformKind.Neo: - return NeoKeys.FromWIF(wif).Address; - } + case PlatformKind.Neo: + return NeoKeys.FromWIF(wif).Address; } + return null; } diff --git a/Assets/Scripts/Wallet/PhantasmaAPI.Unity.cs b/Assets/Scripts/Wallet/PhantasmaAPI.Unity.cs index 5ab5259d..d8a001f2 100644 --- a/Assets/Scripts/Wallet/PhantasmaAPI.Unity.cs +++ b/Assets/Scripts/Wallet/PhantasmaAPI.Unity.cs @@ -8,6 +8,7 @@ using Phantasma.Numerics; using Phantasma.Cryptography; +using System.Text; namespace Phantasma.SDK { @@ -1185,14 +1186,23 @@ public IEnumerator GetValidators(Action callback, Action callback, Action errorHandlingCallback = null) + + + public IEnumerator SignAndSendTransaction(PhantasmaKeys keys, string nexus, byte[] script, string chain, Action callback, Action errorHandlingCallback = null) + { + return SignAndSendTransactionWithPayload(keys, nexus, script, chain, new byte[0], callback, errorHandlingCallback); + } + + public IEnumerator SignAndSendTransactionWithPayload(PhantasmaKeys keys, string nexus, byte[] script, string chain, string payload, Action callback, Action errorHandlingCallback = null) + { + return SignAndSendTransactionWithPayload(keys, nexus, script, chain, Encoding.UTF8.GetBytes(payload), callback, errorHandlingCallback); + } + + public IEnumerator SignAndSendTransactionWithPayload(PhantasmaKeys keys, string nexus, byte[] script, string chain, byte[] payload, Action callback, Action errorHandlingCallback = null) { Debug.Log("Sending transaction..."); - var tx = new Blockchain.Transaction("simnet", chain, script, DateTime.UtcNow + TimeSpan.FromHours(1)); + var tx = new Blockchain.Transaction(nexus, chain, script, DateTime.UtcNow + TimeSpan.FromMinutes(20), payload); tx.Sign(keys); yield return SendRawTransaction(Base16.Encode(tx.ToByteArray(true)), callback, errorHandlingCallback); diff --git a/Assets/Scripts/Wallet/Settings.cs b/Assets/Scripts/Wallet/Settings.cs index 6273301a..88b243ef 100644 --- a/Assets/Scripts/Wallet/Settings.cs +++ b/Assets/Scripts/Wallet/Settings.cs @@ -97,8 +97,8 @@ public string GetDefaultValue(string tag) switch (nexusKind) { case NexusKind.Main_Net: - int index = (int)(DateTime.UtcNow.Ticks % 5); - return $"http://seed{index}.neo.org:10332"; + int index = (int)(DateTime.UtcNow.Ticks % 8)+1; + return $"https://seed{index}.cityofzion.io:443"; default: return "http://mankinighost.phantasma.io:30333"; @@ -145,12 +145,16 @@ public void Save() PlayerPrefs.Save(); } - public void RestoreEndpoints() + public void RestoreEndpoints(bool restoreName) { this.phantasmaRPCURL = this.GetDefaultValue(PhantasmaRPCTag); this.neoRPCURL = this.GetDefaultValue(NeoRPCTag); this.neoscanURL = this.GetDefaultValue(NeoscanAPITag); - this.nexusName = this.GetDefaultValue(NexusNameTag); + + if (restoreName) + { + this.nexusName = this.GetDefaultValue(NexusNameTag); + } } } } diff --git a/Assets/Scripts/Wallet/WalletGUI.cs b/Assets/Scripts/Wallet/WalletGUI.cs index 76ce363d..20e5e2c5 100644 --- a/Assets/Scripts/Wallet/WalletGUI.cs +++ b/Assets/Scripts/Wallet/WalletGUI.cs @@ -108,6 +108,7 @@ public class WalletGUI : MonoBehaviour private string transferSymbol; private Hash transactionHash; private bool needsConfirmation; + private int confirmationCount; private DateTime lastTransactionConfirmation; private AnimationDirection currentAnimation; @@ -677,7 +678,9 @@ private void DoMainWindow(int windowID) GUI.Label(new Rect(windowRect.width / 2 + Units(7) - 4, 12, 32, Units(2)), Application.version); style.fontSize = tempSize; - if (currentTitle != null && this.currentAnimation == AnimationDirection.None) + var accountManager = AccountManager.Instance; + + if (currentTitle != null && this.currentAnimation == AnimationDirection.None && !accountManager.Refreshing) { int curY = Units(3); @@ -688,7 +691,6 @@ private void DoMainWindow(int windowID) case GUIState.Account: case GUIState.Balances: case GUIState.History: - var accountManager = AccountManager.Instance; var state = accountManager.CurrentState; if (state != null) { @@ -894,7 +896,8 @@ private void DoConfirmingScreen() { lastTransactionConfirmation = now; needsConfirmation = false; - accountManager.RequestConfirmation(transactionHash.ToString(), (msg) => + confirmationCount++; + accountManager.RequestConfirmation(transactionHash.ToString(), confirmationCount, (msg) => { if (msg == null) { @@ -935,7 +938,11 @@ private void LoginIntoAccount(int index, Action callback = null) { if (auth == PromptResult.Success) { - if (!isNewAccount) + if (isNewAccount) + { + accountManager.BlankState(); + } + else { accountManager.RefreshTokenPrices(); } @@ -1067,8 +1074,7 @@ private void FinishCreateAccount(string name, string wif, string password) if (isNewWallet) { - string temp = password!=null ? password:""; - var bip = new Bitcoin.BIP39.BIP39(128, temp); + var bip = new Bitcoin.BIP39.BIP39(128, "", Bitcoin.BIP39.BIP39.Language.English); seedPhrase = bip.MnemonicSentence; var privKey = bip.SeedBytes.Take(32).ToArray(); var keys = new PhantasmaKeys(privKey); @@ -1160,44 +1166,17 @@ private void DoWalletsScreen() else if (key.Count(x => x == ' ') == 11) { - var importTitle = "Seed Phrase Import"; - ConfirmBox("Seems you are importing a wallet from a seed phrase.\nWhen you created this wallet, did you also setup a password?", (hasPassword) => + try { - if (hasPassword == PromptResult.Success) - { - ShowModal(importTitle, "Insert your previous wallet passphrase", ModalState.Password, 64, true, 1, (auth, passphrase) => - { - if (auth == PromptResult.Success) - { - try - { - var bip = new Bitcoin.BIP39.BIP39(key, passphrase); - var privKey = bip.SeedBytes.Take(32).ToArray(); - var decryptedKeys = new PhantasmaKeys(privKey); - ImportWallet(decryptedKeys.ToWIF(), passphrase); - } - catch (Exception e) - { - MessageBox(MessageKind.Error, "Could not import wallet.\n" + e.Message); - } - } - }); - } - else - { - try - { - var bip = new Bitcoin.BIP39.BIP39(key, ""); - var privKey = bip.SeedBytes.Take(32).ToArray(); - var decryptedKeys = new PhantasmaKeys(privKey); - ImportWallet(decryptedKeys.ToWIF(), ""); - } - catch (Exception e) - { - MessageBox(MessageKind.Error, "Could not import wallet.\n" + e.Message); - } - } - }); + var bip = new Bitcoin.BIP39.BIP39(key, "", Bitcoin.BIP39.BIP39.Language.English); + var privKey = bip.SeedBytes.Take(32).ToArray(); + var decryptedKeys = new PhantasmaKeys(privKey); + ImportWallet(decryptedKeys.ToWIF(), null); + } + catch (Exception e) + { + MessageBox(MessageKind.Error, "Could not import wallet.\n" + e.Message); + } } else { @@ -1466,7 +1445,7 @@ private void DoSettingsScreen() settings.nexusKind = availableNexus[nexusIndex]; curY += dropHeight + Units(1); - if (settings.nexusKind != NexusKind.Main_Net) + if (settings.nexusKind != NexusKind.Main_Net && settings.nexusKind != NexusKind.Unknown) { var style = GUI.skin.label; var tempStyle = style.fontStyle; @@ -1479,12 +1458,14 @@ private void DoSettingsScreen() if (prevNexus != nexusIndex && settings.nexusKind != NexusKind.Custom) { - settings.RestoreEndpoints(); + settings.RestoreEndpoints(true); } bool hasCustomEndPoints; bool hasCustomFee; + bool hasCustomName = settings.nexusKind == NexusKind.Custom; + switch (settings.nexusKind) { case NexusKind.Custom: @@ -1495,17 +1476,11 @@ private void DoSettingsScreen() break; } - case NexusKind.Test_Net: - { - hasCustomEndPoints = false; - hasCustomFee = false; - break; - } - default: { hasCustomEndPoints = false; hasCustomFee = false; + hasCustomName = false; break; } } @@ -1526,7 +1501,14 @@ private void DoSettingsScreen() } else { - settings.RestoreEndpoints(); + settings.RestoreEndpoints(!hasCustomName); + } + + if (hasCustomName) + { + GUI.Label(new Rect(posX, curY, Units(8), Units(2)), "Nexus Name"); + settings.nexusName = GUI.TextField(new Rect(Units(11), curY, fieldWidth, Units(2)), settings.nexusName); + curY += Units(3); } if (hasCustomFee) @@ -1628,12 +1610,17 @@ private int DrawPlatformTopMenu() return curY; } + var btnWidth = Units(8); + DoButton(true, new Rect(windowRect.width - (btnWidth+ Border*2), curY, btnWidth, Units(1)), "Refresh", () => + { + SetState(this.guiState); + }); + curY += Units(VerticalLayout ? 2 : 3); DrawHorizontalCenteredText(curY - 5, Units(VerticalLayout ? 3: 2), state.address); curY += Units(3); - var btnWidth = Units(8); DoButton(true, new Rect((windowRect.width - btnWidth) / 2, curY, btnWidth, Units(1)), "Copy Address", () => { AudioManager.Instance.PlaySFX("click"); @@ -1978,6 +1965,11 @@ private void DoBalanceEntry(Balance balance, int index, int curY, Rect rect) (amount) => { var line = amount == balance.Staked ? "You won't be able to claim KCAL anymore." : "The amount of KCAL that will be able to claim later will be reduced."; + + if (amount == balance.Staked && accountManager.CurrentState.name != ValidationUtils.ANONYMOUS) + { + line += "\nYour account will also lose the current registed name."; + } ConfirmBox($"Do you want to unstake {amount} SOUL?\n{line}", (result) => { @@ -2283,11 +2275,11 @@ private void DoAccountScreen() int curY = startY; - curY = Units(7); + curY = Units(10); if (VerticalLayout) { - curY += Units(5) + 8; + curY += Units(2) + 8; } int btnWidth = Units(8); @@ -2344,7 +2336,8 @@ private void DoAccountScreen() case 1: { - var stake = accountManager.CurrentState.balances.Where(x => x.Symbol == DomainSettings.StakingTokenSymbol).Select(x => x.Staked).FirstOrDefault(); + var state = accountManager.CurrentState; + decimal stake = state != null ? state.balances.Where(x => x.Symbol == DomainSettings.StakingTokenSymbol).Select(x => x.Staked).FirstOrDefault() : 0; if (stake >= 1) { @@ -2354,66 +2347,60 @@ private void DoAccountScreen() { if (ValidationUtils.IsValidIdentifier(name)) { - RequestPassword("Name Setup", accountManager.CurrentAccount.platforms, (auth) => + RequestKCAL(null, (kcalResult) => { - if (auth == PromptResult.Success) + if (kcalResult == PromptResult.Success) { - RequestKCAL(null, (kcalResult) => + byte[] script; + + try { - if (kcalResult == PromptResult.Success) - { - byte[] script; + var gasPrice = accountManager.Settings.feePrice; - try - { - var gasPrice = accountManager.Settings.feePrice; + var source = Address.FromText(accountManager.CurrentState.address); - var source = Address.FromText(accountManager.CurrentState.address); + var sb = new ScriptBuilder(); + sb.AllowGas(source, Address.Null, gasPrice, AccountManager.MinGasLimit); + sb.CallContract("account", "RegisterName", source, name); + sb.SpendGas(source); + script = sb.EndScript(); + } + catch (Exception e) + { + MessageBox(MessageKind.Error, "Something went wrong!\n" + e.Message); + return; + } - var sb = new ScriptBuilder(); - sb.AllowGas(source, Address.Null, gasPrice, AccountManager.MinGasLimit); - sb.CallContract("account", "RegisterName", source, name); - sb.SpendGas(source); - script = sb.EndScript(); - } - catch (Exception e) - { - MessageBox(MessageKind.Error, "Something went wrong!\n" + e.Message); - return; - } + SendTransaction($"Register address name\nName:{name}\nAddress:{accountManager.CurrentState.address}?", script, "main", (hash) => + { + if (hash != Hash.Null) + { + SetState(guiState); // force updating the current UI - SendTransaction($"Register address name\nName:{name}\nAddress:{accountManager.CurrentState.address}?", script, "main", (hash) => + if (AccountManager.Instance.CurrentAccount.name != name) { - if (hash != Hash.Null) + ConfirmBox("The address name was set successfully.\nDo you also want to change the local name for the account?\nThe local name is only visible in this device.", (localChange) => { - SetState(guiState); // force updating the current UI - - if (AccountManager.Instance.CurrentAccount.name != name) + if (localChange == PromptResult.Success) { - ConfirmBox("The address name was set successfully.\nDo you also want to change the local name for the account?\nThe local name is only visible in this device.", (localChange) => + if (accountManager.RenameAccount(name)) { - if (localChange == PromptResult.Success) - { - if (accountManager.RenameAccount(name)) - { - MessageBox(MessageKind.Default, $"The local account name was renamed '{name}'."); - } - else - { - MessageBox(MessageKind.Error, $"Was not possible to rename the local account.\nHowever the public address was renamed with success."); - } - } - }); + MessageBox(MessageKind.Default, $"The local account name was renamed '{name}'."); + } + else + { + MessageBox(MessageKind.Error, $"Was not possible to rename the local account.\nHowever the public address was renamed with success."); + } } - } - else - { - MessageBox(MessageKind.Error, "An error occured when trying to setup the address name."); - } - }); - + }); + } + } + else + { + MessageBox(MessageKind.Error, "An error occured when trying to setup the address name."); } }); + } }); } @@ -2544,7 +2531,7 @@ private void SendTransaction(string description, byte[] script, string chain, Ac MessageBox(MessageKind.Default, temp, () => { - accountManager.SignAndSendTransaction(chain, script, (hash) => + accountManager.SignAndSendTransaction(chain, script, (hash, error) => { if (hash != Hash.Null) { @@ -2554,7 +2541,7 @@ private void SendTransaction(string description, byte[] script, string chain, Ac { PopState(); - MessageBox(MessageKind.Error, "Error sending transaction.", () => + MessageBox(MessageKind.Error, $"Error sending transaction.\n{error}", () => { InvokeTransactionCallback(hash); }); @@ -2576,6 +2563,7 @@ private void ShowConfirmationScreen(Hash hash, Action callback) { transactionCallback = callback; needsConfirmation = true; + confirmationCount = 0; transactionHash = hash; lastTransactionConfirmation = DateTime.UtcNow; @@ -2748,7 +2736,7 @@ private void ContinueNeoTransfer(string transferName, string symbol, string dest } var balance = state.GetAvailableAmount(symbol); - RequireAmount(transferName, destAddress, symbol, 0.1m, balance, (amount) => + RequireAmount(transferName, destAddress, symbol, 0.01m, balance, (amount) => { var transfer = new TransferRequest() { @@ -2786,11 +2774,12 @@ private void ContinueSwap(PlatformKind destPlatform, string transferName, string var feeSymbol = "GAS"; - RequestFee(symbol, feeSymbol, (gasResult) => + var min = 0.001m; + RequestFee(symbol, feeSymbol, min, (gasResult) => { if (gasResult != PromptResult.Success) { - MessageBox(MessageKind.Error, $"Without {feeSymbol} it is not possible to perform this swap!"); + MessageBox(MessageKind.Error, $"Without at least {min} {feeSymbol} it is not possible to perform this swap!"); return; } @@ -2893,10 +2882,10 @@ private void ContinueSwap(PlatformKind destPlatform, string transferName, string private void RequestKCAL(string swapSymbol, Action callback) { - RequestFee(swapSymbol, "KCAL", callback); + RequestFee(swapSymbol, "KCAL", 0.1m, callback); } - private void RequestFee(string swapSymbol, string feeSymbol, Action callback) + private void RequestFee(string swapSymbol, string feeSymbol, decimal min, Action callback) { var accountManager = AccountManager.Instance; var state = accountManager.CurrentState; @@ -2910,7 +2899,7 @@ private void RequestFee(string swapSymbol, string feeSymbol, Action= 0.1m ? PromptResult.Success : PromptResult.Failure); + callback(feeBalance >= min ? PromptResult.Success : PromptResult.Failure); return; } @@ -2920,7 +2909,7 @@ private void RequestFee(string swapSymbol, string feeSymbol, Action 0.1m) + if (feeBalance >= min) { callback(PromptResult.Success); return; diff --git a/ProjectSettings/GraphicsSettings.asset b/ProjectSettings/GraphicsSettings.asset index 9b97fe7e..2e8da720 100644 --- a/ProjectSettings/GraphicsSettings.asset +++ b/ProjectSettings/GraphicsSettings.asset @@ -34,6 +34,7 @@ GraphicsSettings: - {fileID: 16000, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 16001, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 17000, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 16002, guid: 0000000000000000f000000000000000, type: 0} m_PreloadedShaders: [] m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index 2c2d903b..b4647dc8 100644 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -120,7 +120,7 @@ PlayerSettings: 16:10: 1 16:9: 1 Others: 1 - bundleVersion: 0.15 + bundleVersion: 1.2 preloadedAssets: [] metroInputSource: 0 wsaTransparentSwapchain: 0