기능
※ 참고 사항
1. 엑셀로 정리된 데이터는 SkillData로 임시 보관한다.
1-1 SkillData는 인터페이스(IDataManager)를 기반으로 되어있다.
2. 스킬 활용의 경우 PlayerSkill에서 처리한다.
2-1 보유한 스킬, 보유한 퀵스킬, 버프 및 디버프 효과 적용, 스킬 데미지 범위 적용 등등...
2-2 보유 스킬이나 배워야할 스킬이 변화할 경우 UI를 갱신(delegeate 이용)한다
3. UI에서는 스킬의 아이콘부분만 On/Off한다. UI는 SkillUI, HealthBarUI(버프), MovementUI(퀵스킬)이 연관된다.
코드
- AddSkill()에서 조건문은 리스트에 무기 강화1, 무기 강화2, 무기 강화3를 동시에 넣지 않기 위해서다.
- SID : 무기강화1(7), 무기강화2(7) 와 같이 같은 스킬이지만 레벨이 다른 경우에 동일한 SID를 가진다. 그렇기 때문에 SID가 다르면 배워야할 목록에 넣어야한다.
- Skill의 범위의 경우 사각형과 원형태가 있다.
- 데미지 적용은 Box나 Sphere의 범위안에 있는 몬스터들에게 데미지를 가하는 형식으로 작성했다.
- 위 탭(배움 목록/보유 목록) 버튼에 따라 배울 스킬들을 조건(전투/지속/기타)에 맞게 분류한다음 Slots에 적용한다.
- 등록 : 선택된 스킬이 있으며, 퀵 스킬 슬롯에 클릭한 경우
- 해제 : 동일한 슬롯을 2번이상 누른 경우
- 스왑 : 스왑 버튼을 눌렀으며, 2곳의 슬롯을 누른 경우
- 버프/디버프 스킬이 들어온다면, 화면 좌상단 경험치 바 아래에 아이콘을 표시한다.
- SkillIconSlots[1]의 시간이 끝나면, 1번 이후부터 시프트 레프트를 해줘서 빈 공간을 제거한다.
구현 영상
리펙토링
'유니티 > 3D RPG' 카테고리의 다른 글
22 던전 시스템 (0) | 2020.06.09 |
---|---|
20 게임 최적화 (0) | 2020.06.07 |
19 아이템 드래그/드랍 (0) | 2020.06.06 |
18 비헤이비어 트리 (0) | 2020.01.20 |
17 퀘스트 시스템 (0) | 2020.01.16 |
댓글