


public void Jump() // ์ ํ ๋ฒํผ ํด๋ฆญ์ ์คํ
ย ย {
ย ย ย ย if (isGrounded == true) //๋
์ ๋ฐ๊ณ ์์ผ๋ฉด
ย ย ย ย {
ย ย ย ย ย ย isGrounded = false; //์ ํ์ค์ด ๊ธฐ ๋๋ฌธ์ false๋ก ๋ฐ๊พธ๊ณ .
ย ย ย ย ย ย rb.velocity = new Vector2(rb.velocity.x, 0); //์ ํ
ย ย ย ย ย ย rb.AddForce(new Vector2(0, jumpForce)); //์ ํ
ย ย ย ย ย ย anim.SetTrigger("Jump"); //์ ํ ์ ๋๋ฉ์ด์
ย ย ย ย ย ย jumpAudio.Play(); //์ ํ ์ฌ์ด๋
ย ย ย ย }
ย ย ย
ย ย ย ย else if (isJumping == false) // ๋๋ธ ์ ํ
ย ย ย ย {
ย ย ย ย ย ย isJumping = true;ย
ย ย ย ย ย ย rb.velocity = new Vector2(rb.velocity.x, 0);
ย ย ย ย ย ย rb.AddForce(new Vector2(0, jumpForce));
ย ย ย ย ย ย jumpAudio.Play();
ย ย ย ย ย
ย ย ย ย }
ย ย }
ย ย ย
ย ย ย void OnCollisionEnter2D(Collision2D collision)
ย ย {
ย ย ย ย if (collision.gameObject.tag == "Ground") //์บ๋ฆญํฐ์ ๋ฟ๋ ์ถฉ๋์ฒด๊ฐ ๋
์ด๋ฉด
ย ย ย ย {
ย ย ย ย ย ย isGrounded = true; ๋
์ ๋ฟ์๊ธฐ๋๋ฌธ์ ์ ํ์ false๋ก ๋์๋๊ฒ ๋ค์ true
ย ย ย ย ย ย anim.SetTrigger("JumpOff"); //์ ํ ์ ๋๋ฉ์ด์
์์ ๋๊ธฐ์ํ๋ก ๋์๊ฐ๋๋ก ํ๋ ๋ณ์
ย ย ย ย }
ย ย }
์ฐ์ ์ ๋์๋ฏธ์
๊ธธ์ด๋ 3๋ฒ ์ฌ์ง์ฒ๋ผ ์ ์ ๋ ํ๋ ์์ผ๋ก ํด๋์ต๋๋ค.
๊ทธ๋ฌ๋ฉด ์ ๊ฒ ๋ฑ 1๋จ ๊ธธ์ด๋ผ์ 3๋ฒ ์ฌ์ง๋ณด๋ค ๊ธธ๊ฒ ์ ๋๋ฉ์ด์
๋ฑ๋กํ๋ฉด ๋
์ ๋ฟ์ผ๋ฉด ๋๊ธฐ์ํ๋ก ๋์๊ฐ๊ฒ ํด๋จ์ด๋ ์ ๋๋ฉ์ด์
์ด ์์ง ๋ค ์ฒซํ๋ ์๋ถํฐ ๋ํ๋ ์๊น์ง ๋ค ์คํ๋์ง ์์๊ธฐ๋๋ฌธ์ ๋
์ ๋ฟ์๋ ์ ๋๋ฉ์ด์
๋๊น์ง ๋ค ์คํํด์์ผ ๋ฐ๋๊ณ .
์ ๊ฒ๋ณด๋ค ์งง๊ฒ ํ๋ฉด ๋
์ ๋ฟ๊ธฐ๋์ ์ ์ ๋๋ฉ์ด์
์ด ๋๋์ ๋ฐ๋์ด๋ฒ๋ฆฝ๋๋ค.
๊ทธ๋์ ์ ๋ ๊ฒ ์ด๋ฆผ์ง์์ผ๋ก ๋
์ ๋จ์ด์ง ์๊ธฐ์ ๋น์ทํ๊ฒ ํ๋ ์ ์ก์๋ฟ์ต๋๋ค.
๊ทธ๋ฐ๋ฐ ๋ฌธ์ ๋ 2๋จ ์ ํ๋ ์๊ณ ๋ ๋ ๋์ ๊ณณ๋์์ด์ ๋ค ๊ธธ์ด๊ฐ ๋ค๋ฅธ๋ฐ.. ์ฐธ.. ์ ๋งคํ๋ค์.
์ด๋ป๊ฒ ๊ตฌํํด์ผ์ง. ์ด๋ค ๋์ด์์ ์ ํ๋ฅผ ํด๋ ๋
์ ๋ฟ์ผ๋ฉด ๋๊ธฐ์ํ๋ก ์์ฐ์ค๋ฝ๊ฒ ๋์๊ฐ๊ฒ ๋ ๊ฐ์?..
๊ทธ๋ฆฌ๊ณ ๋๋ฒ์งธ ์ง๋ฌธ์
๋๋ค..
์ฝ๋ ๋ณด์๋ฉด ๋
์ ๋ฟ์ผ๋ฉด ์ ํ๋๊ณ false๋ก ๋ฐ๋๊ธฐ๋๋ฌธ์ ์ ํ ํ๋ฒ๋ ๋๋ฅผ์ 1๋จ ์ ํ ๋ถ๋ถ์ ์ง๋์น๊ณ ์ด์ 2๋จ ์ ํ ๋ถ๋ถ์ผ๋ก
๋์๊ฐ์ผ ์ ์์ธ๋ฐ ์ด์ํ๊ฒ ์ ํ ๋๋ฒ๋๋ฅด๋ฉด ์ ๋๋ฉ์ด์
์ด ๋๋ฒ ์คํ๋๋ค์..
๊ทธ๋์ ๋๋ธ์ ํ์ ์๋ ์ค๋์ค ์์ ๊ณ ํ๋ฒ ํด๋ดฃ๋๋ ์ค๋์ค๊ฐ ํ๋ฒ๋ง ์คํ๋์ ๋๋ฒ๋๋ฌ๋. ๊ทธ๋ฆฌ๊ณ ๋ก๊ทธ ๋ฐ์๋ด๋ ์ ํ ๋๋ฒ๋๋ฌ๋ 1๋จ ๋ถ๋ถ์ ํ๋ฒ๋ง ์คํ๋๊ณ ์.. ๊ทธ๋ฐ๋ฐ ์ด๊ฒ ๋น์ฐํ๊ฑด๋ฐ. ์ด์ํ๊ฒ ์ ๋๋ฉ์ด์
๋ง ๋๋ฒ์คํ๋๋ค์..
ํธ๋์ง์ (์คํ ์ดํธ๋ผ๋ฆฌ ์ฐ๊ฒฐํ๋ํ์ดํ)์ has exittime ์ฒดํฌํด์ ํ๋ฉด ๋๋ค๋๊น์ผ..
๊ทธ๋ฆฌ๊ณ ๊ทธ๋ฆผ ์๋ณด์ฌ์ ๊ทธ๋ฆผ์ ๋ชจ๋ฅด๊ฒ์
isjumping์ false๋ก ๋ฐ๊ฟ์ฃผ๋๋ฐ๊ฐ ์์ผ๋๊น ์ด๋จ ์ ํ ๋ชปํ๋๊ฑฐ ์๋๊น
์ ํ ์ ๋๋ฉ์ด์ ๋ฃจํ ์ค์ ๋์๋๊ฑฐ ์๋?
has exittime์ ์ฒดํฌ ํด์ ํ๋ฉด ์ ๋๋ฉ์ด์ ์ด ๋๋์ง ์์๋ ํธ๋์ง์ ์กฐ๊ฑด(์ฌ๊ธฐ์ ํธ๋ฆฌ๊ฑฐ)์ ๋ฐ๋ผ์ ๋ฐ๋ก ์ํ ๋ณํ๊ฐ ์ผ์ด๋จ
์ง์ง๋ค ๋ณต๋ถํ๊ฑฐ๋ผ ํฐ์์๋ ์๋ณด์ด๋ค
์ ๊ทธ๋ฐ๊ฐ? ์ ๋ฒ์ ํ์ํด์ ํ๋ ๊ทธ๋ฅ ๋ฌดํ๋ฐ๋ณต๋ฌ๋๊ฑฐ๊ฐ์๋๋ฐ ํด๋ณธ๋คํ๊ณ ์ํด๋ดค์๋? ๋ค์ํด๋ด์ผ๊ฒ ๋ค
isgrounded๋ isjumpingd ๋๊ฐ๋ฅผ ๊ฐ์๊ฑธ๋ก ์ฐฉ๊ฐํ๊ณ ๋ง๋ค๊ณ ์๋๊ฑฐ ์๋๊น
์ time ์ฒดํฌ๋ฅผ ํด์ ํ๋๊ฐ ๋ฌดํ๋ฐ๋ณต์ด์๋๋ผ ๊ทธ๋ฅ ๋ฐ๋ก ๋๋จ.. ์ ๋๋ฉ์ด์ ์ด ์ ํํ์๋ง์ ๋ฐ๋ก๋๋๋ฒ๋ฆฌ๊ณ ๋๊ธฐ๋ก๊ฐ๋๋ฐ?
์ํ ์ง๊ธ ๋๊ธ ๋ค์ ์์ธํ ์ ๋ ํด๋ณด๋ ํ์ ํด์ ํ๋ฉด ์ ๋๋ฉ์ด์ ์ด ๋๋์ง ์์๋ ์กฐ๊ฑด ๋๋ฉด ๋์ด๊ฐ๋ค๊ณ ? ๊ทธ๋ผ ๋ด ์ ๋๋ฉ์ด์ ์ด ๋๋ฌด์งง์์ ๊ทธ๋ฐ๊ฐ ์กด๋ ๊ธธ๊ฒ ํด๋๊ณ ํ์ํด์ ํด์ ์กฐ๊ฑด๋๋ฉด ๋์ด๊ฐ๋๋ก ํด๋ณผ๊น.
์๋๋ค.. ๊ทธ๋ฅ ํ์ ํด์ ํ๋ฉด ๊ทธ๋ฅ ๋ฐ๋ก ๋๋๋ฒ๋ฆฌ๋ค.
๋ฐ๋ก ๋๊ธฐ๋ก ๊ฐ๋ฉด ์๋์ง ์ ํ์์ ๋๊ธฐ๋ก ๋์ด๊ฐ๋ ํธ๋์ง์ ์๋ ํ๋ผ๋ฏธํฐ๋ฅผ ๋ฌ์์ค
ใ ใ ๋ฌ๋ ค์์. ์ ํ์์ ๋๊ธฐ๋ก ๊ฐ๋ ํ์ดํ์ ๋ ์ ๋ฟ์ผ๋ฉด ํธ๋ฆฌ๊ฑฐ ์ผ์ง๋๋ก ํด๋จ์ ๊ทธ๋ฐ๋ฐ๋ ๊ทธ๋ฅ ๋ฐ๋ก ๋๊ธฐ ๋ก๋จ.
์ ๋๋ฉ์ดํฐ ์ค์ท์ข ์ฌ๋ ค์ค๋ด
๋ญ ๋ค๋ฅธ ์์น ๋ณ๊ฒฝ ๊ฐ์๊ฑด ์ํด์ค๋๋๋๊ฑฐ์ง?
ใ ใ ๊ธฐ๋ฌ ์ฐ์ด์ ์ฌ๋ ค๋ด