diff --git a/CHANGELOG.md b/CHANGELOG.md index 2ffb99c..8113e91 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Clever Ads Solutions Unity Plugin Change Log +## [2.0.0] - 2022-01-12 +### Dependencies +- CleverAdsSolutions - [2.6.1](https://github.com/cleveradssolutions/CAS-Unity/releases) +### Features +- Updated user interface prefabes. +- AppTrackingTransparency and NSLocationTrackingDescription implementation migrated to CAS Unity plguin. +- Addded AppTrackingTransparency request in any case. + ## [1.2.7] - 2021-09-07 ### Dependencies - CleverAdsSolutions - [2.5.2](https://github.com/cleveradssolutions/CAS-Unity/releases) diff --git a/Editor/ConsentRequestParametersEditor.cs b/Editor/ConsentRequestParametersEditor.cs index 9252fab..6680b58 100644 --- a/Editor/ConsentRequestParametersEditor.cs +++ b/Editor/ConsentRequestParametersEditor.cs @@ -33,7 +33,6 @@ public class ConsentRequestParametersEditor : Editor private SerializedProperty settingsTogglePrefabProp; private SerializedProperty privacyPolicyUrlProp; private SerializedProperty termsOfUseUrlProp; - private SerializedProperty trackingUsageDescriptionProp; private ReorderableList privacyPolicyList; private ReorderableList termsOfUseList; @@ -55,7 +54,6 @@ private void OnEnable() settingsTogglePrefabProp = props.FindProperty( "settingsTogglePrefab" ); privacyPolicyUrlProp = props.FindProperty( "privacyPolicyUrl" ); termsOfUseUrlProp = props.FindProperty( "termsOfUseUrl" ); - trackingUsageDescriptionProp = props.FindProperty( "trackingUsageDescription" ); privacyPolicyList = new ReorderableList( props, privacyPolicyUrlProp, true, true, true, true ) { @@ -93,59 +91,57 @@ public override void OnInspectorGUI() var obj = serializedObject; obj.UpdateIfRequiredOrScript(); - EditorGUILayout.PropertyField( withAudienceDefinitionProp ); - EditorGUILayout.PropertyField( withDeclineOptionProp ); - EditorGUILayout.PropertyField( showInEditorProp ); - EditorGUILayout.Space(); - - currentListProp = privacyPolicyUrlProp; - privacyPolicyList.DoLayoutList(); - currentListProp = termsOfUseUrlProp; - termsOfUseList.DoLayoutList(); - EditorGUILayout.Space(); + showInEditorProp.boolValue = GUILayout.Toggle( + showInEditorProp.boolValue, + " Test in Unity Editor" ); + withAudienceDefinitionProp.boolValue = GUILayout.Toggle( + withAudienceDefinitionProp.boolValue, + " With Age of audience requeset" ); + EditorGUI.indentLevel++; + EditorGUILayout.HelpBox( "The user is prompted for the year of birth and the audience is determined automatically.", MessageType.None ); + EditorGUI.indentLevel--; + withRequestTrackingTransparencyProp.boolValue = GUILayout.Toggle( + withRequestTrackingTransparencyProp.boolValue, + " With iOS App Tracking Transparency requeset" ); + EditorGUI.indentLevel++; + EditorGUILayout.HelpBox( "The iOS 14.5+ users is prompted for permission to track the Advertising ID.", MessageType.None ); + EditorGUI.indentLevel--; + withDeclineOptionProp.boolValue = GUILayout.Toggle( + withDeclineOptionProp.boolValue, + " With option of Decline consent" ); + EditorGUI.indentLevel++; + EditorGUILayout.HelpBox( "The user is given the choice to opt out dialog.", MessageType.None ); + EditorGUI.indentLevel--; - DrawPrefabSelector( "Consent UI Prefab", - uiPrefabProp, templateUIPrefabName, customUIPrefabName, - typeof( UserConsentUI ) ); - - HelpStyles.BeginBoxScope(); bool enableTogglePrefab = withMediationSettingsProp.boolValue; - if (enableTogglePrefab != EditorGUILayout.ToggleLeft( "With Mediaiton Settings", enableTogglePrefab )) + if (enableTogglePrefab != EditorGUILayout.ToggleLeft( "With Mediaiton Networks settings", enableTogglePrefab )) { enableTogglePrefab = !enableTogglePrefab; withMediationSettingsProp.boolValue = enableTogglePrefab; } EditorGUI.BeginDisabledGroup( !enableTogglePrefab ); - DrawPrefabSelector( "Toggle UI Prefab", + DrawPrefabSelector( "Network UI Prefab", settingsTogglePrefabProp, templateSettingsPrefabName, customSettingsPrefabName, typeof( MediationPolicyUI ) ); EditorGUI.EndDisabledGroup(); if (!enableTogglePrefab) settingsTogglePrefabProp.objectReferenceValue = null; - HelpStyles.EndBoxScope(); + EditorGUI.indentLevel++; + EditorGUILayout.HelpBox( "The user is provided with advanced consent settings for each active network in the game.", MessageType.None ); + EditorGUI.indentLevel--; - HelpStyles.BeginBoxScope(); - var activeTracking = withRequestTrackingTransparencyProp.boolValue; - if (activeTracking != GUILayout.Toggle( activeTracking, - "With iOS App Tracking Transparency requeset" )) - { - activeTracking = !activeTracking; - withRequestTrackingTransparencyProp.boolValue = activeTracking; - } - EditorGUI.BeginDisabledGroup( !activeTracking ); - EditorGUILayout.BeginHorizontal(); - EditorGUILayout.LabelField( "Tracking Usage Description:" ); - if (GUILayout.Button( "Default", EditorStyles.miniButton, GUILayout.ExpandWidth( false ) )) - trackingUsageDescriptionProp.stringValue = locationUsageDefaultDescription; - if (GUILayout.Button( "Info", EditorStyles.miniButton, GUILayout.ExpandWidth( false ) )) - Application.OpenURL( configuringPrivacyURL ); - EditorGUILayout.EndHorizontal(); - trackingUsageDescriptionProp.stringValue = - EditorGUILayout.TextArea( trackingUsageDescriptionProp.stringValue, HelpStyles.wordWrapTextAred ); - EditorGUILayout.HelpBox( "NSUserTrackingUsageDescription key with a custom message describing your usage location tracking to AppTrackingTransparency.Request().", MessageType.None ); - EditorGUI.EndDisabledGroup(); - HelpStyles.EndBoxScope(); + EditorGUILayout.Space(); + DrawPrefabSelector( "Consent UI Prefab", + uiPrefabProp, templateUIPrefabName, customUIPrefabName, + typeof( UserConsentUI ) ); + EditorGUILayout.Space(); + currentListProp = privacyPolicyUrlProp; + privacyPolicyList.DoLayoutList(); + currentListProp = termsOfUseUrlProp; + termsOfUseList.DoLayoutList(); + + EditorGUILayout.HelpBox( "Use 'Edit > Clear All PlayerPrefs' menu to reset consent state in Unity Editor.", MessageType.Info ); obj.ApplyModifiedProperties(); } @@ -154,10 +150,10 @@ private void DrawURLElement( Rect rect, int index, bool isActive, bool isFocused var height = rect.height; var item = currentListProp.GetArrayElementAtIndex( index ); rect.yMin += 1; - rect.yMax -= 1; + rect.yMax -= 3; if (currentListProp.arraySize > 1) { - rect.yMax -= height * 0.5f + 2; + rect.yMax -= height * 0.5f; var id = item.FindPropertyRelative( "id" ); var label = ( index == 0 ? "Preferred " : "Platform " ); @@ -198,9 +194,10 @@ private void DrawPrefabSelector( string title, SerializedProperty prop, string t prop.objectReferenceValue = LoadUITemplatePrefab( templateName ); } EditorGUILayout.EndHorizontal(); + EditorGUI.indentLevel++; prop.objectReferenceValue = EditorGUILayout.ObjectField( prop.objectReferenceValue, objType, false ); - EditorGUILayout.Space(); + EditorGUI.indentLevel--; } #region Utils diff --git a/Editor/PostprocessiOSBuild.cs b/Editor/PostprocessiOSBuild.cs deleted file mode 100644 index af98af0..0000000 --- a/Editor/PostprocessiOSBuild.cs +++ /dev/null @@ -1,29 +0,0 @@ -#if UNITY_IOS || CASDeveloper -using System.IO; -using UnityEditor; -using UnityEditor.Callbacks; -using UnityEditor.iOS.Xcode; -using UnityEngine; - -namespace CAS.UserConsent -{ - internal class PostprocessiOSBuild - { - [PostProcessBuild] - public static void OnPostProcessBuild( BuildTarget buildTarget, string path ) - { - if (buildTarget != BuildTarget.iOS) - return; - var parameters = UserConsent.BuildRequest(); - var trakingUsage = parameters.defaultIOSTrakingUsageDescription; - if (string.IsNullOrEmpty( trakingUsage )) - return; - string plistPath = Path.Combine( path, "Info.plist" ); - PlistDocument plist = new PlistDocument(); - plist.ReadFromFile( plistPath ); - plist.root.SetString( "NSUserTrackingUsageDescription", trakingUsage ); - File.WriteAllText( plistPath, plist.WriteToString() ); - } - } -} -#endif \ No newline at end of file diff --git a/Editor/PostprocessiOSBuild.cs.meta b/Editor/PostprocessiOSBuild.cs.meta deleted file mode 100644 index 476ec64..0000000 --- a/Editor/PostprocessiOSBuild.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1a3a0d97b01174e6bb50bbe829e0cf59 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Plugins.meta b/Plugins.meta deleted file mode 100644 index ad30530..0000000 --- a/Plugins.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 86a762e8959eb4c4fa0e32106d781b77 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Plugins/iOS.meta b/Plugins/iOS.meta deleted file mode 100644 index f30b802..0000000 --- a/Plugins/iOS.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: d587a3d1e37954321b30f834393e2d5e -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Plugins/iOS/CASUAppTracking.m b/Plugins/iOS/CASUAppTracking.m deleted file mode 100644 index bb7963e..0000000 --- a/Plugins/iOS/CASUAppTracking.m +++ /dev/null @@ -1,28 +0,0 @@ -// -// CASUAppTracking.m -// CASUnityPlugin -// -// Copyright © 2021 Clever Ads Solutions. All rights reserved. -// - -#import - -typedef void (*CASUTrackingStatusCallback)(NSInteger status); - -void CASURequestTracking(CASUTrackingStatusCallback callback) -{ - if (@available(iOS 14, *)) { - [ATTrackingManager - requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) { - if (callback) { - dispatch_async(dispatch_get_main_queue(), ^{ - callback((int)status); - }); - } - }]; - } else { - if (callback) { - callback(3); - } - } -} diff --git a/Plugins/iOS/CASUAppTracking.m.meta b/Plugins/iOS/CASUAppTracking.m.meta deleted file mode 100644 index 1f3fd4c..0000000 --- a/Plugins/iOS/CASUAppTracking.m.meta +++ /dev/null @@ -1,39 +0,0 @@ -fileFormatVersion: 2 -guid: 72906c7255ca6435c99f5a1a15b0d7c9 -labels: -- CleverAdsSolutions -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - - first: - iPhone: iOS - second: - enabled: 1 - settings: {} - - first: - tvOS: tvOS - second: - enabled: 1 - settings: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Prefabs/ConsentUITemplate.prefab b/Prefabs/ConsentUITemplate.prefab index 7ae7631..d3a3454 100644 --- a/Prefabs/ConsentUITemplate.prefab +++ b/Prefabs/ConsentUITemplate.prefab @@ -153,6 +153,7 @@ GameObject: - component: {fileID: 48348062541502625} - component: {fileID: 48348062541502630} - component: {fileID: 48348062541502631} + - component: {fileID: 3662867873672439149} m_Layer: 5 m_Name: Accept m_TagString: Untagged @@ -173,12 +174,12 @@ RectTransform: m_Children: - {fileID: 48348062495784245} m_Father: {fileID: 48348064263290925} - m_RootOrder: 2 + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 207.08331, y: -24.204758} - m_SizeDelta: {x: 78.83333, y: 48.409515} + m_AnchoredPosition: {x: 212.29999, y: -28.755} + m_SizeDelta: {x: 138.2, y: 57.51} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &48348062541502625 CanvasRenderer: @@ -201,12 +202,12 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Color: {r: 0.4009434, g: 0.8565133, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_Sprite: {fileID: 21300000, guid: 14130e76a6b02484aae59b1ef1ec31dc, type: 3} + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 @@ -266,6 +267,21 @@ MonoBehaviour: m_StringArgument: m_BoolArgument: 0 m_CallState: 2 +--- !u!114 &3662867873672439149 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 48348062541502629} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -900027084, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 0, g: 0, b: 0, a: 1} + m_EffectDistance: {x: 1, y: -1} + m_UseGraphicAlpha: 1 --- !u!1 &48348062614071354 GameObject: m_ObjectHideFlags: 0 @@ -278,6 +294,8 @@ GameObject: - component: {fileID: 48348062614071351} - component: {fileID: 48348062614071348} - component: {fileID: 48348062614071350} + - component: {fileID: 414940724657304795} + - component: {fileID: 5372471227978997023} m_Layer: 5 m_Name: Denied m_TagString: Untagged @@ -298,12 +316,12 @@ RectTransform: m_Children: - {fileID: 48348064096642488} m_Father: {fileID: 48348062625449506} - m_RootOrder: 1 + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 113.390015, y: -24.204994} - m_SizeDelta: {x: 72.26001, y: 48.40999} + m_AnchoredPosition: {x: 68.75, y: -25} + m_SizeDelta: {x: 137.5, y: 50} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &48348062614071351 CanvasRenderer: @@ -326,12 +344,12 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Color: {r: 0.88461196, g: 0.9485936, b: 0.9716981, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_Sprite: {fileID: 21300000, guid: 14130e76a6b02484aae59b1ef1ec31dc, type: 3} + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 @@ -380,6 +398,36 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: [] +--- !u!114 &414940724657304795 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 48348062614071354} + m_Enabled: 0 + m_EditorHideFlags: 0 + m_Script: {fileID: 1573420865, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 0, g: 0, b: 0, a: 0.5} + m_EffectDistance: {x: 4, y: -4} + m_UseGraphicAlpha: 1 +--- !u!114 &5372471227978997023 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 48348062614071354} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -900027084, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 0, g: 0, b: 0, a: 1} + m_EffectDistance: {x: 1, y: -1} + m_UseGraphicAlpha: 1 --- !u!1 &48348062620002374 GameObject: m_ObjectHideFlags: 0 @@ -494,7 +542,7 @@ MonoBehaviour: m_HandleRect: {fileID: 48348063612381030} m_Direction: 2 m_Value: 0 - m_Size: 1 + m_Size: 0.99999994 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: @@ -527,16 +575,15 @@ RectTransform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - - {fileID: 48348064038300479} - {fileID: 48348062614071349} - {fileID: 6378617395406947628} m_Father: {fileID: 48348064575477781} - m_RootOrder: 2 + m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} - m_AnchoredPosition: {x: -0.89, y: 33.8} - m_SizeDelta: {x: 226.78003, y: 48.40999} + m_AnchoredPosition: {x: 0, y: 70} + m_SizeDelta: {x: 280, y: 50} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &48348062625449501 MonoBehaviour: @@ -772,7 +819,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -65, y: 57} + m_AnchoredPosition: {x: -93, y: 57} m_SizeDelta: {x: 90, y: 40} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &48348062807131854 @@ -849,7 +896,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 220, y: 57} + m_AnchoredPosition: {x: 248, y: 57} m_SizeDelta: {x: 90, y: 40} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &48348062856447049 @@ -926,8 +973,8 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.03, y: 1} m_AnchorMax: {x: 0.97, y: 1} - m_AnchoredPosition: {x: 0, y: -90} - m_SizeDelta: {x: 0, y: 135} + m_AnchoredPosition: {x: 0, y: -80} + m_SizeDelta: {x: 0, y: 145} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &48348063152031515 CanvasRenderer: @@ -998,7 +1045,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 65, y: 57} + m_AnchoredPosition: {x: 93, y: 57} m_SizeDelta: {x: 90, y: 40} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &48348063175071117 @@ -1130,6 +1177,7 @@ GameObject: - component: {fileID: 48348063205091764} - component: {fileID: 48348063205091765} - component: {fileID: 48348063205091770} + - component: {fileID: 6638877543334633794} m_Layer: 5 m_Name: Deselect All m_TagString: Untagged @@ -1149,13 +1197,13 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 48348062791754400} - m_Father: {fileID: 48348064263290925} + m_Father: {fileID: 8115628680030793671} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 123.24999, y: -24.204758} - m_SizeDelta: {x: 78.83333, y: 48.409515} + m_AnchoredPosition: {x: 69.1, y: -44.3825} + m_SizeDelta: {x: 138.2, y: 26.255} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &48348063205091764 CanvasRenderer: @@ -1178,12 +1226,12 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Color: {r: 0.88461196, g: 0.9485936, b: 0.9716981, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_Sprite: {fileID: 21300000, guid: 14130e76a6b02484aae59b1ef1ec31dc, type: 3} + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 @@ -1243,6 +1291,21 @@ MonoBehaviour: m_StringArgument: m_BoolArgument: 0 m_CallState: 2 +--- !u!114 &6638877543334633794 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 48348063205091768} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -900027084, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 0, g: 0, b: 0, a: 1} + m_EffectDistance: {x: 1, y: -1} + m_UseGraphicAlpha: 1 --- !u!1 &48348063352503382 GameObject: m_ObjectHideFlags: 0 @@ -1273,14 +1336,15 @@ RectTransform: m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] + m_Children: + - {fileID: 5837118365823080264} m_Father: {fileID: 48348063199003343} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -90, y: -55} - m_SizeDelta: {x: 42.3, y: 43.9} + m_AnchoredPosition: {x: -83.9, y: -39.1} + m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &48348063352503378 CanvasRenderer: @@ -1303,12 +1367,12 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_Sprite: {fileID: 21300000, guid: 0990b8511659343e8ad2a6415f2d1859, type: 3} + m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 @@ -1353,7 +1417,7 @@ MonoBehaviour: m_PressedTrigger: Pressed m_DisabledTrigger: Disabled m_Interactable: 1 - m_TargetGraphic: {fileID: 48348063352503376} + m_TargetGraphic: {fileID: 2235231852604298873} m_OnClick: m_PersistentCalls: m_Calls: [] @@ -1435,7 +1499,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: -14.000007} m_SizeDelta: {x: 90, y: 40} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &48348063354622639 @@ -1512,7 +1576,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0.000010577402} + m_AnchoredPosition: {x: 0, y: -0.0000024091607} m_SizeDelta: {x: -0.000030517578, y: 10} m_Pivot: {x: 0, y: 1} --- !u!114 &48348063406638305 @@ -1655,6 +1719,7 @@ GameObject: - component: {fileID: 48348063544628666} - component: {fileID: 48348063544628667} - component: {fileID: 48348063544628664} + - component: {fileID: 33754273765120219} m_Layer: 5 m_Name: Select All m_TagString: Untagged @@ -1674,13 +1739,13 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 48348064559115253} - m_Father: {fileID: 48348064263290925} + m_Father: {fileID: 8115628680030793671} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 39.416668, y: -24.204758} - m_SizeDelta: {x: 78.83333, y: 48.409515} + m_AnchoredPosition: {x: 69.1, y: -13.1275} + m_SizeDelta: {x: 138.2, y: 26.255} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &48348063544628666 CanvasRenderer: @@ -1703,12 +1768,12 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Color: {r: 0.88461196, g: 0.9485936, b: 0.9716981, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_Sprite: {fileID: 21300000, guid: 14130e76a6b02484aae59b1ef1ec31dc, type: 3} + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 @@ -1768,6 +1833,21 @@ MonoBehaviour: m_StringArgument: m_BoolArgument: 0 m_CallState: 2 +--- !u!114 &33754273765120219 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 48348063544628670} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -900027084, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 0, g: 0, b: 0, a: 1} + m_EffectDistance: {x: 1, y: -1} + m_UseGraphicAlpha: 1 --- !u!1 &48348063545478076 GameObject: m_ObjectHideFlags: 0 @@ -2141,7 +2221,7 @@ RectTransform: m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 0.9999999} + m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} @@ -2214,10 +2294,10 @@ RectTransform: m_Father: {fileID: 48348063954614744} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.07, y: 1} - m_AnchorMax: {x: 0.93, y: 1} - m_AnchoredPosition: {x: 0, y: -346.54} - m_SizeDelta: {x: 0, y: 313.71155} + m_AnchorMin: {x: 0.5, y: 1} + m_AnchorMax: {x: 0.5, y: 1} + m_AnchoredPosition: {x: 0, y: -343.63028} + m_SizeDelta: {x: 279.6, y: 307.8921} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &48348063620916325 CanvasRenderer: @@ -2384,7 +2464,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -220, y: 57} + m_AnchoredPosition: {x: -248, y: 57} m_SizeDelta: {x: 90, y: 40} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &48348063775683387 @@ -2505,6 +2585,7 @@ GameObject: - component: {fileID: 48348064008543004} - component: {fileID: 48348064008543005} - component: {fileID: 48348064008543010} + - component: {fileID: 1096093440654897436} m_Layer: 5 m_Name: Ok m_TagString: Untagged @@ -2553,12 +2634,12 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Color: {r: 0.4, g: 0.85490197, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_Sprite: {fileID: 21300000, guid: 14130e76a6b02484aae59b1ef1ec31dc, type: 3} + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 @@ -2618,6 +2699,21 @@ MonoBehaviour: m_StringArgument: m_BoolArgument: 0 m_CallState: 2 +--- !u!114 &1096093440654897436 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 48348064008543008} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -900027084, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 0, g: 0, b: 0, a: 1} + m_EffectDistance: {x: 1, y: -1} + m_UseGraphicAlpha: 1 --- !u!1 &48348064038300476 GameObject: m_ObjectHideFlags: 0 @@ -2649,13 +2745,13 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 48348064393590655} - m_Father: {fileID: 48348062625449506} - m_RootOrder: 0 + m_Father: {fileID: 48348064575477781} + m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 36.130005, y: -24.204994} - m_SizeDelta: {x: 72.26001, y: 48.40999} + m_AnchoredPosition: {x: 26, y: -26} + m_SizeDelta: {x: 45, y: 45} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &48348064038300472 CanvasRenderer: @@ -2678,14 +2774,14 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_Sprite: {fileID: 21300000, guid: 14130e76a6b02484aae59b1ef1ec31dc, type: 3} - m_Type: 1 - m_PreserveAspect: 0 + m_Sprite: {fileID: 21300000, guid: ba84759b6b2644763a8b4b5f660c3a97, type: 3} + m_Type: 0 + m_PreserveAspect: 1 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 @@ -2884,6 +2980,7 @@ GameObject: - component: {fileID: 48348064253602523} - component: {fileID: 48348064253602520} - component: {fileID: 48348064253602521} + - component: {fileID: 4230467188303989392} m_Layer: 5 m_Name: Image m_TagString: Untagged @@ -2898,17 +2995,17 @@ RectTransform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 48348064253602526} - m_LocalRotation: {x: 0, y: 1, z: 0, w: 0} + m_LocalRotation: {x: 0, y: -0, z: 0.976296, w: -0.21643949} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 48348064511136817} m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 180, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 205} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} + m_SizeDelta: {x: 45, y: 45} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &48348064253602520 CanvasRenderer: @@ -2931,7 +3028,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Color: {r: 0.4, g: 0.85490197, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: @@ -2945,6 +3042,21 @@ MonoBehaviour: m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 +--- !u!114 &4230467188303989392 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 48348064253602526} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -900027084, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 0, g: 0, b: 0, a: 0.6862745} + m_EffectDistance: {x: 1, y: -1} + m_UseGraphicAlpha: 1 --- !u!1 &48348064263290930 GameObject: m_ObjectHideFlags: 0 @@ -2973,16 +3085,15 @@ RectTransform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - - {fileID: 48348063544628665} - - {fileID: 48348063205091771} + - {fileID: 8115628680030793671} - {fileID: 48348062541502628} m_Father: {fileID: 48348063954614744} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} - m_AnchoredPosition: {x: -0.000015259, y: 32} - m_SizeDelta: {x: 246.5, y: 48.409515} + m_AnchoredPosition: {x: 0, y: 68} + m_SizeDelta: {x: 281.4, y: 57.51} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &48348064263290924 MonoBehaviour: @@ -3026,7 +3137,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!224 &48348064393590655 RectTransform: m_ObjectHideFlags: 0 @@ -3185,8 +3296,8 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 90, y: -55} - m_SizeDelta: {x: 42.3, y: 43.9} + m_AnchoredPosition: {x: 84.5, y: -39.09999} + m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &48348064511136818 CanvasRenderer: @@ -3690,6 +3801,7 @@ RectTransform: m_Children: - {fileID: 6378617394168751466} - {fileID: 6378617395662383899} + - {fileID: 48348064038300479} - {fileID: 48348062625449506} m_Father: {fileID: 6378617394226191200} m_RootOrder: 4 @@ -3707,6 +3819,160 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 48348064575477786} m_CullTransparentMesh: 0 +--- !u!1 &377221124145032494 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3524990484684090270} + - component: {fileID: 623359614055664419} + - component: {fileID: 4709767384041771285} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3524990484684090270 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 377221124145032494} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 6378617395942446379} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &623359614055664419 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 377221124145032494} + m_CullTransparentMesh: 0 +--- !u!114 &4709767384041771285 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 377221124145032494} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0, g: 0, b: 0, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 1 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: ____________ +--- !u!1 &2018815974985060217 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2094144989790078903} + - component: {fileID: 6778791535696360384} + - component: {fileID: 1286008295262243720} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2094144989790078903 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2018815974985060217} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 6378617395282631488} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &6778791535696360384 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2018815974985060217} + m_CullTransparentMesh: 0 +--- !u!114 &1286008295262243720 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2018815974985060217} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0, g: 0, b: 0, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 1 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: ____________ --- !u!1 &3623721124373350592 GameObject: m_ObjectHideFlags: 0 @@ -3718,6 +3984,7 @@ GameObject: - component: {fileID: 7020359311545998762} - component: {fileID: 4704463589497191026} - component: {fileID: 9152883303736444842} + - component: {fileID: 4228813599091909594} m_Layer: 5 m_Name: Field m_TagString: Untagged @@ -3741,7 +4008,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -0, y: -54.999992} + m_AnchoredPosition: {x: -0, y: -69} m_SizeDelta: {x: 120, y: 45} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &4704463589497191026 @@ -3765,12 +4032,12 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 0.8117647} + m_Color: {r: 0.8254717, g: 0.96096075, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_Sprite: {fileID: 21300000, guid: 14130e76a6b02484aae59b1ef1ec31dc, type: 3} + m_Sprite: {fileID: 10911, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 @@ -3779,6 +4046,21 @@ MonoBehaviour: m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 +--- !u!114 &4228813599091909594 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3623721124373350592} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -900027084, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 0, g: 0, b: 0, a: 1} + m_EffectDistance: {x: 1, y: -1} + m_UseGraphicAlpha: 1 --- !u!1 &6312534756924107867 GameObject: m_ObjectHideFlags: 0 @@ -3812,10 +4094,10 @@ RectTransform: m_Father: {fileID: 6378617394226191200} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0} - m_AnchorMax: {x: 0.5, y: 0} - m_AnchoredPosition: {x: 0, y: 78} - m_SizeDelta: {x: 225, y: 30} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 0} + m_AnchoredPosition: {x: 0, y: 16.8} + m_SizeDelta: {x: 0, y: 25} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &873447579116203108 MonoBehaviour: @@ -3835,11 +4117,99 @@ MonoBehaviour: m_Top: 0 m_Bottom: 0 m_ChildAlignment: 4 - m_Spacing: 5 + m_Spacing: 10 m_ChildForceExpandWidth: 1 m_ChildForceExpandHeight: 1 m_ChildControlWidth: 0 - m_ChildControlHeight: 0 + m_ChildControlHeight: 1 +--- !u!1 &6354402913402611838 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5837118365823080264} + - component: {fileID: 1168930148066039719} + - component: {fileID: 2235231852604298873} + - component: {fileID: 5418199745521731871} + m_Layer: 5 + m_Name: Image + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5837118365823080264 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6354402913402611838} + m_LocalRotation: {x: 0, y: 0, z: -0.21643952, w: 0.97629607} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 48348063352503377} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: -25} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 45, y: 45} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &1168930148066039719 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6354402913402611838} + m_CullTransparentMesh: 0 +--- !u!114 &2235231852604298873 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6354402913402611838} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.4, g: 0.85490197, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: 0990b8511659343e8ad2a6415f2d1859, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 +--- !u!114 &5418199745521731871 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6354402913402611838} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -900027084, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 0, g: 0, b: 0, a: 0.5} + m_EffectDistance: {x: 1, y: -1} + m_UseGraphicAlpha: 1 --- !u!1 &6378617394146771417 GameObject: m_ObjectHideFlags: 0 @@ -3870,12 +4240,12 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 6378617395942446379} - m_RootOrder: 0 + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: -8, y: -8} + m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &6378617394146771420 CanvasRenderer: @@ -4343,12 +4713,12 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 6378617395282631488} - m_RootOrder: 0 + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: -8, y: -8} + m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &6378617394430952957 CanvasRenderer: @@ -4492,6 +4862,7 @@ RectTransform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: + - {fileID: 2094144989790078903} - {fileID: 6378617394430952955} m_Father: {fileID: 6725184885053005357} m_RootOrder: 1 @@ -4499,7 +4870,7 @@ RectTransform: m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 105, y: 30} + m_SizeDelta: {x: 132.2435, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &6378617395282631491 CanvasRenderer: @@ -4522,12 +4893,12 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Sprite: {fileID: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 @@ -4599,6 +4970,7 @@ GameObject: - component: {fileID: 6378617395406947631} - component: {fileID: 6378617395406947621} - component: {fileID: 6378617395406947626} + - component: {fileID: 3952198599410056845} m_Layer: 5 m_Name: Accept m_TagString: Untagged @@ -4619,12 +4991,12 @@ RectTransform: m_Children: - {fileID: 6378617394349402635} m_Father: {fileID: 48348062625449506} - m_RootOrder: 2 + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 190.65002, y: -24.204994} - m_SizeDelta: {x: 72.26001, y: 48.40999} + m_AnchoredPosition: {x: 211.25, y: -25} + m_SizeDelta: {x: 137.5, y: 50} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &6378617395406947631 CanvasRenderer: @@ -4647,12 +5019,12 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Color: {r: 0.4009434, g: 0.8565133, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_Sprite: {fileID: 21300000, guid: 14130e76a6b02484aae59b1ef1ec31dc, type: 3} + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 @@ -4701,6 +5073,21 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: [] +--- !u!114 &3952198599410056845 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6378617395406947627} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -900027084, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 0, g: 0, b: 0, a: 1} + m_EffectDistance: {x: 1, y: -1} + m_UseGraphicAlpha: 1 --- !u!1 &6378617395662383898 GameObject: m_ObjectHideFlags: 0 @@ -5031,6 +5418,7 @@ RectTransform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: + - {fileID: 3524990484684090270} - {fileID: 6378617394146771418} m_Father: {fileID: 6725184885053005357} m_RootOrder: 0 @@ -5038,7 +5426,7 @@ RectTransform: m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 105, y: 30} + m_SizeDelta: {x: 132.2435, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &6378617395942446382 CanvasRenderer: @@ -5061,12 +5449,12 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Sprite: {fileID: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 @@ -5126,3 +5514,64 @@ MonoBehaviour: m_StringArgument: m_BoolArgument: 0 m_CallState: 2 +--- !u!1 &7407072944406619641 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8115628680030793671} + - component: {fileID: 4232900423922786516} + m_Layer: 5 + m_Name: GameObject + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &8115628680030793671 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7407072944406619641} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 48348063544628665} + - {fileID: 48348063205091771} + m_Father: {fileID: 48348064263290925} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 69.1, y: -28.755} + m_SizeDelta: {x: 138.2, y: 57.51} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &4232900423922786516 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7407072944406619641} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1297475563, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_ChildAlignment: 0 + m_Spacing: 5 + m_ChildForceExpandWidth: 1 + m_ChildForceExpandHeight: 1 + m_ChildControlWidth: 1 + m_ChildControlHeight: 1 diff --git a/Prefabs/NetworkPolicy.prefab b/Prefabs/NetworkPolicy.prefab index f3f97aa..39458ec 100644 --- a/Prefabs/NetworkPolicy.prefab +++ b/Prefabs/NetworkPolicy.prefab @@ -30,16 +30,16 @@ RectTransform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - - {fileID: 2614649273555961164} - {fileID: 2614649273632739444} - {fileID: 2614649273757039237} + - {fileID: 2614649273555961164} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 30} + m_SizeDelta: {x: 400, y: 30} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &2614649272350555121 MonoBehaviour: @@ -130,6 +130,7 @@ GameObject: - component: {fileID: 2614649272655051545} - component: {fileID: 2614649272655051527} - component: {fileID: 9099393889505012680} + - component: {fileID: 2740606924324860641} m_Layer: 5 m_Name: Checkmark m_TagString: Untagged @@ -151,10 +152,10 @@ RectTransform: m_Father: {fileID: 2614649273632739444} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: -4, y: -4} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 1.9} + m_SizeDelta: {x: 24, y: 30} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &2614649272655051527 CanvasRenderer: @@ -177,7 +178,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Color: {r: 0.4, g: 0.85490197, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: @@ -191,6 +192,21 @@ MonoBehaviour: m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 +--- !u!114 &2740606924324860641 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2614649272655051546} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -900027084, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 0, g: 0, b: 0, a: 0.79607844} + m_EffectDistance: {x: 1, y: -1} + m_UseGraphicAlpha: 1 --- !u!1 &2614649273555961165 GameObject: m_ObjectHideFlags: 0 @@ -221,14 +237,15 @@ RectTransform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: + - {fileID: 2521302770969293841} - {fileID: 2614649274273741632} m_Father: {fileID: 2614649272350555122} - m_RootOrder: 0 + m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0.5, y: 1} - m_AnchoredPosition: {x: -9, y: 0} - m_SizeDelta: {x: -18, y: 0} + m_AnchorMin: {x: 0.6, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &2614649273555961161 CanvasRenderer: @@ -251,7 +268,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: @@ -347,11 +364,11 @@ RectTransform: m_Children: - {fileID: 2614649272655051545} m_Father: {fileID: 2614649272350555122} - m_RootOrder: 1 + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0} - m_AnchorMax: {x: 0.5, y: 1} - m_AnchoredPosition: {x: 0, y: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 15, y: 0} m_SizeDelta: {x: 30, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &2614649273632739442 @@ -375,13 +392,13 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 0.8666667} + m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_Sprite: {fileID: 21300000, guid: 14130e76a6b02484aae59b1ef1ec31dc, type: 3} - m_Type: 1 + m_Sprite: {fileID: 10913, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 @@ -419,12 +436,12 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2614649272350555122} - m_RootOrder: 2 + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 7.5, y: 0} - m_SizeDelta: {x: -15, y: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0.6, y: 1} + m_AnchoredPosition: {x: 15, y: 0} + m_SizeDelta: {x: -30, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &2614649273757039235 CanvasRenderer: @@ -465,7 +482,7 @@ MonoBehaviour: m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 - m_Text: + m_Text: Label --- !u!1 &2614649274273741633 GameObject: m_ObjectHideFlags: 0 @@ -496,7 +513,7 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2614649273555961164} - m_RootOrder: 0 + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -543,3 +560,80 @@ MonoBehaviour: m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Privacy Policy +--- !u!1 &2860153422914678993 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2521302770969293841} + - component: {fileID: 3439246496035910057} + - component: {fileID: 1347161375762075609} + m_Layer: 5 + m_Name: Text (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2521302770969293841 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2860153422914678993} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 2614649273555961164} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 1} + m_SizeDelta: {x: 0, y: -6} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &3439246496035910057 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2860153422914678993} + m_CullTransparentMesh: 0 +--- !u!114 &1347161375762075609 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2860153422914678993} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0, g: 0, b: 0, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 1 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: __________ diff --git a/Runtime/AppTrackingTransparency.cs b/Runtime/AppTrackingTransparency.cs index b9cc930..c39a067 100644 --- a/Runtime/AppTrackingTransparency.cs +++ b/Runtime/AppTrackingTransparency.cs @@ -1,5 +1,4 @@ using System; -using System.Runtime.InteropServices; using UnityEngine; namespace CAS.iOS @@ -9,14 +8,15 @@ namespace CAS.iOS /// A class that provides a tracking authorization request and the tracking authorization status of the app. /// /// + [Obsolete( "Migrated to new CAS.ATTrackingStatus." )] public static class AppTrackingTransparency { public enum Status { - NotDetermined, - Restricted, - Denied, - Authorized + NotDetermined = ATTrackingStatus.AuthorizationStatus.NotDetermined, + Restricted = ATTrackingStatus.AuthorizationStatus.Restricted, + Denied = ATTrackingStatus.AuthorizationStatus.Denied, + Authorized = ATTrackingStatus.AuthorizationStatus.Authorized } /// @@ -45,31 +45,10 @@ public enum Status /// Please set NSUserTrackingUsageDescription in 'Assets > CleverAdsSolutions > iOS Settings' menu to correct tracking authorization request. public static void Request() { - if (OnAuthorizationRequestComplete == null) - throw new ArgumentNullException( "Please subscribe callback OnAuthorizationRequestComplete before call Request()." ); -#if UNITY_IOS || (CASDeveloper && UNITY_EDITOR) -#if UNITY_EDITOR - var settings = UserConsent.UserConsent.BuildRequest(); - if (string.IsNullOrEmpty( settings.defaultIOSTrakingUsageDescription )) - throw new ArgumentNullException( - "Please set NSUserTrackingUsageDescription in 'Assets > CleverAdsSolutions > Consent Request parameters' menu to correct tracking authorization request." ); - OnAuthorizationRequestComplete( Status.Authorized ); -#else - CASURequestTracking( AuthorizationRequestComplete ); -#endif -#else - OnAuthorizationRequestComplete( Status.Authorized ); -#endif + ATTrackingStatus.Request( AuthorizationRequestComplete ); } -#if UNITY_IOS || (CASDeveloper && UNITY_EDITOR) - internal delegate void CASUTrackingStatusCallback( int status ); - - [DllImport( "__Internal" )] - internal static extern void CASURequestTracking( CASUTrackingStatusCallback callback ); - - [AOT.MonoPInvokeCallback( typeof( CASUTrackingStatusCallback ) )] - private static void AuthorizationRequestComplete( int status ) + private static void AuthorizationRequestComplete( ATTrackingStatus.AuthorizationStatus status ) { try { @@ -78,9 +57,8 @@ private static void AuthorizationRequestComplete( int status ) } catch (Exception e) { - UnityEngine.Debug.LogException( e ); + Debug.LogException( e ); } } -#endif } } diff --git a/Runtime/ConsentClient.cs b/Runtime/ConsentClient.cs index 1eaeb4e..e2d27dc 100644 --- a/Runtime/ConsentClient.cs +++ b/Runtime/ConsentClient.cs @@ -77,7 +77,7 @@ internal static void SetMediationExtras() if (active.Length != consent.Length) return; var result = new Dictionary(); - var netTags = GetNetworkTags(); + var netTags = AdNetworkExtension.GetListOfTags(); for (int i = 0; i < consent.Length; i++) { if (consent[i] != '-') @@ -147,38 +147,5 @@ public static string GetTypedText( this ConsentRequestParameters.TypedText[] sou } return source[0].text; } - - public static string[] GetNetworkTags() - { - return new string[] - { - "AM", - "V", - "K", - "CB", - "U", - "AL", - "SuA", - "StA", - "AC", - "FB", - "IM", - "MF", - "MT", - "P", - "IS", - "Ya", - string.Empty, //VAST - string.Empty, //MAX - "Sm", - "MP", - "TJ", - string.Empty, //Fyber - "Fy", - "MB", - "Pa", - "HMX" - }; - } } } \ No newline at end of file diff --git a/Runtime/ConsentRequestParameters.cs b/Runtime/ConsentRequestParameters.cs index c7d1239..b9b5451 100644 --- a/Runtime/ConsentRequestParameters.cs +++ b/Runtime/ConsentRequestParameters.cs @@ -25,9 +25,6 @@ public sealed class ConsentRequestParameters : ScriptableObject [SerializeField] internal bool withRequestTrackingTransparency = false; - [SerializeField] - private string trackingUsageDescription; - [SerializeField] internal UserConsentUI uiPrefab; @@ -161,11 +158,6 @@ public ConsentRequestParameters WithResetUserInfo() resetStatus = 2; return this; } - - public string defaultIOSTrakingUsageDescription - { - get { return withRequestTrackingTransparency ? trackingUsageDescription : null; } - } #endregion #region Get text methods diff --git a/Runtime/MediationSettingsUI.cs b/Runtime/MediationSettingsUI.cs index 46a9daa..1280291 100644 --- a/Runtime/MediationSettingsUI.cs +++ b/Runtime/MediationSettingsUI.cs @@ -25,43 +25,14 @@ public sealed class MediationSettingsUI : MonoBehaviour private IEnumerator Start() { - string[] privacyPolicyList = - { - "https://policies.google.com/technologies/ads", - "https://vungle.com/privacy/", - "https://kidoz.net/privacy-policy/", - "https://answers.chartboost.com/en-us/articles/200780269", - "https://unity3d.com/legal/privacy-policy", - "https://www.applovin.com/privacy/", - "https://www.superawesome.com/privacy-hub/privacy-policy/", - "https://www.startapp.com/policy/privacy-policy/", - "https://www.adcolony.com/privacy-policy/", - "https://developers.facebook.com/docs/audience-network/policy/", - "https://www.inmobi.com/privacy-policy/", - "https://www.mobfox.com/privacy-policy/", - "https://legal.my.com/us/mytarget/privacy/", - null, - "https://developers.ironsrc.com/ironsource-mobile/air/ironsource-mobile-privacy-policy/", - "https://yandex.com/legal/mobileads_sdk_agreement/", - null, - null, - null, - "https://www.mopub.com/en/legal/privacy", - "https://www.tapjoy.com/legal/players/privacy-policy/", - null, - "https://www.fyber.com/privacy-policy/", - "https://www.mintegral.com/en/privacy/", - "https://www.pangleglobal.com/privacy/enduser-en" - }; - yield return null; var active = MobileAds.GetActiveNetworks(); items = new MediationPolicyUI[active.Length]; - for (int i = 0; i < active.Length && i < privacyPolicyList.Length; i++) + for (int i = 0; i < active.Length; i++) { - var policy = privacyPolicyList[( int )active[i]]; - if (policy != null) + var policy = active[i].GetPrivacyPolicy(); + if (!string.IsNullOrEmpty(policy)) { var netName = active[i].ToString(); if (netName.Length > 2) diff --git a/Runtime/UserConsent.cs b/Runtime/UserConsent.cs index ceac1ec..329e246 100644 --- a/Runtime/UserConsent.cs +++ b/Runtime/UserConsent.cs @@ -5,7 +5,7 @@ namespace CAS.UserConsent { public static class UserConsent { - public const string version = "1.2.7"; + public const string version = "2.0.0"; /// /// User latest consent status values. @@ -46,11 +46,5 @@ public static ConsentRequestParameters BuildRequest() return UnityEngine.Object.Instantiate( builder ); return ScriptableObject.CreateInstance(); } - - [Obsolete( "Deprecated. Additional calls are no longer required to apply user consent settings." )] - public static CASInitSettings WithUserConsent( this CASInitSettings builder ) - { - return builder; - } } } \ No newline at end of file diff --git a/Runtime/UserConsentUI.cs b/Runtime/UserConsentUI.cs index 56e9974..7305dd0 100644 --- a/Runtime/UserConsentUI.cs +++ b/Runtime/UserConsentUI.cs @@ -1,4 +1,5 @@ -using UnityEngine; +using System; +using UnityEngine; using UnityEngine.Events; using UnityEngine.UI; @@ -70,7 +71,7 @@ public void Init( ConsentRequestParameters parameters ) if (mediationSettings) { mediationSettings.gameObject.SetActive( false ); - mediationSettings.OnConsent.AddListener( OnMediationSettingsApplied ); + mediationSettings.OnConsent.AddListener( OnConsentDialogWillClose ); if (parameters.settingsTogglePrefab) mediationSettings.policyPrefab = parameters.settingsTogglePrefab; @@ -132,20 +133,6 @@ private void OnOpenTermsOfUse() private void ShowConsentPanel() { - if (parameters.withRequestTrackingTransparency) - { - CAS.iOS.AppTrackingTransparency.OnAuthorizationRequestComplete += ShowConsentContainer; - CAS.iOS.AppTrackingTransparency.Request(); - } - else - { - consentTextContainer.SetActive( true ); - } - } - - private void ShowConsentContainer( iOS.AppTrackingTransparency.Status status ) - { - CAS.iOS.AppTrackingTransparency.OnAuthorizationRequestComplete -= ShowConsentContainer; consentTextContainer.SetActive( true ); } @@ -159,30 +146,45 @@ private void OnOpenOptions() private void OnConsentAccepted() { consentTextContainer.SetActive( false ); - PlayerPrefs.SetString( ConsentClient.consentStringPref, ConsentClient.consentAccepted ); MobileAds.settings.userConsent = ConsentStatus.Accepted; PlayerPrefs.Save(); - Destroy( gameObject ); - if (parameters.OnConsent != null) - parameters.OnConsent(); - onConsent.Invoke(); + OnConsentDialogWillClose(); } private void OnConsentDenied() { consentTextContainer.SetActive( false ); - PlayerPrefs.SetString( ConsentClient.consentStringPref, ConsentClient.consentDenied ); MobileAds.settings.userConsent = ConsentStatus.Denied; PlayerPrefs.Save(); - Destroy( gameObject ); - if (parameters.OnConsent != null) - parameters.OnConsent(); - onConsent.Invoke(); + OnConsentDialogWillClose(); + } + + private void OnConsentDialogWillClose() + { + try + { + if (parameters.withRequestTrackingTransparency) + { + ATTrackingStatus.Request( OnATTResponse ); + return; + } + } + catch (Exception e) + { + Debug.LogException( e ); + } + + CloseConsentDialog(); + } + + private void OnATTResponse( ATTrackingStatus.AuthorizationStatus status ) + { + CloseConsentDialog(); } - private void OnMediationSettingsApplied() + private void CloseConsentDialog() { Destroy( gameObject ); if (parameters.OnConsent != null) diff --git a/Textures/cas_arrow.png b/Textures/cas_arrow.png index 6033e19..c8300b8 100644 Binary files a/Textures/cas_arrow.png and b/Textures/cas_arrow.png differ diff --git a/Textures/cas_panel.png.meta b/Textures/cas_panel.png.meta index f77d676..6bb7b86 100644 --- a/Textures/cas_panel.png.meta +++ b/Textures/cas_panel.png.meta @@ -65,7 +65,7 @@ TextureImporter: maxTextureSize: 64 resizeAlgorithm: 0 textureFormat: -1 - textureCompression: 1 + textureCompression: 0 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 @@ -82,6 +82,17 @@ TextureImporter: allowsAlphaSplitting: 0 overridden: 1 androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] diff --git a/Textures/cas_settings.png b/Textures/cas_settings.png new file mode 100644 index 0000000..c402d0d Binary files /dev/null and b/Textures/cas_settings.png differ diff --git a/Textures/cas_settings.png.meta b/Textures/cas_settings.png.meta new file mode 100644 index 0000000..55959c4 --- /dev/null +++ b/Textures/cas_settings.png.meta @@ -0,0 +1,90 @@ +fileFormatVersion: 2 +guid: ba84759b6b2644763a8b4b5f660c3a97 +labels: +- CleverAdsSolutions +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: e87b48d1c88f54ef6bdb0f58f0bdac0e + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/package.json b/package.json index a2fe6b2..0a58122 100644 --- a/package.json +++ b/package.json @@ -1,11 +1,11 @@ { "name": "com.cleversolutions.ads.consent.unity", - "version": "1.2.7", + "version": "2.0.0", "displayName": "CleverAdsSolutions Consent", "description": "Clever Ads Solutions User consent Unity plugin.", "unity": "2017.4", "dependencies": { - "com.cleversolutions.ads.unity": "2.5.2" + "com.cleversolutions.ads.unity": "2.6.1" }, "author": { "name": "CleverAdsSolutions",