1.1. 과제 내용: 몬스터의 이름 및 체력변화를 사칙연산을 활용하여 출력하기.
(요구사항)
-몬스터의 이름
-몬스터 체력
-체력의 감소(사칙연산필요)
-증가 또는 감소후의 체력
-변화된 체력과 전체 체력의 값을 %로 표현
-반복하여 체력회복
-반복한 내용 결과 출력
(요구사항을 하기위해 필요한것들)
-몬스터의 이름 => '이름은 저장할 문자열을 넣을 변수'
-몬스터 체력 => '체력을 저장할 실수를 넣을 변수'-(실수로 하는이유 체력은 소수점까지 필요하게 될지 모르니까)
-체력의 감소(사칙연산필요) => 사칙연산자 사용
-증가 또는 감소후의 체력 =>변수에 체력의 변화를 다시 저장
-변화된 체력과 전체 체력의 값을 %로 표현 => 비교를 하기위한 전체체력을 저장한 변수도 추가로 필요
%를 보여주기 위해 실수가 필요(위 몬스터 체력을 실수로 하는걸 계속 유지)
-반복하여 체력회복 => 반복하여 회복을 해야 되므로 반복문 사용
-반복한 내용 결과 출력 => 결과가 화면으로 나오기위한 Debug.Log 활용
1.2. 결과 화면:
1.3.소스코드:
void Start () { float monHP = 4000f; float fullHp = 4000f; int dmg = 365; int hill = 8; int check; string monName = "우와왕"; string manName = "으아앙"; string totemNmae = "엄청작은"; Debug.Log("몬스터가 있습니다!"); Debug.Log("몬스터의 이름은 " + monName + " 입니다"); Debug.Log("몬스터의 체력은 " + monHP + " 입니다!!"); Debug.Log("몬스터는 " + dmg + "의 피해를 받았다"); monHP = monHP - dmg; Debug.Log("몬스터의 남은체력은" + monHP + " 이다."); Debug.Log("몬스터 체력의 " + (monHP / fullHp * 100.0) + "% 남았다."); Debug.Log("주술사가 등장했습니다.!!"); Debug.Log("주술사의 이름은 " + manName + " 입니다"); Debug.Log("주술사가 " + totemNmae + " 토템을 설치 했습니다."); Debug.Log("그로인해 몬스터 " + monName + "가 영향을 받았습니다"); Debug.Log("몬스터의 체력이 " + hill + "씩 회복합니다"); for ( check=1; check<=10; check++) { Debug.Log("몬스터 " + monName + "의 체력이 " + hill + " 회복하였습니다."); monHP = monHP + hill; } check = check - 1;//반복문 종료 후 상태가 반복한 횟수보다 +1 되어있는 상태이다 //+1 되어있는 이유는 초기화 부분에 check=1 이기 때문에 Debug.Log("몬스터 " + monName + "가 " + "총 " + check + "회 회복을 진행하여 " + (hill * check) + " 회복했습니다"); Debug.Log("몬스터의 현재 체력은 " + monHP + " 이고 전체 체력의 " + monHP / fullHp * 100 + "% 입니다."); }
2.1.과제 내용: 주석부분을 작성 (변수의 값을 예상)
2.2.1. 결과 화면 :
2.2.2. 소스 코드 :
void Start() { int stamina = 1000; int nowStamina = 0;// ++현제 체력을 표편한 변수를 만든다. int workStamina = 100; //일 할때 사용되는 체력 int restStamina = 25; //쉬면 회복 되는 체력 int workHardStamina = 10; //야근 하면 추가로 사용되는 체력 float restStaminaPercent = 8.0f; //맛있는걸 먹으면 추가로 전체 체력의 %가 회복됨 nowStamina = stamina; //현재 체력 출력 Debug.Log("현재 체력은 " + nowStamina + " 입니다."); //일하러감 : 체력을 소비함 nowStamina = nowStamina - workStamina; Debug.Log("일을 하러 갑니다. \n 체력소비 " + -workStamina + " 남은체력 : " + nowStamina); //집에 옴 : 체력을 회복 nowStamina = nowStamina + restStamina; Debug.Log("퇴근하여 휴식을 취합니다. \n 체력회복 " + restStamina + " 남은체력 : " + nowStamina); //일하러감 (야근 했음 ): 체력을 소비함 nowStamina = nowStamina - workHardStamina - workStamina; Debug.Log("근무 + 야근을 하였습니다. \n 체력소비 " + -(workStamina + workHardStamina) + " 남은체력 : " + nowStamina); //집에 옴 : 체력을 회복 nowStamina = nowStamina + restStamina; Debug.Log("일을 하러 갑니다. \n 체력회복" + restStamina + " 남은체력 : " + nowStamina); //맛있는걸 먹음 : 최대 체력의 %가 회복됨 nowStamina = nowStamina + (int)(stamina * restStaminaPercent / 100); Debug.Log("맛있는 음식을 먹었습니다. \n 최대 체력의 " + restStaminaPercent + "%만큼 체력을 회복합니다. 남은체력 : " + nowStamina); //현재 나의 체력은??? Debug.Log("현재 나의 체력은 " + nowStamina + " 입니다."); }
2.3.1. 결과 화면 :
2.3.2. 소스 코드 :
void Start () { int stamina = 1000; int workStamina = 100; //일 할때 사용되는 체력 int restStamina = 25; //쉬면 회복 되는 체력 int workHardStamina = 10; //야근 하면 추가로 사용되는 체력 float restStaminaPercent = 8.0f; //맛있는걸 먹으면 추가로 전체 체력의 %가 회복됨 //현재 체력 출력 Debug.Log("나의 현재 체력은 " + stamina + " 입니다."); //일하러감 : 체력을 소비함 Debug.Log("일하러 갑니다. 체력은 " + (stamina - workStamina) + " 입니다."); //집에 옴 : 체력을 회복 Debug.Log("집에 왔습니다. 체력은 " + (stamina - workStamina + restStamina) + " 입니다."); //일하러감 (야근 했음 ): 체력을 소비함 Debug.Log("일하러 갑니다. 야근도 합니다. 체력은 " + (stamina - workStamina + restStamina -workStamina -workHardStamina) + " 입니다."); //집에 옴 : 체력을 회복 Debug.Log("집에 왔습니다. 체력은 " + (stamina - workStamina + restStamina - workStamina - workHardStamina + restStamina) + " 입니다."); //맛있는걸 먹음 : 최대 체력의 %가 회복됨 Debug.Log("맛있는걸 먹었습니다. 체력이 " + restStaminaPercent + "% 회복 됩니다."); //현재 나의 체력은??? Debug.Log("나의 현재 체력은 " + (stamina - workStamina + restStamina - workStamina - workHardStamina + restStamina + (stamina * restStaminaPercent / 100)) + " 입니다."); }
'정리 카테고리 > 실습_과제' 카테고리의 다른 글
02.26~27 수업중 내용 연습 (2) | 2018.02.27 |
---|---|
Unity-5일차 실습-과제 (02-26) (0) | 2018.02.26 |
Unity-3일차 실습-과제 (02-22) (0) | 2018.02.22 |
Unity-2일차 실습-과제 (02-21) (0) | 2018.02.21 |
Unity-1일차 실습-과제 (02-20) (0) | 2018.02.20 |