여전히 문제가 있었다.

- 이전에 있었던 위치를 지우는 것도 문제인데..
- 그것보다도 Block이 유효범위를 벗어나 움직이게 되는 버그가 있었다.
- 이거에 대해서도 고민을 해보니 현재 블록의 가로사이즈를 고려하여 이동을 해야했다.
- 또한 MoveLeft는 현재 시작 X를 기준으로 하므로 상관이 없는데, MoveRight는 Block별로 존재해야했다.
아래 코드가 문제인 것이다. 이는 당연하다..
- 오른쪽 경계의 유효범위를 고려하지 않았다. 가로길이에 맞춰 유효성검사를 해야한다.
void MoveRight(int& curX, int& curY) {
	int nextX = curX + 1;
	int nextY = curY;
	if (CheckBoundary(nextY, nextX)) {
		curX++;
	}
}
1. 오른쪽 경계 유효성 문제 해결 후 코드
void MoveRightBlock1(int& curX, int& curY) {
	// 오른쪽 경계
	int nextRightX = curX + 1 + 1;
	int nextRightY = curY;
	if (CheckBoundary(nextRightY, nextRightX)) {
		curX++;
	}
}
void MoveRight(int& curX, int& curY) {
	
	// Block1 일 시
	MoveRightBlock1(curX, curY);
	
}