2024. 10. 1. 21:01ㆍ[Node.js_6기 본캠프 TIL]
🗂️ 숨은 코드 찾기
제공받은 프론트엔드 파일과 강의에서 빠르게 지나간 스켈레톤 코드들의 분량이 많다보니, 확인하고 싶은 코드가 어디에 있는지 찾는 것부터 쉽지 않았다. 예를 들어, 각 아이템 id에 매칭되는 이미지 파일을 연결해주는 코드가 item.js나 itemController.js에 있을 것이라 예상하고 처음부터 끝까지 훑어보다가 포기할 때 즈음 index.js에서 찾아낸 일이 있었다.
다른 사람이 미리 짜둔 코드를 베이스로 원하는 결과물을 내기 위해서는 1) 전체 파일의 구조를 이해하고, 2) 어떤 방식으로 어디에 구현되어 있는지 인지하는 게 중요하다는 것을 이렇게 또 배우는 것 같다.
📀 아이템을 먹었습니다. 그냥 먹었습니다.
보통 장애물을 피해서 달리는 게임에서 코인이나 아이템을 먹으면 스코어가 올라가거나, 특수 효과를 발동할 수 있다. 과제의 기본 조건이 아이템 = 점수인데, 우리 공룡은 먹기만 잘 먹었다. 그냥 먹을 뿐, 점수로 소화시키지를 못했다.
getItem(itemId) {
this.score += 0;
}
아무래도 itemId 값을 어떻게 불러오고, 점수를 더해주어야 할지 감이 오지 않아 기본값인 0으로 두고 테스트를 했기 때문이다.
기획 의도를 고려하면, 각 아이템에 따라 점수가 달라야 하지만... 스테이지에 따라 아이템이 해금되는 로직을 아직 건드리지 못했기 때문에, 고정값을 주고 해당 코드가 아이템을 먹을 때마다 점수를 올려주는 것이 맞는지부터 테스트 해보기로 했다.
getItem(itemId) {
this.score += 100;
}
테스트 결과, 해당 코드가 아이템을 점수로 바꿔주는 것이 맞았다. 이제 에셋에 정의한 값을 활용하여 매핑된 값을 점수에 더해주는 로직으로 발전시키기만 하면 된다.
그리고 이것저것 코드를 건드려보는 과정에 초당 1점씩 올라야 하는 점수가 너무 빠르게 차오르는 문제를 발견했다. 스테이지를 넘기는 코드를 수정하다가 뭔가 꼬인 것 같다. 밸런싱 및 테스트를 위해 빠르게 잡아내야 할 오류 1순위로 올리기로 했다.
'[Node.js_6기 본캠프 TIL]' 카테고리의 다른 글
[CH 4 리얼 타임 과제] 트러블슈팅 - 1007 (0) | 2024.10.07 |
---|---|
[CH 4 리얼 타임 과제] 트러블슈팅 - 1002 (1) | 2024.10.02 |
socket.io 사용해보기 (1) | 2024.09.30 |
[개념정리] 웹소켓이란? (0) | 2024.09.27 |
CH 3 풋살 온라인 프로젝트 - 마무리 (2) | 2024.09.25 |