我的当前代码是:
public class scri : MonoBehaviour
{
public float jumpforce = 3;
Rigidbody rb;
public int CanJump = 1;
void Start()
{
rb = GetComponent<Rigidbody>();
}
void OnCollisionStay()
{
CanJump = 1;
}
void Update()
{
if (Input.GetKeyDown(KeyCode.Space) && CanJump > 0)
{
rb.AddForce(new Vector3(0.0f, 0.5f, 0.0f) * jumpforce, ForceMode.Impulse);
CanJump = CanJump - 1;
}
}
}
这就允许空中跳跃,就好像你在第一次跳跃后使用空中跳跃任何显著的时间,因为它只会增加力量,重力把它拉下来太多,第二次跳跃不会有太大的不同。
我试着查阅文档,但找不到任何有用的东西。
1条答案
按热度按时间ldioqlga1#
力就是力,它需要对抗重力,来平衡最终的速度。
你能做的就是直接覆盖最终的目标速度,简单地做。