Skip to content

maxminseok/baseballProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 

Repository files navigation

숫자 야구 게임 만들기

숫자 야구 게임은 두 명이 즐길 수 있는 추리 게임으로, 상대방이 설정한 3자리의 숫자를 맞히는 것이 목표입니다.

각 자리의 숫자와 위치가 모두 맞으면 '스트라이크', 숫자만 맞고 위치가 다르면 '볼'로 판정됩니다.

예를 들어, 상대방의 숫자가 123일 때 132를 추리하면 1스트라이크 2볼이 됩니다. 이러한 힌트를 활용하여 상대방의 숫자를 추리해 나가는 게임입니다.


1. 요구 사항

  • 0에서 9까지 서로 다른 임의의 수를 정하고 맞추기
  • 정답은 랜덤으로 만들기
  • 정답을 맞추기 위한 힌트를 제공하기
    • 힌트 용어는 야구 용어인 스트라이크
    • 같은 자리에 같은 숫자가 있는 경우 스트라이크 , 다른 자리에 숫자가 있는 경우
  • 올바르지 않은 입력에 대해 오류 문구 띄우기
  • 3스트라이크일 때 게임 종료
  • 맨 앞자리에 0이 오는 것은 불가능
  • 프로그램 시작 시 안내문구 띄우기
환영합니다! 원하시는 번호를 입력해주세요
1. 게임 시작하기  2. 게임 기록 보기  3. 게임 종료하기
  • 1번의 경우 게임을 시작하기
  • 2번의 경우 완료한 게임들에 대한 시도 횟수 보여주기
  • 3번의 경우 게임 종료하기
  • 1, 2, 3 이외의 입력 값에 대해서 오류 메세지 보여주기

2. 파일 설명

Main 폴더

main.swift가 있는 폴더입니다. 게임을 시작하는 코드가 작성되어 있습니다.

GameLogic 폴더

게임 진행을 위한 여러 클래스가 구현되어 있는 swift 파일들이 있는 폴더입니다.

  • StrikeAndBall.swift : 스트라이크와 볼을 판정하는 클래스가 구현되어 있습니다.
  • MakeAnswer.swift : 정답을 생성하는 클래스가 구현되어 있습니다.
  • PlayGame.swift : 게임을 진행하고 기록을 확인하는 클래스가 구현되어 있습니다.
  • ShowMessage.swift : 게임 진행 시 나오는 문구들을 모아놓은 클래스 입니다.
  • Start.swift : 게임 시작 시 어떤 것을 실행할지 묻는 클래스가 구현되어 있습니다.

Checks 폴더

생성된 정답이나 입력한 입력 값이 형식에 맞는지 확인하는 CheckCorrectInput.swift가 구현되어 있는 폴더입니다.


3. 커밋 컨벤션

  • [ADD] : 파일 추가

  • [RENAME] : 파일 혹은 폴더명을 수정하거나 옮기는 작업만인 경우

  • [REMOVE] : 파일을 삭제하는 작업만 수행한 경우

  • [FEAT] : 기능 추가

  • [DELETE] : 기능 삭제

  • [UPDATE] : 기능 수정

  • [FIX] : 버그 수정

  • [REFACTOR] : 리팩토링

  • [STYLE] : 스타일 (코드 형식, 세미콜론 추가: 비즈니스 로직에 변경 없음)

  • [DOCS] : 문서 (문서 추가(Add), 수정, 삭제)

  • [CHORE] : 기타 변경사항 (빌드 스크립트 수정, 에셋 추가 등)

  • [DESIGN] : 사용자 UI 디자인 변경

  • [HOTFIX] : 급하게 치명적인 버그를 고쳐야하는 경우

  • [COMMENT] : 필요한 주석 추가 및 변경

  • [TEST] : 테스트 추가, 테스트 리팩토링(프로덕션 코드 변경 X)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages