์ ๋ํฐ ๊ณต๋ถ ์ค์ธ ํ์์
๋๋ค ใ
;
ย ย void levelSystem()
ย ย {
ย ย ย ย if(currentExp >= maxExp)
ย ย ย ย {
ย ย ย ย ย ย currentExp -= maxExp;
ย ย ย ย ย ย maxExp *= 1.5f; // ํ์๊ฒฝํ์น๋ฅผ 1.5๋ฐฐ ์ํด
ย ย ย ย ย ย maxExp = Mathf.Round(maxExp); // ํ์๊ฒฝํ์น ๋ฐ์ฌ๋ฆผ ์ฒ๋ฆฌ
ย ย ย ย ย ย level++;
ย ย ย ย }
ย ย }
๊ฒฝํ์น๋ฅผ ๋ชจ์ ๋ ๋ฒจ์ด ์ฌ๋ผ๊ฐ์๋ ์ต๋ ๊ฒฝํ์น๋ฅผ 1.5๋ฐฐ ์ํค๊ณ , ๋ฐ์ฌ๋ฆผ ์ฒ๋ฆฌ๋ฅผ ํ๋ ค๊ณ ํฉ๋๋ค.
๊ทธ๋ฅ *= 1.5f๋ฅผ ํ๋๊น ๋ ๋ฒจ 1๋ ์ต๋ ๊ฒฝํ์น๊ฐ 10์ด๋ผ,ย lv2๋ฉด 15, lv3์ด๋ฉด 22.5๊ฐ ๋์ด์ ๋ฐ์ฌ๋ฆผ ์ฒ๋ฆฌ๋ก 23์ด ๋๋๋ก ํ๊ณ ์ถ์ ์ํฉ์ ๋๋ค.
์ ๊ฐ ์ดํดํ๊ธฐ๋ก๋ mathf.round๊ฐ ๋ฐ์ฌ๋ฆผ ์ฒ๋ฆฌ๋ฅผ ํด์ฃผ๋๊ฑธ๋ก ์๊ณ ์๋๋ฐ
์ ๋ ๊ฒ ํ๋๊น 22๋ก ๋ฐ๋ด๋ฆผ ์ฒ๋ฆฌ๊ฐ ๋๋๋ผ๊ตฌ์ ใ
์ ๋ฐ ๊ณ์ฐ์์ ๋ฐ์ฌ๋ฆผ์ ๋ค๋ฅด๊ฒ ์ฒ๋ฆฌ๋ฅผ ํด์ผํ ๊น์?
Mathf.Ceil ์ฐ๋ฉด๋จ. ๊ทผ๋ฐ ๊ถ๊ธํ๊ฒ ๊ตฌ๊ธ์ ์ ๋ํฐ ๋ฐ์ฌ๋ฆผ <-์ด๊ฑฐ ๊ฒ์ํ๋ฉด ๋ฐ๋ก ํ๊ธ ๋ฌธ์๋ก ์๋ฐฑ๊ฐ ๋์ค๋ ์์ฃผ ๋์ด๋ ๋ณ 1๊ฐ์ง๋ฆฌ ๊ตฌ๊ธ๋ง ๋ฌธ์ ์ธ๋ฐ ์ ์ด๋ฐ ๋ฅ๊ฐค์์ ๋ฌผ์ด๋ณด๋๊ฑฐ์ผ
์ ๊ตฌ๊ธ๋งํ๋๋ฐ ceil์ ์ฌ๋ฆผ, round๊ฐ ๋ฐ์ฌ๋ฆผ์ด๋ผ๊ณ ๋์์๋๋ฐ๋ ๋ฐ์ฌ๋ฆผ์ด ์ ์ ์ฒ๋ฆฌ๊ฐ ์๋์ด์ ์ง๋ฌธํ์ต๋๋ค ใ ๊ณ์ฐ์๋ ๋ค๋ฅธ ์ฒ๋ฆฌ๊ฐ ํ์ํ๊ฑด๊ฐ ์ถ์ด์..
currentExp๋ maxExp๊ฐ float type์ด๋ผ๋ฉด.. ์ ํํ ๊ณ์ฐ์ ํ๊ณ ์ถ๋ค๋ฉด ์ฌ๋งํ๋ฉด ์ ์ํ์ผ๋ก ๋ฐ๊พธ๊ณ , ๊ณฑํ๋ ๊ฒ๋ 1.5f๋ก ํ์ง ๋ง๊ณ 3 ๊ณฑํ๊ณ 2 ๋๋ .
float ํ์ ์ผ๋ก ํ๊ณ ์์์ต๋๋ค..! ์กฐ์ธ ๊ฐ์ฌํฉ๋๋ค! ๋ฐ๊ฟ์ ํ๋ฒ ํด๋ณด๊ฒ ์ต๋๋ค!
ํด๋น ๋๊ธ์ ์ญ์ ๋์์ต๋๋ค.
๊ทธ๋ ๊ตฐ์; ์๋ ค์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค
0.5 ๋ํด์ ๋ด๋ฆผ์ฒ๋ฆฌํด - dc App