목록테트리스 만들기 (2)
코딩딩딩
이번 페이지에서는 블록 이동, 회전과 키보드 입력을 받는 함수까지 소개해드리겠습니다. 1. DeleteBlock(char block [4][4]) 콘솔창에 그려진 블록을 지워주는 함수로 블록 이동을 구현하는데 중요한 함수 중 하나입니다. void DeleteBlock(char block[4][4]) { COORD pos = GetCurrentCursorPos(); for (int y = 0; y < 4; y++) { for (int x = 0; x < 4; x++) { SetCurrentCursorPos(pos.X + x * 2, pos.Y + y);//커서 위치 설정 if (block[y][x] == 1) { printf(" ");//블록이 있는 곳에 " "출력으로 지워준다. } } } SetCurre..

앞으로 콘솔창으로 테트리스를 플레이할 수 있도록 만들어 볼 예정입니다. 먼저, 이번 페이지에서 테트리스의 핵심인 블록을 출력하는 방법을 소개하겠습니다. 1. SetCurrentCursorPos(int x, int y) 이 함수는 x, y에 좌표값을 대입하여 현재의 커서의 위치를 설정해 주는 함수입니다. 반드시 Windows.h를 include 해주어야 합니다. #include void SetCurrentCursorPos(int x, int y) { COORD pos = { x,y }; SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos); } 예를 들어, (x = 10, y = 5) 위치에 ★을 출력해 보겠습니다. #include #include..