見出し画像

ダンジョンでお花摘みさせて!!"Stateパターンを用いたモンスター開発" #20

こんにちは。やーぺです。

 こちらは「ダンジョンでお花摘みなんか許しません!!」の二次創作、「ダンジョンでお花摘みさせて!」のスコアアタックゲーム開発記録です。(フリーウェア公開予定)

原作はこちら

体験版も公開中です。(Booth以外のアップロード先も検討中)

今週はタイルマップの種類とBGMの追加、そして敵キャラの追加をしていました。

今回追加した敵キャラはこちら

さまよう弓矢です。こちらの敵キャラ、いままでのモンスターと違ってちゃんと開発をしないと詰むタイプでした。

今までの敵キャラ(エルフちゃん含む)はプレイヤーを追いかけるコードで実行されていたのですが、今回のさまよう弓矢は「プレイヤーが真正面にいる場合に矢を放つ」という行動になるためしっかり作る必要がありました。

ここで思いついたのがプレイヤー操作に組み込まれたStateパターンです。

幸い、GodotのチュートリアルでStateパターンの説明がありましたので似たような仕組みを作っていきました。(下記チュートリアルURL)

Stateとは状態という意味で、状態を遷移する仕組みがStateパターンです。

プレイヤーであれば「待機」状態時に↑キーが押されれば「移動」に遷移する。これがさまよう弓矢であれば「待機」から敵発見時に「移動」、さらに「移動」から正面にプレイヤーがいるときに「射出」に変わります。

・・・実際に見たほうが早いかもしれませんね。

こちらがその動画です。

待機から移動、移動から射出、射出から待機 という状態変化がわかると思います。

・・・ただまだ少し納得がいっていない部分があります。矢を発射する瞬間です。

映画 & テレビ 2021_01_23 16_07_49

初期の矢の画像が「上向きの画像」なのですが、いくらタイミングを調節しても表示されてしまうのです。上の①の画像が一瞬移ってしまうのがどうしても気になる・・・。自分でもプレイしてて気になってしまうのでなんとしても解決したいですね。

・・・来週までに解決しておきます!!

今週はここまで!
やっぱり新しいシステムを作るとなると時間がかかります。解説もシステムよりになっちゃうので何が起きてるかわかりずらいですね。ぐぬぬ・・・何か面白い解説ができればいいですね・・・。

この記事が気に入ったらサポートをしてみませんか?