Coroutine ๋ฐ์ฌ์ฒด ์์ฑ ํจ์
{
For 30
projectile.Instantiate
projectile ๊ฐ๋ ์ค์
projectile.StartCoroutine(wait_shot funtion)
yield return new WaitforSeconds(0.1f)
}
์ด๋ฐ์์ผ๋ก ์์ฑํด์ 30๋ฐ์ ์ํ์ผ๋ก ๋ฐ์ฌํ๊ฒ ํ๊ฑฐ๋
์ฌ๊ธฐ์ 0.1์ด ๋ฌ๋ ์ด๋ง๋ค ๋ฐ์ฌํ ๋ค์์ ๊ฐ๊ฐ ๋ฐ์ฌ์ฒด๋ ์์ง์ด๋ค๊ฐ 30๋ฐ์ด ๋ค ์๋ฃ๋๋ฉด ๋ชฉํ์ง์ ์ผ๋ก ๋ ์๊ฐ๊ฒ ํ๊ณ ์ถ์๋ฐ
๊ฐ ๋ฐ์ฌ์ฒด๋ง๋ค ์ฝ๋ฃจํด ์์ ์๊ฐ์ด 0.1f ์ฉ ์ฐจ์ด๋์ ์๋ฃ๋๊ธฐ์ ์ ๋ ์๊ฐ๋ค.
๊ทธ๋์ ์๊ฐํ ๋ฐฉ๋ฒ์ wait_shot function์ for๋ฌธ ๋๋๋์ ๋ฐ์ํ 0.1์ด ๋๋ ์ด๋ฅผ ๊ณ์ฐํด์ ํ๋ผ๋ฏธํฐ๋ฅผ 3f - 0.1f * index ๋ก ์ฃผ๋ฉด ์ด๋จ๊น ์๊ฐํ๋๋ฐ
๋ ์ข์ ๋ฐฉ๋ฒ ์์๊น?
{
For 30
projectile.Instantiate
projectile ๊ฐ๋ ์ค์
projectile.StartCoroutine(wait_shot funtion)
yield return new WaitforSeconds(0.1f)
}
์ด๋ฐ์์ผ๋ก ์์ฑํด์ 30๋ฐ์ ์ํ์ผ๋ก ๋ฐ์ฌํ๊ฒ ํ๊ฑฐ๋
์ฌ๊ธฐ์ 0.1์ด ๋ฌ๋ ์ด๋ง๋ค ๋ฐ์ฌํ ๋ค์์ ๊ฐ๊ฐ ๋ฐ์ฌ์ฒด๋ ์์ง์ด๋ค๊ฐ 30๋ฐ์ด ๋ค ์๋ฃ๋๋ฉด ๋ชฉํ์ง์ ์ผ๋ก ๋ ์๊ฐ๊ฒ ํ๊ณ ์ถ์๋ฐ
๊ฐ ๋ฐ์ฌ์ฒด๋ง๋ค ์ฝ๋ฃจํด ์์ ์๊ฐ์ด 0.1f ์ฉ ์ฐจ์ด๋์ ์๋ฃ๋๊ธฐ์ ์ ๋ ์๊ฐ๋ค.
๊ทธ๋์ ์๊ฐํ ๋ฐฉ๋ฒ์ wait_shot function์ for๋ฌธ ๋๋๋์ ๋ฐ์ํ 0.1์ด ๋๋ ์ด๋ฅผ ๊ณ์ฐํด์ ํ๋ผ๋ฏธํฐ๋ฅผ 3f - 0.1f * index ๋ก ์ฃผ๋ฉด ์ด๋จ๊น ์๊ฐํ๋๋ฐ
๋ ์ข์ ๋ฐฉ๋ฒ ์์๊น?
ํ๋ ์ด์ด ์คํฌ์ด๋ผ ์ค๊ฐ์ ์ทจ์ํ ์ ์๋๊ฐ, ํผ๊ฒฉ๋ผ์ ์ค๊ฐ์ ๋๊ธธ ์ ์๋๊ฐ ๋ฑ๋ฑ ์ํฉ์ ๋ฐ๋ผ ๋ค๋ฅธ๋ ๋จํธ์ ์ธ ์กฐ๊ฑด๋ง ๋งํ๋ฉด ๊ฑฐ๋ค์ด์ค์๊ฐ ์์ฐ์ด
list์ ์ด์ ๋ค ๋ฃ์ด๋๊ณ ์ ์ผ ๋ง์ง๋ง ์ด์ ์ด๋์ด ๋๋๋ฉด ์ฝ๋ฃจํด ์ ์ผ ๋ง์ง๋ง์ ๋ชฉํ๋ฌผ๋ก ๋ ์๊ฐ๋ ์ฝ๋ ์ ์ด ใ ใ ใ ใ ํ์ฅ์ฑ์ด๊ณ ๋ญ๊ณ ์ ์ผ ๋น ๋ฅด๊ฒ ๋ณผ์์๋ค