我正在制作一个游戏,在他完成目标之后,我必须改变玩家的位置,但是当我改变他的位置时,即使我设置了Rigibody2D,他也仍然停留在新的变换位置上的重力比例为2。当我通过拖动和释放手动移动他时,他通常会掉到地面上。我还很新,所以任何帮助将不胜感激。我似乎无法找出问题所在。 这是代码,
public GameObject player;
public Transform nextPart;
public Camera cam;
void Start()
{
}
// Update is called once per frame
void Update()
{
if (PlayerController.canTransform)
{
player.transform.position = nextPart.position;
cam.transform.position = new Vector3(nextPart.position.x, nextPart.position.y, -10);
}
}
这里也是一张图片,
答案 0 :(得分:0)
您的代码在Update
函数中。这意味着只要canTransform
为真,您的播放器就会被放置在每一帧变换中。
您需要在移动播放器后将该布尔值设置回false,或者进行其他检查以确保不多次移动到该位置。
最好将播放器设置在单独的功能中,然后在达到该目标时将其调用一次。