今回ご紹介するのは、同じ床を2回踏むとプレイヤーが落下する仕掛けの作り方です。
仕組みとしては、1回踏むと床に亀裂が入り、2回踏むと穴があいてプレイヤーが落ちる、というもの。
ダンジョンギミックとしてはわりと定番でしょうか。
※音量にご注意ください。また、動画では若干の音ズレが発生しています。実際のプレイ時は、プレイヤーの移動と同時にSEが演奏されます。
ギミックを仕込む床すべてにイベントを敷き詰める必要があるため、スイッチを大量に使います。
セルフスイッチが使えれば楽なんですが、ツクールのデフォルトの機能ではセルフスイッチを別イベントから操作することができないため、今回はスイッチを使用します。
説明では以下のマップをサンプルとして使っていきます。青いタイルの部分がギミック床となります。
では、早速イベントを作成していきましょう。なお、本イベント内でスクリプトやプラグインは一切使いません。
使用スイッチ
名前 | 用途 | |
---|---|---|
1 | パズル失敗 | 同じ床を二度踏んだ際の処理実行 |
2 | パズル1‐1 | プレイヤーが床1を踏む(一度目) |
3 | パズル1‐2 | プレイヤーが床1を踏む(二度目) |
︙ | ︙ | ︙ |
30 | パズル15‐1 | プレイヤーが床15を踏む(一度目) |
31 | パズル15‐2 | プレイヤーが床15を踏む(二度目) |
ギミックを仕込む床ひとつにつき、2個のスイッチを使用します。
崩れる床のイベント
青いマップタイルの上にイベントを作成します。
1ページ目を用意
実行内容 ◆SEの演奏:Damage3 (100, 150, 0) ◆スイッチの操作:#0002 パズル1-1 = ON
[トリガー]を「プレイヤーから接触」にします。
[実行内容]には、亀裂が入ったことをプレイヤーに伝わりやすくするため、[SEの演奏]を入れて音を鳴らします。
次に[スイッチの操作]を設定し、スイッチをONにします。
2ページ目を設定(亀裂が入る)
実行内容 ◆SEの演奏:Earth1 (90, 100, 0) ◆スイッチの操作:#0003 パズル1-2 = ON ◆スイッチの操作:#0001 パズル失敗 = ON
イベントの1ページ目でONにしたスイッチを、出現条件に設定。
[画像]で亀裂を作成(今回はダンジョンタイルセットのDungeon_Bにある亀裂を使用)、[トリガー]を「プレイヤーから接触」にします。
タイルセットをイベントの画像に使用した場合、タイルセットの通行設定がそのままイベントにも適用されます。亀裂のマップタイルは通行ができない設定なので、[すり抜け]にチェックを入れ、プレイヤーが通行できるようにします。
[実行内容]で、 床が崩れたときの音を[SEの演奏]で表現します。
次に、1ページ目で設定したスイッチとは別のスイッチをONにします。この出現条件用のスイッチがONになることで、イベントの3ページ目(穴があく)が表示されるようになります。
さらに、床が崩れたことを記録に残しておくためのスイッチもONにします。
3ページ目を設定(穴があく)
イベント2ページ目でONにした、出現条件用のスイッチ(床が崩れたことを記録したスイッチでないことに注意!)を、出現条件に設定します。
穴のグラフィックを表示させるためだけのイベントページなので、実行内容にはなにもいれません。
これで、床イベントの設定は終了です。
イベントをコピー&ペーストして床に敷き詰める
床イベントをひとつ作ったら、次はギミックを仕込む床すべてにイベントを置いていきます。作成したイベントを右クリックし、[コピー]を選択。
すべての青いタイルの上に、コピーしたイベントを貼り付けていきます。
ただし、そのままイベントをコピペしただけだと、イベントページの出現条件のスイッチがすべて同じになっているため、 ひとつの床のスイッチが入るとすべての床のイベントで2ページ目以降が表示されてしまいます。
そこで、貼り付けたイベントのスイッチを新しいものに置き換えましょう。
具体的には、1ページ目の[実行内容]、2ページ目の[出現条件 ] [実行内容]、3ページ目の[出現条件]でそれぞれ設定、操作するスイッチを、コピー元のイベントとは別のスイッチに変えていきます(イベント2ページ目の、床が崩れたことを記録したスイッチだけは変えない点に注意!)
このスイッチの変更を、貼り付けたイベントすべてで行っていきます。
今回作成したマップでは青いタイルが15マスあるので、イベントは15個、使用する出現条件用スイッチは30個になります。
床が崩れた際の自動実行イベント
実行内容 ◆ウェイト:60フレーム ◆SEの演奏:Fall (90, 100, 0) ◆画面のフェードアウト ◆スイッチの操作:#0001..0031 = OFF ◆場所移動:二回踏むと崩れる床 (8,4) (向き: 下) ◆画面のフェードイン
最後に、プレイヤーが同じ床を2度踏み、床が崩れたときの処理を設定します。
プレイヤーが歩けないところにイベントを新規作成しましょう。
[出現条件]に、床が崩れたことを記録したスイッチ(今回はスイッチ1)を設定。[トリガー]は[自動実行]。
[実行内容]では、床が崩れたときに実行されるイベント内容を設定します。
床イベントで使用したすべてのスイッチ(出現条件用スイッチ30個+床が崩れたときの記録用スイッチ1個)をOFFにしてください。こうすることで、すべての床が亀裂の入っていない状態に戻ります。
[スイッチの操作]では範囲設定が可能なので、ギミックに用いるスイッチはなるべく連番になっていたほうが便利です。
[ウェイト]や[SEの演奏]の有無はお好みで。
[場所移動]の移動先は、プレイヤーが穴に落ちたあとに移動させたいマップを選択しましょう。今回は、ギミック部屋の入り口に戻るように設定しました。
仕掛けの初期化
マップを切り替えた際、ギミックが初期状態に戻るようにしたい場合は、追加でイベントを作成します。
このイベントも、プレイヤーが歩けないところに新規作成すれば問題ありません。
実行内容 ◆スイッチの操作:#0001..0031 = OFF ◆イベントの一時消去
[トリガー]は[自動実行]。
[実行内容]で、ギミックに使ったすべてのスイッチをOFFにします。
最後に[イベントの一時消去]を入れるのを忘れないようにしましょう。入れ忘れると、イベントが自動で実行され続け、プレイヤーの操作を受け付けなくなってしまいます。ご注意ください。
以下の画像は、すべてのイベントを作成し終えたときのマップとなります。
左上にぽつんと置いてある2つのイベントは、「 床が崩れた際の自動実行イベント 」と「 仕掛けの初期化イベント 」です。
今回は床のギミックのみ作りましたが、このイベントをうまく応用すれば、青いタイルをすべて踏まなければ先に進めない、といった一筆書きのようなギミックも作成可能です。
詳細は省きますが、床のイベントの1ページ目が実行されるたびに変数が1ずつ加算されるようにすれば、プレイヤーが青いタイルをいくつ通ったかが把握できます。
ぜひいろいろと試してみてください。
それでは、よいツクールライフを!
コメント