위 이미지를 누르면 제1회 코육대 이벤트로 이동합니다.
종목은 총 6가지!
1. 세뱃돈 계산기
2. 행맨 게임
3. 송편 터트리기
4. 테트리스
5. 총알 피하기
6. 자유 종목
저는 이 중에 제일 만만해보이는 테트리스에 도전했습니다.
배경은 추석 느낌에 나도록 보름달에 아래에 뛰어다니는 같은 토끼들~🐇🐇🐇
테트리스 기본 기능
const handleKeyPress = (e: KeyboardEvent) => {
switch (e.key) {
case "ArrowLeft":
playerMove(-1);
break;
case "ArrowRight":
playerMove(1);
break;
case "ArrowDown":
playerDrop();
break;
case "ArrowUp":
playerRotate(1);
break;
case " ":
playerHold();
break;
default:
break;
}
};
블록 선정
const setSpecialPoint = (piece: number[][]) => {
let cnt = 0;
for (let y = 0; y < piece.length; y++) {
for (let x = 0; x < piece[y].length; x++) {
if (piece[y][x] !== 0 && cnt < 1 && Math.random() < 0.1) {
piece[y][x] += 10;
cnt++;
}
}
}
return piece;
};
점수 제도
반응형 UI
deviceDetect.browser ? (
<Web />
) : deviceDetect.tablet ? (
<Tablet />
) : (
<Mobile />
게임을 좋아하는 입장에선 본인의 최고 기록은 언제나 남길 원하죠! 그래서 랭킹 시스템을 나중에 추가해보았습니다.