Unity-跳垫上的玩家传送

时间:2018-10-13 18:57:22

标签: c# unity3d

我加入了游戏困境,并且正在Unity中制作2D平台游戏。为此,我创建了一个跳垫。每当玩家角色站在上面时,他们都会跳。问题在于跳跃看起来不像跳跃,它看起来更像是向上的传送。有没有解决办法?下面的代码!

void OnTriggerEnter2D(Collider2D other) {
    if (other.tag == "Spike") {
        SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex);
    } else if (other.tag == "Jump Pad") {
        rb.AddForce(new Vector2(0f, jumpSpeed));
    }
}

修改

https://imgur.com/a/7MM4QJF

2 个答案:

答案 0 :(得分:0)

您可以尝试如下添加向上的力 rb.AddForce(transform.up*jumpSpeed); 注意:设置一个“现实的” jumpSpeed。

答案 1 :(得分:-1)

花花公子。大声笑,所以我只是尝试了一下,你怎么知道这给我带来了麻烦,但是我所做的是从播放器上删除了触发脚本,并让跳板检测了触发。

 if (other.tag == "Player")
        {
            other.GetComponent<Rigidbody2D>().AddForce(new Vector2(0f, jumpSpeed));

        }

标记您的玩家player并将其放在跳板上并设置为istrigger