게임마다 케베케인거는 알고있는데 대충 어떤 식으로 구현하는지 궁금해서 글을 올려봅니다
예를들어 행동이상을 부여하는 버프의 경우 단순하게 버프의 시작과 끝에 행동이상 부여, 해제를 하자니 다른 버프가 같이 풀려버릴수 있더군요
해서 예외처리를 하려고하니 간단하게 구현할려고 했던게 생각보다 무거워 져서 이게 맞나 싶은 생각이 듭니다
보통 이런경우 어떤식으로 처리하고 어디서 관리하나요? 업데이트마다 동기화를 시키나요? 아니면 더 나은 보편적인 방식이 있을까요?
음.. 버프를 각자 컬렉션에 보관하면 되지 않을까요?
그렇게 할려고는 했는데 꽤나 복잡하고 무거워져서 이렇게 하는 방식이 맞는지 고민이 되더라고요. 답답한 마음에 다른 분들은 보통 어떤 방식으로 하는지 물어봤어요
전에 어떤 고수분 댓글보니까 비트플래그로 한다던데 중첩도 되고.. 저도 이렇게 해볼려구여
근데 배열에 넣어서 해도 그렇게 무겁진 않던데 버프가 복잡하거나 종류가 많슴?
구체적으로 배열을 통해 어떤걸 저장하는 방식인가요? 각 스탯마다 현재 적용되는 버프를 저장하는 배열을 만드는 건가요?
버프 여부, 스트링 키, 타이머 같이 저장해두고.. 내부 구현은 또 별개로 관리하고 있어여. 제 게임에는 아직 지속 힐, 도트딜 밖에 없어서 ㄷㄷ
그냥 버프 내용도 별거 없어서 간단하게 만드는만큼 단순하고 손이 안가게 하고싶은데 예외처리할때마다 기본 메소드 2개 3개씩은 추가되고 저장하는 변수도 여러개 로 늘어나니깐 부담스럽더라고요.
그냥 스턴 버프 델리게이트를 만들어서 스턴 잃을때 유닛이 가진 스턴 갱신 델리게이트를 호출해서 다른 버프에 접근하는 방식으로 하는건 어떰? 유닛이 별도의 컬렉션을 가지지 않아도 되니까 나을거같기도 하고
흥미로운 방법이네요 감사합니다