void TilesAction() { if (!FirstGuess) { //string buttonName = EventSystem.current.currentSelectedGameObject.name; FirstGuess = true; FirstSelectedobj = EventSystem.current.currentSelectedGameObject; FirstObjSprite = FirstSelectedobj.GetComponent <Image>().sprite; FirstSelectedobj.GetComponent <Image>().sprite = GeneratedSprite[int.Parse(EventSystem.current.currentSelectedGameObject.name)]; FirstSelectedobj.GetComponent <Button>().enabled = false; FirstGuessName = GeneratedSprite[int.Parse(EventSystem.current.currentSelectedGameObject.name)].name; FirstSelectedobj.tag = DustbinNames.Contains(FirstGuessName) ? "Dustbin" : "Waste"; } else if (!SecondGuess) { SecondGuess = true; SecondSelectedobj = EventSystem.current.currentSelectedGameObject; SecondObjSprite = SecondSelectedobj.GetComponent <Image>().sprite; SecondSelectedobj.GetComponent <Image>().sprite = GeneratedSprite[int.Parse(EventSystem.current.currentSelectedGameObject.name)]; SecondSelectedobj.GetComponent <Button>().enabled = false; SecondGuessName = GeneratedSprite[int.Parse(EventSystem.current.currentSelectedGameObject.name)].name; SecondSelectedobj.tag = DustbinNames.Contains(SecondGuessName) ? "Dustbin" : "Waste"; StartCoroutine(CheckAns()); } }
IEnumerator CheckAns() { yield return(new WaitForSeconds(0.5f)); if (FirstSelectedobj.tag == "Waste" && SecondSelectedobj.tag == "Dustbin") { var wasteType = WasteCollection.FirstOrDefault(x => x.Key.Equals(SecondSelectedName, System.StringComparison.OrdinalIgnoreCase)); var isBelongToWasteType = wasteType.Value. Any(x => x.name.Equals(FirstSelectedName, System.StringComparison.OrdinalIgnoreCase)); if (isBelongToWasteType) { FirstSelectedobj.GetComponent <Image>().enabled = false; SecondSelectedobj.GetComponent <Image>().enabled = false; FirstSelectedobj.GetComponent <Button>().enabled = false; SecondSelectedobj.GetComponent <Button>().enabled = false; FirstGuess = SecondGuess = false; CorrectGuess++; CorrectTiles.text = CorrectGuess.ToString(); } else { Debug.Log(" Found object"); FirstSelectedobj.GetComponent <Image>().sprite = FirstObjSprite; SecondSelectedobj.GetComponent <Image>().sprite = SecondObjSprite; FirstSelectedobj.GetComponent <Button>().enabled = true; SecondSelectedobj.GetComponent <Button>().enabled = true; FirstGuess = SecondGuess = false; } } else if (SecondSelectedobj.tag == "Waste" && FirstSelectedobj.tag == "Dustbin") { var wasteType = WasteCollection.FirstOrDefault(x => x.Key.Equals(FirstSelectedName, System.StringComparison.OrdinalIgnoreCase)); var isBelongToWasteType = wasteType.Value. Any(x => x.name.Equals(SecondSelectedName, System.StringComparison.OrdinalIgnoreCase)); if (isBelongToWasteType) { FirstSelectedobj.GetComponent <Image>().enabled = false; SecondSelectedobj.GetComponent <Image>().enabled = false; FirstGuess = SecondGuess = false; FirstSelectedobj.GetComponent <Button>().enabled = false; SecondSelectedobj.GetComponent <Button>().enabled = false; CorrectGuess++; CorrectTiles.text = CorrectGuess.ToString(); } else { Debug.Log(" Found object"); FirstSelectedobj.GetComponent <Image>().sprite = FirstObjSprite; SecondSelectedobj.GetComponent <Image>().sprite = SecondObjSprite; FirstSelectedobj.GetComponent <Button>().enabled = true; SecondSelectedobj.GetComponent <Button>().enabled = true; FirstGuess = SecondGuess = false; } } else { Debug.Log("Found object"); FirstSelectedobj.GetComponent <Image>().sprite = FirstObjSprite; SecondSelectedobj.GetComponent <Image>().sprite = SecondObjSprite; FirstSelectedobj.GetComponent <Button>().enabled = true; SecondSelectedobj.GetComponent <Button>().enabled = true; FirstGuess = SecondGuess = false; } //{ // //} if (CorrectGuess == TileCount) { Debug.Log("wind"); } }