버그 해결을 위한 모든 질문을 던져
0 votes
103 views
캐릭터의 이동속도나 공격력, 방어력 이런 속성들이 있고, 이 속성들을 변경시켜주는 아이템이나 버프, 펫, 변신 같은 요소들이 있을 때,

캐릭터의 속성값을 갱신하는 함수 내에서 변신을 했는지 보고, 변신 했으면 이동 속도 증가, 공격력 증가 처리를 할 수도 있고,

캐릭터의 속성값을 갱신하는 함수 내에서 이동 속도 계산 함수를 만들어 각각 변신 여부나 다른 아이템, 버프 등 상태를 보고 이동 속도를 결정지을 수도 있을 것 같은데, 어떤 식으로 구성하시나요?

속성값 계산 함수를 만들어서 정리를 하면 각 속성의 값들이 어떻게 계산되는지, 그 계산값들의 오류 찾기나 영향을 주는 아이템 및 버프 요소들을 보기 좋은데, 대신 특정 변신시 적용되는 효과들이 각 속성값 계산하는 함수로 모두 분리되어 있어, 요소 기준으로 확인할 때 찾기 힘들 것 같고,

요소 기준으로 변신 체크 또는 펫 체크시 공격력 증가 이런 처리를 하면, 변신시 어떤 값들이 올라가는지 이런 부분은 확인이 쉬우나, 대신 속성값들이 어디서 올라가는지 찾기가 어려운 것 같은데,

현재 회사 코드는 두 타입이 막 섞여있어서 한쪽으로 정리하는 방법이 있을까 싶어서 질문드립니다.

조언 부탁드립니다.
asked (4 point) , 103 views

1 답변

0 votes
정확한 답변인지는 모르겠지만 클래스를 잘 보기 좋게 나누는 것에 달렸다고 생각합니다.

 

1. 기본 능력치 클래스

2. 보너스 클래스

3. 버프 클래스

 

위의 3가지 또는 그 이상의 클래스들의 수치를 공격할 때, 당할 때 등등 별로 나눠서 계산식을 담고 있는 클래스가 하나 더 있으면 좋겠네요.

 

이런건 아무래도 혼합되다 보면 코드를 잘 짜고, 혹시나 발생하는 버그들을 Q/A에서 잘 잡아주길 기도해야죠. 서비스시에도 유지 문의가 오면 패치에 수정되서 들어가야 할 것이고요.

 

그리고 공격 할 때, 당할 때 등등의 액션 상황을 다루는 것을 각각 이벤트 함수처럼 설계해서 호출 되게 하면 편리하실 겁니다.
answered (17 point)

버그 해결을 위해 도움을 구하고, 도움을 주세요. 우리는 그렇게 발전합니다.

throw bug 는 프로그래밍에 대한 전분야를 다룹니다. 질문,논의거리,팁,정보공유 모든 것이 가능합니다. 프로그래밍과 관련이 없는 내용은 환영받지 못합니다.

448 질문
597 answers
585 댓글
55,916 users