private void wennKarteUmgedrehtWurde(Karte umgedrehteKarte) { Debug.Log("Spielprinzip weiß: Karte " + umgedrehteKarte + " wurde umgedreht."); if (!umgedrehteKarte.KarteSchonUmgedreht()) { return; } if (letzteKarte != null) //dies ist die zweite Karte { if (letzteKarte.hatSelbenWert(umgedrehteKarte)) //paar gefunden { Debug.Log("Die beiden Karten sind gleich. " + letzteKarte + " " + umgedrehteKarte); Destroy(letzteKarte.gameObject); Destroy(umgedrehteKarte.gameObject); } else { Debug.Log("Die beiden Karten sind unterschiedlich: " + letzteKarte + " " + umgedrehteKarte); umgedrehteKarte.Umdrehen(); letzteKarte.Umdrehen(); } letzteKarte = null; } else //dies ist die erste Karte { letzteKarte = umgedrehteKarte; } }
/// <summary> /// Funktion des Weiter-Buttons im Ungleiches-Paar-Dialog. /// </summary> public void ButtonKlickPaarVerwerfen() { ersteKarte.Umdrehen(); zweiteKarte.Umdrehen(); dialogUngleichesPaar.SetActive(false); ersteKarte = null; zweiteKarte = null; }
private void GibKarten(int anzahl, GameObject handstapel) { for (int i = 0; i < anzahl; i++) { Kartenbeschreibung karteAusStapel = stapel.hebeObersteKarteAb(); stapel.kartenContainer = handstapel; Karte karteInSzene = stapel.erzeugeKarteInSzene(); karteInSzene.setzeBeschreibung(karteAusStapel, true); karteInSzene.Umdrehen(); karteInSzene.GetComponent <Button>().onClick.AddListener(KlickAufHandStapelKarte); } }
public void EntferneObersteKarte() { if (transform.childCount == 0) { return; } Destroy(transform.GetChild(transform.childCount - 1).gameObject); if (transform.childCount >= 2) //wir brauchen mindestens 2 = die gelöschte + die darunterliegende { Karte k = transform.GetChild(transform.childCount - 2).GetComponent <Karte>(); //Debug.Log("Nächste Karte auf Container/Spalte = " + k); if (!k.KarteSchonUmgedreht()) { k.Umdrehen(); } } }
public void EntferneZiehendeKarten() { if (ziehendeKarten[0].transform.GetSiblingIndex() >= 1) //es liegt noch mind. 1 karte unter der untersten des gezogenen teilstapels { Karte k = transform.GetChild(ziehendeKarten[0].transform.GetSiblingIndex() - 1).GetComponent <Karte>(); //Debug.Log("Nächste Karte auf Container/Spalte = " + k); if (!k.KarteSchonUmgedreht()) { k.Umdrehen(); } } foreach (Karte k in ziehendeKarten) { Destroy(k.gameObject); } ziehendeKarten.Clear(); }
public void GibKarten(int anzahl, MauMauPartei spielpartei) { bool istSpieler = spielpartei is MauMauParteiSpieler; for (int i = 0; i < anzahl; i++) { Kartenbeschreibung karteAusStapel = stapel.hebeObersteKarteAb(); stapel.kartenContainer = spielpartei.gameObject; Karte karteInSzene = stapel.erzeugeKarteInSzene(); karteInSzene.setzeBeschreibung(karteAusStapel, istSpieler); if (istSpieler) { karteInSzene.Umdrehen(); } else { karteInSzene.TauscheKartenbild(); } spielpartei.WennKarteHinzugefuegtWurde(karteInSzene); } }