enum RaceType { Human, Elf, Ork } // 종족
enum Human { Warrior, Rogue }
enum Elf { Mage, Hunter }
enum Ork { Monk, Rogue }

 

public void enumWow()
{
Console.WriteLine("======================== WoW ========================");
int index1 = 1;
foreach (RaceType r in Enum.GetValues(typeof(RaceType)))
{
Console.Write($"[{index1++}. {r}] ");
}
Console.WriteLine();
Console.WriteLine("=====================================================");
while (true)
{
Console.Write("종족 선택: ");
var raceInput = (RaceType)(int.Parse(Console.ReadLine()) - 1);
int index2 = 1;
switch (raceInput)
{
case RaceType.Human:
{
Console.WriteLine($"{raceInput} 을 선택하셨습니다.");
foreach (Human h in Enum.GetValues(typeof(Human)))
{
Console.Write($"[{index2++}.{h}] ");
}
Console.Write("직업을 선택해주세요: ");
var classInput = (Human)(int.Parse(Console.ReadLine()) - 1);
Console.WriteLine($"{ (Human)classInput } 을 선택하셨습니다.");
break;
}
case RaceType.Elf:
{
Console.WriteLine($"{raceInput} 을 선택하셨습니다.");
foreach (Elf e in Enum.GetValues(typeof(Elf)))
{
Console.Write($"[{index2++}.{e}] ");
}
Console.Write("직업을 선택해주세요: ");
var classInput = (Elf)(int.Parse(Console.ReadLine()) - 1);
Console.WriteLine($"{ (Elf)classInput } 을 선택하셨습니다.");
break;
}
case RaceType.Ork:
{
Console.WriteLine($"{raceInput} 을 선택하셨습니다.");
foreach (Ork o in Enum.GetValues(typeof(Ork)))
{
Console.Write($"[{index2++}. {o}] ");
}
Console.Write("직업을 선택해주세요: ");
var classInput = (Ork)(int.Parse(Console.ReadLine()) - 1);
Console.WriteLine($"{ (Ork)classInput } 을 선택하셨습니다.");
break;
}
default:
Console.WriteLine("번호를 정확하게 입력해주세요");
break;
}// switch end
Console.WriteLine();
} //while end
}

+ Recent posts