ぷよゲーの作り方入門 うでぃおふ 11th サカモトトマト Push key F5 Enter で 次のページへ
はじめに 自己紹介 サカモトトマトといいます. 英語は Sakamoto Tomate 公開作品10本 詳しくはQRコードをどうぞ
今回の目標 ぷよゲーで,同じ色がN個以上つながっているかどうかを判定したい
前提知識
スタックとは B A B B A 先に入れたアイテムを最後に取り出すような線形構造 次の操作が可能 スタックが空かどうか調べる スタックが満杯かどうか調べる スタックに要素Xを入れる スタックから要素を取り出す B B A
Depth First Search (DFS):ダンジョンを例に 3 4 6 7 2 5 スタック ウディタでは 「再帰」が使えないので スタックを利用して DFSを実装する! 1 この探索法を利用して 「3個つながっているか」の 判定を行う 7 6 4 3 5 2 1 帰還
本題
消去判定 経過したPたちを 覚えておくことも 重要 接触数を0にする. ダンジョンの分岐を 進む動作にあたる 接触数を0にする. ブロックが存在し,「フラグ」が ONになっていないマスを選び,スタックに入れる. スタックから取出し,そのマスPの「フラグ」をONにする. 「接触数」を+1する. Pに,上下左右に隣接するマス: ブロックが存在する Pのブロックと同じ色である それぞれをスタックに入れる,3.に戻る. もし,スタックが空であれば終了.接触数がN以上なら,消去する. ダンジョンの 探検スポットを挙げる 動作にあたる 経過したPたちを 覚えておくことも 重要
まとめ ぷよぷよのように「同じ色がN個つながっているか」の判定は DFSを利用することで実装可能.