Commit 956881583bd272afb467a10334afa317ac136588
1 parent
39372c3a
Exists in
master
and in
6 other branches
Otimization
Showing
5 changed files
with
142 additions
and
121 deletions
Show diff stats
Assets/Scenes/Main.unity
@@ -5756,7 +5756,7 @@ GameObject: | @@ -5756,7 +5756,7 @@ GameObject: | ||
5756 | m_Icon: {fileID: 0} | 5756 | m_Icon: {fileID: 0} |
5757 | m_NavMeshLayer: 0 | 5757 | m_NavMeshLayer: 0 |
5758 | m_StaticEditorFlags: 0 | 5758 | m_StaticEditorFlags: 0 |
5759 | - m_IsActive: 1 | 5759 | + m_IsActive: 0 |
5760 | --- !u!224 &970584909 | 5760 | --- !u!224 &970584909 |
5761 | RectTransform: | 5761 | RectTransform: |
5762 | m_ObjectHideFlags: 0 | 5762 | m_ObjectHideFlags: 0 |
@@ -6697,7 +6697,7 @@ MonoBehaviour: | @@ -6697,7 +6697,7 @@ MonoBehaviour: | ||
6697 | m_HorizontalOverflow: 0 | 6697 | m_HorizontalOverflow: 0 |
6698 | m_VerticalOverflow: 0 | 6698 | m_VerticalOverflow: 0 |
6699 | m_LineSpacing: 1 | 6699 | m_LineSpacing: 1 |
6700 | - m_Text: Version 3.0.34 | 6700 | + m_Text: Version 3.0.36 |
6701 | --- !u!222 &1071047506 | 6701 | --- !u!222 &1071047506 |
6702 | CanvasRenderer: | 6702 | CanvasRenderer: |
6703 | m_ObjectHideFlags: 0 | 6703 | m_ObjectHideFlags: 0 |
@@ -13955,7 +13955,7 @@ GameObject: | @@ -13955,7 +13955,7 @@ GameObject: | ||
13955 | m_Icon: {fileID: 0} | 13955 | m_Icon: {fileID: 0} |
13956 | m_NavMeshLayer: 0 | 13956 | m_NavMeshLayer: 0 |
13957 | m_StaticEditorFlags: 0 | 13957 | m_StaticEditorFlags: 0 |
13958 | - m_IsActive: 1 | 13958 | + m_IsActive: 0 |
13959 | --- !u!224 &2099411279 | 13959 | --- !u!224 &2099411279 |
13960 | RectTransform: | 13960 | RectTransform: |
13961 | m_ObjectHideFlags: 0 | 13961 | m_ObjectHideFlags: 0 |
@@ -13970,10 +13970,10 @@ RectTransform: | @@ -13970,10 +13970,10 @@ RectTransform: | ||
13970 | m_Children: [] | 13970 | m_Children: [] |
13971 | m_Father: {fileID: 702185295} | 13971 | m_Father: {fileID: 702185295} |
13972 | m_RootOrder: 2 | 13972 | m_RootOrder: 2 |
13973 | - m_AnchorMin: {x: 0, y: 0} | ||
13974 | - m_AnchorMax: {x: 0, y: 0} | ||
13975 | - m_AnchoredPosition: {x: 0, y: 0} | ||
13976 | - m_SizeDelta: {x: 0, y: 0} | 13973 | + m_AnchorMin: {x: 0, y: 1} |
13974 | + m_AnchorMax: {x: 0, y: 1} | ||
13975 | + m_AnchoredPosition: {x: 260.71997, y: -76.62858} | ||
13976 | + m_SizeDelta: {x: 106, y: 106} | ||
13977 | m_Pivot: {x: 0.5, y: 0.5} | 13977 | m_Pivot: {x: 0.5, y: 0.5} |
13978 | --- !u!114 &2099411280 | 13978 | --- !u!114 &2099411280 |
13979 | MonoBehaviour: | 13979 | MonoBehaviour: |
@@ -0,0 +1,20 @@ | @@ -0,0 +1,20 @@ | ||
1 | +using System; | ||
2 | +using System.Collections.Generic; | ||
3 | +using System.Linq; | ||
4 | +using System.Text; | ||
5 | + | ||
6 | +namespace LAViD.VLibras.Generic | ||
7 | +{ | ||
8 | + class Node | ||
9 | + { | ||
10 | + private bool end = false; | ||
11 | + private Node[] children = null; | ||
12 | + } | ||
13 | + | ||
14 | + class Trie | ||
15 | + { | ||
16 | + private Node root; | ||
17 | + | ||
18 | + // public Trie() | ||
19 | + } | ||
20 | +} |
@@ -0,0 +1,12 @@ | @@ -0,0 +1,12 @@ | ||
1 | +fileFormatVersion: 2 | ||
2 | +guid: 3238f46fe9379b2469349a4bce058b65 | ||
3 | +timeCreated: 1476385070 | ||
4 | +licenseType: Pro | ||
5 | +MonoImporter: | ||
6 | + serializedVersion: 2 | ||
7 | + defaultReferences: [] | ||
8 | + executionOrder: 0 | ||
9 | + icon: {instanceID: 0} | ||
10 | + userData: | ||
11 | + assetBundleName: | ||
12 | + assetBundleVariant: |
Assets/Scripts/Player Manager/GenericPlayerManager.cs
@@ -187,8 +187,8 @@ public abstract class GenericPlayerManager : MonoBehaviour { | @@ -187,8 +187,8 @@ public abstract class GenericPlayerManager : MonoBehaviour { | ||
187 | /* Para animações */ | 187 | /* Para animações */ |
188 | public void stopAnimations() | 188 | public void stopAnimations() |
189 | { | 189 | { |
190 | - StopCoroutine("AnimationsHandler"); | ||
191 | - this.randomAnimations.unlockFor("AnimationsHandler"); | 190 | + StopCoroutine("AnimationsWatcher"); |
191 | + this.randomAnimations.unlockFor("AnimationsWatcher"); | ||
192 | this.subtitles.setText(""); | 192 | this.subtitles.setText(""); |
193 | 193 | ||
194 | lock (this.animQueue) { this.animQueue.Clear(); } | 194 | lock (this.animQueue) { this.animQueue.Clear(); } |
@@ -472,13 +472,7 @@ public abstract class GenericPlayerManager : MonoBehaviour { | @@ -472,13 +472,7 @@ public abstract class GenericPlayerManager : MonoBehaviour { | ||
472 | string lastAnimationSubtitle = ""; | 472 | string lastAnimationSubtitle = ""; |
473 | bool spelled = false; | 473 | bool spelled = false; |
474 | 474 | ||
475 | - if ( ! this.playing) | ||
476 | - StartCoroutine("AnimationsHandler"); | ||
477 | - | ||
478 | - String[] stringPos = gloss.Split(' '); | ||
479 | - | ||
480 | Queue<ToPlay> toPlayQueue = new Queue<ToPlay>(); | 475 | Queue<ToPlay> toPlayQueue = new Queue<ToPlay>(); |
481 | - int wordsCount = 0; | ||
482 | toPlayQueue.Enqueue(new ToPlay(Subtitle.TYPE_NONE, DEFAULT_ANIMATION, "", this)); | 476 | toPlayQueue.Enqueue(new ToPlay(Subtitle.TYPE_NONE, DEFAULT_ANIMATION, "", this)); |
483 | 477 | ||
484 | /*WWW checkConnectionRequest = getCheckConnectionRequest(); | 478 | /*WWW checkConnectionRequest = getCheckConnectionRequest(); |
@@ -497,9 +491,9 @@ public abstract class GenericPlayerManager : MonoBehaviour { | @@ -497,9 +491,9 @@ public abstract class GenericPlayerManager : MonoBehaviour { | ||
497 | bool connected = true; | 491 | bool connected = true; |
498 | bool playingStarted = false; | 492 | bool playingStarted = false; |
499 | 493 | ||
494 | + String[] stringPos = gloss.Split(' '); | ||
500 | foreach (string aniName in stringPos) | 495 | foreach (string aniName in stringPos) |
501 | { | 496 | { |
502 | - wordsCount++; | ||
503 | if (String.IsNullOrEmpty(aniName)) continue; | 497 | if (String.IsNullOrEmpty(aniName)) continue; |
504 | 498 | ||
505 | bool nonexistent = nonexistentAssetBundles.Contains(aniName); | 499 | bool nonexistent = nonexistentAssetBundles.Contains(aniName); |
@@ -508,41 +502,46 @@ public abstract class GenericPlayerManager : MonoBehaviour { | @@ -508,41 +502,46 @@ public abstract class GenericPlayerManager : MonoBehaviour { | ||
508 | if ( ! nonexistent && ! loaded && connected) | 502 | if ( ! nonexistent && ! loaded && connected) |
509 | { | 503 | { |
510 | WWW bundleRequest = loadAssetBundle(aniName); | 504 | WWW bundleRequest = loadAssetBundle(aniName); |
511 | - yield return WaitForResponse(bundleRequest); | ||
512 | - | ||
513 | - PlayerLogger.Log("GPM", "L", "Bundle request done (" + aniName + ")."); | ||
514 | 505 | ||
515 | - if (bundleRequest.isDone && bundleRequest.error == null) | 506 | + if (bundleRequest != null) |
516 | { | 507 | { |
517 | - AssetBundle bundle = bundleRequest.assetBundle; | 508 | + yield return WaitForResponse(bundleRequest); |
509 | + | ||
510 | + PlayerLogger.Log("GPM", "L", "Bundle request done (" + aniName + ")."); | ||
518 | 511 | ||
519 | - if (bundle != null && !String.IsNullOrEmpty(bundle.mainAsset.name)) | 512 | + if (bundleRequest.isDone && bundleRequest.error == null) |
520 | { | 513 | { |
521 | - AnimationClip aniClip = bundle.mainAsset as AnimationClip; | ||
522 | - bundle.Unload(false); | 514 | + AssetBundle bundle = bundleRequest.assetBundle; |
523 | 515 | ||
524 | - if (aniClip) | 516 | + if (bundle != null && !String.IsNullOrEmpty(bundle.mainAsset.name)) |
525 | { | 517 | { |
526 | - COMPONENT_ANIMATION.AddClip(aniClip, aniName); | ||
527 | - if (playingStarted) yield return new WaitForEndOfFrame(); | 518 | + AnimationClip aniClip = bundle.mainAsset as AnimationClip; |
519 | + bundle.Unload(false); | ||
528 | 520 | ||
529 | - loadedAssetBundles.Add(aniName); | ||
530 | - loaded = true; | 521 | + if (aniClip) |
522 | + { | ||
523 | + COMPONENT_ANIMATION.AddClip(aniClip, aniName); | ||
524 | + if (playingStarted) yield return new WaitForEndOfFrame(); | ||
531 | 525 | ||
532 | - PlayerLogger.Log("GPM", "L", "Bundle \"" + aniName + "\" loaded!"); | 526 | + loadedAssetBundles.Add(aniName); |
527 | + loaded = true; | ||
528 | + | ||
529 | + PlayerLogger.Log("GPM", "L", "Bundle \"" + aniName + "\" loaded!"); | ||
530 | + } | ||
531 | + else PlayerLogger.Log("GPM", "L", "Sign \"" + aniName + "\" wasn't loaded successfuly."); | ||
533 | } | 532 | } |
534 | - else PlayerLogger.Log("GPM", "L", "Sign \"" + aniName + "\" wasn't loaded successfuly."); | ||
535 | - } | ||
536 | - else PlayerLogger.Log("GPM", "L", "Bundle \"" + aniName + "\" wasn't loaded successfuly."); | 533 | + else PlayerLogger.Log("GPM", "L", "Bundle \"" + aniName + "\" wasn't loaded successfuly."); |
537 | 534 | ||
538 | - if ( ! loaded) nonexistentAssetBundles.Add(aniName); | ||
539 | - } | ||
540 | - else | ||
541 | - { | ||
542 | - PlayerLogger.Log("GPM", "L", "Connection error."); | ||
543 | - onConnectionError(gloss, aniName); | 535 | + if ( ! loaded) nonexistentAssetBundles.Add(aniName); |
536 | + } | ||
537 | + else | ||
538 | + { | ||
539 | + PlayerLogger.Log("GPM", "L", "Connection error."); | ||
540 | + onConnectionError(gloss, aniName); | ||
541 | + } | ||
544 | } | 542 | } |
545 | - } | 543 | + else PlayerLogger.Log("GPM", "L", "Animation of \"" + aniName + "\" do not exist."); |
544 | + } | ||
546 | 545 | ||
547 | // Reproduz palavra | 546 | // Reproduz palavra |
548 | if (loaded) | 547 | if (loaded) |
@@ -588,7 +587,7 @@ public abstract class GenericPlayerManager : MonoBehaviour { | @@ -588,7 +587,7 @@ public abstract class GenericPlayerManager : MonoBehaviour { | ||
588 | } | 587 | } |
589 | } | 588 | } |
590 | 589 | ||
591 | - if (toPlayQueue.Count > 4 || wordsCount == stringPos.Length) { | 590 | + if (toPlayQueue.Count > 4) { |
592 | playingStarted = true; | 591 | playingStarted = true; |
593 | 592 | ||
594 | while (toPlayQueue.Count > 0) | 593 | while (toPlayQueue.Count > 0) |
@@ -601,6 +600,12 @@ public abstract class GenericPlayerManager : MonoBehaviour { | @@ -601,6 +600,12 @@ public abstract class GenericPlayerManager : MonoBehaviour { | ||
601 | if (playingStarted) yield return new WaitForEndOfFrame(); | 600 | if (playingStarted) yield return new WaitForEndOfFrame(); |
602 | } | 601 | } |
603 | 602 | ||
603 | + while (toPlayQueue.Count > 0) | ||
604 | + { | ||
605 | + toPlayQueue.Dequeue().play(this); | ||
606 | + yield return new WaitForEndOfFrame(); | ||
607 | + } | ||
608 | + | ||
604 | // Default | 609 | // Default |
605 | playAnimation(Subtitle.TYPE_NONE, DEFAULT_ANIMATION, ""); | 610 | playAnimation(Subtitle.TYPE_NONE, DEFAULT_ANIMATION, ""); |
606 | 611 | ||
@@ -610,93 +615,75 @@ public abstract class GenericPlayerManager : MonoBehaviour { | @@ -610,93 +615,75 @@ public abstract class GenericPlayerManager : MonoBehaviour { | ||
610 | } | 615 | } |
611 | 616 | ||
612 | /* Sincroniza as legendas com as animações. */ | 617 | /* Sincroniza as legendas com as animações. */ |
613 | - IEnumerator AnimationsHandler() | 618 | + IEnumerator AnimationsWatcher() |
614 | { | 619 | { |
615 | - this.playing = true; | ||
616 | - this.randomAnimations.lockFor("AnimationsHandler"); | ||
617 | - onPlayingStateChange(); | ||
618 | - | ||
619 | - bool isNotEmpty = this.animQueue.Count > 0; | ||
620 | - | ||
621 | - // Animação anterior a atual | ||
622 | - AnimationReference endedAnimation = null; | ||
623 | - | ||
624 | - // Enquanto estiver executando a corotina "Loader" | ||
625 | - // ou existir animações na fila de reprodução | ||
626 | - while (loading || isNotEmpty) | 620 | + PlayerLogger.Log("GPM", "AW", "Starting."); |
621 | + | ||
622 | + while (true) | ||
627 | { | 623 | { |
628 | - // Se não houver animações na fila, espera | ||
629 | - if (isNotEmpty) | 624 | + if (this.animQueue.Count > 0) |
630 | { | 625 | { |
631 | - // Pega primeira animação | ||
632 | - AnimationReference reference; | ||
633 | - lock (this.animQueue) { reference = this.animQueue.Peek(); } | ||
634 | - | ||
635 | - // Se estiver sendo reproduzida | ||
636 | - if (COMPONENT_ANIMATION.IsPlaying(reference.name)) | 626 | + if (!this.playing) |
637 | { | 627 | { |
638 | - this.subtitles.setText(reference.subtitle); | 628 | + PlayerLogger.Log("GPM", "AW", "Playing."); |
639 | 629 | ||
640 | - // Animação seguinte | ||
641 | - AnimationReference next = null; | ||
642 | - lock (this.animQueue) | ||
643 | - { | ||
644 | - this.animationPlaying = this.animQueue.Dequeue(); | 630 | + this.playing = true; |
631 | + onPlayingStateChange(); | ||
645 | 632 | ||
646 | - if (this.animQueue.Count > 0) | ||
647 | - next = this.animQueue.Peek(); | ||
648 | - } | 633 | + this.randomAnimations.lockFor("AnimationsWatcher"); |
634 | + } | ||
649 | 635 | ||
636 | + // Gets first animation | ||
637 | + AnimationReference reference = this.animQueue.Peek(); | ||
638 | + | ||
639 | + if (COMPONENT_ANIMATION.IsPlaying(reference.name)) | ||
640 | + { | ||
641 | + this.animationPlaying = this.animQueue.Dequeue(); | ||
642 | + this.subtitles.setText(reference.subtitle); | ||
643 | + | ||
644 | + // Watches transition between current and next animation | ||
650 | while (true) | 645 | while (true) |
651 | { | 646 | { |
652 | - // Se a próxima animação estiver sendo reproduzida (no fade) | 647 | + yield return new WaitForEndOfFrame(); |
648 | + | ||
649 | + // Gets next animation | ||
650 | + AnimationReference next = this.animQueue.Count > 0 ? this.animQueue.Peek() : null; | ||
651 | + | ||
653 | if (next != null && COMPONENT_ANIMATION.IsPlaying(next.name)) | 652 | if (next != null && COMPONENT_ANIMATION.IsPlaying(next.name)) |
654 | { | 653 | { |
655 | - // Se a animação anterior a atual não tiver acabado, | ||
656 | - // espera acabar e só então conta o tempo | ||
657 | - if (endedAnimation != null) | ||
658 | - while (COMPONENT_ANIMATION.IsPlaying(endedAnimation.name)) | ||
659 | - yield return null; | ||
660 | - | ||
661 | - // Tempo para pular para a legenda da próxima animação | ||
662 | - yield return new WaitForSeconds(0.4F); | ||
663 | - | ||
664 | - endedAnimation = reference; | 654 | + // Waits next animation starts |
655 | + while (!COMPONENT_ANIMATION.IsPlaying(next.name)) | ||
656 | + yield return new WaitForEndOfFrame(); | ||
657 | + | ||
658 | + // Waits half fade | ||
659 | + yield return new WaitForSeconds(this.fadeLength / 2); | ||
665 | break; | 660 | break; |
666 | } | 661 | } |
667 | - | ||
668 | - else if (COMPONENT_ANIMATION.IsPlaying(reference.name)) | ||
669 | - yield return null; | ||
670 | - | ||
671 | - else break; | 662 | + else if (!COMPONENT_ANIMATION.IsPlaying(reference.name)) break; |
672 | } | 663 | } |
673 | - | ||
674 | - reference = null; | ||
675 | } | 664 | } |
676 | 665 | ||
677 | - // Se a animação não tiver sido liberada e seu AnimationState for nulo, | ||
678 | - // a animação será liberada | ||
679 | - if (reference != null && reference.state == null) | 666 | + // Animation played but was not tracked |
667 | + if (reference.state == null) | ||
680 | this.animQueue.Dequeue(); | 668 | this.animQueue.Dequeue(); |
681 | - else | ||
682 | - yield return null; | ||
683 | - } | ||
684 | - else yield return null; | ||
685 | - | ||
686 | - isNotEmpty = this.animQueue.Count > 0; | ||
687 | - } | 669 | + } |
670 | + else if (this.playing && !this.loading) | ||
671 | + { | ||
672 | + PlayerLogger.Log("GPM", "AW", "Not playing."); | ||
688 | 673 | ||
689 | - this.subtitles.setText(""); | 674 | + resetStates(); |
690 | 675 | ||
691 | - resetStates(); | ||
692 | - this.randomAnimations.unlockFor("AnimationsHandler"); | 676 | + this.subtitles.setText(""); |
677 | + this.randomAnimations.unlockFor("AnimationsWatcher"); | ||
678 | + } | ||
679 | + } | ||
693 | } | 680 | } |
694 | 681 | ||
695 | public void resetStates() | 682 | public void resetStates() |
696 | { | 683 | { |
697 | - this.animationPlaying = null; | ||
698 | this.playing = false; | 684 | this.playing = false; |
699 | this.paused = false; | 685 | this.paused = false; |
686 | + this.animationPlaying = null; | ||
700 | 687 | ||
701 | onPlayingStateChange(); | 688 | onPlayingStateChange(); |
702 | } | 689 | } |
Assets/Scripts/PlayerManager.cs
@@ -68,8 +68,8 @@ public class PlayerManager : GenericPlayerManager { | @@ -68,8 +68,8 @@ public class PlayerManager : GenericPlayerManager { | ||
68 | #endif | 68 | #endif |
69 | 69 | ||
70 | Screen.fullScreen = false; | 70 | Screen.fullScreen = false; |
71 | - // Hide input text preview | ||
72 | - // TouchScreenKeyboard.hideInput = true; | 71 | + |
72 | + | ||
73 | } | 73 | } |
74 | 74 | ||
75 | public void playDict(string word) | 75 | public void playDict(string word) |
@@ -120,19 +120,19 @@ public class PlayerManager : GenericPlayerManager { | @@ -120,19 +120,19 @@ public class PlayerManager : GenericPlayerManager { | ||
120 | 120 | ||
121 | protected override WWW loadAssetBundle(string aniName) | 121 | protected override WWW loadAssetBundle(string aniName) |
122 | { | 122 | { |
123 | - string address = BASE_URL + regionPath + WWW.EscapeURL(aniName); | 123 | + if (this.regionHash == 1) |
124 | + { | ||
125 | + // Check if it exists in trie | ||
126 | + } | ||
127 | + | ||
128 | + string address = BASE_URL + this.regionPath + WWW.EscapeURL(aniName); | ||
124 | 129 | ||
125 | PlayerLogger.Log("PM", "lAB", "Requesting bundle: " + address); | 130 | PlayerLogger.Log("PM", "lAB", "Requesting bundle: " + address); |
126 | return WWW.LoadFromCacheOrDownload(address, this.regionHash); | 131 | return WWW.LoadFromCacheOrDownload(address, this.regionHash); |
127 | } | 132 | } |
128 | 133 | ||
129 | - private System.Object LOCKER_STATE = new System.Object(); | ||
130 | - | ||
131 | - public override void onPlayingStateChange() | ||
132 | - { | ||
133 | - lock (LOCKER_STATE) { | ||
134 | - this.screenManager.changeStates(base.isPlaying(), base.isPaused(), ! String.IsNullOrEmpty(base.gloss)); | ||
135 | - } | 134 | + public override void onPlayingStateChange() { |
135 | + this.screenManager.changeStates(base.isPlaying(), base.isPaused(), ! String.IsNullOrEmpty(base.gloss)); | ||
136 | } | 136 | } |
137 | 137 | ||
138 | public override void onConnectionError(string gloss, string word) | 138 | public override void onConnectionError(string gloss, string word) |
@@ -207,13 +207,8 @@ public class PlayerManager : GenericPlayerManager { | @@ -207,13 +207,8 @@ public class PlayerManager : GenericPlayerManager { | ||
207 | protected override IEnumerator WaitForResponse(WWW www) | 207 | protected override IEnumerator WaitForResponse(WWW www) |
208 | { | 208 | { |
209 | PlayerLogger.Log("PM", "WFR", "Stating time check."); | 209 | PlayerLogger.Log("PM", "WFR", "Stating time check."); |
210 | - | ||
211 | -#if UNITY_ANDROID | ||
212 | - const float timeoutLimit = 10f; | ||
213 | -#elif UNITY_IOS | ||
214 | - const float timeoutLimit = 3f; | ||
215 | -#endif | ||
216 | 210 | ||
211 | + const float timeoutLimit = 10f; | ||
217 | float timer = 0; | 212 | float timer = 0; |
218 | 213 | ||
219 | while ( ! www.isDone) | 214 | while ( ! www.isDone) |
@@ -263,9 +258,16 @@ public class PlayerManager : GenericPlayerManager { | @@ -263,9 +258,16 @@ public class PlayerManager : GenericPlayerManager { | ||
263 | 258 | ||
264 | PlayerLogger.Log("PM", "t", "(WWW) Error: " + glossRequest.error); | 259 | PlayerLogger.Log("PM", "t", "(WWW) Error: " + glossRequest.error); |
265 | } | 260 | } |
266 | - else if (glossRequest.responseHeaders.Count == 0 || !glossRequest.responseHeaders["STATUS"].EndsWith("200 OK")) | 261 | + else if (glossRequest.responseHeaders.Count == 0) |
262 | + { | ||
263 | + PlayerLogger.Log("PM", "t", "Unsuccessful answer (0)."); | ||
264 | + | ||
265 | + this.screenManager.showConnectionErrorDialog( | ||
266 | + PlayerManager.ERROR_STATUS_MESSAGE.TRANSLATOR_CONNECTION_FAILURE); | ||
267 | + } | ||
268 | + else if (!glossRequest.responseHeaders["STATUS"].Contains("200")) | ||
267 | { | 269 | { |
268 | - PlayerLogger.Log("PM", "t", "Unsuccessful answer."); | 270 | + PlayerLogger.Log("PM", "t", "Unsuccessful answer (" + glossRequest.responseHeaders["STATUS"] + ")."); |
269 | 271 | ||
270 | this.screenManager.showConnectionErrorDialog( | 272 | this.screenManager.showConnectionErrorDialog( |
271 | PlayerManager.ERROR_STATUS_MESSAGE.TRANSLATOR_CONNECTION_FAILURE); | 273 | PlayerManager.ERROR_STATUS_MESSAGE.TRANSLATOR_CONNECTION_FAILURE); |