超絶奮闘記~ブラッドボーンの変形攻撃システムパクった!~
やりたい事
・攻撃中、指定のタイミングで指定のキーを押すと変形攻撃。それ以外は通常武器変更に移行。
・武器変更中、攻撃不可
この記事と大体同じ所があるので、ある程度説明は省く。
~モンタージュ~
・コンボ攻撃、ディレイコンボモンタージュ
全攻撃アニメーションに以下の通知を入れた。
ComboStartは、コンボ開始時に配置。
TransAttackは、次のコンボに移行する通知「NextCombo⁇」通知の少し後辺りに配置。
ComboStart・・・コンボを開始した時に呼ばれる通知
TransAttack・・・変形攻撃可能な時に呼ばれる通知
・変形攻撃
ChangeWeapon・・・武器のアタッチを入れ替える通知
TransEnd・・・変形・武器変更が終わった通知
~AnimBP~
・武器変更
・コンボ攻撃
・攻撃中、指定のタイミングで指定のキーを押すと変形攻撃。それ以外は通常武器変更に移行。
ComboStart通知が来た時、ComboStart変数をTrueにセット。
武器変更処理の前に、ブランチを挟みConditionにComboStartを繋ぐ。
ComboStart
True・・・変形攻撃に移行。
False・・・通常武器変更に移行。
Trueの先には、更にブランチが。
ConditionはTransAttackというBool値の変数になっている。
このTransAttackはTransAttack通知が来た時にTrueにセットされるようになっている。
つまり、
攻撃中、(ComboStart「True」)TransAttack通知(TransAttack「True」)が来た時に、指定のキー(ここではQキー)を押したら変形攻撃に移行する。
という事になっている。
武器の変更は以下参考に。
TransAttackがTrueの時、変形攻撃アニメーションを再生。
TransAttackがFalseの時、通常武器変更アニメーションを再生。
全体のアニメーション(Idle、Walk、Run)を変更する為、トランディションルールBool値をセット。
武器変更した際にモンタージュを変更した武器のものにセット。この辺は最初に載せた記事に書いてあるから参考に。
1つ違うのは、TransAttackをFalseにセットしてある点だ。
武器変更後TransAttackをFalseにセットしないと・・・
TransAttack通知が来た時、TransAttackがTrueに。
↓
その時点でQキー押したら、変形攻撃。そのまま武器を変更。
↓
武器を変更したのはいいが、TransAttackがTrueのままなので、以降TransAttack通知関係無しにいつでも変形攻撃が出せてしまう。
という事になるのだ。
ちなみに、少し前の画像でカスタムイベントを呼び出すための関数があった。
IsTransAttackというカスタムイベントを呼び出している。
IsTransAttackイベントはここにある。
Reset通知の処理とつながっている。
つまり、変形攻撃をした時にIsTransAttackイベントが呼び出され、コンボをリセットする処理に流れる。
ということだ。
・武器変更中、攻撃不可
簡単。
Qキー押した時、TransForm変数をTrueにセット。
攻撃処理に入れる。
攻撃キーが押された時、TransFormがTrueなら攻撃不可。
変形攻撃・武器変更終了時、TransFormをFalseにセット。
~Bool値の設定~
・TransForm
True・・・Qキー押した時
False・・・変形攻撃・武器変更終了時。Reset通知が来た時。
・ComboStart
True・・・コンボ開始時。
False・・・コンボ終了時。或いは変形攻撃終了時。
・TransAttack
True・・・TransAttack通知が来た時。
False・・・ComboStart通知が来た時。変形攻撃・武器変更が終了した時。Reset通知が来た時。
・Trans
True・・・Blade→Swordになった時。
False・・・Sword→Bladeになった時。
最後にBP全体を載せておく。
~武器変更~
1
2
3
4
5
~コンボ攻撃~
1
2
3
4
5
6
7
これまでで一番長い文章になってしまったかもしれない・・・。申し訳ないです。
解説動画にでもすれば良かったかなとも思ってますw
もし分からない所、指摘などあれば遠慮なくどうぞ!
それではまた!^^ノシ