Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define _WIN32_WINNT 0x0600
- #define STRICT
- #include <dos.h>
- #include <dir.h>
- #include <iostream>
- #include <stdio.h>
- #include <stdlib.h>
- #include <conio.h>
- #include <io.h>
- #include <shlwapi.h>
- #include <fcntl.h>
- #include <unistd.h>
- #include <windows.h>
- #include <cwchar>
- #include <winreg.h>
- #include <Wincon.h>
- //#include <graphics.h>
- #define _O_U16TEXT 0x20000
- #define _O_U8TEXT 0x40000
- using namespace std;
- typedef struct _CONSOLE_SCREEN_BUFFER_INFOEX
- {
- ULONG cbSize;
- COORD dwSize;
- COORD dwCursorPosition;
- WORD wAttributes;
- SMALL_RECT srWindow;
- COORD dwMaximumWindowSize;
- WORD wPopupAttributes;
- BOOL bFullscreenSupported;
- COLORREF ColorTable[16];
- } CONSOLE_SCREEN_BUFFER_INFOEX, *PCONSOLE_SCREEN_BUFFER_INFOEX;
- typedef struct _CONSOLE_FONT_INFOEX
- {
- ULONG cbSize;
- DWORD nFont;
- COORD dwFontSize;
- UINT FontFamily;
- UINT FontWeight;
- WCHAR FaceName[LF_FACESIZE];
- } CONSOLE_FONT_INFOEX, *PCONSOLE_FONT_INFOEX;
- #ifdef __cplusplus
- extern "C" {
- #endif
- BOOL WINAPI SetCurrentConsoleFontEx(HANDLE hConsoleOutput, BOOL bMaximumWindow, PCONSOLE_FONT_INFOEX lpConsoleCurrentFontEx);
- #ifdef __cplusplus
- }
- #endif
- #ifdef __cplusplus
- extern "C" {
- #endif
- BOOL WINAPI GetConsoleScreenBufferInfoEx(HANDLE hConsoleOutput, PCONSOLE_SCREEN_BUFFER_INFOEX lpConsoleScreenBufferInfoEx);
- #ifdef __cplusplus
- }
- #endif
- #ifdef __cplusplus
- extern "C" {
- #endif
- BOOL WINAPI SetConsoleScreenBufferInfoEx(HANDLE hConsoleOutput, PCONSOLE_SCREEN_BUFFER_INFOEX lpConsoleScreenBufferInfoEx);
- #ifdef __cplusplus
- }
- #endif
- void SakriKursor()
- {
- HANDLE consoleHandle = GetStdHandle(STD_OUTPUT_HANDLE);
- CONSOLE_CURSOR_INFO info;
- info.dwSize = 100;
- info.bVisible = FALSE;
- SetConsoleCursorInfo(consoleHandle, &info);
- }
- void ObrisiEkran()
- {
- HANDLE hStdOut;
- CONSOLE_SCREEN_BUFFER_INFO csbi;
- DWORD count;
- DWORD cellCount;
- COORD homeCoords = {0, 0};
- hStdOut = GetStdHandle(STD_OUTPUT_HANDLE);
- if (hStdOut == INVALID_HANDLE_VALUE)
- return;
- GetConsoleScreenBufferInfo(hStdOut, &csbi);
- cellCount = csbi.dwSize.X * csbi.dwSize.Y;
- FillConsoleOutputCharacter(hStdOut, (TCHAR) ' ', cellCount, homeCoords, &count);
- FillConsoleOutputAttribute(hStdOut, csbi.wAttributes, cellCount, homeCoords, &count);
- SetConsoleCursorPosition(hStdOut, homeCoords);
- }
- void gotoxy(int x, int y)
- {
- COORD koordinate;
- koordinate.X = x;
- koordinate.Y = y;
- SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), koordinate);
- }
- int UcitajKlik(int &x, int &y)
- {
- DWORD info;
- CONSOLE_SCREEN_BUFFER_INFO scrinfo;
- INPUT_RECORD input;
- HANDLE in = GetStdHandle(STD_INPUT_HANDLE);
- SetConsoleMode(in, ENABLE_PROCESSED_INPUT | ENABLE_MOUSE_INPUT);
- ReadConsoleInput(in, &input, 1, &info);
- if(input.Event.MouseEvent.dwButtonState != 0x0001)
- {
- GOBACK:
- int x2 = x, y2 = y;
- ReadConsoleInput(in, &input, 1, &info);
- if(input.Event.MouseEvent.dwButtonState == 0x0001)
- {
- x = input.Event.MouseEvent.dwMousePosition.X;
- y = input.Event.MouseEvent.dwMousePosition.Y;
- }
- else
- goto GOBACK;
- }
- else
- UcitajKlik(x, y);
- return 0;
- }
- void CentrirajKonzolu()
- {
- RECT rectClient, rectWindow;
- HWND hWnd = GetConsoleWindow();
- GetClientRect(hWnd, &rectClient);
- GetWindowRect(hWnd, &rectWindow);
- int posx, posy;
- posx = GetSystemMetrics(SM_CXSCREEN) / 2 - (rectWindow.right - rectWindow.left) / 2;
- posy = GetSystemMetrics(SM_CYSCREEN) / 2 - (rectWindow.bottom - rectWindow.top) / 2;
- SetWindowPos(GetConsoleWindow(), HWND_TOP, posx, posy, 0, 0, SWP_NOSIZE);
- }
- void PodesiKonzolu()
- {
- HWND consoleWindow = GetConsoleWindow();
- SetWindowLong(consoleWindow, GWL_STYLE, GetWindowLong(consoleWindow, GWL_STYLE) & ~WS_MAXIMIZEBOX & ~WS_SIZEBOX);
- SetConsoleMode(GetStdHandle(STD_INPUT_HANDLE), ENABLE_QUICK_EDIT_MODE | ENABLE_EXTENDED_FLAGS);
- SetConsoleMode(GetStdHandle(STD_INPUT_HANDLE), ENABLE_EXTENDED_FLAGS);
- _setmode(_fileno(stdout), _O_U8TEXT);
- SetConsoleTitleW(L"Što se kriješ fešiš");
- _setmode(_fileno(stdout), _O_TEXT);
- system("color e6");
- _CONSOLE_SCREEN_BUFFER_INFOEX info;
- info.cbSize = sizeof(info);
- HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
- GetConsoleScreenBufferInfoEx(hConsole, &info);
- info.dwSize = {36, 19};
- SetConsoleScreenBufferInfoEx(hConsole, &info);
- CONSOLE_FONT_INFOEX cfi;
- cfi.cbSize = sizeof(cfi);
- cfi.nFont = 0;
- cfi.dwFontSize.X = 0;
- cfi.dwFontSize.Y = 29;
- cfi.FontFamily = TMPF_TRUETYPE;
- cfi.FontWeight = FW_NORMAL;
- std::wcscpy(cfi.FaceName, L"MS Gothic");
- SetCurrentConsoleFontEx(GetStdHandle(STD_OUTPUT_HANDLE), FALSE, &cfi);
- SakriKursor();
- }
- void PodesiKonzolu2()
- {
- _CONSOLE_SCREEN_BUFFER_INFOEX info;
- info.cbSize = sizeof(info);
- HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
- GetConsoleScreenBufferInfoEx(hConsole, &info);
- info.dwSize = {36, 17};
- SetConsoleScreenBufferInfoEx(hConsole, &info);
- }
- void ObrisiKonzoluPodesavanja()
- {
- RegDeleteKeyA(HKEY_CURRENT_USER, "Console\\C:_Program Files (x86)_CodeBlocks_cb_console_runner.exe");
- RegDeleteKeyA(HKEY_CURRENT_USER, "Console\\");
- RegDeleteKeyA(HKEY_CURRENT_USER, "Console");
- }
- void OdstampajKonzolu()
- {
- HANDLE console = GetStdHandle(STD_OUTPUT_HANDLE);
- _setmode(_fileno(stdout), _O_U8TEXT);
- wprintf(L" \n");
- wprintf(L"━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n");
- gotoxy(0, 2);
- wprintf(L" ┏━━━━━┓\n");
- wprintf(L" ┃ ┃\n");
- wprintf(L" ┃ ┃\n");
- wprintf(L" ┃ ┃\n");
- wprintf(L" ┃ ┃\n");
- wprintf(L" ┃ ┃\n");
- wprintf(L" ┃ ┃\n");
- wprintf(L" ┃ ┃\n");
- wprintf(L" ┃ ┃\n");
- wprintf(L" ┗━━━━━┛\n");
- gotoxy(0, 2);
- wprintf(L"┏━━━━━┓\n");
- wprintf(L"┃ ┃\n");
- wprintf(L"┃ ┃\n");
- wprintf(L"┃ ┃\n");
- wprintf(L"┃ ┃\n");
- wprintf(L"┃ ┃\n");
- wprintf(L"┃ ┃\n");
- wprintf(L"┃ ┃\n");
- wprintf(L"┃ ┃\n");
- wprintf(L"┗━━━━━┛\n");
- gotoxy(8, 3);
- wprintf(L" ♜ ♞ ♝ ♛ ♚ ♝ ♞ ♜");
- gotoxy(8, 4);
- wprintf(L" ♟ ♟ ♟ ♟ ♟ ♟ ♟ ♟");
- gotoxy(8, 9);
- wprintf(L" ♟ ♟ ♟ ♟ ♟ ♟ ♟ ♟");
- gotoxy(8, 10);
- wprintf(L" ♜ ♞ ♝ ♛ ♚ ♝ ♞ ♜");
- gotoxy(0, 2);
- wprintf(L" ┏━━━━━┓\n");
- wprintf(L" ┃ ┃\n");
- wprintf(L" ┃ ┃\n");
- wprintf(L" ┃ ┃\n");
- wprintf(L" ┃ ┃\n");
- wprintf(L" ┃ ┃\n");
- wprintf(L" ┃ ┃\n");
- wprintf(L" ┃ ┃\n");
- wprintf(L" ┃ ┃\n");
- wprintf(L" ┗━━━━━┛\n");
- gotoxy(0, 2);
- wprintf(L"┏━━━━━┓\n");
- wprintf(L"┃ ████┃\n");
- wprintf(L"┃ ████┃\n");
- wprintf(L"┃ ████┃\n");
- wprintf(L"┃ ████┃\n");
- wprintf(L"┃ ████┃\n");
- wprintf(L"┃ ████┃\n");
- wprintf(L"┃ ████┃\n");
- wprintf(L"┃ ████┃\n");
- wprintf(L"┗━━━━━┛\n");
- gotoxy(8, 2);
- wprintf(L"████████████████████");
- gotoxy(8, 3);
- wprintf(L"██♜ ♞ ♝ ♛ ♚ ♝ ♞ ♜ ██");
- gotoxy(8, 4);
- wprintf(L"██♟ ♟ ♟ ♟ ♟ ♟ ♟ ♟ ██");
- gotoxy(8, 5);
- wprintf(L"██ ██");
- gotoxy(8, 6);
- wprintf(L"██ ██");
- gotoxy(8, 7);
- wprintf(L"██ ██");
- gotoxy(8, 8);
- wprintf(L"██ ██");
- gotoxy(8, 9);
- wprintf(L"██♟ ♟ ♟ ♟ ♟ ♟ ♟ ♟ ██");
- gotoxy(8, 10);
- wprintf(L"██♜ ♞ ♝ ♛ ♚ ♝ ♞ ♜ ██");
- gotoxy(8, 11);
- wprintf(L"████████████████████");
- gotoxy(0, 12);
- wprintf(L"┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ \n");
- wprintf(L"┃ ┃ \n");
- wprintf(L"┃ ┃ \n");
- wprintf(L"┃ ┃ \n");
- wprintf(L"┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ ");
- SetConsoleTextAttribute(console, 136);
- gotoxy(2, 13);
- wprintf(L"████████████████████████████████\n");
- gotoxy(2, 14);
- wprintf(L"████████████████████████████████\n");
- gotoxy(2, 15);
- wprintf(L"████████████████████████████████\n");
- gotoxy(2, 3);
- wprintf(L"████\n");
- gotoxy(2, 4);
- wprintf(L"████\n");
- gotoxy(2, 5);
- wprintf(L"████\n");
- gotoxy(2, 6);
- wprintf(L"████\n");
- gotoxy(2, 7);
- wprintf(L"████\n");
- gotoxy(2, 8);
- wprintf(L"████\n");
- gotoxy(2, 9);
- wprintf(L"████\n");
- gotoxy(2, 10);
- wprintf(L"████\n");
- gotoxy(30, 3);
- wprintf(L"████\n");
- gotoxy(30, 4);
- wprintf(L"████\n");
- gotoxy(30, 5);
- wprintf(L"████\n");
- gotoxy(30, 6);
- wprintf(L"████\n");
- gotoxy(30, 7);
- wprintf(L"████\n");
- gotoxy(30, 8);
- wprintf(L"████\n");
- gotoxy(30, 9);
- wprintf(L"████\n");
- gotoxy(30, 10);
- wprintf(L"████\n");
- gotoxy(8, 2);
- wprintf(L"████████████████████");
- gotoxy(8, 3);
- wprintf(L"██");
- gotoxy(8, 4);
- wprintf(L"██");
- gotoxy(8, 5);
- wprintf(L"██");
- gotoxy(8, 6);
- wprintf(L"██");
- gotoxy(8, 7);
- wprintf(L"██");
- gotoxy(8, 8);
- wprintf(L"██");
- gotoxy(8, 9);
- wprintf(L"██");
- gotoxy(8, 10);
- wprintf(L"██");
- gotoxy(26, 3);
- wprintf(L"██");
- gotoxy(26, 4);
- wprintf(L"██");
- gotoxy(26, 5);
- wprintf(L"██");
- gotoxy(26, 6);
- wprintf(L"██");
- gotoxy(26, 7);
- wprintf(L"██");
- gotoxy(26, 8);
- wprintf(L"██");
- gotoxy(26, 9);
- wprintf(L"██");
- gotoxy(26, 10);
- wprintf(L"██");
- gotoxy(8, 11);
- wprintf(L"████████████████████");
- }
- int main()
- {
- ObrisiKonzoluPodesavanja();
- PodesiKonzolu();
- CentrirajKonzolu();
- PodesiKonzolu2();
- OdstampajKonzolu();
- // info.ColorTable[14] = RGB(30, 128, 0);SetConsoleScreenBufferInfoEx(hConsole, &info);
- // Sleep(1000);
- // info.ColorTable[14] = RGB(160, 128, 0);SetConsoleScreenBufferInfoEx(hConsole, &info);
- // Sleep(1000);
- // info.ColorTable[14] = RGB(255, 18, 0);SetConsoleScreenBufferInfoEx(hConsole, &info);
- // Sleep(1000);
- // info.ColorTable[14] = RGB(25, 18, 0);SetConsoleScreenBufferInfoEx(hConsole, &info);
- // Sleep(1000);
- // info.ColorTable[14] = RGB(100, 128, 0);SetConsoleScreenBufferInfoEx(hConsole, &info);
- // Sleep(1000);
- // int x, y;
- // int i = 0, j = 0;
- //
- //
- //
- //
- // while(1)
- // {
- // SakriKursor();
- // //ObrisiEkran();
- // UcitajKlik(x, y);
- //// gotoxy(x,y);
- // //SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 238);
- //// _setmode(_fileno(stdout), _O_U8TEXT);
- //// wprintf(L"█");//}
- // //system("cls");
- //
- // gotoxy(3, 4);
- // printf("1");
- // gotoxy(8, 10);
- // printf("2");
- // gotoxy(12, 3);
- // printf("3");
- // gotoxy(17, 6);
- // printf("4");
- //
- // gotoxy(0, 0);
- // printf(" ", x, y);
- // gotoxy(0, 0);
- // printf("%d , %d", x, y); //}
- // gotoxy(i, 1);
- //
- // if(x == 3 && y == 4)
- // printf("a");
- //
- // if(x == 8 && y == 10)
- // printf("b");
- //
- // if(x == 12 && y == 3)
- // printf("c");
- //
- // if(x == 17 && y == 6)
- // printf("d");
- //
- // i++;
- // }
- //_setmode(_fileno(stdout), _O_U16TEXT);
- //wprintf(L"\x265B\x265B\x265B\x265B\n");
- //wprintf(L" ");
- //#ifdef _WIN32
- // _setmode(_fileno(stdout), 0x00020000);
- //#else
- // setlocale(LC_CTYPE, "");
- //#endif
- // PrintTopRow(Black);
- // PrintPawns(Black);
- // fputws(L"\n\n\n\n", stdout);
- // PrintPawns(White);
- // PrintTopRow(White);
- SakriKursor();
- ObrisiKonzoluPodesavanja();
- Sleep(99999999999);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement