TIL)2023_11_10일자 일지 작성
2023. 11. 10. 23:07ㆍ내외 교육들/TIL
1. 오늘은 뭐 했냐?
2주차 개인 과제의 필수 기능 개발에 주력, 강의로는 블랙잭과 스네이크 게임 개발 숙제에 성공한 수강생들의 코드 리뷰가 있었다.
2. 오늘은 뭐를 개발했냐?
구현해야 할 필수 기능은 인벤토리 아이템의 착용 상태 및 플레이어 능력치 상태 변화가 있다. 그것이 필수 과제이고 나머진 선택 사항이므로 빠르게 필수 기능을 구현할 필요가 있다. 다만 이것을 어떻게 구현을 해야 할지가 관건이였다.
- 어제 고민했었던 아이템의 목록을 리스트로 어떻게 구현하는 것은, 먼저 아이템의 정보를 담을 수 있는 변수들의 구조체 집합을 선언 후, 아이템 별로 변수 선언문들을 정보 설정 메서드 쪽에다 작성하였다.
- 그 다음은 실제 인벤토리를 관리하는 기능 메서드들(추가, 제거, 목록 출력 등)을 담은 클래스들을 선언하였고, 여러 타입의 자료 값을을 담은 리스트를 골라서 상세 목록을 출력하도록 했다.
- 여기서 가장 어려운 고민은, 장비 선택 시에 장비 선택을 어떻게 구현해 내고, 또 아이템 이름 옆에다 착용 상태를 어떻게 띄우는 게 관건이였다. 다행이도 튜터님과 팀원들의 조언 덕에 전자는 어떻게는 실마리를 찾아냈다.
- 방법은 장비 착용 상태 기능은 인벤토리 클래서에서 구현, 추가로 아이템 정보 구조체에 식별이 가능한 번호 인덱스 변수를 선언, 이 인덱스 값이 어떤 장비를 선택할지에 대한 번호를 입력 후, 범위 밖의 번호 입력을 막는 CheckValidInput 메서드가 선언된 아이템 리스트의 수만큼 걸러내고, 실제로 선택이 가능하도록 foreach 문을 사용해 해당 인덱스의 리스트를 구조체 변수 tmp에다 저장되면, 실제로 사용이 가능한 해당 아이템 정보가 담긴 리스트를 저장하고, 이 것을 이용해 착용 상태의 boolean 값을 변경할 것이다.
3. 마치며
이제 남은건 '[E]'를 띄우는 상태 구현과, 장비 착용에 맞춰 스탯도 변하도록 하는 것이 관건이다. 아주 힘들고 고될 것이다.
'내외 교육들 > TIL' 카테고리의 다른 글
TIL)2023-11-14일자 일지 작성 (1) | 2023.11.14 |
---|---|
TMI)2023-11-13일자 일지 작성 (1) | 2023.11.13 |
TIL)2023_11_09 일지 작성 (0) | 2023.11.09 |
TIL)2023_11_08일자 일지 작성 (1) | 2023.11.08 |
TIL)2023_11_06일자 일지 작성 (2) | 2023.11.06 |