Commit 719babec26703efc8761deb976c4e8ece58a635b
1 parent
9597262e
Exists in
master
and in
6 other branches
Arquivo sinais.txt em .9/anims; Scroll para o topo quando a pesquisa é alterada;
Showing
5 changed files
with
73 additions
and
69 deletions
Show diff stats
Assets/Resources/sinais.txt
1 | - | ||
2 | -% | ||
3 | , | 1 | , |
4 | 0 | 2 | 0 |
5 | 1 | 3 | 1 |
@@ -2351,16 +2349,6 @@ CUSTEAR | @@ -2351,16 +2349,6 @@ CUSTEAR | ||
2351 | CUSTOSO | 2349 | CUSTOSO |
2352 | CUTANEO | 2350 | CUTANEO |
2353 | CUTUCAR | 2351 | CUTUCAR |
2354 | -Cotovelo | ||
2355 | -Cozinheira | ||
2356 | -Cpf | ||
2357 | -Crer | ||
2358 | -Crianca | ||
2359 | -Cueca | ||
2360 | -Cuidadoso | ||
2361 | -Cumprimentos | ||
2362 | -Cunhada | ||
2363 | -Curitiba | ||
2364 | DÓLAR | 2352 | DÓLAR |
2365 | D | 2353 | D |
2366 | DA | 2354 | DA |
@@ -2848,7 +2836,7 @@ DIGITADOR | @@ -2848,7 +2836,7 @@ DIGITADOR | ||
2848 | DIGITAL | 2836 | DIGITAL |
2849 | DIGITALIZADA | 2837 | DIGITALIZADA |
2850 | DIGITALIZADO | 2838 | DIGITALIZADO |
2851 | -DIGITAR 23-Sep-2015 17:56 61K | 2839 | +DIGITAR |
2852 | DIGITO | 2840 | DIGITO |
2853 | DIGNIDADE | 2841 | DIGNIDADE |
2854 | DIGNO | 2842 | DIGNO |
@@ -3054,18 +3042,18 @@ DURO | @@ -3054,18 +3042,18 @@ DURO | ||
3054 | DUVIDA | 3042 | DUVIDA |
3055 | DUVIDOSO | 3043 | DUVIDOSO |
3056 | DVD | 3044 | DVD |
3057 | -Dama | ||
3058 | -Decidir | ||
3059 | -Dedo | ||
3060 | -Default Take | ||
3061 | -Descer | ||
3062 | -Diminuir | ||
3063 | -Diretor | ||
3064 | -Disputar | ||
3065 | -Distrito-federal | ||
3066 | -Dividir | ||
3067 | -Divorciar | ||
3068 | -Domino | 3045 | +DAMA |
3046 | +DECIDIR | ||
3047 | +DEDO | ||
3048 | +DEFAULT TAKE | ||
3049 | +DESCER | ||
3050 | +DIMINUIR | ||
3051 | +DIRETOR | ||
3052 | +DISPUTAR | ||
3053 | +DISTRITO-FEDERAL | ||
3054 | +DIVIDIR | ||
3055 | +DIVORCIAR | ||
3056 | +DOMINO | ||
3069 | E | 3057 | E |
3070 | EBRIO | 3058 | EBRIO |
3071 | ECOLOGIA | 3059 | ECOLOGIA |
@@ -5249,7 +5237,7 @@ LACRIMEJANTE | @@ -5249,7 +5237,7 @@ LACRIMEJANTE | ||
5249 | LACRIMEJAR | 5237 | LACRIMEJAR |
5250 | LACTEO | 5238 | LACTEO |
5251 | LACTOSE | 5239 | LACTOSE |
5252 | -LADO24-Sep-2015 09:59 19K | 5240 | +LADO |
5253 | LADRAR | 5241 | LADRAR |
5254 | LADRILHO | 5242 | LADRILHO |
5255 | LAGARTA | 5243 | LAGARTA |
Assets/Scripts/Animation List/ListManager.cs
@@ -61,18 +61,20 @@ public class ListManager : MonoBehaviour { | @@ -61,18 +61,20 @@ public class ListManager : MonoBehaviour { | ||
61 | 61 | ||
62 | public IEnumerator load() | 62 | public IEnumerator load() |
63 | { | 63 | { |
64 | - string[] lines; | ||
65 | - WWW www = new WWW("http://vlibras.lavid.ufpb.br/sinais.txt"); | 64 | + WWW www = new WWW("http://150.165.205.9/anims/sinais.txt"); |
66 | yield return www; | 65 | yield return www; |
67 | 66 | ||
68 | - if (www.error != null) | 67 | + string[] lines = new string[0]; |
68 | + | ||
69 | + if (string.IsNullOrEmpty(www.error)) | ||
69 | { | 70 | { |
70 | - TextAsset file = Resources.Load("sinais") as TextAsset; | ||
71 | - lines = file.text.Split("\n"[0]); | 71 | + lines = System.Text.Encoding.UTF8.GetString(www.bytes, 0, www.bytes.Length).Split('\n'); |
72 | } | 72 | } |
73 | else | 73 | else |
74 | { | 74 | { |
75 | - lines = www.text.Split("\n"[0]); | 75 | + TextAsset file = Resources.Load("sinais") as TextAsset; |
76 | + lines = System.Text.Encoding.UTF8.GetString(file.bytes, 0, file.bytes.Length).Split('\n'); | ||
77 | + // lines = file.text.Split("\n"[0]); | ||
76 | } | 78 | } |
77 | 79 | ||
78 | this.trie = new TrieST<string>(); | 80 | this.trie = new TrieST<string>(); |
@@ -109,6 +111,7 @@ public class ListManager : MonoBehaviour { | @@ -109,6 +111,7 @@ public class ListManager : MonoBehaviour { | ||
109 | Destroy(go); | 111 | Destroy(go); |
110 | 112 | ||
111 | populateList(); | 113 | populateList(); |
114 | + this.scrollView.verticalNormalizedPosition = 1F; | ||
112 | } | 115 | } |
113 | 116 | ||
114 | private void populateList() | 117 | private void populateList() |
Assets/Scripts/Animation List/TrieST.cs
@@ -52,7 +52,6 @@ public class TrieST<Value> | @@ -52,7 +52,6 @@ public class TrieST<Value> | ||
52 | 52 | ||
53 | private Node put(Node x, String key, String val, int d) | 53 | private Node put(Node x, String key, String val, int d) |
54 | { | 54 | { |
55 | - | ||
56 | if (x == null) x = new Node(); | 55 | if (x == null) x = new Node(); |
57 | if (d == key.Length) | 56 | if (d == key.Length) |
58 | { | 57 | { |
@@ -60,10 +59,16 @@ public class TrieST<Value> | @@ -60,10 +59,16 @@ public class TrieST<Value> | ||
60 | x.val = val; | 59 | x.val = val; |
61 | return x; | 60 | return x; |
62 | } | 61 | } |
63 | - int c = indexes[key[d]]; | ||
64 | - x.next[c] = put(x.next[c], key, val, d + 1); | ||
65 | - return x; | ||
66 | 62 | ||
63 | + try { | ||
64 | + int c = indexes[key[d]]; | ||
65 | + x.next[c] = put(x.next[c], key, val, d + 1); | ||
66 | + } | ||
67 | + catch (IndexOutOfRangeException) { | ||
68 | + Debug.Log("Error at TrieST.put: { key: " + key + "; index: " + d + "; value: " + ((int) key[d]) + " }"); | ||
69 | + } | ||
70 | + | ||
71 | + return x; | ||
67 | } | 72 | } |
68 | 73 | ||
69 | public Queue<String> keys() | 74 | public Queue<String> keys() |
Assets/Scripts/Player Manager/GenericPlayerManager.cs
1 | /** Gerenciador genérico e principal dos players. | 1 | /** Gerenciador genérico e principal dos players. |
2 | * | 2 | * |
3 | - * Versão: 2.1 | 3 | + * Versão 2.1 |
4 | * - Acompanhamento da legenda | 4 | * - Acompanhamento da legenda |
5 | - * Corrigido problema na soletração quando a velocidade ultrapassava ~1 | 5 | + * Corrigido problema na soletração quando a velocidade ultrapassava ~1. |
6 | + * | ||
7 | + * Versão 2.2 | ||
8 | + * - Acompanhamento da legenda | ||
9 | + * Corrigido problema na soletração quando o estado muda para pausado. | ||
6 | */ | 10 | */ |
7 | 11 | ||
8 | //Log Dir http://docs.unity3d.com/Manual/LogFiles.html | 12 | //Log Dir http://docs.unity3d.com/Manual/LogFiles.html |
@@ -479,8 +483,10 @@ public abstract class GenericPlayerManager : MonoBehaviour { | @@ -479,8 +483,10 @@ public abstract class GenericPlayerManager : MonoBehaviour { | ||
479 | 483 | ||
480 | loadedAssetBundles.Add(aniName); | 484 | loadedAssetBundles.Add(aniName); |
481 | loaded = true; | 485 | loaded = true; |
486 | + | ||
487 | + Debug.Log("Bundle \"" + aniName + "\" loaded!"); | ||
482 | } | 488 | } |
483 | - else UnityEngine.Debug.Log ("Sinal \"" + aniName + "\" não carregado corretamente."); | 489 | + else UnityEngine.Debug.Log ("Sinal \"" + aniName + "\" foi não carregado corretamente."); |
484 | } | 490 | } |
485 | } | 491 | } |
486 | else onConnectionError(gloss, aniName); | 492 | else onConnectionError(gloss, aniName); |
@@ -522,18 +528,19 @@ public abstract class GenericPlayerManager : MonoBehaviour { | @@ -522,18 +528,19 @@ public abstract class GenericPlayerManager : MonoBehaviour { | ||
522 | 528 | ||
523 | if (this.flags.Contains(aniName) || this.intervalAnimations.Contains(aniName)) | 529 | if (this.flags.Contains(aniName) || this.intervalAnimations.Contains(aniName)) |
524 | { | 530 | { |
525 | - //playAnimation(Subtitle.TYPE_NONE, DEFAULT_ANIMATION, "", 1.6F); | ||
526 | toPlayQueue.Enqueue(new ToPlay(Subtitle.TYPE_NONE, DEFAULT_ANIMATION_MIDDLE, "", 1.6F)); | 531 | toPlayQueue.Enqueue(new ToPlay(Subtitle.TYPE_NONE, DEFAULT_ANIMATION_MIDDLE, "", 1.6F)); |
527 | - continue; | 532 | + spelled = false; |
528 | } | 533 | } |
529 | - | ||
530 | - // Se já houve o soletramento de alguma palavra, reproduz animação default | ||
531 | - if (spelled) | ||
532 | - toPlayQueue.Enqueue(new ToPlay(Subtitle.TYPE_NONE, DEFAULT_ANIMATION_MIDDLE, lastAnimationSubtitle, 1.6F)); | ||
533 | else | 534 | else |
534 | - spelled = true; | 535 | + { |
536 | + // Se já houve o soletramento de alguma palavra, reproduz animação default | ||
537 | + if (spelled) | ||
538 | + toPlayQueue.Enqueue(new ToPlay(Subtitle.TYPE_NONE, DEFAULT_ANIMATION_MIDDLE, "", 1.6F)); | ||
539 | + else | ||
540 | + spelled = true; | ||
535 | 541 | ||
536 | - lastAnimationSubtitle = spellWord(toPlayQueue, aniName); | 542 | + lastAnimationSubtitle = spellWord(toPlayQueue, aniName); |
543 | + } | ||
537 | } | 544 | } |
538 | 545 | ||
539 | if (toPlayQueue.Count > 4 || wordsCount == stringPos.Length) | 546 | if (toPlayQueue.Count > 4 || wordsCount == stringPos.Length) |
Assets/Scripts/Player Manager/RandomAnimations.cs
@@ -60,36 +60,37 @@ public class RandomAnimations : MonoBehaviour { | @@ -60,36 +60,37 @@ public class RandomAnimations : MonoBehaviour { | ||
60 | { | 60 | { |
61 | while (true) | 61 | while (true) |
62 | { | 62 | { |
63 | - while (this.playerManager.isPlayingIntervalAnimation()) | ||
64 | - yield return new WaitForSeconds(1); | 63 | + // Espera enquanto estiver reproduzindo animações de intervalo |
64 | + do { yield return null; } | ||
65 | + while (this.playerManager.isPlayingIntervalAnimation()); | ||
65 | 66 | ||
66 | - bool isNotBlocked; | ||
67 | - lock (this.blockingObjects) { | ||
68 | - isNotBlocked = this.blockingObjects.Count == 0; | ||
69 | - } | ||
70 | - | ||
71 | - if (isNotBlocked) | 67 | + // Se houver bloqueio, espera acabar |
68 | + while (true) | ||
72 | { | 69 | { |
73 | - yield return new WaitForSeconds(this.time); | ||
74 | - | ||
75 | lock (this.blockingObjects) { | 70 | lock (this.blockingObjects) { |
76 | - if (this.blockingObjects.Count > 0) | ||
77 | - continue; | 71 | + if (this.blockingObjects.Count == 0) |
72 | + break; | ||
78 | } | 73 | } |
79 | 74 | ||
80 | - int index = sortIndex(); | 75 | + yield return null; |
76 | + } | ||
81 | 77 | ||
82 | - if (index != -1) | ||
83 | - { | ||
84 | - if (index == this.lastIndex) | ||
85 | - index = sortIndex(); | 78 | + // Espera time |
79 | + yield return new WaitForSeconds(this.time); | ||
86 | 80 | ||
87 | - //this.playerManager.play(this.names[index], true, false, true); | ||
88 | - this.playerManager.playIntervalAnimation(this.names[index]); | ||
89 | - } | 81 | + // Se houver bloqueio, volta a esperar |
82 | + lock (this.blockingObjects) { | ||
83 | + if (this.blockingObjects.Count > 0) | ||
84 | + continue; | ||
90 | } | 85 | } |
91 | - | ||
92 | - yield return null; | 86 | + |
87 | + int index = sortIndex(); | ||
88 | + | ||
89 | + if (index != -1 && index == this.lastIndex) | ||
90 | + index = sortIndex(); | ||
91 | + | ||
92 | + if (index != -1) | ||
93 | + this.playerManager.playIntervalAnimation(this.names[index]); | ||
93 | } | 94 | } |
94 | } | 95 | } |
95 | 96 |