# 1주차 요구사항 (체스게임) - 모델 보드 피스 폰 나이트 ... 게임 커맨드 프린터 (현황 출력, 스코어, 플레이어 턴- black, white) - 로직 (게임 룰) 프로젝트는 iOS APP으로 생성을 하고, 처음에는 테스트 코드를 통해 명령어를 입력 받도록 한다. 구현사항 - 8x8 보드 만들기 - 가로는 A-H 세로는 1-8 값을 가진다. - 명령어 입력 - "현재 위치 -> 이동 위치" 형태로 입력한다. (A1->A2) -> 1주차 - 터치 받는다거나? -> 2주차 UI 구현? - 피스 생성 - 폰 - 폰은 앞으로 한칸만 전진만 가능하다. - 폰은 첫 턴에는 두칸 전진이 가능하다. - 폰은 말을 잡을 때 대각선 앞으로만 이동이 가능하다. - 폰 특수룰 -> 3주차 - 앙파상 - 프로모션 - 킹 - 킹은 모든 방향으로 한 칸만 이동이 가능하다. - 킹이 잡히거나 구조 불가능한 상태가 되면(체크메이트) 게임 오버 -> 2주차 - 킹 특수룰 -> 3주차 - 캐슬링 - 나이트 ----------- - 비숍 - 룩 - 퀸 - 게임 룰 - 플레이어는 피스를 이동하면 턴을 체인지 한다. - 자신의 피스가 상대 피스를 모두 잡으면 게임이 종료된다. 1주차 - 킹만 잡거나 체크메이트로 끝나는 걸로 수정 (2주차) - 턴이 변경될 때마다 현재 체스보드 상황을 커맨드창에 출력한다. 1주차 - UI에 표시되게 변경 (2주차) - UI 관련 (2주차) - 피스를 선택하면 이동 가능한 위치를 표시 - 이동 가능한 위치를 선택하면 이동 및 피스를 잡는 것까지 - 이동 불가능한 위치를 선택하면 피스 선택 캔슬 - 피스 선택 중 다른 피스를 선택하면 피스 선택 변경 1주차: 보드 및 일부 피스 생성(이동 룰) // 플레이어 턴 바꾼다. 2주차: 남은 피스 생성(이동 룰) + UI 구현(명령어 -> 테스트에서 UI 터치 이벤트) 3주차: 특수 룰