DevCamp 회고 - 7 (정리)

이준호·2024년 7월 4일
0
post-custom-banner

📌 DevCamp 회고



Done - 24.04.24 (Check List)

우선순위

  • 단조 추가 퀘스트 적용
  • 영혼구 Exp & MaxGauge 적용.
  • 영혼구 확률 표기.
  • 스테이지 & 던전 이름 변경.
  • 단조 반복 퀘스트 적용.
  • 파이어베이스 연동 및 빌드.

버그

  • 단조 판매 시 슬롯 장착 해제 문제
  • 몬스터들이 스폰 애니메이션이 끝나도 바로 움직이지 않고 마지막 프레임에서 멈춰서 일정 시간 후에 움직임.
  • 장비 장착을 하면, 아래 Lv 가 사라짐 & 레벨 숫자 UI가 장착중 보다 뒤로 오도록
  • 1-20 보스 깨면, 2-1 맵이 켜지고 멈춤.
  • 인벤토리도 영혼구 레벨이랑 연결.
  • 스킬 확률표 눌러도 안나옴

치트

  • ‘A’ 키를 사용하여 퀘스트 스킵
  • ‘Z’ 키를 사용하여 다이아 휙득
  • ‘Space’ 키를 사용하여 단조 게이지 휙득

디테일

  • 가이드 퀘스트 텍스트 정렬
  • 장비소환 탭 재화와 숫자 붙어있는 것
  • 다이아 재화도 BigInteger 타입으로 출력되도록
  • 장비 강화 부분 강화석 재화 숫자 간격
  • 도전 실패 팝업 글자 간격 깨짐
  • 동료 탭 오픈 상태에서 장비 탭 열림
    • 장비 탭에 아이템이 없으면 위 오류 발생. 다만, 퀘스트 순서상 장비를 뽑아야 가능하기에 고민 필요.
  • 퀘스트 23 보스 자동 도전 활성화
  • 소환티켓 사용하면 감소하게 (UISummonPanel.cs → OnSummonEquipment 메서드)

던전

  • 스테이지 2 (좀비, 스켈레톤) 몬스터 추가
  • 강화석 던전 보스 스프라이트 변경 (Jafar → Dullahan)
  • 각성석 던전 보스 변경
  • 어빌리티 던전 이미지 & 재화 변경
  • 어빌리티 던전 퀘스트 82에 오픈.

스킬

  • 파이어볼 스킬 스프라이트 변경
  • 파이어 볼, 도깨비 불 스킬 지속시간 0.6 → 1초
  • 신규 스킬 2종 아이콘 변경

인벤토리

  • 인벤토리 최댓값 설정. (초기값 30, 레벨업 할 때마다 30씩 증가. 최대 300)
  • 인벤토리 최댓값 설정
    • 인벤토리 초기 30, 최대 300 레벨업당 30씩 증가 설정.
    • 인벤토리가 가득 차면 단조 선택하기 누를 시 "인벤토리가 가득 찼습니다" 센터 메세지.
    • ColleagueInventoryManager.cs 에 현재 인벤토리 최대용량 "currentInventorySize" , 인벤토리 최대 한계 "MaxInventoryLimit" 변수 각각 30, 300 선언.
    • IsMaxInventory 변수에서 현재 인벤토리 갯수가 최대 용량과 같거나 커지면 false를 아니면 true를 반환하는 변수, 현재 아이템 갯수 items.Count를 가지고 있는 CurrentInventoryVolume 변수 선언.
    • AddItem 메서드에 if (IsMaxInventory) 하여 최대 용량에 차면 return 으로 반환.
    • UpdateInventorySize(int level) 메서드를 만들어, 현재 플레이어 레벨에 따른 인벤토리 최대 용량을 구해주는 메서드. Start 메서드에서 levelSystem의 onLevelChange 이벤트에 구독. 그리고 최초 한번 불러오기를 위해 UpdateInventorySize 메서드에 현재 플레이어 레벨을 넣어 갱신.
    • MessageUIManager.cs 에 ShowInventoryMax 메서드 생성. 단순 ("인벤토리가 가득 찼습니다.") 출력
    • UIColleaguePanel.cs 에서 동료 인벤토리 패널에 인벤토리 용량 텍스트 부분을 최신으로 대입하여 나타내는UpdateUI 메서드 생성.
      각각 SellItem, AddItem, OpenTap 등에서 사용.
    • ColleagueItemGenerator.cs 에서 ConfirmCard 메서드 (카드 선택하는 메서드) 에서 if (ColleagueInventoryManager.instance.IsMaxInventory) 를 검사하여 인벤토리가 가득 차있는 상황이라면, MessageUIManager.instance.ShowInventoryMax 메서드를 실행하여 화면 중앙에 인벤토리가 가득 찼다는 메세지를 보여주고 return;











Organize

2024.04.25(목)

(소환 패널 UI, 장비 강화)

소환 탭 확률표 UI

SummonPanel Skill Percentage Popup

  • 소환 탭, 스킬 확률표 뜨지 않던것 & 스킬도 확률표에 레벨이 뜨도록 수정.

  • UISummonPanel.cs 의 InitializeBtns 메서드에서 스킬 확률표 버튼이 아니라 웨폰 확률표가 한번 더 연결이 되어있었음.

  • UISummonPercentage.cs 의 ShowUI 메서드에 else 스킬일 때, summonLevel = SummonManager.instance.SkillSummonSkill; 을 해주어 현재 스킬 레벨을 할당. ShowData 메서드에서 textTitles[0].text 에 스킬 레벨에 CustomText 클래스의 SetColor메서드를 사용하여 스킬 레벨도 표시하도록 수정.

장비 강화 로직 & UI

Equipment Enhancement

  • 장비 강화 기능 추가. - 장비 강화 팝업창 보유, 장착 UI 순서 변경

  • 장비 강화 팝업창 레벨업시 상승 능력치(초록색 상승 UI 옆 숫자) 다음 능력치를 보여주는 것이 아닌, 얼마나 상승할 것인지로 교체.

    • PlayerManager.cs의 ApplyEnhanceStatus 메서드 생성. 장비 타입을 파라미터로 받아 스위치 문에서 해당 장비 타입에 따라 장비의 스탯을 equipment.baseOwnedEffect 만큼 상승.(ChangeBaseStat) 장착중이 아니라면 반환, 장착중 이라면 강화 부분만큼 스탯 추가로 증가. UpdateBattleScore 메서드 현재 스탯(BattleScore)을 .ToString 하여 BigInteger로 변환하여 변환하여 score 변수에 저장하고 InitBattleScore() 하여 스탯을 갱신 해주고 Showpower을 통해 갱신된 스탯 및 상하률을 메세지로 띄어주는 메서드 생성. (외부에서 편하게 전투력 갱신을 하기 위한 메서드) - EquipmentManager.cs 의 Enhance 메서드에서 PlayerManager.instance.ApplyEnhanStatus(item) 하여 강화한 만큼 스탯 갱신.
  • UIEnhancePopup.cs의 TryEnhanceItem 메서드에 PlayerManager.instance.UpdateBattleScore() 를 추가하여 장비를 강화하면 스탯 상승 및 메세지 띄우기. UpdateCostAndCurrency 메서드에서 장비 강화 상승률을 다음 상승률이 아닌 오르는 수치만큼 보이도록 내부 로직 변경.

  • UIEquipmentPanel.cs 의 InitializeBtns 메서드에서 enhanceBtn 버튼 이벤트 등록에 강화석이 부족한 경우 추가.




2024.04.26 (금)

(던전 보상 추가, 어빌리티 던전 메인 보상 수치 조정, 오프라인 영혼구 카운트 변경, 영혼구 AddGauge 수정, 어빌리티 인덱스 수정, 동료 레드닷 추가

Dungeon Reward Addition & Various Bug, Detail

  • 던전 보상 2개로 추가. (메인보상, 추가보상)

  • StageManager.cs 의 SwitchToReward 메서드 에서 GameManager.instance.GetReward 부분에 [0], [1] 추가. (0 = 메인 보상, 1 = 추가 보상)
    GetCurrentReward 메서드에서 ForgeGauge -> ForgeCount 변경.

  • DungeonData.cs 의 baseEarnPerOne 변수 배열로 변경
    additionEarnPerOne, increaceAdditionEarn 변수 추가.
    (추가 보상) LevelUpEarnPerOne 메서드에서 추가 보상 상승 수치 추가 및 조정.
    InitReward 메서드에서 메인 보상과 추가 보상 수치 로직 추가 및 조정.
    Save, Load 메서드에 additionEarnPerOne 저장 및 로드.

  • Strings.cs 에 "영혼구 게이지", "경험치" 추가. -UICurrencyUpdater.cs 의 UpdateCurrencyUI 메서드에 케이스 포지게이지 추가.

  • UIIDungeonElement.cs의 rewardAmount 변수 배열로 변경 및 ShowUI 부분 로직 변경 (추가 보상으로 인한 배열)

  • UIDungeonElementPopup.cs 의 rewardIcon, rewardAmount 변수 배열로 변경 및 ShowUI 메서드 로직 부분 변경 (추가보상으로 인한 배열로 부분 수정)

  • UIDungeonRewardPanel.cs의 totalAmount 변수 배열로 변경 및 ShowUI 메서드 로직 부분 변경 (파라미터 추가 및 배열 변경으로 인한 수정)

  • UIStageClearPanel.cs 의 ShowUI 메서드에 ForgeCount 케이스 추가.

  • BaseRewardAction.cs의 InitializeReward 메서드에 ForgeGauge 케이스 추가. (Defines.cs 의 EQusetRewardType 을 추가한 영향)

  • Defines.cs의 Enum
    EcurrencyType ( CurrencyManager의 배열에 타입 추가 및 이미지 아이콘 할당 해줘야함)
    EQuestRewardType (BaseRewardAction.cs 에서 보상타입 추가해줘야함)
    ENormalRewardType (PushNotificationManager.cs 에 케이스 추가해줘야함) 에 포지 게이지, 카운트 추가

    • 영혼구 보상 종류 추가(영혼구 카운트 = 영혼구 구슬 이미지, 영혼구 게이지 = 영혼구 포션 이미지) - 어빌리티 던전 메인 보상 수치 조정.
    • 오프라인 보상 인덱스 밀림 - PushficationManager.cs 에 포지카운트 케이스 추가.
    • 영혼구 AddGauge 100으로 수정.
  • ForgeSystem 의 ForgeSoulSetting 메서드에 initAddGauge 100으로 수정.

    • 스킬 승급 버튼 미구현 메세지 뜨도록 - 어빌리티 성장 인덱스 -1

Colleague Reddot

  • 동료 패널 레드닷 추가. (장착 슬롯에 아이템 장착이 안되어 있을 때, 인벤토리에 해당 슬롯 아이템이 있다면 레드닷을 켜줌)

    • Reddot.cs 의 CheckColleagueItem 메서드 생성.
      ColleagueInventoryManager의 ReddotColleague 메서드를 조건문에 불러 현재 슬롯과 인벤토리 아이템을 판단하고 bool 값 return
  • CheckAll 메서드에 CheckColleagueItem 메서드 추가.

  • Subscribe 메서드에 UIColleaguePopup.cs 의 onColleagueItem 이벤트에 CheckColleagueItem 구독.
    (구독을 함으로 써 이벤트가 Invoke 될 때마다 CheckColleagueItem 메서드가 현재 인벤토리와 장착슬롯을 확인하여 판단해 레드닷 부여)

  • UIColleaguePopup.cs 에 onColleagueItem 이벤트 액션 추가. onColleagueItem 이벤트를 Invoke 시키는 ColleagueReddotInvoke 메서드 생성.
    EquipItem 과 SellItem 메서드에 ColleagueReddotInvoke 메서드 추가

  • ColleagueInventoryManager.cs 에 ReddotColleague 메서드 추가. (equipItem 크기만큼 반복문에 equipItem을 돌며 장착중인 아이템을 검사하고 장착하지 않은 슬롯이 있다면 해당 아이템 리스트를 돌며 해당 슬롯의 아이템이 있는지 검사하고(cardIndex. / 100 - 1)(배열이 0부터 시작하여 -1) 있다면 true, 없다면 false)

  • ColleagueItemGenerator.cs의 ConfirmCard 메서드에 ColleagueReddotInvoke 메서드 추가.

    • ForgeSystem.cs 에서 영혼구 오픈 오를 수 있는 최댓값 20으로 조정 및 단조 레벨업 할 때 마다 1씩 증가하도록 수정. (스프레드 시트 확인)
profile
No Easy Day
post-custom-banner

0개의 댓글