Advertisement
Guest User

Untitled

a guest
Dec 12th, 2019
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.98 KB | None | 0 0
  1. #include <ctime>
  2. #include <cstdlib>
  3. #include <iostream>
  4. #include <windows.h>
  5.  
  6. HANDLE instancjaKonsoli;
  7. CONSOLE_SCREEN_BUFFER_INFO iOK1, iOK2;
  8.  
  9. void rysujLinie() {
  10. for (int i = 0; i < iOK1.dwSize.X - 1; i++)
  11. std::cout << "#";
  12. std::cout << std::endl;
  13. }
  14.  
  15. void rysujRamke() {
  16. SetConsoleTextAttribute(instancjaKonsoli, 0b100); // Czerwony
  17. rysujLinie();
  18. for (int i = 0; i < iOK1.dwSize.Y / 16; i++) {
  19. std::cout << "#";
  20. for (int j = 0; j < iOK1.dwSize.X - 3; j++)
  21. std::cout << " ";
  22. std::cout << "#" << std::endl;
  23. }
  24. rysujLinie();
  25. SetConsoleTextAttribute(instancjaKonsoli, 0b111); // Bialy
  26. }
  27.  
  28. void rysujChoinke() {
  29. SetConsoleTextAttribute(instancjaKonsoli, 0b010); // Zielony
  30.  
  31. for (int i = 5; i < 14; i++) {
  32. SetConsoleCursorPosition(instancjaKonsoli, {iOK1.dwCursorPosition.X + 43 - i,
  33. iOK1.dwCursorPosition.Y + i});
  34. for (int a = 1; a < i - 3; a++)
  35. std::cout << "##";
  36. }
  37.  
  38. SetConsoleCursorPosition(instancjaKonsoli, {iOK1.dwCursorPosition.X + 37,
  39. iOK1.dwCursorPosition.Y + 14});
  40. std::cout << "####";
  41.  
  42. SetConsoleTextAttribute(instancjaKonsoli, 0b111); // Bialy
  43. }
  44.  
  45. int main() {
  46. short kolor;
  47. std::string wejscie;
  48.  
  49. system("cls");
  50.  
  51. std::srand(std::time(nullptr));
  52. setlocale(LC_ALL, ""); // obsluga polskich znakow
  53. instancjaKonsoli = GetStdHandle(STD_OUTPUT_HANDLE); // przypisanie instancji konsoli do zmiennej
  54. GetConsoleScreenBufferInfo(instancjaKonsoli, &iOK1);
  55.  
  56. rysujRamke();
  57. GetConsoleScreenBufferInfo(instancjaKonsoli, &iOK2);
  58.  
  59. rysujChoinke();
  60. SetConsoleCursorPosition(instancjaKonsoli, iOK2.dwCursorPosition);
  61.  
  62. while (true) {
  63. kolor = 0;
  64. while (kolor == 0 || kolor == 7)
  65. kolor = std::rand() % 8;
  66. SetConsoleTextAttribute(instancjaKonsoli, kolor);
  67. std::cout << std::endl << "Polskie znaki ê󹜳¿Ÿæñ";
  68. GetConsoleScreenBufferInfo(instancjaKonsoli, &iOK2);
  69. SetConsoleCursorPosition(instancjaKonsoli, {0, iOK2.dwCursorPosition.Y - 1});
  70. Sleep(1000);
  71. }
  72.  
  73. return 0;
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement