public void DelayedAwake() { letters = new List <Letter>(maxLetters); currentWordPosibleState = EWordState.WORDS_AVAILABLE; if (PersistentData.GetInstance()) { wordsValidator = PersistentData.GetInstance().abcDictionary; } else { wordsValidator = FindObjectOfType <ABCDictionary> (); } if (inputWords) { inputWords.onTap += OnGridLetterTapped; inputWords.onTapToDelete += onLetterTap; inputWords.onLetterOnGridDragFinish += OnLetterDragStart; inputWords.onDragUpdate += OnLetterDragging; inputWords.onDragFinish += OnLetterDragFinish; inputWords.onDragStart += OnLetterDragStart; inputWords.onChangePutLetterOverContainer += onChangePutLetterOverContainer; } wordCompleteButtonRectTransform = wordCompleteButton.GetComponent <RectTransform>(); wordDeleteButtonRectTransform = wordDeleteButton.GetComponent <RectTransform>(); //wordCompleteButtonRectTransform.anchoredPosition = new Vector2 (Screen.width * 0.5f, wordCompleteButtonRectTransform.anchoredPosition.y); //wordDeleteButtonRectTransform.anchoredPosition = new Vector2 (Screen.width * 0.5f, wordDeleteButtonRectTransform.anchoredPosition.y); activateWordBtn(false, false); activatePointsGO(false); activateNoWordPosibleText(false); centerVacuum = Screen.width * 0.5f; wordContainerLayout = letterContainer.GetComponent <GridLayoutGroup>(); wordContainerRectTransform = letterContainer.GetComponent <RectTransform> (); noWordPosible.transform.position = letterContainer.transform.position; letterContainerTransform = letterContainer.transform; }
IEnumerator updateLetterHintState(List <Letter> gridLetter) { yield return(new WaitForSeconds(0)); cancelHint = false; for (int i = 0; i < gridLetter.Count; i++) { yield return(new WaitForSeconds(0.4f)); if (!cancelHint && gridLetter[i] != null) { //gridLetter [i].updateState (Letter.EState.NORMAL); //HighLightManager.GetInstance ().setHighLightOfType (HighLightManager.EHighLightType.SPECIFIC_CELL,cellSelected.transform); gridLetter[i].transform.DOShakePosition(0.5f); gridLetter [i].hinted = true; gridLetter [i].updateState(Letter.EState.HINTED); if (AudioManager.GetInstance()) { AudioManager.GetInstance().Stop("helpLetterSuggested"); AudioManager.GetInstance().Play("helpLetterSuggested"); } yield return(new WaitForSeconds(0.4f)); } } yield return(new WaitForSeconds(0.4f)); if (!cancelHint) { HighLightManager.GetInstance().turnOffHighLights(HighLightManager.EHighLightType.SPECIFIC_CELL); currentWordPosibleState = EWordState.HINTED_WORDS; for (int i = 0; i < gridLetter.Count; i++) { gridLetter [i].hinted = false; } updateGridLettersState(gridLetter, EWordState.WORDS_AVAILABLE); updateGridLettersState(gridLetter, EWordState.HINTED_WORDS); } }
public void updateGridLettersState(List <Letter> gridLetter, EWordState wordState) { switch (wordState) { case EWordState.NO_WORDS_AVAILABLE: currentWordPosibleState = EWordState.NO_WORDS_AVAILABLE; for (int i = 0; i < gridLetter.Count; i++) { gridLetter [i].updateState(Letter.EState.WRONG); } //noWordPosible.SetActive (true); activateNoWordPosibleText(true); break; case EWordState.WORDS_AVAILABLE: //if(currentWordPosibleState != EWordState.WORDS_AVAILABLE) { currentWordPosibleState = EWordState.WORDS_AVAILABLE; for (int i = 0; i < gridLetter.Count; i++) { gridLetter [i].updateState(Letter.EState.NORMAL); } activateNoWordPosibleText(false); } //noWordPosible.SetActive (false); break; case EWordState.HINTED_WORDS: if (currentWordPosibleState != EWordState.HINTED_WORDS && !cancelHint) { hintedLetters = gridLetter; currentWordPosibleState = EWordState.HINTED_WORDS; StartCoroutine(updateLetterHintState(gridLetter)); } break; } }