์์ ์คํฌ๋ฆฝํธ๋ RaycastAll๋ก ์ค์บ๋ ๋ฒ์ ๋ด ๋ค์์ target๋ค์ ๊ฐ์งํ๊ธฐ ์ํ ๋ชฉ์ ์ ์คํฌ๋ฆฝํธ์
scanner์ RaycastHit2D[10]
target์ UnitManager[10] (์ ๊ฐ์ฒด์ ํต์ฌ ์คํฌ๋ฆฝํธ)
๊ฐ์ง๋ scanner[i] ๋ด๋ถ์ target[i]๋ฅผ ํธ์ถํด์ ์ ์๊ฒ ์ํฅ์ ์ค
์์ฒ๋ผ scanner.Length(๊ฐ์ง๋ ์ ์ ์)๋งํผ ๋ฐ๋ณต๋ฌธ์ ๋๋ฆฌ๋ฉด
target์ด ์ฌ๋ผ์ก์๋ ๋์์ Length๋ ์ค์ด๋ค์ด ์ฌ๋ผ์ง target[i]๋ฅผ ๋น์ฐ์ง ์์ผ๋ฏ๋ก
๊ณต๊ฒฉ ๋ฒ์ ๋ฐ์์ ํ๋ง์ผ๋ก ์ฌ์ํ๋ target[i]๊ฐ ๊ณต๊ฒฉ ๋นํ๋ ๋ฌธ์ ๊ฐ ์๊น
๋ scanner๋ ๋ฐฐ์ด์ด๋ผ์ ๋ฒ์๋ด 5๋ช
์ ๊ณต๊ฒฉํ๋ ์ค๋ธ์ ํธ๊ฐ ๋ 5๋ช
์ด์์ ์ ์ ๋ง๋์ง ์์ผ๋ฉด
target[4]๋ ์ง์์ง์ง ์์์ ์ด๋์ ์๋ ๊ณ์ ์ฒ๋ง์
๊ทธ๋์ ์ฌ์ง ์์ ๋ฐ์ค ์ณ์ง scanner.Length๋ฅผ ์ง์ฐ๊ณ ,
์ผ์ ํ๊ฒ 0~9๋ฒ๊น์ง์ scanner๋ค์ ๊ณ์ ๊ฒ์ฌ์์ผ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ์ถ์์
ํ์ง๋ง scanner.Length๋ฅผ ๊ทธ๋ฅ 10์ผ๋ก ๋ฐ๊ฟ๋ฒ๋ฆฌ๋ฉด IndexOutOfRangeException ์ค๋ฅ๊ฐ ๋ฐ์ํ๊ณ
๊ฒ์ํด๋ด๋ ๋ง๋
ํ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ด ๋์ค์ง ์๋๋ผ..
๊ทธ๋์ ์ ์ฌ์ง์ ์คํฌ๋ฆฝํธ์์ ์ผ์ ํ ์์ scanner๋ค์ ๊ณ์ ๊ฒ์ฌ์ํค๋ ค๋ฉด ๋ฐ์ค ์น ๋ถ๋ถ์ ์ด๋ป๊ฒ ๋ฐ๊ฟ์ผ ํ ๊น??
์๋๋ฉด ๋ ๋์ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ ์์๊น??
์ด์ ๋ถํฐ ํด๊ฒฐ ๋ชปํ๊ณ ์์ด์ ์ ์ ๋๊ฐ๊ฒ ๊ฐ๋ค...
์์์ ๋ง๋ค์ด ์ค!
๊ทธ๋ฅ ๊ธฐ์กด scanner ๋ณ์ ๋์ ์ ๋ณ์์ ๋ฃ์ผ๋ฉด ์ ๋?
? ์ ๊ธฐ์ scanner๋ฅผ ๋์ฒดํ ์ ์๋๊ฒ ์์?
์๋ ๊ทธ๋ฅ ๋งค๋ฒ ์ ๋ณ์์๋ค๊ฐ ๋ฃ์ผ๋ฉด ์์๋๋ฐ์ ์์์ต๋๋ค ํ๋ ์ํฉ ์์ฒด๊ฐ ์์์?
์ ๋ฐ๋๊ฐ๋ฆฌ๋ผ ๊ฒจ์ฐ ์ดํดํ๋ค ใ ใ ํจ ์๋ํด๋ณผ๊ฒ ๊ณ ๋ง๋ค
Tip1. foreach๋ฌธ์ ์ฌ์ฉํ๋ฉด ์ธ๋ฑ์ค ์ค๋ฅ ๊ฑฑ์ ์ ์ค์ผ์ ์๋ค. Tip2. ๋ฐ๋ณต๋ฌธ์ ๋๋ฆฌ๋ ์ค ๋ฆฌ์คํธ์ ๊ธธ์ด๊ฐ ๋ฐ๋๋๊ฒฝ์ฐ, ๋ฏธ๋ฆฌ ์ด๋ค ๋ณ์์ ์ฒ์ ๊ธธ์ด๋ฅผ ์ ์ฅํ๋ค๊ฐ ํ์ฉํ๋ฉด ๋๋ค. Tip3. ๋ฐ๋ณต๋ฌธ์ ๋๋ฆด๋ ํ์์ ๋ฐ๋ผ ๋ฆฌ์คํธ์ ๋ณต์ฌ๋ณธ์ ๋์ ๋ฐ๋ณต๋ฌธ์ ๋๋ฆฌ๋๊ฒ ์ ํฉํ์ง ๊ณ ๋ คํด๋ณด์
foreach ์ฐพ์๋ณด๋๊น ๋๊ฒ ๊ธฐ๋ณธ์ ์ธ๊ฑฐ ์๋๋ณธ๋ฐ ๋ชฐ๋๋ค.. ์ผ๋จ ์ข ๋ ํด๋ด์ผ ์๊ฒ ์ง๋ง ์ ๊ฒ ์ ๋ผ๋ 2๋ฒ์งธ ํ๋๋ก ๋ณ์์ ๊ธธ์ด๋ฅผ ์ ์ฅํ๋ ๋ฐฉ์์ ๊ฐ์ด ์ด ์๊ฐ์ด ์ข ๊ฑธ๋ ค๋ ๊ฐ๋ฅํ ๊ฑฐ ๊ฐ๋ค ๊ณ ๋ง์
target ์ ๋ฐฐ์ด์ด ๊ณ ์ ์ด๊ณ scanner ๋ ๋ฐฐ์ด์ด ๊ฐ๋ณ์ธ๊ฒ ๋ฌธ์ ๋ฉด ๋ฐ์ค์น ๋ถ๋ถ ์ฒ๋ฆฌ ํ๊ธฐ ์ ์ target ์ ๋ชจ๋ ๋น์ฐ๊ณ (์ด๊ธฐํ) target ์ ์๋ก ์ ํด์ฃผ๊ธฐ๋ง ํ๋ฉด ๋๋๊ฑฐ ๊ฐ์๋ฐ ์ฌ์ง์ else ๋ถ๋ถ์ ์ด๋ฏธ ์์์ ํ์ผ๋ ํ์ ์์ด ์ง๋๊ฑฐ๊ณ
์ค ๊ทธ๋ฐ ๋ฐฉ๋ฒ๋ ์์๋ค.. ์ง๊ธ์ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก ํด๊ฒฐ๋ ์ํ๊ธด ํ๋ฐ ๊ทธ๋ ๊ฒ target ์์ฒด๋ฅผ ์์์ ์ผ๋ก ์ด๊ธฐํํ๋ ๋ฐฉ๋ฒ์ ์ฐพ๋ ๊ฒ๋ ๊ด์ฐฎ์์๊ฒ ๊ฐ๋ค ๊ณ ๋ง์