230822 내일배움캠프 11일차

Minsang Kim·2023년 8월 22일
0

TIL

목록 보기
11/41

내일이 개인 프로젝트 마감일. 오늘 얼른 끝내버리자. 가보자잇 -!


콘솔 던전

드디어 완성시켰다. 오늘 진짜 완전 빡집중해서 코드를 쥐어짜낸듯. 대략 15시간 정도만에 코드 대략 1000줄 짜리 게임 하나를 뚝딱 만들어버렸다.

인터페이스

사실 저번에 interface 배울 때도 이거 왜 배우지 생각했다. 근데 이번에 써보면서 유용함을 느낄 수 있었다.
가장 먼저 유용한 점은 '상속받는 클래스에 변수를 강요'하는 점이다. 무슨 말이냐고? 만약 인터페이스에 string name을 선언해 놓기만 하면, 자식 클래스에서는 name을 선언하지 않으면 오류가 발생해버린다. 누락을 방지해주는 좋은 기능.
다음으로는 '매개변수로 받을 수 있다'는 점. 함수에서 매개변수로 받아 2개의 함수를 하나로 합쳤다. 게임을 만들면서 플레이어가 몬스터에게 행동하는 함수, 몬스터가 플레이어에게 행동하는 함수. 2개가 필요했고, 처음에는 그냥 2개 만들어야지 생각하고 있었는데, 인터페이스를 매개변수로 받을 수 있다는 걸 기억한 순간 하나로 합쳐버릴 수 있었다. 코드를 압축시켜버림 !

전투 메세지

메세지 출력은 쉽다. Console.WriteLine()이 있으니. 하지만 여려가지 메세지를 받아내고 그를 다 출력해야하는 전투상황에서는 좀 꼬일 수 있었다.
여기서 생각한게 바로 Queue 큐를 이용해서 전투 메세지를 모두 넣어주고, 다음 선택 전에 큐에 있는 모든 메세지를 출력하는 방식으로 구현했다.

어쨌든 다 만들고 나니 뿌듯하다.


세줄 요약

  • 게임 디자인부터 코딩까지 다 했음
  • 15시간 정도 빡집중해서 끝
  • 뿌듯
profile
게임만 하다가 개발자로

0개의 댓글