Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- internal class Program
- {
- static string[] plansza;
- static int punkty = 0;
- static int predkoscGry = 600;
- const char GRACZ = '^';
- const char PRZESZKODA = '#';
- const int SZEROKOSC = 5;
- const int NITRO = 200;
- private static void Main(string[] args)
- {
- int pozycjaGracza = SZEROKOSC / 2 + 1;
- bool czyUderzony = false;
- Random generator = new Random();
- int przyspieszenieOIle = 10;
- int przyspieszenieCoIlePunktow = 10;
- int czasNitro = -1;
- bool jestNitro = true;
- int predkoscNitro = 0;
- NowaGra(10);
- UstawGracza(pozycjaGracza);
- WyswietlPlansze();
- while (!czyUderzony)
- {
- if (Console.KeyAvailable)
- {
- var nacisnietyKlawisz = Console.ReadKey(true);
- if (nacisnietyKlawisz.Key == ConsoleKey.D)
- {
- if (pozycjaGracza < SZEROKOSC - 1)
- {
- pozycjaGracza++;
- }
- }
- if (nacisnietyKlawisz.Key == ConsoleKey.A)
- {
- if (pozycjaGracza > 0)
- {
- pozycjaGracza--;
- }
- }
- if (nacisnietyKlawisz.Key == ConsoleKey.N)
- {
- if (jestNitro && czasNitro == -1)
- {
- czasNitro = 10;
- jestNitro = false;
- }
- }
- }
- int pozycjaPrzeszkody = generator.Next(SZEROKOSC);
- string przeszkoda = UstawPrzeszkode(pozycjaPrzeszkody);
- for (int i = plansza.Length - 2; i > 0; i--)
- {
- plansza[i] = plansza[i - 1];
- }
- plansza[0] = przeszkoda;
- //Sprawdzenie kolizji
- int pozycjaNajbliższejPrzeszkody = plansza[plansza.Length - 2].IndexOf(PRZESZKODA);
- if (pozycjaGracza == pozycjaNajbliższejPrzeszkody)
- {
- czyUderzony = true;
- }
- else
- {
- punkty++;
- if (punkty % przyspieszenieCoIlePunktow == 0 && predkoscGry > 200)
- {
- predkoscGry -= przyspieszenieOIle;
- }
- if (czasNitro >= 0)
- {
- czasNitro--;
- predkoscNitro = NITRO;
- }
- else
- {
- predkoscNitro = 0;
- }
- }
- UstawGracza(pozycjaGracza);
- WyswietlPlansze();
- Thread.Sleep(predkoscGry-predkoscNitro);
- }
- Console.Clear();
- System.Console.WriteLine("GAME OVER");
- System.Console.WriteLine($"Score: {punkty}");
- }
- static string UstawPrzeszkode(int pozycjaPrzeszkody)
- {
- string linia = "";
- for (int i = 0; i < SZEROKOSC; i++)
- {
- linia += " ";
- }
- linia = linia.Insert(pozycjaPrzeszkody, PRZESZKODA.ToString());
- return linia;
- }
- private static void NowaGra(int iloscWierszy)
- {
- plansza = new string[iloscWierszy];
- for (int i = 0; i < plansza.Length; i++)
- {
- plansza[i] = "";
- }
- }
- private static void UstawGracza(int pozycjaGracza)
- {
- string linia = "";
- for (int i = 0; i < SZEROKOSC; i++)
- {
- linia += " ";
- }
- linia = linia.Insert(pozycjaGracza, GRACZ.ToString());
- plansza[plansza.Length - 1] = linia;
- }
- private static void WyswietlPlansze()
- {
- Console.Clear();
- System.Console.WriteLine($"Score: {punkty}");
- for (int i = 0; i < plansza.Length; i++)
- {
- System.Console.WriteLine(plansza[i]);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement