Files
UnicornElimination/Assets/Scripts/PlayerMovement.cs
김도환 b39116e734
2026-05-03 23:52:11 +09:00

39 lines
932 B
C#

using System;
using UnityEngine;
using UnityEngine.InputSystem;
public class PlayerMovement : MonoBehaviour
{
public float moveSpeed;
public float jumpForce;
private Rigidbody2D _rb;
private UnicornInputSystem _unicorn;
private void OnDisable()
{
_unicorn.Player.Jump.performed -= Jump;
}
void Start()
{
_rb = GetComponent<Rigidbody2D>();
_unicorn = UnicornInput.Unicorn;
_unicorn.Player.Jump.performed += Jump;
}
private void Jump(InputAction.CallbackContext obj)
{
_rb.linearVelocityY = jumpForce;
}
private void FixedUpdate()
{
var readValue = _unicorn.Player.Horizontal.ReadValue<float>();
_rb.linearVelocityX = readValue * moveSpeed;
if (_unicorn.Player.Down.IsPressed() && _rb.linearVelocityY < jumpForce/1.5)
_rb.linearVelocityY = Math.Min(0, _rb.linearVelocityY);
}
}