home

테트리스

상황
루피는 이번 추석에 사촌 동생과 테트리스 게임을 하기로 약속했습니다. 동생과 즐거운 추억을 만들 수 있도록 테트리스 게임을 구현해주세요!

미션

1.
게임 환경에는 가로로 10칸, 세로로 20칸의 격자, ‘시작’ 버튼이 있습니다.
2.
다양한 모양의 블록(테트로미노)이 위에서 아래로 떨어집니다.
블록 종류
3.
블록이 아래로 떨어지는 동안 사용자는 블록을 좌우로 이동하거나 회전하여 블록을 배치합니다.
4.
가로로 완전히 채워진 줄이 있으면 해당 줄이 삭제되며 위에 있는 줄이 아래로 내려옵니다.
5.
게임은 블록이 화면의 가장 위에 도달하면 종료됩니다.

입력

떨어지는 블록의 모양, 위치, 이동, 회전 등의 사용자 입력을 받습니다.
랜덤으로 다양한 모양의 블록이 떨어지고, 사용자는 좌우 화살표를 눌러 블록을 이동시킬 수 있습니다.
사용자는 위쪽 화살표를 눌러 블록을 회전시킬 수 있습니다.

출력

게임이 종료되면 최종 삭제한 줄의 개수와 버틴 시간을 띄워줍니다.

예시

가족들이 함께 할 수 있도록 프론트도 구현해서 배포하세요. (디자인 자율)

참고 사항

블록의 이동과 회전, 줄 삭제 등의 게임 룰을 정확히 구현해야 합니다.
언어 및 기술 스택을 자유롭게 선택할 수 있습니다.
코드를 작성할 때 적절한 주석과 변수명을 사용하여 가독성을 높이세요.
공정성을 위해 참가 기간동안 문제와 관련한 질문에 답변을 드리지 않습니다. 의문이 가는 부분이 있다면 사용성을 고려해서 임의로 의사결정하고, 제출 시 참고사항에 작성해주세요.