public void Angreifen(int dienerIndex, int gegnerIndex) { Diener diener = tischDiener[dienerIndex]; diener.Warten = 1; if (gegnerIndex < 0) { Gegenspieler.held.Leben -= diener.Angriff; Zeichnen.Held(Gegenspieler); if (Gegenspieler.held.Leben < 1) { SpielBeenden(); } } else { Diener gegner = Gegenspieler.tischDiener[gegnerIndex]; Diener gegnerR = gegnerIndex != Gegenspieler.tischDiener.Count - 1? Gegenspieler.tischDiener[gegnerIndex + 1]:null; Diener gegnerL = gegnerIndex != 0? Gegenspieler.tischDiener[gegnerIndex - 1]:null; gegner.Leben -= diener.Angriff; if (diener.Prankenhiebe) { if (gegnerL != null) { gegnerL.Leben--; } if (gegnerR != null) { gegnerR.Leben--; } } if (gegner.Leben < 1 || (gegnerL != null && gegnerL.Leben < 1) || (gegnerR != null && gegnerR.Leben < 1)) { Gegenspieler.tischDiener.RemoveAt(gegnerIndex); ZeichnenTisch(Gegenspieler); } diener.Leben -= gegner.Angriff; if (diener.Leben < 1) { tischDiener.RemoveAt(dienerIndex); ZeichnenTisch(this); } } }
public void Ausspielen(int index) { if (index == -1) { return; } if (handKarten.Count != 0) { Diener d = handKarten[index] as Diener; tischDiener.Add(d); d.MeinOrt = Karte.Ort.Tisch; ZeichnenTisch(this); if (!(d.Ansturm)) { d.Warten = 1; } handKarten.RemoveAt(index); ZeichnenHand(this); } }