ํ๊ณผ์์ ๋ฐฐ์์ ๊ด์ฌ์ด ์ข ์๊ฒผ๋๋ฐ
๋น์ฃผ์ผ์ฝ๋ฉ์ค์ด๊ณ ์, gms2 ํด ์์ฒด์ ๋ํ ์ง์์ ํ๋๋ ์์์ต๋๋ค
๋์ฌ๊ธฐ๋ฅ ๊ตฌํ์ด ํ ๋ชฉํ์ธ๋ฐ, ํค๋ฅผ ๋๋ฅธ ๋์๋ง ์๊ฐ์ ์ผ๋ก ๋๊ฐ๋๊ฒ์ด ์๋, n ์ด๊ฐ ์์ ๊ฐ์์ ์ฃผ๋ ํํ๋ก ๋์์ธ ํ๊ณ ์ถ์ต๋๋ค.
๊ทผ๋ฐ ๋ฑํ ์๊ฐ ๊ด๋ จ ๊ธฐ๋ฅ์ด ์์ด์ (alarm์ด ์๋๊ฑด ์์ง๋ง set ํฌ๊ธฐ๋ฅผ 1ํ๋ ์์ผ๋ก ํด์ ๊ณ์ ๊ฐฑ์ ํ๋ฉด ์ฒ๋ฆฌ๊ฐ ๋๋ฆฌ์ง ์์๊น์?)
์ฐจ๋ผ๋ฆฌ ๋์ฌ ์คํ๋ผ์ดํธ ์ ๋๋ฉ์ด์
์ฌ์์ ๊ธฐ์ค์ผ๋ก ํ๋ ค ๊ณ ํ์ต๋๋ค.
set sprite๋ก ์คํ๋ผ์ดํธ ๋ฐ๊พธ๋๋ฒ๋ ์๊ณ sprite index == "๋์ฌ ์คํ๋ผ์ดํธ"๋ก ํ์ฌ ์ํ๋ ์ ์ ์๋๋ฐ
์ฌ๊ธฐ์ animation update, animation event์ ํ์ฉ์ ์ด๋ป๊ฒ ํด์ผํ๋์?
animation end๋ index๋น๊ต๋ฅผ ํตํด ๋ค์ ๋ฐ๊ฟ์ฃผ๋๊ฑฐ๋ก ํ์ฉํ๊ณ ์์ต๋๋ค
๋๋ ๊ฒ๋ฉ์์ ํ์ด๋จธ๋ step ์ด๋ฒคํธ์ timer = timer - 1 ๋ญ ์ด๋ฐ์์ผ๋ก ํด๊ฐ์ง๊ณ ํ์ด๋จธ ๋ง๋ค๊ธด ํ๋๋ฐ
์ด๋ฅผํ ๋ฉด isDash ํด๋๊ณ True๋ฉด step๋ง๋ค ์๋ ๊ฐฑ์ ํด์ฃผ๋ ์์ธ๊ฐ์? ๊ทธ๋ฌ๋ค while๋ฌธ์ฒ๋ผ ํน์ ์๋๋ฉด isDash ๊ฑฐ์ง์ผ๋ก ๋๋ฆฌ๊ณ
๋ณ์ ํ๋๋ฅผ ๋ง๋ ๋ค, left released right released์์ accelTimer = accelDuration; ์ ์์ฑํ๊ณ Step ์ด๋ฒคํธ์์ accelTimer -= (accelTimer > 0); xVelocity = xDir * (maxSpeed + accelTimer) ์ด๋ฐ์์ผ๋ก ํด๋ณด์ธ์ accelTimer๋ฅผ ์ด๋ ๋ฐฉํฅ์ ๊ณฑํ๋ฉด
์์ง์ด๋ค์! ํน์ time source๊ฐ ๋ญ์ง ์์๋์? ์ด๊ฑฐ๋ก๋ ํ์ด๋จธ ํด๋ณด๋ คํ๋๋ฐ ๋ฉ๋ด์ผ์๋ ๊ทธ๋ฅ callํ๋๊ฑฐ๋ก๋ง ๋์์๋ค๋ผ๊ณ ์ time period๋์ ๋ฐ๋ณตํ๋๊ฑฐ ๊ฐ๊ธฐ๋ณด๋จ time period๋งํผ ๋๊ธฐํ expire์ง์ callbackํ๋๊ฒ ๊ฐ์๋ฐ ํ์ฉ์ ๋ชปํ๊ณ ์๋ ๊ฑด๊ฐ์?
์๋ ์ฐ์ง ๋ง๊ณ ํ์ ์์ค๋ก ํด๋ณด๋ ๊ฑฐ ์ถ์ฒ
https://youtu.be/yc_sNohFZ_I
์ด๊ฑฐ ๋ณด๊ณ ใฑใฑ
๊ทธ๋ฆฌ๊ณ ํ์ ์์ค ์ ์ฐ๊ณ step์์ ํ์ด๋จธ ๋ณ์ ์จ์ ๊ตฌํํ๋ค๊ณ ํ์ ๋ 1 ์ฉ ๊ฐ์์ํค๋ฉด ํ๋ ์ ๋ ์ดํธ ๋ฐ๋ผ์ ์ง์์๊ฐ๋ ๋ฌ๋ผ์ง๋ delta_time ์ด์ฉํด์ ๊ฐ์์ํค๋ ๋ฐฉ๋ฒ๋ ํ ๋ฒ ์ฐพ์๋ณด์ธ์