2015-02-10 78 views
0

我正在製作一個無盡的轉輪,並且我希望GameObject在按下向上鍵時跳轉一次。我的問題是,只要我釋放鍵,遊戲對象停止跳躍,並進入其默認動畫運行,而不完成跳轉動畫。我怎樣才能讓GameObject完成一次動畫,然後才能進入正在運行的動畫狀態。 我正在使用animator,其中Running是默認動畫,Jump是按下按鍵。僅在完成前一個動畫之後才播放默認動畫

請幫忙!

void moveNinja() 
{ 
    if ((Input.GetKey(KeyCode.W))) 
    { 
     animator.SetBool("jump", true); 
     animator.SetBool("run", false); 
     animator.SetBool("slide", false); 
    } 
    if ((Input.GetKey(KeyCode.S))) 
    { 
     animator.SetBool("slide", true); 
     animator.SetBool("run", false); 
     animator.SetBool("jump", false); 
    } 
    if (Input.GetKeyUp(KeyCode.S)) 
    { 
     animator.SetBool("run", true); 
     animator.SetBool("slide", false); 
     animator.SetBool("jump", false); 

    if (Input.GetKeyUp(KeyCode.W)) 
    { 
     animator.SetBool("run", true); 
     animator.SetBool("slide", false); 
     animator.SetBool("jump", false); 
    } 
} 
+0

下面的答案有幫助嗎?請打勾接受作爲回答 – 2015-02-10 14:07:52

回答

2

是的好問題。 轉到您的動畫師,選擇跳轉到運行狀態的跳轉箭頭,並在巡視員中添加退出時間條件。這種方式只有在所有bools都正確並且動畫剪輯完成時纔會發生。

截圖僅供參考。

enter image description here

+0

是用代碼打破了我的頭。謝謝大家 – chintan 2015-02-10 14:08:32

+0

歡迎您。通過使用這個,你應該在動畫師中擁有很好的動畫流 – 2015-02-10 14:11:18

相關問題