public class PlayerInput : MonoBehaviour
{ย ย public float speed = 8f;
ย ย public float jumpPower = 700f;
ย ย private int jumpCount = 0;
ย ย private Rigidbody2D playerRigidbody;
ย ย private Animator playerAnimator;
ย ย // Start is called before the first frame update
ย ย void Start()
ย ย {
ย ย ย ย playerRigidbody = GetComponent<Rigidbody2D>();
ย ย ย ย playerAnimator = GetComponent<Animator>();
ย ย }
// ํ๋จ๋ถํด ํค ์ ๋ ฅํ๊ณ ์ด๋ ์ฒ๋ฆฌ
ย ย void FixedUpdate()
ย ย {
ย ย ย ย float xInput = Input.GetAxis("Horizontal");
ย ย ย ย float xSpeed = xInput * speed;
ย ย ย ย Vector2 updatedMovement = new Vector2(xSpeed, 0);
ย ย ย ย playerRigidbody.velocity = updatedMovement;
ย ย ย ย // ์ ํ ํค ์ ๋ ฅ์
ย ย ย ย if (Input.GetButtonDown("Fire1"))
ย ย ย ย {
ย ย ย ย ย ย playerRigidbody.AddForce(new Vector2(0f, jumpPower));
ย ย ย ย }
ย ย ย ย else if (Input.GetButtonUp("Fire1") && playerRigidbody.velocity.y > 0)
ย ย ย ย {
ย ย ย ย ย ย playerRigidbody.velocity = playerRigidbody.velocity * 0.5f;
ย ย ย ย }
ย ย }
}
์ฑ ์์ ๋ฐฐ์ด๋๋ก ์ง ๋ดค๋๋ฐ ์์ฐ์ค๋ฌ์ด ์ ํ๊ฐ ์๋๋ผ ๊ฑ ์์ชฝ์ผ๋ก ์๊ฐ์ด๋ ํ ๋ฌผ์์์์ฒ๋ผ ๋๋ฆฌ๊ฒ ํ๊ฐํจ...
์ด๋ค ๊ฑธ ๊ณ ์ณ์ผ ๋ฐ๊ฟ ์ ์๋์ง ๋์ ๋ถํ...
Vector2 updatedMovement = new Vector2(xSpeed, 0); playerRigidbody.velocity = updatedMovement;
๊ณ์ y ๊ฐ์ 0์ผ๋ก ์ด๊ธฐํ ํด์ค์ ๊ทธ๋ผ new Vector2(xSpeed, playerRigidbody.velocity.y); ๋ก ๋ฐ๊ฟ๋ด
๊ฐ์ฌํฉ๋๋ค ์ผ์ธ ๋ณต๋ฐ์ผ์ค๊ฑฐ์์
์ค๋ ฅ๊ฐ์ ์กธ๋ผ ๋์ด๋๊ฒ๋ง๊ณค ๋ต์์ด์