Files
UnicornElimination/Assets/Scripts/PlayerMovement.cs

39 lines
932 B
C#
Raw Normal View History

2026-05-03 23:52:11 +09:00
using System;
2026-05-03 23:12:37 +09:00
using UnityEngine;
2026-05-03 23:52:11 +09:00
using UnityEngine.InputSystem;
2026-05-03 23:12:37 +09:00
public class PlayerMovement : MonoBehaviour
{
2026-05-03 23:52:11 +09:00
public float moveSpeed;
public float jumpForce;
private Rigidbody2D _rb;
private UnicornInputSystem _unicorn;
private void OnDisable()
{
_unicorn.Player.Jump.performed -= Jump;
}
2026-05-03 23:12:37 +09:00
void Start()
{
2026-05-03 23:52:11 +09:00
_rb = GetComponent<Rigidbody2D>();
_unicorn = UnicornInput.Unicorn;
_unicorn.Player.Jump.performed += Jump;
}
private void Jump(InputAction.CallbackContext obj)
{
_rb.linearVelocityY = jumpForce;
2026-05-03 23:12:37 +09:00
}
2026-05-03 23:52:11 +09:00
private void FixedUpdate()
2026-05-03 23:12:37 +09:00
{
2026-05-03 23:52:11 +09:00
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);
2026-05-03 23:12:37 +09:00
}
}