HIKING- 1000M 는... 서비스 종료다.

 

오늘부터는 알고리즘 풀이에 좀 더 집중하고,

다음 주 부터 진행 될 CH3 과제를 준비하는 시간을 가... 가...

 

가 아니었다...

 

무려 100명이 넘는 수강생 중, 우수 제출자 2명을 선발하여 발표하는데,

그 2명 중 한명이 내가 된 것이다 !!!

 

 

              실화?

 

기왕 이렇게 된 김에,

오늘의 TIL은 발표를 했던 내용을 기반으로

과제의 결과물을 리뷰하는 방향으로 TIL을 작성하는것으로 방향을 틀었다.

 

 

그런데....

 

나의 발표 순서는 두 번째였는데,

앞서 발표한 수강생의 능력치가 심상치가 않았다.

 

 

??????

https://velog.io/@artbiit/NodeJS-%EA%B0%84%EB%8B%A8%ED%95%9C-%EB%A1%9C%EA%B7%B8%EB%9D%BC%EC%9D%B4%ED%81%AC-%EA%B2%8C%EC%9E%84-%EB%A7%8C%EB%93%A4%EC%96%B4%EB%B3%B4%EA%B8%B0-%EC%B5%9C%EC%A2%85-%EC%84%A4%EB%AA%85

 

NodeJS 간단한 로그라이크 게임 만들어보기 - 최종 설명

여태까지 간단한 기능들의 모음을 먼저 만들고 게임 시나리오를 구현하는 식으로 소개를 했었습니다.이번에는 스크립트 흐름을 통해서 어떻게 구현했는지 완전히 작성해보려 합니다.이전글에

velog.io

 

위는 심상치 않은 발표자의 블로그 이며, 디렉토리 구성만 보더라도 어나더 레벨이라는 것을 알 수 있다....

 

코딩이 곧 생활 방식이신듯 합니다

 

열심히 만든 내 코드가 부스러기로 보이는 순간이었다..

 

 

아무튼... 내 발표는, 

1. 기획

2. 게임 시연

3. 주요 코드 리뷰

 

순서로 진행이 되었다.

 

 

1. 기획

 

기획에서 컨셉을 제외한 나머지 부분은 사실상 과제에서 fix가 되었기 때문에

readme 에 작성했던 컨셉 위주로 설명을 진행했다.

 

 

2. 게임 시연

 

따로 녹화를 한것이 아니기 때문에 영상은 남아있지 않지만, 

게임을 직접 구동하여 주요 기능을 보여주는 식으로 진행을 했다.

목록은 다음과 같다.

 

 1) 메인화면 등장 연출

2) 전투 진행

 

 

3) 지름길 스킬 연출

 

4) 게임 오버 출력

 

 

 

3. 주요 코드 리뷰

내 코드중에 그나마 쓸만한 것을 몇개 골라서 리뷰를 진행했다.

 

 1) 연출? 텍스트

varcolor ...?? 는 넘어가자

이전 TIL 에서 언급했던 !

오프닝, 엔딩, 게임오버, 스킬성공 연출에 사용된 그 함수이다.

 

위의 함수는 역순 나열로 오프닝에 사용된 함수이고, 

나머지는 정방향으로 나열하는 함수이다.

 

함수 내용을 해석하면 매우 간단하다.

 

첫 번째 매개변수 text에 받아온 임의의 문자열

ex " HIKING-1000M" 를

console.clear();  를 통해 모든 내용을 전부 지우고

첫번째 문자 M 출력 (역순)

다시 console.clear(); 

0M -> 클리어 -> 00M -> 클리어 -> 000M -> 클리어 ........ -> IKING -1000M -> 클리어 -> HIKING-1000M

를 출력하는 단순한 반복문이라고 할 수 있다.

 

특이 사항이라면, 반복문 끝에 await delay(setDelay); 인자를 받아서 

반복출력 간격을 조절할 수 있다. (스킬 성공 연출 출력속도와 게임오버 출력 속도가 다른 이유)

 

이제 여기서 튜터님의 도움을 받아 color 매개변수에 chalk.컬러명 을 인자로 받는 것으로

로그로 출력할 텍스트에 color 를 조절 할 수 있게 되었다. 

 

해당 부분은 

https://p-lani.tistory.com/43

 

8.23일 TIL 에서 기술한 바 있다.

 

 

 

2) 새로운 로그를 딜레이 출력

 

 

전투로그를 출력하는 부분에 대한 내용으로, 8.28  TIL 뒷부분에 작성한 내용이다.

 

oldLogs 의 내용은 즉시 전부 출력. -> 

이전 배틀 과정에서 추가된 logs 는 딜레이를 주어 출력하고, oldLogs 로 복사->

해당함수 실행 후 logs를 초기화 하는것으로 완성한 코드이다.

 

맨 아랫줄인 if문은 logs 가 비어있지 않은 경우, 딜레이를 만들어서

이후 내용인 행동 선택지를 띄우는 시간 사이에도 틈을 만들었다.

 

 

다른 코드들은 발표 시간 문제로, 또 그렇게 특별한 코드는 없기 때문에 스킵을 했고

 

그렇게 발표는 마무리 되었다 !

 

 

 

 

 

해당 과제를 진행하며 마주하게된 문제점과 해결 과정은 매일 TIL에 기록하였기 때문에

따로 회고가 필요하진 않을것 같다.

 

여기서 

 

찐찐찐으로 RogLike  과제는 마무리가 되었다.

 

많은걸 배우고, 또 직접 적용해보기도 하고

수많은 문제점을 마주하며 해결해보는 과정이 모두 재밌었고 의미있는 과제였다 !

 

다음주 부터 시작될 CH3의 과제도 잘 되길 바라는 마음이다.

'내일배움캠프' 카테고리의 다른 글

24.09.02 TIL : Node.js 입문주차  (0) 2024.09.02
24.08.30 TIL : Node.js 입문주차  (0) 2024.08.30
[내일배움캠프] 24.08.28 TIL  (1) 2024.08.28
[내일배움캠프] 24.08.27 TIL  (1) 2024.08.27
[내일배움캠프] 24.08.23 TIL  (0) 2024.08.23

+ Recent posts