今度はGodot4で挑戦
■ Godot3 で以前も マインスイーパーを作成したことがあります。
そしてまた今回、少し装いを新たにマインスイーパーを作成しました。
一度にすべて紹介するのは難しいので、数回に分けての記事になります。
よろしければ最後までお付き合いください。
使用素材
まずは使用素材の紹介
・黒と白のタイル、実は今回のキーはこれです
・目隠し用のスプライト
・ナンバータイル
今回はタイルマップのカスタムデータは使わずもっと楽と思われる方法で番号を取得したいです。
(まあやることは一緒なんですが…)
ノード構成
・main : ゲームの初期化からゲーム中の処理までここで行う
・Tile_map : エディタ上で使用するのは白黒のタイルのみで、ナンバーは基本スクリプトで制御します
・wall & blind container : タイルマップの情報をもとに壁と目隠しを配置、それを格納するコンテナ
・blind : 白いパネルの上に設置して目隠しになるノード、シグナルで連動させてクリックした場所が開くように
またクリックしたときに石の壊れるエフェクトをつけ見栄えをよくします、これらはインスタンスで生成します。
■ その他ノード
・wall : ただの Sprite2D ノード main のスクリプト制御で壁のグラフィックが設置される
以上が基本的なノードの構成になります。
そしてもうお気づきだと思いますが、今回の新しい要素はステージを変形させることが可能になりました。
白いタイルがフロア、黒いタイルを壁と認識させて配列のデータ上でも同様に登録されるようにします、なので
こんなステージや
こんなステージも作成できます
ステージ変形のマインスイーパー…果たして面白いのか未知数ではありましたが、調べるとあるものです。
■ Minesweeper: Collector (steam)
store.steampowered.com
自分の考え付く事は既に誰かが行っててもおかしくはないですが、形にした以上は記事にしたいものです。
次回から本格的にできるだけコードも載せて書けたらと思います。
今回はここまでになります、次回もお付き合いいただけると嬉しいです。