如何解决如果我的玩家在蹲伏时头上有东西unity 3d,如何避免他卡住?
我编写了这个简单的代码来在按下 Lcontrol 后调节播放器的高度
//crouching
if (Input.GetKey(KeyCode.LeftControl))
controller.height = 1.0f;
else
controller.height = 2.0f;
但是如果我的角色在蹲伏时头顶有屋顶,他就会被卡住
- 我如何制作一个功能来检测我的头顶上是否有东西,所以即使我按下 Lcontroll 按钮,我的角色也会保持蹲伏
- 我如何自动降低相机/机身,因为相机 rn 卡在屋顶(与卡住的玩家)
你知道通常是一个平稳的蹲下 ^^" ,提前致谢!
解决方法
你可以把一个transform公共“checkRoof”,放在角色的头上,做这样的事情
if (Input.GetButtonDown("Down") && (grounded || checkRoof == true))
{
anim.SetBool("pressDown",true);
ChangeCollidersCrouch(); //change colliders (goes from character to character)
crouched = true;
}
if (!Input.GetButton("Down") && grounded && checkRoof == false)
{
anim.SetBool("pressDown",false);
anim.SetBool("Iscrouchwalk",false);
ChangeCollidersIdle();
speed = speedFix;
crouched = false;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。