// asynchroniczne zadanie tworzace przeciwnikow private async Task StworzPrzeciwnikow() { Brush[] kolory = new Brush[] { // tablica kolorow Brushes.OrangeRed, Brushes.Olive, Brushes.Moccasin, Brushes.Navy, Brushes.LightYellow, Brushes.DarkCyan }; int max = 17; for (int i = 1; i <= max; i++) { // tworzenie obieku przeciwnika i przypisanie mu wartosci Gracz g = new Gracz(); g.Pozycja.Y = 100 + rnd.Next(-70, 100); g.Pozycja.X = i * 2; g.Pedzel = kolory[rnd.Next(0, kolory.Length - 1)]; // losowy kolor z tablicy przeciwnicy.Add(g); // dodanie go do kolekcji przeciwnikow Text = string.Format("Trwa ladowanie... {0} / {1}", i, max); await Task.Delay(10); // zadanie czeka 10 sekund } Text = "Przeciwnicy stworzeni, czas na walke!"; }
private void Form1_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Space && !gracz.Shot) { gracz.Shot = true; // spacja wcisnieta = strzelanie } if (koniecgry && e.KeyCode == Keys.R) // Reset gry { gracz = new Gracz(); // reset obiektu gracza Strzaly.Clear(); // wyczyszczenie kolekcji pociskow przeciwnicy.Clear(); // wyczyszczenie kolekcji przeciwnikow StworzPrzeciwnikow(); // wywolanie asynchronicznej metody tworzacej nowych przeciwnikow koniecgry = false; } }