스파르타 코딩

내배캠 7일차

choijhha 2025. 2. 6. 20:44

처음 하는 팀 프로젝트에 들어갔습니다

콘솔로 만드는 TextRpg

가장먼저 구현해야 할 것들의 와이어프레임입니다!

 

 

팀원분을 통해 피그마를 알게되어 피그마로 같이 의견을 주고받으며 와이어프레임을 간단히 작성하게 되었습니다

도전기능과 추가하고 싶은것을 제외한 것들을 구현한 후 도전해보도록 얘기를 했습니다

 

가장먼저 담당할 부분들을 나눠봤습니다만...

배분을 하다보니 4개로 나뉘어서 1명은 퀘스트를 담당하기로 했습니다

 

그렇게 서로 조율하여 제가 Quest 부분을 담당하여 제작하게 되었습니다.

 

아직 Git에 익숙하지 않아 계속 물어보면서 진행 했던거 같습니다 팀원분이 잘 알려주셔서 튜터님한테까지 갈 일이 없었습니다.

 

Git Hub 특강을 들으면서 중요하다고 생각한 부분들입니다.

 

깃 컨벤션

feat : 기능
fix : 버그수정
docs : 문서작업(주석 등)
style : 포맷팅, 세미콜론 누락 등
refactor : 리팩터링(코드 정리)
test : 테스트
chore : 관리(핵심 내용은 아닌 잡일 등)

 

팀 협업을 위해 해당 문구는 접두사로 필요한곳에 붙어주고 설명쓰기.

 

VisualStudio -> 리포지토리 복제 -> 리포지토리 위치(연동할 깃허브 주소) 로 연동하면 된다!

 

public class Quest
{
    // 퀘스트... 목록 보여주기
    // 1 퀘스트 목록
    // 퀘스트를 선택하면 보상 목록을 보여주고
    // 1 수락, 0 뒤로가기
    // 퀘스트를 2개이상 받았다면 퀘스트창이 다 찼습니다 출력하기
    // 퀘스트 목록은 1 ~ 7까지 7개만 보이게
    // 9 누르면 내가 받은 퀘스트 목록(최대 2개)
    // 퀘스트 완료되면 (완) 표시
    // 퀘스트가 완료된게 아니라면 퀘스트를 포기할지 결정
    // 완료 퀘스트를 누르면 퀘스트가 완료되고 보상을 받는다.
    // 퀘스트 

    // 퀘스트 번호
    public int questNumber  = 0;
    // 퀘스트 이름
    public string questName;
    // 퀘스트 정보
    public string questInfo;
    // 퀘스트 보상
    public Item questReward;
    // 몬스터 마리 수
    public int questAmount;
    // 퀘스트 카운팅
    public int questAmountCount;
    // 퀘스트를 넣을 리스트
    List<Quest> questList;

    GameManager gm = new GameManager();



    public Quest(string questname, string questinfo, Item questreward, int amount)
    {
        questName = questname;
        questInfo = questinfo;
        questReward = questreward;
        questAmount = amount;
        QuestList();
    }

    public void QuestWindow()
    {
        Thread.Sleep(500);
        Console.Clear();

        Console.WriteLine("퀘스트 목록\n");

        QuestInfo(questList);

        gm.Input(questNumber);
    }


    // 퀘스트 생성 및 관리
    public void QuestList()
    {
        questList = new List<Quest>()
        {
            new Quest("마을을 위협하는 몬스터 처치", "이봐! 마을 근처에 몬스터들이 너무 많아졌다고 생각하지 않나?" +
            "마을주민들의 안전을 위해서라도 저것들 수를 좀 줄여야 한다고! 모험가인 자네가 좀 처리해주게!", questReward, 5),

            new Quest("마을을 위협하는 몬스터를 많이 처치", "이봐! 마을 근처에 몬스터들이 엄청 많아졌다고 생각하지 않나?" +
            "마을주민들의 안전을 위해서라도 저것들 수를 좀 줄여야 한다고! 모험가인 자네가 좀 처리해주게!", questReward, 10)
        };
    }

    public void QuestInfo(List<Quest> que)
    {
        // 리스트 크기가 7 이상이면 7번 반복 작다면 리스트 크기만큼 반복
        for (int i = 0; i < Math.Min(7, questList.Count); i++)
        {
            questNumber++;
            que[i].questNumber = i + 1;
            Console.WriteLine($"{que[i].questNumber}. {que[i].questName}");
        }

    }

}

 

일단 생각을 정리하고 생각나는대로 틀을 먼저 짜는데 시간이 걸렸습니다.

이후 틀을 짠 이후에 필요하다고 생각하는 것들을 제작했습니다. 생각하는데 시간이 길어져 이것밖에 작성하지 못했지만

내일은 더 길어진 코드로 수정할부분들은 수정하고 추가할 부분은 추가하고 돌아오도록 하겠습니다!

'스파르타 코딩' 카테고리의 다른 글

내배캠 9일차  (0) 2025.02.10
내배캠 8일차  (1) 2025.02.07
내배캠 6일차(개인과제) 하면서 느꼇던 것 주저리~  (1) 2025.02.05
내배캠 5일차  (0) 2025.02.04
내배캠 3일차  (2) 2025.01.31