我在腳本中寫下了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; 。
- 1 回答
- 0 關注
- 1357 瀏覽
添加回答
舉報
0/150
提交
取消