오늘는 스파르타 코딩 클럽 unity 게임 개발 과정 14일차(팀과제와 열거형 설명)
2023. 11. 17. 02:03ㆍ스파르타코딩클럽 게임개발
반응형

열거형(Enumeration)이란?
C#에서 열거형(Enumeration)은 여러 개의 이름이 지정된 상수를 하나의 형식으로 묶어서 나타내는 방법.
간단히 말해, 특정 값을 가지는 상수들의 집합체로 사용된다.
열거형은 가독성을 높이고 프로그램의 유지보수성을 향상시키는 데에 도움된다.
아래는 열거형을 사용한 간단한 예제 코드다.
// 열거형 정의: 요일을 표현하는 Enum
public enum Day
{
Sunday, // 0
Monday, // 1
Tuesday, // 2
Wednesday, // 3
Thursday, // 4
Friday, // 5
Saturday // 6
}
class Program
{
static void Main()
{
// 열거형 사용 예제
Day today = Day.Wednesday;
// Switch 문을 통한 열거형 값에 따른 처리
switch (today)
{
case Day.Sunday:
Console.WriteLine("일요일입니다.");
break;
case Day.Monday:
Console.WriteLine("월요일입니다.");
break;
case Day.Wednesday:
Console.WriteLine("수요일입니다.");
break;
default:
Console.WriteLine("다른 요일입니다.");
break;
}
}
}
이 코드에서는 Day
열거형을 정의하여 일주일의 요일을 표현하고, today
변수를 사용하여 현재 요일을 나타낸다. switch
문을 통해 특정 요일에 따라 다른 처리를 할 수 있다.
이를 통해 코드의 가독성을 높이고, 각 요일을 명확하게 표현할 수 있다.
아래는 열거형을 사용하여 캐릭터에 속성과 직업을 넣는 모습이다.
현재는 테스트를 위해 생성자로 생성하는법 메서드로 생성하는법 두가지를 모두 구현한 상태다.
// 직업을 나타내는 열거형
public enum Job
{
Guardian,
Wizard,
Ranger,
Priest
}
// 종족을 나타내는 열거형
public enum Species
{
Goblin,
Gargoyle,
Kobold,
Dragon
}
// 프로그램 진입점 클래스
class Program
{
static void Main()
{
// 캐릭터를 생성하고 게임 데이터에 추가하여 출력 목록에 추가
Character character = new Character("ㅇㅇ", 100, 100, 100, 100, 100, 200, Job.Guardian, 10, 10, Attribute.Wind);
character.Add(new Character("ㅇㅇ", 100, 100, 100, 100, 100, 200, Job.Guardian, 10, 10, Attribute.Wind));
// 몬스터를 생성하고 게임 데이터에 추가하여 출력 목록에 추가
Monster monster = new Monster("Test", 1, 1, 1, 1, 1, 1, Species.Goblin, 1, 1, Attribute.Pung);
monster.Add(new Monster("Test", 1, 1, 1, 1, 1, 1, Species.Goblin, 1, 1, Attribute.Wind));
// 전투 이벤트 생성 및 캐릭터, 몬스터 전달
BattleEvent battleEvent = new BattleEvent(character, monster);
// 화면 관리자 생성 및 캐릭터, 전투 이벤트 전달
ScreenManager screenManager = new ScreenManager(character, battleEvent);
// 메인 화면 표시
screenManager.ShowMainScreen();
}
}
반응형
'스파르타코딩클럽 게임개발' 카테고리의 다른 글
오늘는 스파르타 코딩 클럽 unity 게임 개발 과정 16일차(팀과제 C# 콘솔 폰트 변경 및 표 형식으로 보여주기 설명) (1) | 2023.11.21 |
---|---|
오늘는 스파르타 코딩 클럽 unity 게임 개발 과정 15일차(팀과제 C# 파일 경로 및 조작 설명) (0) | 2023.11.18 |
오늘는 스파르타 코딩 클럽 unity 게임 개발 과정 13일차(팀과제 준비와 싱글톤을 사용하는 법) (1) | 2023.11.16 |
오늘는 스파르타 코딩 클럽 unity 게임 개발 과정 12일차(4주차 과제 인터페이스와 Func과 Action) (0) | 2023.11.15 |
오늘는 스파르타 코딩 클럽 unity 게임 개발 과정 11일차(개인과제 텍스트 RPG) (0) | 2023.11.14 |