-
Notifications
You must be signed in to change notification settings - Fork 2
develop LevelUpSystem
pianop edited this page Feb 9, 2023
·
17 revisions
경험치 획득 -> 레벨업 발생시 시간 멈추고 스킬 선택화면 등장 -> 선택, 스킬 갱신 후 게임 재개
- 레벨업
- 경험치 획득 후 현재 maxExp 이상이면 현재 경험치를 초기화, maxExp에 dExp만큼 더해주기(선형 증가), 레벨업 함수 호출.
- 행운에 따른 선택지 개수 정하기
- 기본 3개, luck에 따라 1개 추가 가능 (luck 수치 1당 1%, 100 이상이면 100%로 4개)
- 스킬/장신구를 뽑을 때 나뉘는 2가지 경우
- 스킬/장신구 소지 수가 각각 6개로 모두 꽉 차있고 모두 마스터 한 경우 -> 스킬/장신구 대신 체력, 돈을 고르는 선택지 제공
- 마스터한 장비들을 제외하고 뽑기
- 뽑힌 장비 목록을 LevelUpUI에 넘겨주어 그 중 하나를 선택할 수 있게 하기 (develop - LevelUpUI 에서 계속)
stat들을 하나하나 변수로 관리하기는 힘드므로 int 배열에 넣어서 관리, 그냥 사용할 경우 index번호랑 스탯을 연결짓기 어려우므로 열거형을 이용하여 string <-> int 형변환 하듯이 사용해주었습니다.
- 소지 장비 수가 최대치에 도달했다면 뽑기 목록에 가지고 있는 장비 중 마스터 하지 않은 장비만 넣어줌
- 최대치에 도달하지 않았다면 마스터한 장비를 제외한 모든 장비들을 넣어줌
- character의 level을 1 더해줌
- RandomPickUp()함수를 통해 현재 뽑힌 장비 목록을 받아옴
- pickUps는 List<Tuple<int, int, int>>로 Tuple 내의 각 int들의 의미는 < 0: 무기/ 1: 악세, 무기/ 악세의 index 번호, 0: new/ 1:old >를 의미함
- ...LoadLevelUpUI() 함수에 뽑힌 목록들과 현재 스탯, 보유 무기/ 악세를 넘겨주어 레벨업 UI를 표시
- getPossibleChoice
1.