【非公式】某会社設立記念ゲリラ Advent Calendar 2016 23日目の記事です。
以下、2017年1月1日に書いた内容になります。
新年明けましておめでとうございます。
4つめの記事です。
FlashゲームをUE4で再実装するゲリラアドカレ、EXその4です。
今回はスキル選択後のロジックを実装します。
・注意
許可を取ってないので通常業務の空いた時間を利用して作成するため、作成中のゲーム、及びアドカレは完成保証がなければ、ゲーム自体もリリースされる保証も皆無なので、あんまり期待しないでください。
#スキルダメージロジック
スキルを選択した時のロジックを実装します。
実装するのは
・スキル選択後、攻撃対象を選ぶ
・MPを減らす
・スキルのダメージ処理
です。
MPが足りなければ選択できないなどのチェックは、今回は無視します。
#スキル選択後の処理
スキル選択後、攻撃対象を選ぶ処理を実装します。
イベントディスパッチャーにバインドして、通常攻撃の敵の一覧選択の処理へつなげてしまいます。
選択したスキルのデータは変数に一時的に保存しています。
#MPを減らすロジック
MPを減らすロジックです。
今回はマクロに書いてしまいました。
大分汚くて申し訳ないですが、単純にスキルのデータベースに設定した消費MPから、スキルを選択したキャラクターのMPから減らしただけです。
#スキルのダメージ処理
まず敵選択後の処理を、スキルの攻撃力ステータスと、MPを消費するマクロに繋げます。
続いて以前通常攻撃で繋げていたスイッチの所にスキル攻撃の関数を作成して繋げます。
スキル攻撃の関数です。
ほぼ通常攻撃のロジックと一緒になります。
続いてスキルのダメージ処理を実装します。
スキルのデータに基礎攻撃力の値を設定したので、それをキャラクターのスキル攻撃力値に加え、攻撃対象のスキル防御力値で引いてダメージ値を決める、という単純な処理にしています。
#攻撃スキルでダメージを与えられるようになった
一番左のキャラのスキルを選択後、MPが減っています。
これでスキルのロジックもほぼ実装出来たも同然です。