private IEnumerator ComprobarPareja() { if (_primeraRevelada.id == _segundaRevelada.id) { cartasSolucionadas++; _puntuacion++; subir.subirMonedas(_puntuacion); subir.subirExperiencia(0.05f); subirAtributo.subirDiversion(10); ParticleSystem carta1 = _primeraRevelada.gameObject.transform.Find("Particle System").gameObject.GetComponent <ParticleSystem>(); ParticleSystem carta2 = _segundaRevelada.gameObject.transform.Find("Particle System").gameObject.GetComponent <ParticleSystem>(); carta1.Play(); carta2.Play(); AudioSource audio = _primeraRevelada.gameObject.GetComponent <AudioSource>(); audio.Play(); if (cartasSolucionadas == 10) { Debug.Log("Terminado"); panelMensaje.SetActive(true); } } else { yield return(new WaitForSeconds(0.5f)); _primeraRevelada.Revelar(); _segundaRevelada.Revelar(); } _primeraRevelada = null; _segundaRevelada = null; }
public void CartaRevelada(CartaPrincipal carta) { if (_primeraRevelada == null) { _primeraRevelada = carta; } else { _segundaRevelada = carta; StartCoroutine(ComprobarPareja()); } }
public void RellenarPanelCartas() { originalCard = panelCartas.transform.GetChild(0).gameObject.GetComponent <CartaPrincipal>(); cartasSolucionadas = 0; Vector3 startPos = originalCard.transform.position; //The position of the first card. All other cards are offset from here. CartaPrincipal cartaCopia = Instantiate(originalCard, panelCartas.transform) as CartaPrincipal; cartaCopia.name = "CARTA_ORIGINAL"; cartaCopia.gameObject.SetActive(false); int[] numbers = { 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9 }; numbers = ShuffleArray(numbers); for (int i = 0; i < gridCols; i++) { for (int j = 0; j < gridRows; j++) { CartaPrincipal card; if (i == 0 && j == 0) { card = originalCard; } else { card = Instantiate(originalCard, panelCartas.transform) as CartaPrincipal; } int index = j * gridCols + i; int id = numbers[index]; card.CambiarSprite(id, images[id]); float posX = (offsetX * i) + startPos.x; float posY = (offsetY * j) + startPos.y; card.transform.position = new Vector3(posX, posY, startPos.z); } } }