어떤게임이건 간에

능력치 변화는 있기 마련이다

하다못해 좆망겜이라고들(하지만 갓겜인 ㅎ)히오스만 하더라도 랩업이나, 버프, 디버프 유무에 따라 스텟이 달라지고

롤같은 게임은 말 할 것도 없다.


이런 스텟 연산체계가 통일되어있고 명확해야 하는데, 던파가 한때 이게 개족보여서 지랄났던적이 있지


그래서 난 스텟 증감을 3가지 분류로 나눴다.

(레벨업 시 증가하는건 Origin 값으로 여겨, Stat자체를 객체화 한 뒤, 이 안에서 처리되도록 하였다. 즉여기서 언급하는건 외부요인

-스킬, 아이템 등-으로 인해 연산되는 스텟에 대해 생각을 해봤다

1) 고정치 증가

   단순 수치가 증가되는 형태. 가장 먼저계산되어야 한다

2) %증가

   기존스텟(Origin)의 % 만큼 + 되는 형태. 

3) %증폭

   위 모든 연산이 수행 된 다음에 곱연산으로 수행되는 형태.


즉, 

어떤케릭터의 체력이 100이라 가정할때

1)체력100 증가 아이템을 낌(1)

2)체력10%증가 아이템을 낌(2)

3)특성에서 총 체력 10%증폭 특성을 찍음

이라 하면

(100+ 100+ (100*0.1)) *1.1

형태로 계산되어야함

이를 위해 StatOperatorable 인터페이스를 두고

각각 연산에 해당되는 클래스를 생성,

Stat클래스에 3가지 연산애 해당되는 Delegate를 할댕 해 준 뒤

이를 순서대로 연산 해 줄 예정.

이게 세련된, 혹은 올바른 방법인지 확신은 없다 지금 직접 코딩해볼뿐