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

我在脚本中写下了wasd控制人物移动的命令,又加入了一个检测e键使人物坐下的命令,但人物坐下后还会因wasd移动,请问怎么判断当前人物是否为sit状态,使wasd不控制人物。

qq_笑_17
浏览 1325回答 1
1回答

繁星点点滴滴

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; 。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Unity 3D