1.요구사항
// 1,2,3중 직업을 입력 하세요. [입력]
// 1 : 전사, 2: 마법사, 3: 도적
// 전사 -> 검(5), 마법사 -> 지팡이(3), 3 -> 단검(1) (강화 기본 단계는 0입니다.)
// "강화"
// 재료가 있다면
// 검 강화를 시작 합니다.
// 강화서 1장을 사용
// 50%확률로 강화 성공, 실패
// 성공 했다면 검 (+1강) //강화 단계를 1단계 올리세요
// 실패 했다면 검 (0강) //강화 단계는 올라가지 않습니다.
// 재료가 없다면
// 무기 강화서가 부족 합니다.
// "퀘스트"
// 늑대 10마리를 잡아 오세요. (늑대의 hp는 11)
// "퀘스트 수락"
// 퀘스트를 수락 했습니다.
// 퀘스트 수락 상태에서 "늑대 모두 쳐"
// [퀘스트 완료] 보상: 무기강화서 1장
// 퀘스트를 수락 하지 않았다면 : 알수없는 명령어 입니다.
// "가방"
// 무기 강화서: 1장
+늑대 공격시 직업별 확률 부여
2.결과 화면 + 샘플 파일
3.소스 코드
class Program { static void Main(string[] args) { string jobName = ""; int jobPower = 0; int passPer = 0; int upPaper = 0; int upLv = 0; int wolfHp = 330; int questCheck=0; string check = ""; Random random = new Random(); for (int i = 1; i > 0; i++) { Console.WriteLine("직업을 선택하시오.(번호)"); Console.WriteLine("1.전사 2.마법사 3.도적"); int selectJob = int.Parse(Console.ReadLine()); if (selectJob == 1) { jobName = "전사"; jobPower = 25; passPer = 3; break; } else if (selectJob == 2) { jobName = "마법사"; jobPower = 20; passPer = 4; break; } else if (selectJob == 3) { jobName = "도적"; jobPower = 15; passPer = 5; break; } } while(!(check == "게임종료")) { Console.WriteLine(""); Console.WriteLine("원하는진행 명령어를 입력하세요."); Console.WriteLine("퀘스트확인-현재 퀘스트 수락여부"); Console.WriteLine("퀘스트수락-퀘스트를 수락"); Console.WriteLine("가방-현재 강화서 확인"); Console.WriteLine("무기-현재 공격력 및 강화레벨 확인"); Console.WriteLine("늑대모두쳐-퀘스트 진행"); Console.WriteLine("강화-50%확률로 강화성공"); Console.WriteLine("게임종료 - 게임을 종료합니다."); string select = Console.ReadLine(); switch (select) { case "퀘스트확인": { if (questCheck == 1)//수락한 퀘스트가 있을때 { Console.Clear(); Console.WriteLine("퀘스트를 진행중입니다."); } else//수락한 퀘스트가 없을때 { Console.Clear(); Console.WriteLine("진행중인 퀘스트가 없습니다."); } break; } case "퀘스트수락": { if (questCheck == 1)//이미 수락했을때 { Console.Clear(); Console.WriteLine("이미 퀘스트를 진행중입니다."); } else { Console.Clear();//정상적인 수락일때 Console.WriteLine("퀘스트를 수락했습니다."); questCheck = 1; } break; } case "가방": { Console.Clear(); Console.WriteLine("현재 보관중인 강화서의 개수는 " + upPaper + "장 입니다."); break; } case "무기": { Console.Clear(); Console.WriteLine("현재 당신의 직업은 " + jobName + " 입니다."); Console.WriteLine("현재 당신의 무기의 공격력은 " + jobPower + " 입니다."); Console.WriteLine("현재 당신의 강화 레벨은 " + upLv + " 입니다."); break; } case "늑대모두쳐": { if (questCheck == 1) { for (int i = 1; i<11; i++)//총 10마리 잡을때까지 { wolfHp = 330; for (int j = 1; wolfHp > 0; j++)//한마리 잡는 과정 { int pass = random.Next(1, 100); if (pass % passPer == 0) { Console.WriteLine(" " + j + "번째 공격시도 입니다. \n 늑대가 공격을 회피했습니다."); } else { wolfHp -= jobPower; Console.WriteLine(" " + j + "번째 공격시도 입니다. \n 현재 남은 늑대 체력은 " + wolfHp + "남았습니다."); } } Console.WriteLine("----현재 진행상태는 " + i + "/10 입니다."); } Console.WriteLine("+++퀘스트를 완료했습니다!!!!! 강화서 한장 획득!!!!"); upPaper += 1; questCheck = 0; } else//늑대 잡기전 퀘스트 미수락시 { Console.Clear(); Console.WriteLine("수락한 퀘스트가 없어 진행할 것이 없습니다."); } break; } case "강화": {if (upPaper > 0)//강화서가 있을때 { int cri = random.Next(1, 100); if (cri % 2 == 0) { jobPower += 15; upLv++; upPaper-- ; Console.Clear(); Console.WriteLine("!!!강화!!!성공!!! "); Console.WriteLine("공격력 : " + jobPower + "\n 강화레벨 : +" + upLv); Console.WriteLine("남은 강화서의 개수는 " + upPaper + "장 입니다."); } else { upPaper--; Console.Clear(); Console.WriteLine("---------강화 실ㅠㅐ........ㅠ.,ㅜ"); Console.WriteLine("남은 강화서의 개수는 " + upPaper + "장 입니다."); } } else//강화서가 없을때 { Console.Clear(); Console.WriteLine("강화서가 한장도 없어요."); } break; } case "게임종료"://종료 명령어 { Console.Clear(); check = "게임종료"; break; } default: { Console.WriteLine("잘못된 명령어 입니다."); break; } } } Console.WriteLine("게임이 종료되었습니다."); Console.ReadKey(); } }
'정리 카테고리 > 실습_과제' 카테고리의 다른 글
실습_바닥에 물건 집고 버리기 (2) | 2018.03.07 |
---|---|
Unity-9일차 실습-과제(03-06) (2) | 2018.03.07 |
실습_비밀번호 설정 및 확인 프로그램 (0) | 2018.03.06 |
C# 머드게임 기초 _ 굶주린 늑대를 잡아보자. (1) | 2018.03.02 |
실습_출석 + 빵보상 소스코드 (2) | 2018.02.28 |