์ฝ๋ฃจํด ํจ์์์ ์ฐ์ด๋ isPhone ๋ผ๋ ๋ณ์๊ฐ ์์ต๋๋ค .
์ด ๋ณ์๋ ํด๋น ์คํฌ๋ฆฝํธ์์ ์คํํฑ ์ ์ธ์ ํ๋๋ฐ ๋ค๋ฅธ ์คํฌ๋ฆฝํธ์์ ์ด ๋ณ์๋ฅผ ๊ฐ์ง๊ณ ์์ ํ๋ ค๊ณ ํ ๋
์๋๋ ๊ฐ์ด ๋ฌ๋ผ์ ธ์ผํ๋๋ฐ ๊ณ์ ๊ณ ์ ๊ฐ์ผ๋ก ์ ์ง๊ฐ ๋๊ณ ์์ต๋๋ค.
ํน์ ์ฝ๋ฃจํด ํจ์์์ isPhone ์ ๋ฆฌํด๊ฐ์ผ๋ก ๋ฐ๋ก ์ง์ ํด์ค์ผํ๋๊ฑด๊ฐ์?
IEnumerator Phone()
{
if (pDown && moveVec == Vector3.zero && !isJump && !isDodge)
{
anim.SetTrigger("doPhone");
Debug.Log("ํฐ์คํ");
cellPhone.gameObject.SetActive(true);
while (isPhone)
{
if (Input.anyKeyDown && !pDown)
{
anim.SetTrigger("stopAnim");
Debug.Log("์ ๋๋ฉ์ด์ ์ข ๋ฃ");
isPhone = false;
cellPhone.gameObject.SetActive(false);
break;
}
yield return new WaitForSeconds(0.001f);
}
}
isPhone = true;
}
ํด๋น ์ฝ๋ฃจํด ํจ์์ฝ๋์ ๋๋ค!
๊ทธ๋ฆฌ๊ณ ๋ค๋ฅธ ์คํฌ๋ฆฝํธ์์
void Update() {
if (Player.isPhone == true)
{
gameObject.SetActive(true);
Debug.Log(Player.isPhone);
}
else if(Player.isPhone == false)
{
gameObject.SetActive(false);
Debug.Log(Player.isPhone);
} ์ด๋ ๊ฒ ์ ๊ทผํ๊ณ ์์ต๋๋ค. ํ์ง๋ง ๋ฐํ๊ฐ์ด true๋ก ๊ณ ์ ๋์ด์์ต๋๋ค ใ
์ฝ๋ฃจํด ํจ์์์ ์ฐ์ด๋ isPhone ๋ผ๋ ๋ณ์๊ฐ ์์ต๋๋ค .
์ด ๋ณ์๋ ํด๋น ์คํฌ๋ฆฝํธ์์ ์คํํฑ ์ ์ธ์ ํ๋๋ฐ ๋ค๋ฅธ ์คํฌ๋ฆฝํธ์์ ์ด ๋ณ์๋ฅผ ๊ฐ์ง๊ณ ์์ ํ๋ ค๊ณ ํ ๋
์๋๋ ๊ฐ์ด ๋ฌ๋ผ์ ธ์ผํ๋๋ฐ ๊ณ์ ๊ณ ์ ๊ฐ์ผ๋ก ์ ์ง๊ฐ ๋๊ณ ์์ต๋๋ค.
ํน์ ์ฝ๋ฃจํด ํจ์์์ isPhone ์ ๋ฆฌํด๊ฐ์ผ๋ก ๋ฐ๋ก ์ง์ ํด์ค์ผํ๋๊ฑด๊ฐ์?
IEnumerator Phone()
{
if (pDown && moveVec == Vector3.zero && !isJump && !isDodge)
{
Debug.Log("ํฐ์คํ");
cellPhone.gameObject.SetActive(true);
while (isPhone)
{
if (Input.anyKeyDown && !pDown)
{
Debug.Log("์ ๋๋ฉ์ด์ ์ข ๋ฃ");
isPhone = false;
cellPhone.gameObject.SetActive(false);
break;
}
yield return new WaitForSeconds(0.001f);
}
}
isPhone = true;
}
ํด๋น ์ฝ๋ฃจํด ํจ์์ฝ๋์ ๋๋ค!
๊ทธ๋ฆฌ๊ณ ๋ค๋ฅธ ์คํฌ๋ฆฝํธ์์
void Update() {
if (Player.isPhone == true)
{
gameObject.SetActive(true);
Debug.Log(Player.isPhone);
}
else if(Player.isPhone == false)
{
gameObject.SetActive(false);
Debug.Log(Player.isPhone);
}
} ์ด๋ ๊ฒ ์ ๊ทผํ๊ณ ์์ต๋๋ค. ํ์ง๋ง ๋ฐํ๊ฐ์ด true๋ก ๊ณ ์ ๋์ด์์ต๋๋ค ใ
isPhone ์ค์ ํ ๋ ๋ก๊ทธ ์ฐ์ด๋ณด๋ฉด ๊ทธ๊ฑด ๋์ด? ๊ทธ๋ฆฌ๊ณ WaitForSeconds ์ ๋ ๊ฒ ์ธ๋ฐ์ WaitForEndOfFrame์ธ๊ฐ ๋จธ์๊ธฐ์ธ๊ฐ ๊ทธ๊ฑฐ ์ฐ์
๋ก๊ทธ๋ ์ ์์ ์ผ๋ก ์ํ๋๋๋ก ๋ค ๋์ค๊ณ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ง์ํ์ WaitForEndOfFrame์ ์จ๋ดค๋๋ฐ, ํ๋ ์์ํฌ๋จ์์ฌ์ ๊ทธ๋ฐ์ง ์ ๊ฐ ์ํ๋ ํ์ด๋ฐ์ ์ฆ๊ฐ์ ์ธ ์คํ์ด ์๋ผ์ ์ด์ฉ์์์ด ์๋ ์ฝ๋๋๋ก ์ฐ๊ณ ์์ต๋๋ค!
break๊ฐ while๋ฌธ ํ์ถํ๊ณ ์๋์์ isphone true๋ก ๋ง๋ค์ด์ฃผ๋๊ฑฐ๊ฐ์ต๋๋ค - dc App
์ ๋ฐ์ดํธ๊ฐ ์๋ ์ฝ๋ฃจํด์ ์ฐ๋ ์ด์ ๊ฐ ๋งคํ๋ ์๋ง๋ค ์คํ๋์ง ์๊ฒ ํ๋๊ฑด๋ฐ ๋๋ ๋น๋๊ธฐ ๋๋์ผ๋ก ๊ตฌํํ ๋์ธ๋ฐ 0.0001์ด ๋๊ธฐ์ด๋ฉด ๊ทธ๋ฅ ์ ๋ฐ์ดํธ์์ ๊ตฌํํ๋๊ฒ ๋์๊ฑฐ๊ฐ์. - dc App
์ฝ๋ฃจํด์ด ๋น๋๊ธฐ์ฒ๋ผ ๋์ํ๋ฏ๋ก ๋ธ๋ ์ดํฌ ๊ฑธ๋ฆฌ๊ณ ๋ฐ๋ก ์ฐธ์ผ๋ก ๋ฐ๋์ด์ ์๊ฐํ๋๋ก ์ฒ๋ฆฌ๊ฐ ์๋๊ฑฐ์. - dc App
ํ๋ ์์ด ์คํ๋๋ ๊ฐ๊ฒฉ๋ณด๋ค ๋๊ธฐํ๋ ์๊ฐ์ด ์งง์๊ฑฐ์. - dc App
ํ๋ ์์ผ๋ก ํ๋๋ ์ํ๋ ํ์ด๋ฐ์ด ์๋์จ๋ค๋๊ฒ ์ดํด๊ฐ ์๋จ. ์ปดํจํฐ๋ ํ๋ ์๋ง๋ค ์คํฌ๋ฆฝํธ๋ฅผ ํ๋ฒ์ฉ ์คํ์ํค๋๊ฑด๋ฐ 0.001์ด๋ฉด ์๋ฏธ์๋ ์์น์ธ๊ฑฐ์. - dc App