반응형
SMALL
히드라 + 럴커 를 진화시킬수 있는 선택지
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study03
{
class App
{
//생성자
public App()
{
Hydralisk hdralisk1 = new Hydralisk();
Console.WriteLine(hdralisk1);
hdralisk1.Move();
hdralisk1.unitName = "히드라1호기";
hdralisk1.unitPower = 15;
Hydralisk hdralisk2 = new Hydralisk();
Console.WriteLine(hdralisk2);
hdralisk2.Move();
hdralisk2.unitName = "히드라2호기";
hdralisk1.Attack(hdralisk1,hdralisk2);
hdralisk2.Hit(hdralisk2, hdralisk1);
Console.WriteLine();
Console.WriteLine("히드라 2호기를 럴커로 진화시키시겠습니까? (1/2)");
string choice = Console.ReadLine();
int choicenum = Convert.ToInt32(choice);
if(choicenum == 1)
{
Lurker lurker = new Lurker();
lurker.unitName = "럴커";
hdralisk2.Change(lurker);
}
else if (choicenum == 2)
{
Console.WriteLine(hdralisk2.unitName +"이 죽었습니다.");
}
}
}
}
히드라
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study03
{
class Hydralisk
{
public string unitName;
public int unitPower = 10;
public float unitspeed = 1.741f;
public int unitMaxHp = 80;
public string unitChange = "럴커";
// 생성자
public Hydralisk()
{
Console.WriteLine("히드라를 생성하였습니다.", unitName);
Console.WriteLine("공격력 :{0}", unitPower);
Console.WriteLine("이동속도 :{0}", unitspeed);
Console.WriteLine("체력 :{0}", unitMaxHp);
Console.WriteLine("{0} 로 변태 가능한 상태입니다.", unitChange);
}
public void Move()
{
Console.WriteLine("히드라 리스크를 이동시킵니다.");
}
public void Attack(Hydralisk attacker,Hydralisk target)
{
Console.WriteLine("{0}로 {0}를 공격시킵니다.", attacker.unitName,target.unitName);
}
public void Change(Lurker unitName)
{
Console.WriteLine("히드라 리스크를 {0}로 변태 시킵니다.", unitName.unitName);
Console.WriteLine("{0}가 생성되었습니다.", unitName.unitName);
}
public void Hit(Hydralisk target , Hydralisk power)
{
Console.WriteLine(this);
Console.WriteLine("{0}가 피해를 {1} 받았습니다.",target.unitName, power.unitPower);
}
}
}
럴커
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study03
{
class Lurker
{
public string unitName;
public int unitPower = 10;
public float unitspeed = 1.741f;
public int unitMaxHp = 80;
public string unitskill = "버로우";
public Lurker()
{
}
public void Move()
{
Console.WriteLine("럴커를 이동시킵니다.");
}
public void Attack(Hydralisk target)
{
Console.WriteLine("럴커로 {0}를 공격시킵니다.", target.unitName);
}
public void Skill()
{
Console.WriteLine("럴커를 {0}가 버로우를 시전합니다.", unitskill);
}
}
}
결과물 (1선택시)
결과물 (2선택시)
반응형
LIST
'C# > 수업 과제' 카테고리의 다른 글
Class 메서드를 이용한 스타크래프트 유닛 인스턴스 만들기 (0) | 2023.01.05 |
---|---|
라바 to 히드라 to 럴커(클래스 메서드 사용) (0) | 2023.01.05 |
레벨업 과제 ( 메서드 ) (0) | 2023.01.03 |
메뉴 고르기 과제 (메서드) (0) | 2023.01.03 |
물약사용하기 과제 (메서드 for문 활용) (0) | 2023.01.03 |