UE4_攻擊傷害2_AI受擊動畫


新建一個簡單的Ai,

 

給他添加上模型並調整至正確,修改碰撞設置。

visibility默認是忽略的,可以調整到阻擋,這樣就能阻擋我們發出的射線。

 

 

 

 這是一種阻擋射線的方法,但並不打算用這種。所以把visibility調回去。

 

在項目設置的collision里找到射線,新建一個射線命名為attack,並且默認相應改成 ignore

 

 

 找到SimpleAI,這時候會多出一個射線槽,attack,把他改成block;

然后把發射的射線也改成attack。

這樣一來,只要打開了 attack block 的物體,都能被發射attack的射線檢測到碰撞。

 

 

 

 

測試也是可以的

 

 

碰撞沒問題,接下來就是處理信息的通信了,如何知道我們用的那把武器,還有攻擊的方向等

新建一個BPI,藍圖接口

 

 添加接口DamagePass

 

 

添加兩個輸入參數 damage和bonename

 

 添加一個枚舉值,存放攻擊的方向。

 

 在BPI里添加一個Hit Direction的輸入參數作為攻擊方向。

 

 

在Attack Front Trace增加一個輸出,damage 代表傷害。如果是拳頭傷害暫時定為15.

 

 

break掉attack front的一堆輸出,哦對了,新建了一個Hit Direction的變量,也叫hit direction。用來表示攻擊攻擊的方向。

 

 

 

把受擊的四個動畫創建蒙太奇,(向左倒,向右倒,重擊向左倒,重擊向右倒)

 

 

AI里的事件圖表。如下所實現的功能是:

1.判定是否攻擊到頭,如果是傷害為3倍。

2.判定傷害是否大於50,是的話播放重擊挨揍的動畫,不是的話播放普通挨揍的動畫。

3.判定攻擊方向是從哪來的。從左來的就播放左受擊的動畫,從右來的就播放右受擊的動畫。從中間來的就隨機播放一個。

 

 

 

 給AI一個動畫藍圖

 

 

 

 

 

好了,測試AI可以正常挨揍了。

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM