본문 바로가기
무협게임/김용군협전3D

[개발일지] 난이도 수정(2)

by 레이슈 2023. 10. 31.
반응형

목표 : 전투 시 인물 정보 상세(우클릭) 보기 UI 적용

화면은 인물 정보(XiakeUIPanel) 패널을 복붙한 후 불필요한 버튼 등을 제외하였다

마우스오버를 추가한 전투 메인 패널에 상세정보 패널도 함께 추가(XiakeUIPanel_Mini)

동작은 전투 시 인물의 우클릭을 누르고 있을 때 해당 인물의 정보를 표시

난이도 쉬움 : 염기를 우클릭하고 있으면 상세 정보가 보인다 (쉬움에서는 인물정보에서 자질을 볼 수 있다)
난이도 불지옥(6배즈음..?) : 상세정보로 오지게 강해짐을 확인할 수 있다

난이도에 따라 무공 등급을 올리는 것도 가능하나 이것은 배포 후 의견이 필요할 것 같음

다음 단계인 능력치 상한만 조절하면 1차 배포가 가능할 것 같다

<추가 개발 필요사항>

- 능력치 상한 업


구현 중 이슈사항 요약

더보기

다른 동작에서는 실시간으로 리소스를 불러오는 곳이 없어 매 프레임별로 상세정보의 인물 사진을 불러오는 곳에서 딜레이가 있었다

빌드 버전에서는 인물 이미지가 안나옴...

Unity 에서 매 프레임 갱신은 Update 함수가 담당하고 있어, 이를 해결하기 위해 변동이 없을 경우, RoleInstance를 유지하였다

결과는 성공

private void ShowDetailModel(BattleBlockData block = null) 
	{
		var overBlock = block ?? InputManager.Instance.GetMouseRHoldAnyBattleBlock(1);
        bool bShow = false;
		if (overBlock != null)
		{
			var role = BattleManager.Instance.GetModel().GetAliveRole(overBlock.BattlePos);
            if (role != null) {
                bShow = true;
                if (m_beforeRole == null || m_beforeRole != role) {
                    XiakeImage_Image.LoadAsyncForget(role.GetPic());
                    XiakeNameText_Text.text = role.Name;
                    XiakeInfoText_Text.text = GetInfoText(role);
                    XiakeSkillText_Text.text = GetSkillText(role);
                    XiakeItemsText_Text.text = GetItemsText(role);
                    m_beforeRole = role;
                }
            }
		}
            
        if (bShow)  
            XiakeUIPanel_Mini_RectTransform.gameObject.SetActive(true);
        else 
            XiakeUIPanel_Mini_RectTransform.gameObject.SetActive(false);
	}