【发布时间】:2023-03-09 06:33:01
【问题描述】:
(这是一个 2D 项目)
我有一个跳跃问题,如果我的角色走进 X 平台,她不会跳跃,但是当她跳到 X 平台上时,她可以进行跳跃。
对于平台我目前正在使用 2 个 Box Collider 2D(其中一个已选中“触发”)
对于角色我目前正在使用 2 个 Box Collider 2D(其中一个已选中“is trigger”)和 Rigidbody 2D。
下面是我目前正在尝试使用的跳跃和接地代码。
{
public float Speed;
public float Jump;
bool grounded = false;
void Start()
{
}
void Update()
{
if (Input.GetKeyDown(KeyCode.UpArrow))
{
if (grounded)
{
GetComponent<Rigidbody2D>().velocity = new Vector2(GetComponent<Rigidbody2D>().velocity.x, Jump);
}
}
}
void OnTriggerEnter2D()
{
grounded = true;
}
void OnTriggerExit2D()
{
grounded = false;
}
}
问题出现在每个平台的同一部分。 (每个方块代表一个平台精灵,它们具有完全相同的特征,因为我复制粘贴了它们中的每一个)。请查看此链接上的照片:https://imgur.com/a/vTmHw
【问题讨论】:
-
我建议你取消选中 bouth colliders 上的“itrigger”,而不是“ontrigger”,而是选中“oncollisionenter2d”:docs.unity3d.com/ScriptReference/…
标签: unity3d