레벨 포인트 프로그레스바를 구현하고 있습니다.
본문
다른건 다 됐지만 백분율을 구하는 것에서 막히고 있습니다.
(필요포인트/현재포인트)*100
위 수식을 쓴다면 백분율을 구할 수 있습니다.
다만 보유하고 있는 포인트가 증가할수록 필요포인트는 줄어들고 현재포인트는 늘어나서
유동적으로 백분율도 작아집니다.
하지만 만드려는 기능은 포인트 프로그레스바이기 때문에 백분율(%)이 작아지면 안되고
다음 레벨까지의 필요한 총 포인트에 맞춰 보유하는 포인트가 증가할수록 백분율도 증가해야합니다.
(최대 100%)
가지고 있는 변수는 아래와 같습니다.
현재 포인트
다음 레벨까지 필요한 포인트
다음 레벨이 되는 맥스 포인트
간단한 사칙연산으로 어떻게 수식을 세워야 위와 같은 백분율로 동작하게 할 수 있을까요?
답변 3
예를들어
1레벨 => 2레벨 => 3레벨 => 4레벨
0 100 1000 3000
이라고 가정하고
현재 300포인트일때
다음레벨은 1000포인트이지만
현재 레벨구간에서 적용되는 포인트는 900 포인트이고
내가 현제 레벨에서 취득한 포인트는 200 포인트라서
200/900 이면 현재 레벨에서 취득한 비율이고
(900-200) / 900 이면 남은 비율이 됩니다.
즉
200이란 점수는 = 내포인트(300) - 전레벨Max값 100
900 이란 점수는 = 현재구간Max - 전레벨Max
가 됩니다.
이값을 가지고 현재 레벨의 남은 비율을 판단하면됩니다.
현 레벨에서 취득한 점수비율을 계산하려면 200/900 * 100
현 레벨에서 남은 점수비율을 계산하려면 (900-200)/900*100
수식값이 좀 이상한듯 한데요
현재포인트 / 필요포인트 * 100 을 해야 하는거 아닌가싶네요
그래야.. 달성포인트에 도달하기 위한 현재 몇 %인지 확인가능하고
다 도달되면 레벨업(?) 등의 행위에 의해 다음목표(필요포인트)가 등장하는 개념인것 같은데..