public void pokaListeBudynkow(Radar r) { Baza b = new Baza(); Console.ForegroundColor = ConsoleColor.DarkGray; b.pokaKonsole(r.skala, 0); if (r.run > 0) { b.pokaListeLotow(r, 1); } Console.ResetColor(); for (int i = 0; i < r.b.Count / 2; i++) { insert(138, 40 + i, Convert.ToString(r.b[i].h) + "m - " + r.b[i].nazwa); } for (int i = r.b.Count / 2; i < r.b.Count; i++) { insert(170, 34 + i, Convert.ToString(r.b[i].h) + "m - " + r.b[i].nazwa); } char wyb = Console.ReadKey().KeyChar; b.czyscKonsole(); }
public void zmienMape(int czy) { Baza baz = new Baza(); Console.ForegroundColor = ConsoleColor.DarkGray; baz.pokaKonsole(skala, 0); if (czy > 0) { baz.pokaListeLotow(this, 1); } Console.ResetColor(); baz.insert(139, 42, "Wybierz mape, ktora chcesz wczytac:"); baz.insert(141, 44, "[1] Mapa SanAndreas (48 x 32 km)"); baz.insert(141, 46, "[2] Mapa NewYourk (2,4 x 1,6 km)"); switch (Console.ReadKey().KeyChar) { case '1': mapa = System.IO.File.ReadAllLines("mapa1.txt"); skala = int.Parse(mapa[mapa.Length - 1]); break; case '2': mapa = System.IO.File.ReadAllLines("mapa2.txt"); skala = int.Parse(mapa[mapa.Length - 1]); break; } baz.czyscKonsole(); }
static void Main(string[] args) { Console.SetWindowSize(213, 52); Console.SetBufferSize(213, 52); Console.Title = "Kontrola Lotow"; Radar radar = new Radar(); Baza b = new Baza(radar); Trasa losowySamolot = new Trasa(0, 0, 0, 0, 0); b.pokaInterfejs(); int ms = 0; int lot = -1; int time = 100; int[] x = new int[1]; x[0] = 0; for (; ;) { if (radar.run < 0) { b.pokaInterfejs(); } else { radar.pokaRadar(); // aktualizuje i wyswietla radar } b.pokaListeLotow(radar, x[0]); // wypisuje liste lotow do podgledu/edycji b.insert(200, 26, Convert.ToString(ms / 10 + " s")); // wypisuje czas trwania programu b.insert(212, 51, Convert.ToString(".")); // wypisuje nic na koncu okna b.pokaLot(radar, lot); if (Console.KeyAvailable) // pobiera wybrany przycisk { char wybor = Console.ReadKey().KeyChar; if (lot >= 0) { switch (wybor) { case '0': b.czyscKonsole(); lot = -1; break; case '1': if (radar.s[lot].trajektoria < 1) { radar.s[lot].trajektoria++; } else { radar.s[lot].trajektoria--; } break; case '2': radar.s[lot].zmienTrajektorie(); break; } } // zarzadzanie lotem else if (wybor - 49 >= 0 && wybor - 49 < 10 && wybor - 49 <= radar.s.Count) { lot = wybor - 49; } // wypisuje info o danym locie else if (wybor == 'q') { System.Diagnostics.Process.GetCurrentProcess().Kill(); } // zabija aplikacje else if (wybor == 'e') { } // info o wlascicielach else if (wybor == 'w') { losowySamolot = new Trasa(1, 2, 0, 0, 200); } // pusc samolot else if (wybor == 'r') { radar.run *= -1; } // wlaczy/wylacz radar else if (wybor == ']') { if (time > 15) { time -= 15; } } // przyspiesz czas else if (wybor == '[') { time += 15; } // przyspiesz czas } Thread.Sleep(time); ms++; if (losowySamolot.v != 0) { b.pokaSamolot(ref losowySamolot); // ladujacy samolot } } }
public void pokaRadar(ref int lot) { Baza baz = new Baza(); for (int j = 0; j < mapa.Length - 1; j++) { baz.insert(10, 18 + j, mapa[j]); } for (int i = 0; i < s.Count; i++) { s[i].d = s[i].getDTrajektorii(); if (s[i].d < 0) { s.RemoveAt(s.IndexOf(s[i])); lot = -1; baz.czyscKonsole(); } else { s[i].szybkosc += 1; if ((32000 / s[i].v) / skala <= s[i].szybkosc && s[i].d % 2 == 1) // 560km/h - 1k/2.23s (skos) { switch (s[i].d) { case 1: s[i].x = s[i].x + 2; s[i].y++; break; case 3: s[i].x = s[i].x - 2; s[i].y++; break; case 5: s[i].x = s[i].x - 2; s[i].y--; break; case 7: s[i].x = s[i].x + 2; s[i].y--; break; } s[i].szybkosc = 0; s[i].aktualizujTrajektorie(); } else if ((22400 / s[i].v) / skala <= s[i].szybkosc && s[i].d % 4 == 2) // 560km/h - 1k/2s (pion) { switch (s[i].d) { case 2: s[i].y++; break; case 6: s[i].y--; break; } s[i].szybkosc = 0; s[i].aktualizujTrajektorie(); } else if ((11200 / s[i].v) / skala <= s[i].szybkosc && s[i].d % 4 == 0) // 560km/h - 1k/1s (poziom) { switch (s[i].d) { case 0: s[i].x++; break; case 4: s[i].x--; break; } s[i].szybkosc = 0; s[i].aktualizujTrajektorie(); } if (s[i].trajektoria == 1) { s[i].pokaTrajektorie(); } Console.ForegroundColor = ConsoleColor.Yellow; if (s[i].x > 0 && s[i].x <= 96 && s[i].y > 0 && s[i].y <= 32) { baz.insert(11 + s[i].x, 18 + s[i].y, s[i].typ); } Console.ResetColor(); } } }
static void Main(string[] args) { Console.SetWindowSize(213, 52); Console.SetBufferSize(213, 52); Console.Title = "Kontrola Lotow"; Radar radar = new Radar(); Baza b = new Baza(radar); Trasa losowySamolot = new Trasa(0, 0, 0, 0, 0); b.pokaInterfejs(); int ms = 0; int lot = -1; int time = 100; int gener = 0; for (; ;) { if (radar.run < 0) { b.pokaInterfejs(); } else { radar.pokaRadar(ref lot); // aktualizuje i wyswietla radar b.pokaListeLotow(radar, lot); // wypisuje liste lotow do podgledu/edycji if (radar.skala > 1) { radar.naniesBudynki(); // nanosi budynki na mape } } radar.umieranie(); if (gener == 1) { radar.Losowanko(); // generuje samoloty na mapie przez losowanie } if (lot >= 0) { b.pokaLot(radar, lot); // wyswietla informacje o locie } else { b.pokaKonsole(radar.skala, gener); // czysci konsole } b.insert(200, 26, Convert.ToString(ms / 10 + " s")); // wypisuje czas trwania programu b.insert(212, 51, Convert.ToString(".")); // wypisuje nic na koncu okna if (Console.KeyAvailable) // pobiera wybrany przycisk { char wybor = Console.ReadKey().KeyChar; if (lot >= 0) { switch (wybor) { case '0': b.czyscKonsole(); lot = -1; break; case '1': if (radar.s[lot].trajektoria < 1) { radar.s[lot].trajektoria++; } else { radar.s[lot].trajektoria--; } break; case '2': radar.s[lot].zmienTrajektorie(radar.skala); break; } // zarzadzanie lotem } else if (wybor - 49 >= 0 && wybor - 49 < 10 && wybor - 49 <= radar.s.Count && radar.run > 0) { b.czyscKonsole(); lot = wybor - 49; if (radar.s.Count < lot + 1) { lot = -1; } } // wypisuje info o danym locie else { switch (wybor) { case 'q': System.Diagnostics.Process.GetCurrentProcess().Kill(); break; // zabija aplikacje case 'e': b.pokaFax(); break; // info o wlascicielach case 'w': losowySamolot = new Trasa(1, 2, 0, 0, 200); break; // pusc samolot case 'r': radar.run *= -1; radar.pokaSkale(); break; // wlaczy/wylacz radar case '.': if (time > 15) { time -= 15; } break; // przyspiesz czas case ',': time += 15; break; // spowolnij czas case '/': time = 100; break; // ustaw domyslny czas case 'm': radar.zmienMape(radar.run); break; // zmienia mape case 'g': if (gener == 0) { gener = 1; } else { gener = 0; } break; // generuje lot case 'b': if (radar.skala > 1) { b.pokaListeBudynkow(radar); } break; // generuje lot case 's': b.zapis(radar); break; // zapis do pliku case 'k': radar.Kolizja(); break; // kurs kolizyjny case 'n': radar.NiebezpieczneZblizenia(); break; // niebezpieczne zblizenie case 'x': radar.zderzonko(); break; case 'c': radar.trajektorki(); break; } } } Thread.Sleep(time); ms++; if (losowySamolot.v != 0) { b.pokaSamolot(ref losowySamolot); // ladujacy samolot } } }