ネリスさん備忘録

主にUE4の備忘録を残すよ!

【UE4】ぷちコン14ゲームジャムの作業【プログラム編】

lunanelis.hatenablog.com

コレの続きです。

ゲームジャムでは主に2日目の内容となります。

 

なお基本的な設計思想ですが、
ゲームジャムは時間が限られているため
凝ったゲームシステムを殴り捨てて演出に極振りすることにしています。

もちろんゲームを正常にループさせ、繰り返し遊べるようにします。

 

 

目次

 Widgetでタイトルを作成し組み込む

Widgetを作成しテキスト2個を置き、
片方はタイトル、もう片方はPressAnyKeyといった入力を促す文字列を入れます
また、入力を促す文字列は明滅アニメーションをさせておきます。

f:id:LunaNelis:20200814014819p:plain

そして、「何かを入力した時」にPressAnyKeyのテキストが押されたというアニメーションを再生し、再生が終わったらイベントを発行し通知します。

f:id:LunaNelis:20200814015927p:plain


これによって、タイトルの役目が終わったタイミングがわかるようになり
そのタイミングでゲーム本編に移ることができます。

 

ゲームモードとレベルを作成する

レベルはゲームモードを切り替えるためのものとして使います。

TitleLevel
GameMainLevel

どちらも子レベルとしてランドスケープ用レベルと小物配置用レベルを持ちます。
(アート編参照)

今回はタイトルとゲーム本編を行き来するだけなので、この2つがあればOKです。
TitleGameMode
・タイトル用シーケンサをループ再生し、タイトルWidgetを表示する。
 Widgetが終了イベントを呼び出したらOpenLevelでGameMainLevelへ移動します。

MainGameMode
・ゲーム本編を一通り管理する。
・ここで言うゲーム本編とは、
 導入茶番→ゲームのプレイ→終了演出→タイトルに戻る
 を1セットとする流れのことを言います。

ゲームの導入シーンを作成し組み込む

シーケンサを使い茶番を仕込みます。
必須の要素ではありませんが、今回は雰囲気重視なので入れます。
場合によっては必要な地形やオブジェクトを追加する作業が発生します。
BeginPlay

f:id:LunaNelis:20200814025022p:plain

OnFinishedにイベントをバインドすることで、茶番終了後ゲームを開始する処理が実行されるようにします。


ゲーム本編を作成する


今回のゲームはシンプルにボタンを連打するものなので

1.ゲーム本編が開始されたとき
2.何らかのボタンが押されたら
3.カウンターを+1する
4.時間切れとなった場合ゲームの本編を終了する
という処理を実装します。

 

ゲーム本編のUIを作成する

ゲーム中には何回ボタンを押したか、
今のシーンで何をする必要があるかをプレイヤーに伝える必要があります。
そのためのUIを作成します。
要件は入力カウンターと催促する文字、そしてタイマー
外部からボタンの入力回数を設定する関数も作ります。

f:id:LunaNelis:20200814030142p:plain

入力数が増えるたびに徐々に赤くなるという小さいネタもここに仕込んでいます。

ゲームの終了シーンを作成し組み込む

これはゲームの導入シーンと同様の作成・組み込みとなります。
ゲームとしてはゲーム本編中の結果によって複数パターン用意するといいでしょう。

ゲームを完了しタイトルに戻す

リザルトが表示されたら、OpenLevelでタイトルに戻り終了です。
コレにて1つのゲームとして完成しました。