public void Generiere(double intervall) { MyAbklingzeit -= intervall; if (MyAbklingzeit <= 0) { MyAbklingzeit = MyGenerationsRate; MyGegner.Add(new Gegner(MySpielbrett, MyPosition, MyGroesse, MyRichtung, MyLeben, MyGeschwindigkeit)); } }
/// <summary> /// ////////////////////////////////////////////////// /// </summary> public void Kollisionen() { List <Projektil> ProjektilAbfall = new List <Projektil>(); foreach (var projektil in MyProjektile) { foreach (var gegner in MyGegner) { if (projektil.Getroffen(gegner)) { ProjektilAbfall.Add(projektil); } } } foreach (var item in ProjektilAbfall) { MyProjektile.Remove(item); MySpielbrett.Children.Remove(item.MyForm); MySpielbrett.Children.Remove(item.MyKollisionsbox); } List <Gegner> GegnerAbfall = new List <Gegner>(); foreach (var punkt in MyGegnerPunkte) { foreach (var gegner in MyGegner) { if (punkt.Umleiten(gegner) && punkt == MyGegnerPunkte.Last()) { GegnerAbfall.Add(gegner); } } } foreach (var item in GegnerAbfall) { MyGegner.Remove(item); MySpielbrett.Children.Remove(item.MyForm); } }
/// <summary> /// ////////////////////////////////////////////////// /// </summary> public void Aufraeumen() { List <Gegner> GegnerAbfall = new List <Gegner>(); foreach (var item in MyGegner) { if (!item.IstAmLeben()) { GegnerAbfall.Add(item); MyGeld += 10; } } foreach (var item in GegnerAbfall) { MyGegner.Remove(item); MySpielbrett.Children.Remove(item.MyForm); } List <Projektil> ProjektilAbfall = new List <Projektil>(); foreach (var item in MyProjektile) { if (!item.MyZiel.IstAmLeben()) { ProjektilAbfall.Add(item); } } foreach (var item in ProjektilAbfall) { MyProjektile.Remove(item); MySpielbrett.Children.Remove(item.MyForm); MySpielbrett.Children.Remove(item.MyKollisionsbox); } }