저번에 아르카나팩 넷빈 프로젝트 생성부터 오류 땜에 막혔던 사람인데 오류 해결했고 (넷빈즈 캐시 일괄 삭제해야함
C:\Users\<username>\AppData\Local\NetBeans\Cache\7.4 <- 이 폴더 자체를 삭제해야함)
자바를 안했을 뿐 다른 언어쪽 개발자라서 경험치 배율 수정은 성공적으로 적용했음 (비아냥 거린 시바새끼야 보고 있나?)
건드려야 할 곳은 기본적으로 constants\ServerConstants.java의 defaultExpRate 값인데 이 값이 int형으로 잡혀있기 때문에 float형으로 소수점 경험치 배율이 안먹힘
상단의 defaultExpRate 선언을 float형으로 바꿔주면 넷빈즈에서 해당 값이 float형으로 인해 발생하는 모든 오류 코드를 알려줄텐데
ChannelServer.java의 setExpRate 메서드의 input 타입을 float형으로 수정해주는 것은 전혀 문제가 없지만 하나 명심해야 할 것이 있음
캐릭터의 경험치는 양의 정수이다. 그런데 몹을 잡고 나니 실수 경험치가 입력으로 들어오면 어떻게 될까? 조지는거지
그래서 이렇게 캐릭터가 획득한 경험치를 최종적으로 계산할 때는 소수점 버리는 연산을 위해 타입캐스팅으로 int형으로 다시 바꿔줘야 한다.
즉, 스텀프 경험치가 8인데 니가 경험치배율을 1.3배로 설정하면 스텀프의 경험치는 10.4가 된다. 하지만 실제 획득하는 경험치는 (int)10.4 -> 10으로 계산되어 획득하게 되는거다.
이래야 뻥 안남 ㅇㅇㅇ
애초에 넷빈즈에서 타입 안맞다고 전부 오류 띄워서 빌드 자체가 안될테니 놓칠 염려 ㄴㄴ
아카이브나 해외디코로가라
레벨별 경험치 소스보면 1.34베 1.67배 이런식으로 잘 적용되던데..?
내가쓰는 아르카나팩은 정수만 받음 ㅇㅇ 그런사람들 참고하라는거임