과제 진행상황 ... 물론 맡은 부분만 !
기능적인 부분은 전부 구현되었다. 어느정도 UI 의 변화도 있었다.
index.js 에 만들었던 상점 부분의 코드가 전부 빠지고
div 뼈대만 남게 되었다.
해당 부분은 game.js에서 채워지도록 작성했다.
초 하드 코딩 상점이 아니게 되었다는 말씀 !
강화 기능을 추가함에 따라, ★ / ☆ 로 강화 단계를 표기하게 했다.
강화 정보를 MetaData 를 담고 있는 towerEnhance 테이블이 추가되었고,
강화 데이터를 포함한 모든 데이터들은 redis에서 관리하고 있다.
레디스에 쌓인 데이터를 조회하여 검증 및 데이터 갱신이 이루어진다.
추가적으로, 타워 클릭 시 메뉴창을 띄워서
클릭한 타워의 정보를 확인 가능하게 만들고,
해당 타워의 강화와 판매가 이루어 지도록 했다.
또, 해당 타워의 사거리를 원으로 그리면서,
사거리를 확인함과 동시에 어떤 타워가 클릭된건지 좀 더 명확하게 알 수 있게 만들었다.
강화버튼을 클릭 하면, 서버로 보내지는 payload 는 해당 타워의 x y 좌표 뿐이며,
해당 타워는 redis 에 저장해놨던 tower 데이터를 긁어와서 해당 좌표의 타워가 있는지 확인하고,
저장되어있는 towerType (타워 유형), 좌표, 강화횟수 ( 구매 시 0으로 기록) 를 기반으로 검증이 진행되고,
유저의 보유 소지금 또한 서버에서 관리가 되고 있기 때문에 ,
강화 시 소모되는 골드 또한 반영이 되도록 했다.
그 결과 리턴하는 패킷
클라이언트에서는 socket.on , 'response' 로 통해 서버의 패킷을 받는다.
위와 같은 형태로 구매, 판매, 강화가 실행된다.
'내일배움캠프' 카테고리의 다른 글
24.10.17 TIL 검증이 뭘까 (0) | 2024.10.17 |
---|---|
24.10.16 TIL 타워 디펜스 프로젝트 -완- (0) | 2024.10.16 |
24.10.11 TIL 타워 디펜스 프로젝트 (0) | 2024.10.11 |
24.10.10 TIL 타워 디펜스 프로젝트 (0) | 2024.10.11 |
24.10.07 TIL 데이터 베이스 정규화 (0) | 2024.10.07 |