개요
- 개발 시 기능을 명확히 구분할 수 있도록, 가능한 한 기능별로 폴더를 나누어 구성하였습니다.
- 폴더 이름은 축약을 피하고, 내용을 직관적으로 파악할 수 있도록 명확하게 작성하였습니다.
전체 폴더 구조
/Assets/GGemCo/Scripts/
├── Addressable/
├── Affect/
├── Characters/
│ ├── Monster/
│ ├── Npc/
│ └── Player/
├── Configs/
├── Core/
├── Currency/
├── Cutscene/
│ ├── CameraChangeTarget/
│ ├── CameraMove/
│ ├── CameraShake/
│ ├── CameraZoom/
│ ├── CharacterAnimation/
│ ├── CharacterMove/
│ └── DialogueBalloon/
├── Dialogue/
├── Effect/
├── Interaction/
├── Items/
├── keyboard/
├── Maps/
│ └── Objects/
├── Popup/
├── Quest/
│ ├── CollectItem/
│ ├── KillMonster/
│ ├── ReachPosition/
│ └── TalkToNpc/
├── SaveData/
├── Scenes/
├── ScriptableSettings/
├── Skill/
├── Spine2d/
├── SystemMessage/
├── TableLoader/
├── TagName/
├── UI/
│ ├── Icon/
│ ├── UIText/
│ ├── Window/
│ ├── WindowDialogue/
│ ├── WindowEquip/
│ ├── WindowHud/
│ ├── WindowInventory/
│ ├── WindowItemBuy/
│ ├── WindowItemCraft/
│ ├── WindowItemSalvage/
│ ├── WindowItemSplit/
│ ├── WindowItemUpgrade/
│ ├── WindowLoadSaveData/
│ ├── WindowQuestReward/
│ ├── WindowQuickSlot/
│ ├── WindowShop/
│ ├── WindowShopSale/
│ ├── WindowSkill/
│ └── WindowStash/
├── Utils/
Addressable
- Addressables 시스템 관련 클래스들.
- 리소스 로딩 및 관리 담당 (예: 프리팹, 스프라이트 등 비동기 로드).
Affect
- 버프, 디버프, 상태이상 등 캐릭터에게 영향을 주는 요소들을 관리하는 로직.
Characters
- 캐릭터 관련 로직 전반 (플레이어, NPC, 몬스터 등)
Player
: 플레이어 조작 및 상태
Npc
: 상호작용 가능한 NPC
Monster
: 몬스터 AI 및 전투 로직
Configs
- 게임 설정값 및 상수, 태그, 어드레서블 키 값 등 관리
- 하드코딩 방지