我加入了游戏困境,并且正在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));
}
}
修改
答案 0 :(得分:0)
您可以尝试如下添加向上的力
rb.AddForce(transform.up*jumpSpeed);
注意:设置一个“现实的” jumpSpeed。
答案 1 :(得分:-1)
花花公子。大声笑,所以我只是尝试了一下,你怎么知道这给我带来了麻烦,但是我所做的是从播放器上删除了触发脚本,并让跳板检测了触发。
if (other.tag == "Player")
{
other.GetComponent<Rigidbody2D>().AddForce(new Vector2(0f, jumpSpeed));
}
标记您的玩家player
并将其放在跳板上并设置为istrigger