[[TableOfContents]] == 개요 == * 게임 플레이 도중 이용되는 콘솔 모드를 구현합니다. == 진행 상황 == === 7월 7일 이전 === * 최대한 실제 콘솔 창과 비슷하게 구현하는 것을 목표로 합니다. * UI 모델은 리눅스 혹은 파이썬으로 잡았습니다. 사실 어떻게 보면 의미는 없습니다(....) * 천천히 구현해 나가고 있기는 한데, 몇 가지 문제점 때문에 약간 난항을 겪고있습니다. * 어떻게 유저가 수정 가능한 UI Text를 제작할 것인가. * 위 역시 문제긴 문제지만 사실 가장 큰 문제는 스크롤바 재현에 있습니다. * 7월 9일까지 문제점 해결을 목표로 합니다. * ~~나머진 기밀이닷!~~ * ...이 아니라 그냥 정말 콘솔이에요. 흔하게 쓰는 콘솔. === 7월 7일 ~ 7월 9일 === * '''1차로 갈아엎었습니다.''' * 어째 이러면서 설계해놓은 것도 같이 엎어진 것 같지만... ~~에라 모르겠다...~~ * 그래도 예전보단 낫습니다. * 사용자로부터 입력받고, 출력하는 것까지 완성했습니다. * 다만, 말할 수 없는 사정상(...) 입력하는 것에 제한을 둔 것이 조금 있습니다... * 스크롤바는 넣을까 말까 고민하다가 아직은 필요없는 것 같아 보류중입니다. * 지금 생각해보니 까만 콘솔 화면이 가장 간단한 것 같기도 하고 아닌 것 같기도 하고... * 사실 지금 폰트가 조금 마음에 안든다고 합니다. === 7월 11일 새벽 === * 폴더 구현하면서 어떻게 해야하는지 고민 * 그래서 잠시 회의했습니다. * 구성요소가 겹치는 아이템들을 item 클래스를 상속받아서 하는 것으로 함 * 새로 얻은 아이템을 따로 표시해주는건 고려해보기로 함 * 폴더 - 하위폴더/상위폴더/이름/엑세스 여부/아이템 리스트 라는 멤버를 만들기로 함 이로써 문제는 일단락될듯 * 앞으로는 만들어나가면서 추가하기로 했습니다. 애초에 안만들면 어찌해야되는지 감도 안잡히고.... === 7월 10일 ~ 7월 13일 === * 아이 라이브러리에 새벽에 회의한 내용을 전부 구현시켰습니다. * ~~클래스 구조는 장담할 수 없어요.~~ * 세가지의 명령어를 구현했습니다. * 메서드 하나가 지나치게 길어져서, 이리저리 생각해보고 있지만... 모르겠습니다. * 콘솔에서 구현해야 하는건 거의 다 구현한 듯 싶습니다. * 스크롤바를 대체할 방법을 슬쩍슬쩍 생각해보고 있습니다. === 7월 14일 ~ 7월 17일 === * Open 명령을 조금 더 구체적으로 구현 (파일 열기!) * 200줄이 넘어가는 메서드를 차마 볼 수가 없었던 나머지, 수행부분에서 조건 검사 부분은 다른 정적 클래스에서 담당하도록 빼버리고 순수하게 수행만 할 수 있는 구조로 분해했습니다. * ~~그래도 길어요... 쿨럭쿨럭~~ * 바탕에 희미하게 조명을 추가했습니다. 이것이 조명의 힘이군요! * 고려해야 할 사항 - 획득한 아이템에 대해서만 Import 허용하기 * 기존 Dir 명령어를 좀 더 알기 쉽게 moveDir argument / showDir로 분해했습니다. * 폴더가 색상을 지원합니다! * 사운드 효과를 내고 싶긴 한데, 인터넷 상에서 적절한 소스를 찾기가 힘드네요. 있어도 사용 허락 과정이 복잡하고.. === 7월 18일 ~ 7월 20일 === * ~~월차 내고 휴가갔습니다.~~ === 7월 21일 ~ 7월 24일 === * 3가지의 명령어를 구현. (아직 정해진 사항이 없는 것이 많아서 명령어 인식만 하도록 구현했습니다.) * 인트로를 구현했습니다. * 저장 파일이 있을 때/없을 때로 구분하는 건 나중에 해야할 것 같네요. * Main과 Console을 연동시켰습니다. * 타이핑 효과를 Random/Non-Random으로 나눌 수 있도록 했습니다. * 타이핑 효과 출력 시 색상 출력/볼드 + 이텔릭체가 가능해졌습니다. === 7월 29일 ~ 8월 1일 === * '''2차로 갈아엎었습니다.''' * 리팩토링 과정을 거쳤습니다. * ~~사실 이게 제일 큰 작업이었다고 합니다.~~ * 도중에 되던게 안되서 난리도 아니었습니다... 휴우... * ~~MonoBehavior가 영 좋지 않음을 깨달았습니다.~~ * 사용할 메시지를 가져올 때 다른 방법을 사용해볼까 고민중입니다. == 8월 1일 ~ 10월 11일 == * 명령어 처리 방식을 약간 변경했습니다. * 명령어 실행시마다 개행문자가 한 개씩 더 나오는 현상을 없앴습니다. * 콘솔에서 메인으로의 이벤트 발생시키는 것이 가능해졌습니다. * GUI를 설정하는 명령어에 대한 메시지 처리를 다듬었습니다. * 명령어 로그를 위로 올리는 방식에 문제가 있어서 해결이 필요합니다. == 10월 12일 ~ 12월 28일 == * 해상도에 따라 줄 간격이 갱신되는 정도가 달라서, 1280x720으로 고정시키고 줄 간격을 설정했습니다. * Open 명령어에 문제가 생겨 (글자가 깨짐), 배경 이미지를 한 겹 더 씌우는 방식을 통해 해결했습니다. * Import, Repair 명령어가 일괄 출력 식이 아닌 한 글자씩 출력되는 방식으로 변경되었습니다. * 콘솔 진입 시 출력되는 문구가 처음 콘솔에 진입할 때와, 추후에 진입할 때로 나뉘어서 출력됩니다. * Admin 명령어를 추가했습니다. 게임 진행에 영향을 주게 됩니다. * 모든 콘솔 메시지를 사용 가능한 메시지로 교체하였습니다. * ChangeStyle이라는 명령어를 통해, 메인에서의 아이 복장을 변경시킬 수 있습니다. * 콘솔에 글자를 쓸 때마다 랜덤으로 타이핑 소리가 재생됩니다. BackSpace의 경우는 예외로 동일한 소리가 재생됩니다. * 사용자의 편의를 위해, Showdir 명령어에서도 획득한 아이템의 Import 여부를 알려줍니다. ------------------------------------------------------------------------------------- [Project_AI]