为了账号安全,请及时绑定邮箱和手机立即绑定

请问在unity3d中如何判断角色状态?

请问在unity3d中如何判断角色状态?

qq_笑_17 2018-08-09 12:14:46
我在脚本中写下了wasd控制人物移动的命令,又加入了一个检测e键使人物坐下的命令,但人物坐下后还会因wasd移动,请问怎么判断当前人物是否为sit状态,使wasd不控制人物。
查看完整描述

1 回答

?
繁星点点滴滴

TA贡献1803条经验 获得超3个赞

bool sit = false;
void Update () {
if (Input.GetKeyDown(KeyCode.E)) {
//你自己的人物蹲下的动作
if (!sit)
{
sit = true;
Debug.Log("现在坐下了");
}
else {
sit = false;
Debug.Log("现在站起来了");
}
}
if (!sit) {
if (Input.GetKey(KeyCode.W)) {
transform.Translate(0,0,Time.deltaTime*2.5f);
}
//这里只有向前的,其他的可以自己写
}
}
我也是萌新,目前解决这个问题我的想法是给他加一个布尔值,再通过if语句判断布尔来决定是否执行.
这是我目前想到的一个方法,还有一个想法就是把wasd移动和蹲下分开脚本写,然后蹲下时把wasd脚本的enable=false; 。

查看完整回答
反对 回复 2018-08-12
  • 1 回答
  • 0 关注
  • 1253 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信