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