gpt4 book ai didi

c# - rigidbody OnTriggerEnter 给我一个错误

转载 作者:太空宇宙 更新时间:2023-11-03 23:17:38 25 4
gpt4 key购买 nike

所以,我正在尝试进行无限跳线,但出于某种原因,OnTriggerEnter2D 函数 rb2D 给了我一个错误,即使我已尽一切努力使其正常工作(至少我是这么认为的,因为每次我这样做时它都会起作用。)错误在哪里或者我在代码中遗漏了什么?

public class PlayerMovement : MonoBehaviour {

Rigidbody2D rb2D;

void Start()
{
rb2D = GetComponent<Rigidbody2D>();
}

void Update()
{

}
void OnTriggerEnter2D(Collider2D other)
{
other.rb2D.velocity = Vector2.zero;
other.rb2D.AddForce(Vector2.up * jumpHeight, ForceMode2D.Impulse);
}

最佳答案

这可能是因为您的 other 上没有 rb2D 组件,只有您的游戏对象附加了此脚本。

other 是一个 Collider2D 类型,它包含你的 刚体定义 rb2d

我相信你的代码应该是:

other.velocity = Vector2.zero;
other.AddForce(Vector2.up * jumpHeight, ForceMode2D.Impulse);`

注意 - 我认为 velocity 也不是 Collider2D 的一部分 - 查看文档 here .

关于c# - rigidbody OnTriggerEnter 给我一个错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36719501/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com