public void Start() { //Der Spieler beginnt Wurfrunde = new WurfRunde(); Wurfrunde.AnzahlWuerfe = 3; int CounterWegenAnzahlWuerfe = 0; foreach (SpielerBase spieler in AlleMitspieler) { if (spieler.NameSpieler.Equals("Spieler")) { if (spieler.Dabei) { //Der User würfelt selber WuerfelDialog dialog = new WuerfelDialog(Wurfrunde.AnzahlWuerfe); if (dialog.ShowDialog() == true) { spieler.Wurf = dialog.Wurf; _MainWindow.Spieler.SetCubeImages(dialog.Wurf); _MainWindow.Spieler.lblSpielername.Content = Wuerfe.Wurfbezeichnungen[Array.IndexOf(Wuerfe.WuerfeListe, spieler.Wurf)]; SortiereWurfInWurfrundeEin(spieler.Wurf, spieler); } } } else { if (spieler.Dabei) { //Der COmputer würfelt //Welcher SPieler? ucMitspieler aktSpieler = (from ucMitspieler spl in _MainWindow.Computerspieler where spl.Spieler.NameSpieler.Equals(spieler.NameSpieler) select spl).FirstOrDefault(); //TODO, das hier ist vorläufig. An diese STelle kommt noch eine Methode mit der Würfellogik für den Computerspieler spieler.Wurf = Wuerfeln.Wuerfle(3); aktSpieler.SetCubeImages(spieler.Wurf); aktSpieler.lblWurfbezeichnung.Content = Wuerfe.Wurfbezeichnungen[Array.IndexOf(Wuerfe.WuerfeListe, spieler.Wurf)]; SortiereWurfInWurfrundeEin(spieler.Wurf, spieler); } } CounterWegenAnzahlWuerfe++; } //Alle haben gewürfelt --> Bewerten if (Bewerte()) { //Die aktuelle Wuerfelrunde ist vorbei! WeiterDialog d = new WeiterDialog(); if (d.ShowDialog() == true) { _MainWindow.ResetSpielerFuerWurfrunde(); _MainWindow.UpdateSpieler(true); ResetRunde(); ReStart(); } } else { //Dialog, um weiter zu würfeln WeiterDialog d = new WeiterDialog(); if (d.ShowDialog() == true) { _MainWindow.ResetSpielerFuerWurfrunde(); ReStart(); } } }
private void BtnRoll_Click(object sender, RoutedEventArgs e) { ButtonReadyAktiv = true; AnzahlWuerfe++; Btn1.Content = ""; Btn2.Content = ""; Btn3.Content = ""; int wurfZahl = 3; if (Cube1Raus) { wurfZahl--; } if (Cube2Raus) { wurfZahl--; } if (Cube3Raus) { wurfZahl--; } string _wurf = Wuerfeln.Wuerfle(wurfZahl); if (wurfZahl == 3) { ValCube1 = Int32.Parse(_wurf[0].ToString()); ValCube2 = Int32.Parse(_wurf[1].ToString()); ValCube3 = Int32.Parse(_wurf[2].ToString()); _wurf = ValCube1 + "" + ValCube2 + "" + ValCube3; } //Schauen ob und welche Würfel rausgelegt sind if (wurfZahl == 2) { int wert1 = Int32.Parse(_wurf[0].ToString()); int wert2 = Int32.Parse(_wurf[1].ToString()); if (Cube1Raus) { _wurf = "1" + wert1 + "" + wert2; ValCube2 = wert1; ValCube3 = wert2; } if (Cube2Raus) { _wurf = "" + wert1 + "1" + wert2; ValCube1 = wert1; ValCube3 = wert2; } if (Cube3Raus) { _wurf = wert1 + "" + wert2 + "1"; ValCube1 = wert1; ValCube2 = wert2; } } if (wurfZahl == 1) { int wert1 = Int32.Parse(_wurf[0].ToString()); if (Cube1Raus && Cube2Raus) { _wurf = "11" + wert1; ValCube3 = wert1; } if (Cube2Raus && Cube3Raus) { _wurf = wert1 + "11"; ValCube1 = wert1; } if (Cube1Raus && Cube3Raus) { _wurf = "1" + wert1 + "1"; ValCube2 = wert1; } } SetCubeImages(_wurf); LblAnzahl.Content = (AnzahlErlaubteWuerfe - AnzahlWuerfe) > 1 ? "Noch " + (AnzahlErlaubteWuerfe - AnzahlWuerfe) + " Würfe" : "Noch " + (AnzahlErlaubteWuerfe - AnzahlWuerfe) + " Wurf"; }