diff --git a/Assets/InputResizer.cs b/Assets/InputResizer.cs new file mode 100644 index 0000000..e9055fb --- /dev/null +++ b/Assets/InputResizer.cs @@ -0,0 +1,39 @@ +using UnityEngine; +using UnityEngine.UI; + +public class InputResizer : MonoBehaviour { + + protected void Start() + { + Text text = gameObject.GetComponent(); + + if (Screen.dpi < 140) + { + text.fontSize = 20; + } + + // 240 + else if (Screen.dpi < 280) + { + text.fontSize = 32; + } + + // 320 + else if (Screen.dpi < 400) + { + text.fontSize = 44; + } + + // 480 + else if (Screen.dpi < 500) + { + text.fontSize = 56; + } + + else + { + text.fontSize = 56; + } + } + +} diff --git a/Assets/InputResizer.cs.meta b/Assets/InputResizer.cs.meta new file mode 100644 index 0000000..640e481 --- /dev/null +++ b/Assets/InputResizer.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: f8db495bb0057e14eb35ef4f2df7910e +timeCreated: 1475710064 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Logger.cs b/Assets/Logger.cs new file mode 100644 index 0000000..5bf3a2d --- /dev/null +++ b/Assets/Logger.cs @@ -0,0 +1,25 @@ +using UnityEngine; +using System.Collections; +using UnityEngine.UI; + +public class Logger : MonoBehaviour { + + public static Logger instance; + + private Text textObj; + + void Start () + { + Logger.instance = this; + this.textObj = this.gameObject.GetComponent(); + } + + public static void Log(string text) + { + if (Logger.instance != null) + Logger.instance.textObj.text = text + "\n" + Logger.instance.textObj.text; + + Debug.Log(text); + } + +} diff --git a/Assets/Logger.cs.meta b/Assets/Logger.cs.meta new file mode 100644 index 0000000..38ab2c4 --- /dev/null +++ b/Assets/Logger.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: a9cc0ccbda0accb4ea816c19265b622f +timeCreated: 1475670486 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/Android/AndroidManifest.xml b/Assets/Plugins/Android/AndroidManifest.xml index ff99e7d..bd72217 100644 --- a/Assets/Plugins/Android/AndroidManifest.xml +++ b/Assets/Plugins/Android/AndroidManifest.xml @@ -1,5 +1,6 @@ - @@ -7,7 +8,8 @@ + android:screenOrientation="portrait" + android:theme="@android:style/Theme.NoTitleBar.Fullscreen"> regions = new Dictionary { { "Padrão Nacional", "" }, - { "Acre", "/AC" }, - { "Alagoas", "/AL" }, - { "Amapá", "/AP" }, - { "Amazonas", "/AM" }, - { "Bahia", "/BA" }, - { "Ceará", "/CE" }, - { "Distrito Federal", "/DF" }, - { "Espírito Santo", "/ES" }, - { "Goiás", "/GO" }, - { "Maranhão", "/MA" }, - { "Mato Grosso", "/MT" }, - { "Mato Grosso do Sul", "/MS" }, - { "Minas Gerais", "/MG" }, - { "Pará", "/PA" }, - { "Paraíba", "/PB" }, - { "Paraná", "/PR"}, - { "Pernambuco", "/PE" }, - { "Piauí", "/PI" }, - { "Rio de Janeiro", "/RJ" }, - { "Rio Grande do Norte", "/RN" }, - { "Rio Grande do Sul", "/RS" }, - { "Rondônia", "/RO" }, - { "Roraima", "/RR" }, - { "Santa Catarina", "/SC" }, - { "São Paulo", "/SP" }, - { "Sergipe", "/SE" }, - { "Tocantins", "/TO" } + { "Acre", "AC/" }, + { "Alagoas", "AL/" }, + { "Amapá", "AP/" }, + { "Amazonas", "AM/" }, + { "Bahia", "BA/" }, + { "Ceará", "CE/" }, + { "Distrito Federal", "DF/" }, + { "Espírito Santo", "ES/" }, + { "Goiás", "GO/" }, + { "Maranhão", "MA/" }, + { "Mato Grosso", "MT/" }, + { "Mato Grosso do Sul", "MS/" }, + { "Minas Gerais", "MG/" }, + { "Pará", "PA/" }, + { "Paraíba", "PB/" }, + { "Paraná", "PR/"}, + { "Pernambuco", "PE/" }, + { "Piauí", "PI/" }, + { "Rio de Janeiro", "RJ/" }, + { "Rio Grande do Norte", "RN/" }, + { "Rio Grande do Sul", "RS/" }, + { "Rondônia", "RO/" }, + { "Roraima", "RR/" }, + { "Santa Catarina", "SC/" }, + { "São Paulo", "SP/" }, + { "Sergipe", "SE/" }, + { "Tocantins", "TO/" } }; public PlayerManager manager; public GameObject list; public GameObject SampleItem; + public Text label; private Region activeItem = null; private Region selectedItem = null; @@ -62,7 +63,6 @@ public class RegionSelector : MonoBehaviour { if (this.activeItem == null) { - Debug.Log("Selecting " + item); this.activeItem = region; this.selectedItem = region; region.select(true); @@ -86,6 +86,16 @@ public class RegionSelector : MonoBehaviour { { this.activeItem = this.selectedItem; this.manager.setRegion(this.activeItem.Path); + this.manager.clearLoadedBundles(); + + if (selectedItem.Path == "") + { + this.label.text = "BR"; + }else + { + this.label.text = selectedItem.Path.Replace('/', ' '); + + } } } diff --git a/Assets/Scenes/Main.unity b/Assets/Scenes/Main.unity index 19fc06c..e590dd6 100644 --- a/Assets/Scenes/Main.unity +++ b/Assets/Scenes/Main.unity @@ -1032,7 +1032,7 @@ RectTransform: - {fileID: 1935189154} - {fileID: 951727302} m_Father: {fileID: 1414104007} - m_RootOrder: 3 + m_RootOrder: 4 m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} @@ -1415,9 +1415,7 @@ MonoBehaviour: visible: 0 slideOnX: 1 toLeft: 1 - slideOnY: 0 - toTop: 0 - speed: 52 + speed: 0.15 disableWhenHidden: 1 --- !u!114 &265917592 MonoBehaviour: @@ -1891,10 +1889,10 @@ RectTransform: m_Children: [] m_Father: {fileID: 1763219242} m_RootOrder: 1 - m_AnchorMin: {x: 0, y: 0.31} - m_AnchorMax: {x: 1, y: 0.69} + m_AnchorMin: {x: 0.16, y: 0.31} + m_AnchorMax: {x: 0.84, y: 0.69} m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: -108, y: 0} + m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &376314168 MonoBehaviour: @@ -1925,7 +1923,7 @@ MonoBehaviour: m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 0 - m_HorizontalOverflow: 0 + m_HorizontalOverflow: 1 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: "Configura\xE7\xF5es" @@ -2362,6 +2360,73 @@ CanvasRenderer: type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 440527253} +--- !u!1 &452885187 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 4 + m_Component: + - 224: {fileID: 452885188} + - 222: {fileID: 452885190} + - 114: {fileID: 452885189} + m_Layer: 5 + m_Name: background + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &452885188 +RectTransform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 452885187} + 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_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_Children: [] + m_Father: {fileID: 870029354} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: -0.5} + m_AnchorMax: {x: 1, y: 1.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &452885189 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 452885187} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -98529514, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 0} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_Texture: {fileID: 0} + m_UVRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 +--- !u!222 &452885190 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 452885187} --- !u!1 &457437673 GameObject: m_ObjectHideFlags: 0 @@ -2418,8 +2483,8 @@ MonoBehaviour: m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 0.353} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.453} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 @@ -2433,31 +2498,20 @@ MonoBehaviour: m_PressedTrigger: Pressed m_DisabledTrigger: Disabled m_Interactable: 1 - m_TargetGraphic: {fileID: 0} + m_TargetGraphic: {fileID: 452885189} m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 265917591} - m_MethodName: setVisible - m_Mode: 6 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 - - m_Target: {fileID: 1826236683} - m_MethodName: fade - m_Mode: 6 + - m_Target: {fileID: 2131993094} + m_MethodName: closeSettingsPanel + m_Mode: 1 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: - m_BoolArgument: 0 + m_BoolArgument: 1 m_CallState: 2 m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null @@ -3052,53 +3106,53 @@ Animation: m_GameObject: {fileID: 535548070} m_Enabled: 1 serializedVersion: 3 - m_Animation: {fileID: 7400000, guid: 51db1b84405e8df46945a2444bc2f5ca, type: 2} + m_Animation: {fileID: 7400000, guid: 2411a6d385ad1a44ba0d38dba4ab34bd, type: 2} m_Animations: - - {fileID: 7400000, guid: 815604012efc9a749a0f6ce23370945b, type: 2} - - {fileID: 7400000, guid: 909aa371266394f4ba7d293a01eaf06d, type: 2} - - {fileID: 7400000, guid: db7d27d1975560b41926077b900162b2, type: 2} - - {fileID: 7400000, guid: f25f075210a14cc429cea16706e7e593, type: 2} - - {fileID: 7400000, guid: c93c8d73f523b2a4b8b2c153f9117c57, type: 2} - - {fileID: 7400000, guid: 51db1b84405e8df46945a2444bc2f5ca, type: 2} - - {fileID: 7400000, guid: 694e9835c00a4264f98a06b4a7c03e7e, type: 2} - - {fileID: 7400000, guid: ed58a7550e488424bbf636153c9ba873, type: 2} - - {fileID: 7400000, guid: 453795a5a58dd3e499c6f39ee800a651, type: 2} - - {fileID: 7400000, guid: 1e3921c5606a9f14fab885646f3024b4, type: 2} - - {fileID: 7400000, guid: d7c82c265ba37004fa224beb16b6eb6a, type: 2} - - {fileID: 7400000, guid: 33d88aa6127ef4544b1464efb1a4b8b4, type: 2} - - {fileID: 7400000, guid: bac84647ceba43c449facd3739af9532, type: 2} - - {fileID: 7400000, guid: bb47b057b99c58744a1f4c6426e54bf0, type: 2} - - {fileID: 7400000, guid: 519d6257975db7242adfcc77eda840ce, type: 2} - - {fileID: 7400000, guid: 39aef458d59efdc4eabe7bf8fe84aa3d, type: 2} - - {fileID: 7400000, guid: d69acb984db4ec240811f153c3681e77, type: 2} - - {fileID: 7400000, guid: ff6f47a8b8a373249973461d314804c3, type: 2} - - {fileID: 7400000, guid: c59e54a9316310d4986932585b259cfa, type: 2} - - {fileID: 7400000, guid: 95b8dd0a735a8da4eb4317afd7b1360e, type: 2} - - {fileID: 7400000, guid: 7d0e3d3a88ed1474fb2715ff40dd2d3f, type: 2} - - {fileID: 7400000, guid: 84d7a3bab2c1f454ea34f3bfc0c88e20, type: 2} - - {fileID: 7400000, guid: da800fbac3523964ab14795c2d42078f, type: 2} - - {fileID: 7400000, guid: 39d12ceaff558884fbb687f8cf4b72cd, type: 2} - - {fileID: 7400000, guid: d73e0bfa4521def48b7fe69e30a97060, type: 2} - - {fileID: 7400000, guid: 58b1302b52b594947ae8f789a949c9c1, type: 2} - - {fileID: 7400000, guid: 15108c4b33ff3a44ba20c42e6ec5ade5, type: 2} - - {fileID: 7400000, guid: 2332735bc385f3b4aba797b26dc7515c, type: 2} - - {fileID: 7400000, guid: e5de295b0d539b94188fa1cc463ac351, type: 2} - - {fileID: 7400000, guid: 79851aeb181d51841b407feec3b40ab1, type: 2} - - {fileID: 7400000, guid: 4854da5cea686064cb1f86a1f02fc84c, type: 2} - - {fileID: 7400000, guid: 91de266c975472840a84e4e5ca8f426d, type: 2} - - {fileID: 7400000, guid: 946297ac02c155f4bb656f25b8dc4167, type: 2} - - {fileID: 7400000, guid: 3c90722d008ebdd46a9c786d9c6ef666, type: 2} - - {fileID: 7400000, guid: 4135a09db8e2f254e9ee229c9e49a6f6, type: 2} - - {fileID: 7400000, guid: b42189bd74abd034dbd4b4326e3d2da2, type: 2} - - {fileID: 7400000, guid: 2dfa71ed53334ab4f80f5fe29765d273, type: 2} - - {fileID: 7400000, guid: 179c974ec8dee0b43a087e7b88147a0d, type: 2} - - {fileID: 7400000, guid: 171564cea512d41439a87ed1a0f78b25, type: 2} - - {fileID: 7400000, guid: ca6d65de3ae2e4e418a53a80eb8b6bc2, type: 2} - - {fileID: 7400000, guid: d2b4405ffb25d3f448440bb652f442bd, type: 2} - - {fileID: 7400000, guid: 2eec476f24a99b44c8c47d356dbe0a46, type: 2} - - {fileID: 7400000, guid: 6fa1f48f9df657b4ab514a872880bd51, type: 2} - - {fileID: 7400000, guid: d8cf82af413d0774b850f67555bcae35, type: 2} - - {fileID: 7400000, guid: 6c036cdff369fb241a283d124626e635, type: 2} + - {fileID: 7400000, guid: ddcd1981236a36348bc816e65c1678d1, type: 2} + - {fileID: 7400000, guid: 9413ea9122513604a8929a9f4bf4be51, type: 2} + - {fileID: 7400000, guid: 7acdc7f1247d991449a7e890f8fc12dc, type: 2} + - {fileID: 7400000, guid: 3252d8c2bc4ff864ea67956fa3d3c538, type: 2} + - {fileID: 7400000, guid: 127a6503b4e31514ca9ded619d556c49, type: 2} + - {fileID: 7400000, guid: 1d7a65536341b5a4599722d7bbee7f6d, type: 2} + - {fileID: 7400000, guid: bf54eb6377302a94ca7e997abc0c0c1d, type: 2} + - {fileID: 7400000, guid: be2b9b938eaa20b4f806abcc6bbf332c, type: 2} + - {fileID: 7400000, guid: 9d7e3bc3c304f164f90c818effd135b9, type: 2} + - {fileID: 7400000, guid: 2411a6d385ad1a44ba0d38dba4ab34bd, type: 2} + - {fileID: 7400000, guid: f0cdda14b320f8647a5d7026489a5af9, type: 2} + - {fileID: 7400000, guid: 938686440df5af3498c5277529569881, type: 2} + - {fileID: 7400000, guid: ee03768448a708c47a178c0bcb215cef, type: 2} + - {fileID: 7400000, guid: 78839d8488af17f4e96e95e300ec2d5a, type: 2} + - {fileID: 7400000, guid: 9e2fcce41ab69504f9eee1c995e326ca, type: 2} + - {fileID: 7400000, guid: 89b83c453e89f134fac24d95502d7531, type: 2} + - {fileID: 7400000, guid: ee7a9c65d2f1d3b438b45d8ae61aa315, type: 2} + - {fileID: 7400000, guid: 49b5c595463d2e14eab17ff7ed55d965, type: 2} + - {fileID: 7400000, guid: db3b82a565a75ce4fbfeb0bff6b80b94, type: 2} + - {fileID: 7400000, guid: badb22c558504be438a5e3dd2ec10007, type: 2} + - {fileID: 7400000, guid: 4e33b946abeff8149bcfc858d767b4f3, type: 2} + - {fileID: 7400000, guid: bed17a769da3e914487da705d3b4de62, type: 2} + - {fileID: 7400000, guid: 7e47ede61f002114ca81bb190b13589a, type: 2} + - {fileID: 7400000, guid: 75cdd337245767c43ba4d80a5c96f0c3, type: 2} + - {fileID: 7400000, guid: 7f136b37cf15b3e4380962411093afc5, type: 2} + - {fileID: 7400000, guid: 6a6b1d67a96a0b745826f846495b3541, type: 2} + - {fileID: 7400000, guid: f41beee74758eca43afbb59bff694ff3, type: 2} + - {fileID: 7400000, guid: 5e0b56d8c46b01d4e8d05b0211da1305, type: 2} + - {fileID: 7400000, guid: f41fcec969a1975448bda94cfe8d148c, type: 2} + - {fileID: 7400000, guid: 881763d96061c9546bb76267ba20ca6f, type: 2} + - {fileID: 7400000, guid: 63d597e9f28fc45459154d947f7aaa75, type: 2} + - {fileID: 7400000, guid: ca77612a5245f4942823d031a3641519, type: 2} + - {fileID: 7400000, guid: 61fb392a4df3e1f4d950c70a6cf96227, type: 2} + - {fileID: 7400000, guid: fd82c04a57f486644a04f2a21bd5dcad, type: 2} + - {fileID: 7400000, guid: 1e8b309a50e4642409535d3c2a9336e7, type: 2} + - {fileID: 7400000, guid: b6989e7b354355845b8650deb15532ce, type: 2} + - {fileID: 7400000, guid: 0174ce0ce69e08042b62873daf99cb4a, type: 2} + - {fileID: 7400000, guid: 08be2dcc379b4e145b7b4db2a309328b, type: 2} + - {fileID: 7400000, guid: 1a6bfdec4c803b84994a113b977e7690, type: 2} + - {fileID: 7400000, guid: 41a7d8ddd33942744b471a7eccda1c2c, type: 2} + - {fileID: 7400000, guid: 34b27c0e99de504438b4d4328277a868, type: 2} + - {fileID: 7400000, guid: 99072f5e973a0114996f87370003faee, type: 2} + - {fileID: 7400000, guid: 393d3f6e67dc15f4992c77e23ca560b5, type: 2} + - {fileID: 7400000, guid: 89c9a9aedc3fc41429d1fd41861e95c9, type: 2} + - {fileID: 7400000, guid: 05d107bfff390d6429b1bbeef74ca8be, type: 2} m_WrapMode: 0 m_PlayAutomatically: 1 m_AnimatePhysics: 0 @@ -3374,7 +3428,7 @@ MonoBehaviour: m_TargetGraphic: {fileID: 554210568} m_HandleRect: {fileID: 554210567} m_Direction: 2 - m_Value: 1 + m_Value: 0 m_Size: 1 m_NumberOfSteps: 0 m_OnValueChanged: @@ -3446,7 +3500,7 @@ RectTransform: - {fileID: 228512394} - {fileID: 2044204295} m_Father: {fileID: 1414104007} - m_RootOrder: 5 + m_RootOrder: 6 m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} @@ -4167,19 +4221,8 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 1826236683} - m_MethodName: fade - m_Mode: 6 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 - - m_Target: {fileID: 1031720610} - m_MethodName: fade + - m_Target: {fileID: 2131993094} + m_MethodName: closeRegionPanel m_Mode: 6 m_Arguments: m_ObjectArgument: {fileID: 0} @@ -4187,18 +4230,7 @@ MonoBehaviour: m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 - - m_Target: {fileID: 1153850833} - m_MethodName: ReselectActiveItem - m_Mode: 1 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 + m_BoolArgument: 1 m_CallState: 2 m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null @@ -4785,7 +4817,7 @@ Transform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 1414104007} - m_RootOrder: 6 + m_RootOrder: 7 --- !u!114 &842733391 MonoBehaviour: m_ObjectHideFlags: 0 @@ -4977,7 +5009,8 @@ RectTransform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_Children: [] + m_Children: + - {fileID: 452885188} m_Father: {fileID: 457437674} m_RootOrder: 0 m_AnchorMin: {x: 0, y: 0.3} @@ -4998,7 +5031,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 + m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] @@ -5606,7 +5639,7 @@ RectTransform: m_Children: - {fileID: 263667178} m_Father: {fileID: 1414104007} - m_RootOrder: 4 + m_RootOrder: 5 m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0} m_AnchoredPosition: {x: 0, y: 0} @@ -5704,6 +5737,107 @@ CanvasRenderer: type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 957593655} +--- !u!1 &970584908 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 4 + m_Component: + - 224: {fileID: 970584909} + - 222: {fileID: 970584914} + - 114: {fileID: 970584913} + - 114: {fileID: 970584911} + - 114: {fileID: 970584910} + m_Layer: 5 + m_Name: logger + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!224 &970584909 +RectTransform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 970584908} + 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_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_Children: [] + m_Father: {fileID: 1414104007} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 0.9} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: -40, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &970584910 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 970584908} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -900027084, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 1, g: 1, b: 1, a: 0.5} + m_EffectDistance: {x: 3, y: -3} + m_UseGraphicAlpha: 1 +--- !u!114 &970584911 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 970584908} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a9cc0ccbda0accb4ea816c19265b622f, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &970584913 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 970584908} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, 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_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 36 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 3 + m_MaxSize: 40 + m_Alignment: 0 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 1 + m_LineSpacing: 1 + m_Text: END +--- !u!222 &970584914 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 970584908} --- !u!1 &995712443 GameObject: m_ObjectHideFlags: 0 @@ -6134,8 +6268,8 @@ MonoBehaviour: visible: 0 visibleAlpha: 1 hiddenAlpha: 0 - showingSpeed: 0.16 - hiddingSpeed: 0.24 + showingSpeed: 0.21 + hiddingSpeed: 0.27 disableWhenHidden: 1 --- !u!222 &1031720612 CanvasRenderer: @@ -6160,7 +6294,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!224 &1048863673 RectTransform: m_ObjectHideFlags: 0 @@ -6487,7 +6621,7 @@ MonoBehaviour: m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 - m_Text: AC + m_Text: BR --- !u!222 &1069760793 CanvasRenderer: m_ObjectHideFlags: 0 @@ -6927,6 +7061,7 @@ MonoBehaviour: manager: {fileID: 578311381} list: {fileID: 663262204} SampleItem: {fileID: 1000010591902608, guid: f4297397cec02284cadd2fe1e37166c2, type: 2} + label: {fileID: 1069760792} --- !u!222 &1153850834 CanvasRenderer: m_ObjectHideFlags: 0 @@ -7190,7 +7325,7 @@ RectTransform: m_AnchorMin: {x: 0, y: 0.2} m_AnchorMax: {x: 1, y: 0.28} m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: -5.204442} + m_SizeDelta: {x: 0, y: -13.511112} m_Pivot: {x: 0.5, y: 1} --- !u!114 &1175405162 MonoBehaviour: @@ -7496,7 +7631,7 @@ MonoBehaviour: m_AsteriskChar: 42 m_KeyboardType: 0 m_LineType: 1 - m_HideMobileInput: 1 + m_HideMobileInput: 0 m_CharacterValidation: 0 m_CharacterLimit: 0 m_OnEndEdit: @@ -7594,30 +7729,8 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 265917591} - m_MethodName: setVisible - m_Mode: 6 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 - - m_Target: {fileID: 1031720610} - m_MethodName: fade - m_Mode: 6 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 1 - m_CallState: 2 - - m_Target: {fileID: 1153850833} - m_MethodName: ReselectActiveItem + - m_Target: {fileID: 2131993094} + m_MethodName: openRegionPanel m_Mode: 1 m_Arguments: m_ObjectArgument: {fileID: 0} @@ -7625,7 +7738,7 @@ MonoBehaviour: m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: - m_BoolArgument: 1 + m_BoolArgument: 0 m_CallState: 2 m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null @@ -8817,6 +8930,7 @@ RectTransform: m_LocalScale: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: + - {fileID: 970584909} - {fileID: 1613520792} - {fileID: 1620867682} - {fileID: 2119336824} @@ -9076,19 +9190,8 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 1826236683} - m_MethodName: fade - m_Mode: 6 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 - - m_Target: {fileID: 1031720610} - m_MethodName: fade + - m_Target: {fileID: 2131993094} + m_MethodName: closeRegionPanel m_Mode: 6 m_Arguments: m_ObjectArgument: {fileID: 0} @@ -10455,7 +10558,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 1414104007} - m_RootOrder: 0 + m_RootOrder: 1 m_AnchorMin: {x: 0.03, y: 0.89} m_AnchorMax: {x: 0.12, y: 0.98} m_AnchoredPosition: {x: 0, y: 0} @@ -10500,20 +10603,9 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 265917591} - m_MethodName: setVisible - m_Mode: 6 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 1 - m_CallState: 2 - - m_Target: {fileID: 1826236683} - m_MethodName: fade - m_Mode: 6 + - m_Target: {fileID: 2131993094} + m_MethodName: openSettingsPanel + m_Mode: 1 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine @@ -10615,7 +10707,7 @@ RectTransform: - {fileID: 861767965} - {fileID: 848083143} m_Father: {fileID: 1414104007} - m_RootOrder: 1 + m_RootOrder: 2 m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} @@ -10856,8 +10948,8 @@ RectTransform: m_Children: [] m_Father: {fileID: 1533000892} m_RootOrder: 0 - m_AnchorMin: {x: 0.05, y: 1.06} - m_AnchorMax: {x: 0.95, y: 2.1} + m_AnchorMin: {x: 0.05, y: 1.15} + m_AnchorMax: {x: 0.95, y: 3.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} @@ -11338,9 +11430,9 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 265917591} - m_MethodName: setVisible - m_Mode: 6 + - m_Target: {fileID: 2131993094} + m_MethodName: openInfoScreen + m_Mode: 1 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine @@ -11349,17 +11441,6 @@ MonoBehaviour: m_StringArgument: m_BoolArgument: 0 m_CallState: 2 - - m_Target: {fileID: 1031720610} - m_MethodName: fade - m_Mode: 6 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 1 - m_CallState: 2 m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null --- !u!114 &1794530659 @@ -11421,7 +11502,7 @@ MonoBehaviour: m_BestFit: 0 m_MinSize: 22 m_MaxSize: 80 - m_Alignment: 4 + m_Alignment: 7 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 @@ -11652,7 +11733,7 @@ MonoBehaviour: visible: 0 visibleAlpha: 1 hiddenAlpha: 0 - showingSpeed: 0.07 + showingSpeed: 0.08 hiddingSpeed: 0.2 disableWhenHidden: 1 --- !u!114 &1826236684 @@ -11694,38 +11775,16 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 265917591} - m_MethodName: setVisible - m_Mode: 6 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 - - m_Target: {fileID: 1826236683} - m_MethodName: fade - m_Mode: 6 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 - - m_Target: {fileID: 1031720610} - m_MethodName: fade - m_Mode: 6 + - m_Target: {fileID: 2131993094} + m_MethodName: onPanelOutClick + m_Mode: 1 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: - m_BoolArgument: 0 + m_BoolArgument: 1 m_CallState: 2 m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null @@ -12257,7 +12316,7 @@ RectTransform: - {fileID: 265917590} - {fileID: 1031720609} m_Father: {fileID: 1414104007} - m_RootOrder: 7 + m_RootOrder: 8 m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} @@ -12723,6 +12782,8 @@ GameObject: serializedVersion: 4 m_Component: - 224: {fileID: 2002966284} + - 222: {fileID: 2002966286} + - 114: {fileID: 2002966285} m_Layer: 5 m_Name: field_text_entry m_TagString: Untagged @@ -12750,6 +12811,38 @@ RectTransform: m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &2002966285 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2002966283} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -98529514, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_Texture: {fileID: 0} + m_UVRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 +--- !u!222 &2002966286 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2002966283} --- !u!1 &2010584309 GameObject: m_ObjectHideFlags: 0 @@ -13599,6 +13692,7 @@ GameObject: - 224: {fileID: 2071733049} - 222: {fileID: 2071733051} - 114: {fileID: 2071733050} + - 114: {fileID: 2071733052} m_Layer: 5 m_Name: Text m_TagString: Untagged @@ -13647,11 +13741,11 @@ MonoBehaviour: Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_FontData: m_Font: {fileID: 12800000, guid: 195abaf1001bde54db32dfcefbcc33e8, type: 3} - m_FontSize: 14 + m_FontSize: 50 m_FontStyle: 0 - m_BestFit: 1 - m_MinSize: 14 - m_MaxSize: 40 + m_BestFit: 0 + m_MinSize: 5 + m_MaxSize: 50 m_Alignment: 1 m_AlignByGeometry: 0 m_RichText: 0 @@ -13666,6 +13760,17 @@ CanvasRenderer: type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2071733048} +--- !u!114 &2071733052 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2071733048} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f8db495bb0057e14eb35ef4f2df7910e, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &2077558507 GameObject: m_ObjectHideFlags: 0 @@ -14128,7 +14233,7 @@ RectTransform: m_Children: - {fileID: 1923959837} m_Father: {fileID: 1414104007} - m_RootOrder: 2 + m_RootOrder: 3 m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0} m_AnchoredPosition: {x: 0, y: 0} @@ -14383,6 +14488,10 @@ MonoBehaviour: textButton: {fileID: 930426942} pauseButton: {fileID: 440527253} avatarCollider: {fileID: 535548073} + regionSelector: {fileID: 1153850833} + settingsPanel: {fileID: 265917591} + regionPanel: {fileID: 1031720610} + shadow: {fileID: 1826236683} --- !u!1 &2145755641 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/Player Manager/GenericPlayerManager.cs b/Assets/Scripts/Player Manager/GenericPlayerManager.cs index 17b0a45..7ba5f4a 100644 --- a/Assets/Scripts/Player Manager/GenericPlayerManager.cs +++ b/Assets/Scripts/Player Manager/GenericPlayerManager.cs @@ -26,9 +26,6 @@ using System.Collections; using System.Collections.Generic; using System; using System.Threading; -using System.IO; -using System.Text; -using System.Runtime.InteropServices; using UnityEngine.UI; public abstract class GenericPlayerManager : MonoBehaviour { @@ -38,7 +35,6 @@ public abstract class GenericPlayerManager : MonoBehaviour { protected float fadeLength = 0.6F; public string gloss = ""; - private string regionPath = ""; // Referencia para o avatar private GameObject AVATAR; @@ -223,7 +219,7 @@ public abstract class GenericPlayerManager : MonoBehaviour { return state; } catch (NullReferenceException nre) { - UnityEngine.Debug.Log("'" + name + "' não foi encontrado!\n" + nre.ToString()); + Logger.Log("'" + name + "' não foi encontrado!\n" + nre.ToString()); } return null; @@ -264,6 +260,7 @@ public abstract class GenericPlayerManager : MonoBehaviour { */ protected abstract void onPlayingStateChange(); + protected abstract WWW getCheckConnectionRequest(); /* Pause or continue animations */ public void setPauseState(bool paused) @@ -407,30 +404,38 @@ public abstract class GenericPlayerManager : MonoBehaviour { } short type = getType(anim); - string animName = nextLetterAnimation(anim); - - // Não há animação - if (type == Subtitle.TYPE_NONE) - { - // Reproduz animação default apenas uma vez - if ( ! defaultPlayed) - { - defaultPlayed = true; - toPlayQueue.Enqueue(new ToPlay(Subtitle.TYPE_WORD, DEFAULT_ANIMATION_MIDDLE, lastAnimationSubtitle, this)); - - // A reprodução da próxima letra deve ser longa para não ser cortada no fade - this.subtitles.updateLetterSpeed(); - } + string animName; + + try { + animName = nextLetterAnimation(anim); + + // Não há animação + if (type == Subtitle.TYPE_NONE) + { + // Reproduz animação default apenas uma vez + if ( ! defaultPlayed) + { + defaultPlayed = true; + toPlayQueue.Enqueue(new ToPlay(Subtitle.TYPE_WORD, DEFAULT_ANIMATION_MIDDLE, lastAnimationSubtitle, this)); + + // A reprodução da próxima letra deve ser longa para não ser cortada no fade + this.subtitles.updateLetterSpeed(); + } + + Logger.Log("Animação \"" + animName + "\" inexistente."); + } + else + { + toPlayQueue.Enqueue(new ToPlay(type, animName, lastAnimationSubtitle, this)); - UnityEngine.Debug.Log("Animação \"" + animName + "\" inexistente."); - } - else - { - toPlayQueue.Enqueue(new ToPlay(type, animName, lastAnimationSubtitle, this)); + defaultPlayed = false; + this.subtitles.updateLetterSpeed(); + } + } + catch (IndexOutOfRangeException) { + Debug.Log("GPM.sW(" + word + "): Caractere '" + anim + "' inválido."); + } - defaultPlayed = false; - this.subtitles.updateLetterSpeed(); - } } return lastAnimationSubtitle; @@ -465,15 +470,9 @@ public abstract class GenericPlayerManager : MonoBehaviour { private System.Object LOCKER_LOADING = new System.Object(); - /*Define o regionalismo*/ - public void setRegion(string path) + public void clearLoadedBundles() { - this.regionPath = String.IsNullOrEmpty(path) ? "" : path; - } - - public void clearRegion() - { - setRegion(""); + this.loadedAssetBundles.Clear(); } /* Carrega animações e reproduz */ @@ -497,7 +496,23 @@ public abstract class GenericPlayerManager : MonoBehaviour { int wordsCount = 0; toPlayQueue.Enqueue(new ToPlay(Subtitle.TYPE_NONE, DEFAULT_ANIMATION, "", this)); - foreach (string aniName in stringPos) + /*WWW checkConnectionRequest = getCheckConnectionRequest(); + bool connected = false; + + while ( ! checkConnectionRequest.isDone) + yield return checkConnectionRequest; + + if (checkConnectionRequest.responseHeaders.Count > 0) + { + Logger.Log(checkConnectionRequest.responseHeaders["STATUS"]); + connected = checkConnectionRequest.responseHeaders["STATUS"].Contains("404"); + } + else Logger.Log("No response headers.");*/ + + bool connected = true; + bool playingStarted = false; + + foreach (string aniName in stringPos) { wordsCount++; if (String.IsNullOrEmpty(aniName)) continue; @@ -505,37 +520,47 @@ public abstract class GenericPlayerManager : MonoBehaviour { bool nonexistent = nonexistentAssetBundles.Contains(aniName); bool loaded = loadedAssetBundles.Contains(aniName); - if ( ! nonexistent && ! loaded) + if ( ! nonexistent && ! loaded && connected) { - WWW www = null; + WWW www = loadAssetBundle(aniName); + yield return www; - string aniNameReg = regionPath + @"\" + aniName; - www = loadAssetBundle(aniNameReg); - if (www != null) yield return null; + Logger.Log("Bundle request done (" + aniName + ")."); - if (www.error == null) - { + if (www.error == null) + { AssetBundle bundle = www.assetBundle; - - if (bundle != null && ! String.IsNullOrEmpty(bundle.mainAsset.name)) - { - AnimationClip aniClip = bundle.mainAsset as AnimationClip; - bundle.Unload(false); - - if (aniClip) - { - COMPONENT_ANIMATION.AddClip(aniClip, aniName); - - loadedAssetBundles.Add(aniName); - loaded = true; - - Debug.Log("Bundle \"" + aniName + "\" loaded!"); - } - else UnityEngine.Debug.Log ("Sinal \"" + aniName + "\" foi não carregado corretamente."); - } - } - else onConnectionError(gloss, aniName); - + + /*Logger.Log("count: " + www.responseHeaders.Count); + if (www.responseHeaders.Count > 0) + Logger.Log(www.responseHeaders["STATUS"]); + + // if (www.responseHeaders.Count > 0 && www.responseHeaders["STATUS"].EndsWith("200 OK")); + */ + + if (bundle != null && !String.IsNullOrEmpty(bundle.mainAsset.name)) + { + AnimationClip aniClip = bundle.mainAsset as AnimationClip; + bundle.Unload(false); + + if (aniClip) + { + COMPONENT_ANIMATION.AddClip(aniClip, aniName); + yield return null; + + loadedAssetBundles.Add(aniName); + loaded = true; + + Logger.Log("Bundle \"" + aniName + "\" loaded!"); + } + else Logger.Log("Sinal \"" + aniName + "\" foi não carregado corretamente."); + } + } + else + { + Logger.Log("Connection error"); + onConnectionError(gloss, aniName); + } } // Reproduz palavra @@ -563,12 +588,15 @@ public abstract class GenericPlayerManager : MonoBehaviour { // Soletra palavra else { - // Se a animação não foi carregada e nem está marcada como não existente, - // adiciona ao set de animações não existentes - if ( ! nonexistent) - nonexistentAssetBundles.Add(aniName); + // Se a animação não foi carregada e nem está marcada como não existente, + // adiciona ao set de animações não existentes + if ( ! nonexistent && connected) + { + Logger.Log("Non existent"); + nonexistentAssetBundles.Add(aniName); + } - UnityEngine.Debug.Log("~~ To spell: " + aniName); + Logger.Log("~~ To spell: " + aniName); if (this.flags.Contains(aniName) || this.intervalAnimations.Contains(aniName)) { @@ -587,10 +615,19 @@ public abstract class GenericPlayerManager : MonoBehaviour { } } - if (toPlayQueue.Count > 4 || wordsCount == stringPos.Length) - while (toPlayQueue.Count > 0) + if (toPlayQueue.Count > 4 || wordsCount == stringPos.Length) { + playingStarted = true; + + while (toPlayQueue.Count > 0) + { toPlayQueue.Dequeue().play(this); - } + yield return new WaitForEndOfFrame(); + } + } + + if (playingStarted) + yield return new WaitForEndOfFrame(); + } // Default playAnimation(Subtitle.TYPE_NONE, DEFAULT_ANIMATION, ""); diff --git a/Assets/Scripts/Player Manager/Utils.cs b/Assets/Scripts/Player Manager/Utils.cs index 751da8b..c3f7f49 100644 --- a/Assets/Scripts/Player Manager/Utils.cs +++ b/Assets/Scripts/Player Manager/Utils.cs @@ -9,6 +9,12 @@ namespace Utils { return new Color(color.r, color.g, color.b, alpha); } - } + public static void Log(this Debug debug, string text) + { + Debug.Log(text); + Logger.Log(text); + } + + } } diff --git a/Assets/Scripts/PlayerManager.cs b/Assets/Scripts/PlayerManager.cs index dac7e71..48146a6 100644 --- a/Assets/Scripts/PlayerManager.cs +++ b/Assets/Scripts/PlayerManager.cs @@ -11,6 +11,8 @@ using System.Text; using System.Runtime.InteropServices; using UnityEngine.UI; using System.Threading; +using System.Net; +using Utils; public class PlayerManager : GenericPlayerManager { @@ -44,7 +46,8 @@ public class PlayerManager : GenericPlayerManager { public InputField translateScreenText; public ScreenManager screenManager; private string dictWord = null; -// private string regionPath = ""; + private string regionPath = ""; + private int regionHash = 1; public static string get_connection_status_message(ERROR_STATUS_MESSAGE msg) { @@ -70,14 +73,18 @@ public class PlayerManager : GenericPlayerManager { voiceRecognizer = new VoiceRecognition(); - Screen.fullScreen = false; +#if UNITY_EDITOR + Caching.CleanCache(); +#endif + + Screen.fullScreen = false; // Hide input text preview - TouchScreenKeyboard.hideInput = true; + // TouchScreenKeyboard.hideInput = true; } public void playDict(string word) { - Debug.Log("Requesting dictionary: " + word); + Logger.Log("Requesting dictionary: " + word); this.dictWord = word; base.gloss = word; @@ -111,18 +118,20 @@ public class PlayerManager : GenericPlayerManager { base.repeat(); } -/* public void setRegion(string path) { + public void setRegion(string path) + { this.regionPath = String.IsNullOrEmpty(path) ? "" : path; - } + this.regionHash = this.regionPath == "" ? 1 : (int)this.regionPath[0] * 255 + (int)this.regionPath[1]; + } public void clearRegion() { setRegion(""); } -*/ + protected override WWW loadAssetBundle(string aniName) { - Debug.Log("Requesting bundle: " + " " + aniName); - return WWW.LoadFromCacheOrDownload(BASE_URL + aniName, VERSION); + Logger.Log("Requesting bundle: " + BASE_URL + regionPath + aniName); + return WWW.LoadFromCacheOrDownload(BASE_URL + regionPath + aniName, this.regionHash); } private System.Object LOCKER_STATE = new System.Object(); @@ -147,32 +156,80 @@ public class PlayerManager : GenericPlayerManager { // Called from microphone icon at main interface public void callVoiceRecognizer() { - Debug.Log("Requesting voice recognizer"); + Logger.Log("Requesting voice recognizer"); string gloss = voiceRecognizer.callRecognition(); this.translateScreenText.text = gloss; - Debug.Log("Voice recognizer answer: " + gloss); + Logger.Log("Voice recognizer answer: " + gloss); this.screenManager.switchScreen("translate"); } + + + protected override WWW getCheckConnectionRequest() + { + return new WWW(BASE_URL); + + + /*WWW connection = new WWW(SERVER_URL); + yield return connection; + //while (!glossRequest.isDone) + + if (connection.error == null) + { + if (connection.responseHeaders.Count > 0) + Logger.Log(connection.responseHeaders["STATUS"]); + else + Logger.Log("No STATUS"); + } + else Logger.Log("ERROR: " + connection.error); + + return false;*/ + + + /*HttpWebRequest request = (HttpWebRequest)WebRequest.Create(BASE_URL); + request.Method = "HEAD"; + request.Timeout = 2000; + + try { + HttpWebResponse response = (HttpWebResponse) request.GetResponse(); + } + catch (WebException e) + { + if (e.Response != null) + { + Logger.Log(((HttpWebResponse)e.Response).StatusCode); + return ((HttpWebResponse)e.Response).StatusCode == HttpStatusCode.NotFound; + } + } + catch (Exception) + { + } + + return false;*/ + } + private IEnumerator translate(string gloss) { bool returnSuccess = true; bool timeout = false; - Debug.Log("Requesting translator: " + gloss); + Logger.Log("Requesting translator: " + gloss); base.randomAnimations.lockFor("translate"); this.screenManager.setLoadingSnippetState(true); WWW glossRequest = new WWW(SERVER_URL + WWW.EscapeURL(gloss)); - - if (glossRequest != null) - { - const float timeoutLimit = 10f; + Logger.Log("Translate: Request: " + SERVER_URL + WWW.EscapeURL(gloss)); + + if (glossRequest != null) + { + const float timeoutLimit = 10f; float timer = 0; + Logger.Log("Translate: Stating time check."); + while (!glossRequest.isDone) { if (timer > timeoutLimit) @@ -185,34 +242,37 @@ public class PlayerManager : GenericPlayerManager { yield return null; } - if (!timeout) - { - if (glossRequest.error == null) - { - returnSuccess = glossRequest.responseHeaders.Count > 0 && glossRequest.responseHeaders["STATUS"].EndsWith("200 OK"); - - if (returnSuccess) - { - if (!String.IsNullOrEmpty(glossRequest.text)) - { - Debug.Log("Translator answer: " + glossRequest.text); - - base.gloss = glossRequest.text; - base.playNow(glossRequest.text); - this.screenManager.setLoadingSnippetState(false); - base.randomAnimations.unlockFor("translate"); - - yield break; - } - else Debug.Log("Error at PlayerManager.translate: empty answer."); - } - else Debug.Log("Error at PlayerManager.translate: unsuccessful answer."); - } - else Debug.Log("Error at PlayerManager.translate: (WWW) glosaRequest: " + glossRequest.error); - } - else Debug.Log("Error at PlayerManager.translate: timeout."); - } - else Debug.Log ("Error at PlayerManager.translate: (WWW) glosaRequest is NULL."); + Logger.Log("Translate: Timeout check finished."); + + if (!timeout) + { + if (glossRequest.error == null) + { + Logger.Log("Translate: Request: count=" + glossRequest.responseHeaders.Count + ", status=" + glossRequest.responseHeaders["STATUS"]); + returnSuccess = glossRequest.responseHeaders.Count > 0 && glossRequest.responseHeaders["STATUS"].EndsWith("200 OK"); + + if (returnSuccess) + { + if (!String.IsNullOrEmpty(glossRequest.text)) + { + Logger.Log("Translator answer: " + glossRequest.text); + + base.gloss = glossRequest.text; + base.playNow(glossRequest.text); + this.screenManager.setLoadingSnippetState(false); + base.randomAnimations.unlockFor("translate"); + + yield break; + } + else Logger.Log("Error at PlayerManager.translate: empty answer."); + } + else Logger.Log("Error at PlayerManager.translate: unsuccessful answer."); + } + else Logger.Log("Error at PlayerManager.translate: (WWW) glosaRequest: " + glossRequest.error); + } + else Logger.Log("Error at PlayerManager.translate: timeout."); + } + else Logger.Log ("Error at PlayerManager.translate: (WWW) glosaRequest is NULL."); base.gloss = gloss.ToUpper(); diff --git a/Assets/Scripts/UI/ExchangeableVisibility.cs b/Assets/Scripts/UI/ExchangeableVisibility.cs new file mode 100644 index 0000000..9dd5f37 --- /dev/null +++ b/Assets/Scripts/UI/ExchangeableVisibility.cs @@ -0,0 +1,21 @@ +using UnityEngine; + +namespace LAViD.VLibras.UI { + + public class ExchangeableVisibility : MonoBehaviour { + + public bool visible = false; + + public bool isVisible() + { + return this.visible; + } + + public virtual void Animate(bool visible) + { + this.visible = visible; + } + + } + +} diff --git a/Assets/Scripts/UI/ExchangeableVisibility.cs.meta b/Assets/Scripts/UI/ExchangeableVisibility.cs.meta new file mode 100644 index 0000000..2e13939 --- /dev/null +++ b/Assets/Scripts/UI/ExchangeableVisibility.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 4cd401803c3f50c49ad8bfea94d7e0a7 +timeCreated: 1475688620 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/UI/Fadder.cs b/Assets/Scripts/UI/Fadder.cs index 6de2158..03ffc64 100644 --- a/Assets/Scripts/UI/Fadder.cs +++ b/Assets/Scripts/UI/Fadder.cs @@ -1,79 +1,83 @@ using UnityEngine; -using UnityEngine.UI; - -public class Fadder : MonoBehaviour { - - public bool visible = true; - public float visibleAlpha = 1f; - public float hiddenAlpha = 0f; - public float showingSpeed = 0.01f; - public float hiddingSpeed = 0.01f; - public bool disableWhenHidden = true; - - private CanvasRenderer mainRenderer; - private CanvasRenderer[] renderers; - private bool visibilityChange = false; - - public void fade(bool visible) - { - if (this.visible != visible) - { - this.gameObject.transform.localScale = new Vector3(1, 1, 1); - this.visible = visible; - - visibilityChange = true; - } - } - public void set(bool visible) - { - this.visible = visible; +namespace LAViD.VLibras.UI { + + public class Fadder : ExchangeableVisibility { + + public float visibleAlpha = 1f; + public float hiddenAlpha = 0f; + public float showingSpeed = 0.01f; + public float hiddingSpeed = 0.01f; + public bool disableWhenHidden = true; + + private CanvasRenderer mainRenderer; + private CanvasRenderer[] renderers; + private bool visibilityChange = false; + + private readonly Vector3 visibleScale = new Vector3(1, 1, 1); + private readonly Vector3 hiddenScale = new Vector3(0, 0, 0); + + public override void Animate(bool visible) + { + if (base.isVisible() != visible) + { + this.gameObject.transform.localScale = visibleScale; + base.Animate(visible); + this.visibilityChange = true; + } + } + + public void brutallySetVisible(bool visible) + { + base.Animate(visible); - float alpha = visible ? visibleAlpha : hiddenAlpha; + float alpha = visible ? visibleAlpha : hiddenAlpha; - foreach (CanvasRenderer renderer in renderers) - renderer.SetAlpha(alpha); - - updateScale(); - } + foreach (CanvasRenderer renderer in renderers) + renderer.SetAlpha(alpha); - private void updateScale() - { - if (disableWhenHidden && this.mainRenderer.GetAlpha() == hiddenAlpha) - this.gameObject.transform.localScale = new Vector3(0, 0, 0); - } + updateScale(); + } - void Start () - { - mainRenderer = this.gameObject.GetComponent(); - renderers = this.gameObject.GetComponentsInChildren(); + private void updateScale() + { + if (disableWhenHidden && this.mainRenderer.GetAlpha() == hiddenAlpha) + this.gameObject.transform.localScale = hiddenScale; - hiddingSpeed = -hiddingSpeed; + } + + void Start() + { + this.mainRenderer = this.gameObject.GetComponent(); + this.renderers = this.gameObject.GetComponentsInChildren(); + this.hiddingSpeed = -hiddingSpeed; + + this.brutallySetVisible(base.isVisible()); + } + + void Update() + { + if (visibilityChange) + { + float objective = base.isVisible() ? this.visibleAlpha : this.hiddenAlpha; + this.visibilityChange = false; + + foreach (CanvasRenderer renderer in renderers) + { + float alpha = renderer.GetAlpha(); + + if (alpha != objective) + { + float speed = base.isVisible() ? this.showingSpeed : this.hiddingSpeed; + renderer.SetAlpha(Mathf.Abs(alpha - objective) < Mathf.Abs(speed) ? objective : alpha + speed); + this.visibilityChange = true; + } + } + + if (this.visibilityChange) this.updateScale(); + } + } - set(visible); } - - void Update () - { - if (visibilityChange) - { - float objective = visible ? visibleAlpha : hiddenAlpha; - visibilityChange = false; - - foreach (CanvasRenderer renderer in renderers) - { - float alpha = renderer.GetAlpha(); - - if (alpha != objective) - { - float speed = visible ? showingSpeed : hiddingSpeed; - renderer.SetAlpha(Mathf.Abs(alpha - objective) < Mathf.Abs(speed) ? objective : alpha + speed); - visibilityChange = true; - } - } - - if (visibilityChange) updateScale(); - } - } - -} + +} \ No newline at end of file diff --git a/Assets/Scripts/UI/ScreenManager.cs b/Assets/Scripts/UI/ScreenManager.cs index 698c92c..7137b0f 100644 --- a/Assets/Scripts/UI/ScreenManager.cs +++ b/Assets/Scripts/UI/ScreenManager.cs @@ -1,5 +1,6 @@ using UnityEngine; using UnityEngine.UI; +using LAViD.VLibras.UI; public class ScreenManager : MonoBehaviour { @@ -30,6 +31,11 @@ public class ScreenManager : MonoBehaviour { public BoxCollider avatarCollider; + public RegionSelector regionSelector; + public SlidingHidder settingsPanel; + public Fadder regionPanel; + public Fadder shadow; + private bool exit = false; public void Update() @@ -59,6 +65,14 @@ public class ScreenManager : MonoBehaviour { { makersScreen.SetActive(false); } + else if (regionPanel.isVisible()) + { + closeRegionPanel(true); + } + else if (settingsPanel.isVisible()) + { + closeSettingsPanel(); + } else { if (exit) Application.Quit(); @@ -79,7 +93,7 @@ public class ScreenManager : MonoBehaviour { public void hideScreen() { - setAvatarColliderState(true); + setAvatarColliderState(true); randomAnimations.unlockFor(LOCK_ID); if (infoScreen.activeSelf) @@ -129,7 +143,7 @@ public class ScreenManager : MonoBehaviour { playerManager.setPauseState(true); setPauseMenuState(true); } - + setAvatarColliderState(false); randomAnimations.lockFor(LOCK_ID); @@ -163,6 +177,57 @@ public class ScreenManager : MonoBehaviour { return null; } + public void openSettingsPanel() + { + settingsPanel.Animate(true); + setPanelOpen(true); + } + + public void openRegionPanel() + { + settingsPanel.Animate(false); + regionPanel.Animate(true); + setPanelOpen(true); + } + + public void openInfoScreen() + { + closeSettingsPanel(); + switchScreen(infoScreen); + } + + public void closeSettingsPanel() + { + settingsPanel.Animate(false); + setPanelOpen(false); + } + + public void closeRegionPanel(bool restoreActiveItem) + { + regionPanel.Animate(false); + setPanelOpen(false); + + if (restoreActiveItem) + regionSelector.ReselectActiveItem(); + } + + public void onPanelOutClick() + { + if (regionPanel.isVisible()) + closeRegionPanel(true); + + else if (settingsPanel.isVisible()) + closeSettingsPanel(); + + else setPanelOpen(false); + } + + private void setPanelOpen(bool open) + { + shadow.Animate(open); + setAvatarColliderState( ! open); + } + public void setPauseMenuState(bool active) { this.pauseMenu.SetActive(active); diff --git a/Assets/Scripts/UI/SlidingHidder.cs b/Assets/Scripts/UI/SlidingHidder.cs index 9d7f301..1c97303 100644 --- a/Assets/Scripts/UI/SlidingHidder.cs +++ b/Assets/Scripts/UI/SlidingHidder.cs @@ -1,60 +1,74 @@ using UnityEngine; using System.Collections; -public class SlidingHidder : MonoBehaviour { - - public bool visible = true; - public bool slideOnX = true; - public bool toLeft = true; - public bool slideOnY = false; - public bool toTop = false; - public float speed = 1f; - public bool disableWhenHidden = true; - - private Transform transform; - private Vector2 hiddenPosition; - private Vector2 visiblePosition; - - public void setVisible(bool visible) - { - this.gameObject.SetActive(true); - this.visible = visible; - } - - void Start () - { - transform = this.gameObject.transform; - Rect obj = this.gameObject.GetComponent().rect; - - visiblePosition = transform.position; - hiddenPosition = visiblePosition; - - if (slideOnX) hiddenPosition.x += toLeft ? -obj.width : obj.width; - if (slideOnY) hiddenPosition.y += toTop ? -obj.height: obj.height; - - transform.position = visible ? visiblePosition : hiddenPosition; - this.gameObject.SetActive(visible); - } - - void Update () - { - Vector2 position = transform.position; - Vector2 objective = visible ? visiblePosition : hiddenPosition; - - if (slideOnX && Mathf.Abs(position.x - objective.x) > speed) - position.x += position.x < objective.x ? speed : -speed; - else - position.x = objective.x; - - if (slideOnY && Mathf.Abs(position.y - objective.y) > speed) - position.y = position.y + (position.y < objective.y ? speed : -speed); - else - position.y = objective.y; - - transform.position = position; - this.gameObject.SetActive(!disableWhenHidden - || (position.x != hiddenPosition.x || position.y != hiddenPosition.y) - ); - } +namespace LAViD.VLibras.UI { + + public class SlidingHidder : ExchangeableVisibility { + + public bool slideOnX = true; + public bool toLeft = true; + //public bool slideOnY = false; + //public bool toTop = false; + public float speed = 1f; + public bool disableWhenHidden = true; + + private Transform transform; + private Vector2 hiddenPosition; + private Vector2 visiblePosition; + + public override void Animate(bool visible) + { + if (base.isVisible() != visible) + { + this.gameObject.SetActive(true); + base.Animate(visible); + } + } + + void Start() + { + this.transform = this.gameObject.transform; + this.speed = Screen.width * this.speed; + Rect obj = this.gameObject.GetComponent().rect; + + this.visiblePosition = transform.position; + this.hiddenPosition = transform.position; + + if (this.slideOnX) this.hiddenPosition.x += toLeft ? -obj.width : obj.width; + //if (this.slideOnY) this.hiddenPosition.y += toTop ? -obj.height: obj.height; + + this.transform.position = base.isVisible() ? this.visiblePosition : this.hiddenPosition; + this.gameObject.SetActive(base.isVisible()); + } + + void Update() + { + Vector2 position = transform.position; + Vector2 objective = base.isVisible() ? this.visiblePosition : this.hiddenPosition; + bool changed = true; + + if (this.slideOnX && Mathf.Abs(position.x - objective.x) > this.speed) + position.x += position.x < objective.x ? this.speed : -this.speed; + + else if (position.x != objective.x) + position.x = objective.x; + + else changed = false; + + /*if (slideOnY && Mathf.Abs(position.y - objective.y) > speed) + position.y = position.y + (position.y < objective.y ? speed : -speed); + else + position.y = objective.y;*/ + + if (changed) + { + this.transform.position = position; + this.gameObject.SetActive( ! this.disableWhenHidden + || (position.x != this.hiddenPosition.x /*|| position.y != hiddenPosition.y*/) + ); + } + } + + } } diff --git a/ProjectSettings/GraphicsSettings.asset b/ProjectSettings/GraphicsSettings.asset index 057c661..1277112 100644 --- a/ProjectSettings/GraphicsSettings.asset +++ b/ProjectSettings/GraphicsSettings.asset @@ -39,20 +39,20 @@ GraphicsSettings: m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_ShaderSettings_Tier1: - useCascadedShadowMaps: 1 - standardShaderQuality: 2 - useReflectionProbeBoxProjection: 1 - useReflectionProbeBlending: 1 + useCascadedShadowMaps: 0 + standardShaderQuality: 0 + useReflectionProbeBoxProjection: 0 + useReflectionProbeBlending: 0 m_ShaderSettings_Tier2: - useCascadedShadowMaps: 1 - standardShaderQuality: 2 - useReflectionProbeBoxProjection: 1 - useReflectionProbeBlending: 1 + useCascadedShadowMaps: 0 + standardShaderQuality: 1 + useReflectionProbeBoxProjection: 0 + useReflectionProbeBlending: 0 m_ShaderSettings_Tier3: - useCascadedShadowMaps: 1 - standardShaderQuality: 2 - useReflectionProbeBoxProjection: 1 - useReflectionProbeBlending: 1 + useCascadedShadowMaps: 0 + standardShaderQuality: 1 + useReflectionProbeBoxProjection: 0 + useReflectionProbeBlending: 0 m_BuildTargetShaderSettings: [] m_LightmapStripping: 0 m_FogStripping: 0 -- libgit2 0.21.2