void Update()
{
if (Input.GetKey(KeyCode.LeftArrow))
{
if (isMoving == true && moveFunc != null)
{
bool arrivedAtDestination = false;
// Call the delegate Movement Function...
arrivedAtDestination = moveFunc();
if (arrivedAtDestination == true)
{
SetNextPosition();
}
}
}
}
์ง๊ธ ์ด ์ํ๋ก๋ ์ผ์ชฝ ๋ฐฉํฅํค๋ฅผ ์ญ ๋๋ฅด๊ณ ์์ด์ผ์ง๋ง ์จ์ด ํฌ์ธํธ๋ก ์ง์ ํ ๊ฒฝ๋ก๋ฅผ ๋ง์ง๋ง๊น์ง ์ด๋ํ ๋ฉ์ถ๋๋ฐ,
๋จ ํ๋ฒ์ ํด๋ฆญ์ผ๋ก ๋ง์ง๋ง ํฌ์ธํธ๊น์ง ์ด๋์ ํ๊ฒ ํด์ฃผ๋ ค๋ฉด ์ด์ฐํด์ผ ํ ๊น์??
๊ฒํค ๋ค์ด, ๊ฒํค์ ๋๋ค ํด๋ดค์ง๋ง ๋๊ฐ๋ ์คํ๋ ค ์ฌ๋ฌ๋ฒ ํด๋ฆญ์ ํด์ค์ผ ํ๋๋ผ๊ตฌ์ ใ ์ ๋ํฐ ๋ด๋น์๊ฒ ๊ตฌ์์ด ํ์ํฉ๋ค๋ค ใ
ย ย ย ย void Update()
ย ย ย ย {
ย ย ย ย ย ย if (Input.GetKey(KeyCode.LeftArrow))
ย ย ย ย ย ย {
ย ย ย ย ย ย ย ย Temp = true;
ย ย ย ย ย ย }
ย ย ย ย ย ย if (Temp == true)
ย ย ย ย ย ย {
ย ย ย ย ย ย ย ย if (isMoving == true && moveFunc != null)
ย ย ย ย ย ย ย ย {
ย ย ย ย ย ย ย ย ย ย bool arrivedAtDestination = false;
ย ย ย ย ย ย ย ย ย ย // Call the delegate Movement Function...
ย ย ย ย ย ย ย ย ย ย arrivedAtDestination = moveFunc();
ย ย ย ย ย ย ย ย ย ย if (arrivedAtDestination == true)
ย ย ย ย ย ย ย ย ย ย {
ย ย ย ย ย ย ย ย ย ย ย ย SetNextPosition();
ย ย ย ย ย ย ย ย ย ย }
ย ย ย ย ย ย ย ย ย ย //Temp = false;
ย ย ย ย ย ย ย ย }
ย ย ย ย ย ย }
ย ย ย ย }
ํค๊ฐ ๋๋ ธ์๋ ํน์ ๋ณ์๊ฐ์ ์ธํ ํ๋ค. ๊ทธ ๋ณ์๊ฐ์ ๋ณด๊ณ ์ด๋์ํจ๋ค. ๋
ํจ ํด๋ณด๊ฒ์ฌ๋ค ใณใณ
์ด๋์ด ์๋ฃ๋๋ฉด ๊ทธ ๋ณ์๊ฐ์ ์๋๋๋ก ๋๋ ค๋์ผ ํจ. ์๊ทธ๋ฌ๋ฉด ์ด๋์ด ์๋ฃ๋ผ๋ ๊ผ์ ์์ง์ด๋ ค๊ณ ํ ๊ฒ์
๋จธ๋ ๋ฐ์ ์ฝ๋ ์ถ๊ฐํ๋๋ฐ, temp = false ๋ผ ์ ์๊ฒ ์์ธ์ฒ๋ฆฌ ์ํ๋ฉด ๋๋ฌ๋ ์กฐ๊ธ๋ง ์์ง์ด๋ค๊ฐ ์ ๊ฑธ ์์ธ์ฒ๋ฆฌ ํด์ฃผ๋๊น ๊ณ์ ์์ง์ด๊ฒ ๋๋๋ฐ ๋จธ๋๋ฌธ์ ๊ทธ๋ฐ๊ฑธ๋ ค๋์?
if(๊ฐ๊ณ ์ถ์๊ณณํด๋ฆญ) ๊ฐ๊ณ ์ถ์๊ณณ์ผ๋ก ๊ณ์ ์ด๋ if(์บ๋ฆญํฐ๊ฐ ๊ฐ๊ณ ์ถ์๊ณณ ๊ทผ์ฒ๊น์ง ๊ฐ์ผ๋ฉด) ์ด๋๋