-
2016/05/13
週刊ツクール vol.18
週刊ツクール第18弾では、あなたのゲームにスイッチパズルを導入!
バックナンバーはこちらから。
更新はtwitterでもお知らせしていきますので、是非フォローお願いします。正しい順序で扉が開く、パズルを実装
前号に続き、MVのテクニックを伝授するこのコーナー(?)!
今週は『順番に押すことで何かが起こるスイッチ』の仕組みを作ってみたいと思います。赤・黄・緑・青のレバーと閉ざされた扉・・・
RPGプレイヤーには、あらゆるゲームで馴染み深いこの仕組み。
まずは整理のため、どんな情報が必要か書き出してみることにします。
例として4つのスイッチを用いたパズルを作る場合、下記のような情報が必要になります。- ①いくつのスイッチが起動しているか?の判断
- ②スイッチが起動しているか?の判断
- ③どの順番で起動したか?の判断
- ④パズルは完成しているか?の判断
変数とスイッチを設定
④は、『オン』か『オフ』だけの非常に単純な判断になりますので、
まずは③から設定を始めて、①まで戻っていくことにしましょう!③の”順番”の部分は変数として扱います。
0,1,2,3の数字を、スイッチがオンになっていく度に格納していくことになります。②についてはセルフスイッチを使うこともできますが、必須ではありません。
今回はその代わりに、変数を使います。
変数=0はスイッチがオフであることを表し、1~4はオンになった順番を表します。最後に、4つのスイッチがすべてオンになったタイミングを知らせる方法が必要です。
技術的には、スイッチをそれぞれチェックして変数=0かどうか確認することもできますが、
それぞれ個別の変数で設定したほうが容易でしょう。こうして変数とスイッチは下記のようになります。
これがもっとも簡単な方法です
スイッチイベントの設定
ではまずは最初のスイッチイベントから設定していきます。
ここでは説明のために、音楽やエフェクトは意図的に入れないようにしています。今回このイベントにしてもらいたい項目を書き出すと、下記のようになるでしょう。
- 1. 変数を1増加させ、1つのスイッチがオンになったことを示す
- 2. 順番の変数に、スイッチがオンになった順番を記録する
- 3. すべてのスイッチがオンになっていることをチェックする
- 1. そうである場合、順番が正しいかをチェック
- 1. 正しい⇒ドアを開ける
- 2. 誤り⇒部屋全体をリセットする
- 2. そうでない場合、何もしない
最初の1つ目は簡単で、変数を1追加するだけのアクションでOKです。
2番目もまた簡単ですが、ここで個別の変数を設定した理由がわかることでしょう。
『変数の操作』で、適切な順番の変数をカウント変数に設定します。3番目は何階層かになっていますが、まずは『条件分岐:Count=4』を設定し
すべてのスイッチがオンになっていないかを確かめます。
それから階層下の個別の変数をチェックし、正しい番号であるか確認します。
正しければ、『扉を開く』スイッチをオンにします。次に、それ以外の階層の中身を作っていきますが、 すべて1つ1つ作っていくのは効率的ではありません。
別の分岐を階層下に入れる場合でも、『条件分岐:Count=4』の下に入れるようにしてください。
プレイヤーが順序を間違えた場合は、変数を0に戻すことでパズルをリセットさせます。順序が正しければ『扉を開く』をONに。
この時点で『扉を開く』がOFFであれば失敗と判断してリセットを行う。最初は変数の +1 を行い、更にスイッチの順序に変数を代入します。
そしてすべてのスイッチがオンになったら(=4)、その順序をチェックし扉を開けます。
もしすべてのスイッチがオンになっているにも関わらず、
扉が開いていなかったら(=失敗)パズルをリセットします。仕上げ
最後に別ページで、変数が1以上の時にスイッチの画像を入れ替える設定をしたり、
『扉を開く』がONになっている時に、ゲーム内のドアを開けるというような設定をします。
同じ実行内容をほかのスイッチ上にもコピペし、異なる点を適切な値に変更します。(色など)もちろん、音を付けたり、視覚的なエフェクトを付けることもできます!
こちらのデモバージョンでは、音やエフェクト付きで内容を確認することができますので
参考にしてみてください♪報酬はちゃんと用意しようね!
今週の無料素材
脳みそ丸見えの侵略者
今週の無料素材は、グロかわ宇宙人素材!
SVアクターや武器も入っていますので、力強い味方としても大活躍でしょう。
ダウンロードはこちらから。
それではみなさん、良い週末を~!
戻る