大家好!我是Unity新手,正在学习Unity Learn上的游戏开发路径。
我正在创建一个2D场景,玩家可以通过点击鼠标移动到鼠标光标的位置。虽然我已经输入了教程中的所有代码,但我遇到了一个小问题:当我点击鼠标时,玩家会移动到鼠标光标的位置,而不是移动到鼠标光标的方向上,甚至在某些时候会消失。
下面是PlayerController的代码:
using UnityEngine;
using UnityEngine.InputSystem;
public class PlayerController : MonoBehaviour
{
public float thrustForce = 1f;
Rigidbody2D rb;
void Start()
{
rb = GetComponent<Rigidbody2D>();
}
void Update()
{
if (Mouse.current.leftButton.isPressed)
{
// Calculate mouse direction
Vector3 mousePos = Camera.main.ScreenToWorldPoint(Mouse.current.position.value);
Vector2 direction = (mousePos - transform.position).normalized;
// Move player in direction of mouse
transform.up = direction;
rb.AddForce(direction * thrustForce);
}
}
void OnCollisionEnter2D(Collision2D collision)
{
Destroy(gameObject);
}
}
当我点击鼠标时会发生什么?如何解决这个问题?
评论 (0)