Pixel Game Maker MV

Pixel Game Maker MV

Zbyt mało ocen
初心者が作る2D横スクロールアクションゲーム 最終パート:ミニゲームを完成させる
Autorstwa: PLAYISM
このガイドシリーズでは、「初めての方向けガイド」で基本を学習した段階の初心者(作成者)が初めて2D横スクロールアクションゲームを作っていくガイドになります。
想定しているゲームは、「横スクロール型アクションで、ジャンプの踏み付けで敵を倒すゲーム」です。
この最終パートでは、ゲームの完成に必要なステージクリア、ゲームオーバーの設定を中心にガイドしていきます。
   
Przyznaj nagrodę
Ulubione
Ulubione
Usuń z ulubionych
はじめに
今回のガイドでは、以下の設定を終えて一通りのゲームとしての形を整えることを目的とします。

ゲームオーバー

ステージクリア

次のステージへのつなぎ方

ブロックの設定

以上の設定を行います。
1.ゲームオーバーの設定
①スイッチの設定

ゲームオーバーシーンが表示されるスイッチの設定を行います。

上のタブの素材をクリックし、更にスイッチを選択しましょう。
そして右側のスイッチ一覧で右クリックを押し「スイッチを追加」を押してください。


スイッチ名を分かりやすいように「ゲームオーバー」に設定します。


②アニメーションの設定

次にゲームオーバーシーンのアニメーションの登録を行います。
自分でゲームオーバーシーンの素材を作成された方はそちらを用いてください。
素材が無い方はこちらの素材をご使用ください。





上のタブにある「画像」をクリックしてください。

そして左の画像一覧で右クリックをして「画像を追加」を選び、
ゲームオーバー画面の素材を選択しましょう。


素材の追加が終わったらアニメーションのタブを開き、アニメーション一覧で右クリックを
開き「アニメーションを追加」を選択しましょう。
アニメーション名をゲームオーバーに変更し、「アニメーションの素材の登録」を先ほど追加したゲームオーバーの画像を選択します。画像をアニメーションとして登録するだけで他の設定は行う必要はありません。


③ゲームオーバーのオブジェクトの設定

プレイヤーの体力が0になった時にゲームオーバーのスイッチがオンになる設定を行います。

上のタブで「オブジェクト」のタブを開いた後、
プレイヤーとして設定しているオブジェクトを開いてください。
ここでは前に作成した「猫」のオブジェクトを用いて説明します。

プレイヤーオブジェクト内で「ゲームオーバー」というアクションを作成し
重力の影響を受けないにチェックを入れたあと
「その他の実行アクション」の+をクリックしてください。


その他の実行アクションを開き「スイッチ・変数の変更」にチェックを入れ
「~共通」「単体」「ゲームオーバー」を「ON」に設定しOKを押してください。


次にリンクの作成を行います。
「待機」から「ゲームオーバー」にリンクを作成し
「その他の条件設定」で「体力が0」を選択してください。
キャラクターが落下した際にゲームオーバーに設定した場合や、
オブジェクトに押しつぶされた際にゲームオーバーを表示させたい場合は
「カメラ外の範囲外に出た」や「壁判定に埋まった」などにもチェックを
入れておくと良いでしょう。この時、「and」を「or」に変えて
アクションを切り替える条件で「いずれかの条件が満たされていたら切り替え」に
チェックを入れるのを忘れないでください。


リンクをコピー&ペーストして「ジャンプ」から「ゲームオーバー」、「歩行」から「ゲームオーバー」にも同じ設定のリンクを作成します。



















これでプレイヤーが体力が0になったらゲームオーバースイッチがオンになるように
設定が完了しました。しかしこのままではゲームオーバーシーンの後、
操作ができなくなってしまうのでいずれかのボタンを押したらステージの最初に戻るように設定を行います。

右のオブジェクト一覧で「オブジェクトの追加」を選択し新しいオブジェクトを追加しましょう。オブジェクトの設定をこのように行ってください。


アクションの名前をゲームオーバーに設定し、重力の設定を受けないにチェックをいれましょう。


次にコンティニューという名前ののアクションを追加してください。
モーションはゲームオーバーで構いません。
こちらも重力の影響を受けないにチェックをいれます。


その他の実行アクションを開き、スイッチ・変数を変更にチェックをいれましょう。
そしてスイッチを変更の設定を「~共通」「単体」「ゲームオーバー」を「OFF」に
設定しOKを押します。


次にリンクを追加しましょう。
ゲームオーバーからコンティニューにリンクを作成し、
「以下の入力操作がされたとき」にチェックを入れ、
[Aが押された瞬間]or[Bが押された瞬間]or[Xが押された瞬間]or[Yが押された瞬間]に設定しましょう。andではなくorにしっかり設定してください。


これでいずれかのボタンを押すとゲームオーバースイッチがOFFになるように設定が完了しました。


④ゲームオーバーシーンの作成

上のタブにある「シーン」を選択してください。
シーン一覧を右クリックしてシーンの追加を選択します。
シーン名は「ゲームオーバー」に設定、その他は何も設定する必要はありません。


オブジェクトからゲームオーバーを選択して画面の中心に設置してください。


この後、遷移の設定というものを行わなければいけませんが、先にステージクリアした際の設定をしてまとめてやってしまいましょう。
2.ステージクリア
①素材の設定

次にステージクリアの設定を行いましょう。
ステージクリアもゲームオーバーと同様に特定の条件を満たしたら
「ステージクリア」というスイッチをオンにするように設定します。
今回はステージクリアの条件となる「ゴール」を作成します。

まずはゲームオーバーと同様にステージクリアの際に表示させる
画面の登録を行いましょう。

素材がない方はこちらの画像を使用してください。





「素材」→「画像」→「画像一覧」→右クリック「画像を追加」で素材を選択
分かりやすいように名前をステージクリアに変更しておきましょう。


背景を設定しないと黒色のままになってしまいます。
今回設定したゲームクリアの字は黒色なのでこのままでは背景にかぶって見えなくなってしまいます。せっかくなので今回は背景も素材として設定しましょう。
素材はこちらをお使いください。


「ステージクリア」を追加した時と同じように右クリックで「画像を追加」をクリックし
背景素材を選択しましょう。


②スイッチの設定

スイッチの設定も行いましょう。
「スイッチ」→スイッチ一覧の余白で右クリックを押し「スイッチを追加」を選択→「ステージクリア」という名前のスイッチを作成しましょう。


同じく変数の設定も行います。
上のタブから変数を選び変数一覧で「変数を追加」を選択。
変数名をステージクリアにしましょう。


アニメーションの登録も行いましょう。
「アニメーション」→「アニメーション一覧」→右クリックで「アニメーションを追加」
→「アニメーションの素材を登録」で先ほど登録した「ステージクリア」を選択→アニメーションの名前を「ステージクリア」に設定します。


これでアニメーションの設定は完了です。

③オブジェクトの設定

上のタブからオブジェクトを選択し、「ステージクリア」というオブジェクトを作成してください。
アニメーション選択は「ステージクリア」を選択し、オブジェクトの種類はプレイヤーに設定。
判定やオプションはゲームオーバーの設定と同じく全てチェックを外しておきます。


アクションが作成されたら名前を「クリア前」に変更し、モーションを「設定しない」にしましょう。そして重力の影響をうけないにチェックを入れます。


その他の実行アクションは「スイッチ・変数を変更」にチェックを入れ、「スイッチを変更」を選択してください。そして「~共通」「単体」「ステージクリア」を「OFF」に
設定します。


これでプレイヤーがゴールにたどり着く前のアクションが完成しました。

次に「クリア後」というアクションを作成してください。
モーションは先ほど作ったステージクリアを使用します。
こちらも重力の影響を受けないにチェックをいれましょう。


「その他の実行アクション」は「スイッチ・変数を変更」にチェックをいれ
「変数を変更」を選択します。
「~共通」「単体」「ステージクリア」「+=」「1.00」と設定します。

この処理を各ステージに入れることで、ステージクリア変数の数から現在のステージ数を判断できるようになります。「+=」は指定した数字を変数に足す処理です。
「=」は同じ数字を入れる、「-=」指定した数字から変数を引くということになります。


次に「クリア前」→「クリア後」にリンクを作成します。
「その他の条件設定」で「スイッチ・変数が変化」にチェックを入れてください。
「スイッチを条件に設定」を選択肢し「~共通」「単体」「ステージクリア」が「ON」に設定します。


「クリア後」→「クリア前」にもリンクを作成しましょう。
「その他の条件設定」で「一定時間が経過」を選択し、経過を「0.5」秒に
設定します。


これでオブジェクトの設定が完了しました。



④ゴールタイルの設定

次はゴールとして設定するタイルを選びましょう。
素材がない方はサンプルゲームの「CROSS×CARROT ~4人バトルサンプルゲーム~」の
タイルから「Stage_01」をエクスポートしたあと、インポートしましょう。


タイルをインポートした際、このようにタイルの分割が上手くいっていない場合があります。














こういう場合は画面の右上にある歯車マークをクリックしましょう。
そして「タイルサイズ」という項目があります。
その名の通りこちらの比率を変更するとタイルの大きさを変えることができます。
今回は24×24になっていたのでサイズを16×16に変更してOKを押しましょう。



ちょうど良いサイズになりましたね。

それではタイルの設定を行っていきましょう。
このタイルは「通常タイル」となっており、今のままでは細かい設定が
できないのでこれを「ギミックタイル」というものに変更します。

素材として使うタイル名(このガイドではStage_01)の上で右クリックで押し
タイルの設定を開きましょう。


タイルの設定を開いたら、タイルの種類をギミックタイルに設定しOKを押しましょう。





























これでタイルの設定を行えるようになりました。

今回はこちらの赤枠で囲ってあるポールをゴールとして設定します。











ゴールとして設定するオブジェクトを選択したら
ギミック設定をクリックしましょう。

変更の条件を「オブジェクトがタイルに重なったら」に設定し、
オブジェクトの種類をプレイヤーグループにだけチェックをいれます。


次に下の方にある「スイッチ、変数を変更」にチェックを入れて+を押してください。
この時「スイッチ、変数の条件で変更」という似たような項目がありますが
こちらと間違わないようにしましょう。


スイッチ・変数を変更の設定画面を開いたら
スイッチを変更を選択し
「~共通」「単体」「ステージクリア」を「ON」に設定しOKを押してください。


これでこのタイルにプレイヤーが触れるとステージクリアのスイッチがONになるように設定されました。

⑤シーンの設定

マップを作成していきます。
上のタブの「シーン」を選択してシーン一覧で右クリックを押し「シーンを追加」を選択してください。


シーンの設定を開いたらタイルセットを先ほど設定したタイルに設定しましょう。
背景画面は先ほど素材として登録した背景を設定します。
そしてOKを押します。


さて、ではマップの設定をしていきましょう。
今回からはスタートポイントの設定をしていきます。

これを行ってプレイヤーオブジェクトを配置しないと不具合が発生する
場合があります。

画面の右上の歯車をクリックしましょう。
そしてプレイヤーキャラクター管理を選択し、1Pキャラクターの下の「+」を
クリックしてください。

オブジェクト登録画面が表示されたら操作したいプレイヤーオブジェクトを選択します。

最後にOKを押しましょう。


これでスタートポイントの設定が終わりました。

あとは簡単な床タイルを敷いてゴールタイルを設置した後、
「シーン」→「オブジェクト」→「オブジェクト一覧」のスタートポイントを
マップのプレイヤー初期位置として配置したい場所にドラッグしましょう。


最後にゲームクリアのオブジェクトを配置します。

オブジェクト一覧のステージクリアを
ステージの真ん中あたりにドラッグして設置しましょう。


これでゴールの設定が完了しました。
早速F5キーを押してテストプレイしてみましょう。




















このようにゴールとして設定したオブジェクトに触れて「stage clear」と
表示されたら成功です。
3.シーンのつなぎ方、遷移の設定
せっかくなのでステージクリア後の設定もおこないましょう。
シーンを追加してステージ2を適当に作成してみてください。


さて、ではただいま作成したステージと最初に作成したゲームオーバーシーンをつなぎあわせてみましょう。

上のタブの「遷移」を選択し、先ほど作成したステージ2とゲームオーバーのシーンを
シーン一覧から方眼状のスペースにドラッグしましょう。


シーン1からシーン2にリンクを作成します。

入力に関する条件設定はデフォルトでチェックが入ってしまっているので
こちらは全て外しておきましょう。

そして「その他の条件設定」の「スイッチ、変数が変化」にチェックを入れ
「スイッチを条件に設定」を「~共通」「単体」「ステージクリア」が「OFF」に設定します。


さらに「スイッチ、変数が変化」をもう一つ追加します。
今度は「変数を条件に設定」を「~共通」「単体」「ステージクリア」「=」「1.00」
に設定しましょう。


条件を二つ以上に設定したので「全ての条件が満たされていたら切り替え」に
チェックをいれておきましょう。






これでステージ1をクリアするとステージ2に切り替わるように設定が完了しました。

次にステージ1からゲームオーバーにリンクを作成します。

こちらも入力に関する条件設定はデフォルトでチェックが入ってしまっているので
全て外しておきましょう。

「その他の条件設定」で「スイッチ、変数が変化」にチェックを入れ、「+」を押してください。

そして「スイッチを条件に設定」を「~共通」「単体」「ゲームオーバー」が「ON」に設定します。


ゲームオーバーからシーン1へのリンクも作成しましょう。
入力条件に関するチェックを外し、こちらの「その他の条件設定」では
「~共通」「単体」「ゲームオーバー」が「OFF」に設定してください。


これでステージ1でプレイヤーの体力が0になると
ゲームオーバーになるようになりました。

そしてゲームオーバーシーンでA.B.X.Y.のいずれかのボタンを押すと
シーン1のスタートポイントに戻るように設定しました。

同様にステージ2でも設定を行っていきましょう。

シーン2からゲームオーバーの間にリンクを作成します。
ここのリンクはシーン1からゲームオーバーのリンクと設定が同じなので
コピー&ペーストで結構です。


次にゲームオーバーからシーン2へのリンクを作成します。
こちらもゲームオーバーからシーン1へのリンクをコピー&ペーストしたもので構いません。

ただし、こちらはコンティニューした際にステージ2から復活するように設定を加えます。
「その他の条件設定」で「+」を押し、
「変数を条件に設定」を「~共通」「単体」「ステージクリア」「=」「1.00」に設定してください。

また条件を二つ以上に設定したので「全ての条件が満たされていたら切り替え」に
チェックをいれておきましょう。


これでステージクリアの設定とゲームオーバーの設定が全て完了しました!
4. スイッチとタイル設定の応用
①タイルの設定

せっかくなので今回説明したスイッチ設定とタイル設定を混ぜ合わせた応用をしてみましょう。

応用編では条件を満たすと見た目が変化するタイルを作成します。

まずは上のタブの「タイル」を選択してください。

今回は叩いたら消えるブロックを作成するので、それらしいレンガの
ブロックのオブジェクトを選びます。

タイルを選択したら壁判定を「全て壁」に設定してください。


次に「ギミック設定」を選択します。
変更の条件を「タイルに当たる攻撃判定が触れたら」にチェックをいれてください。
オブジェクトの種類をプレイヤーグループに設定し、変更後の状態を
「タイルを消滅させる」に設定しましょう。


これでタイルに攻撃判定が触れたら消滅するように設定が完了しました。

②攻撃判定の設定

次にプレイヤーのオブジェクトに壁に当たる攻撃のオブジェクトを
接続します。

まずは攻撃判定の作成をしましょう。
普通にキャラクターの頭上に攻撃判定を設定しただけでは他のエネミーにも
攻撃ができてしまうのでタイルだけを攻撃するモーションを作成します。

アニメーションを開いて操作するプレイヤー(このガイドでは「★★player」)で
「ブロック破壊」という名前のモーションを作成してください。


次に攻撃判定以外の全ての判定を消した後、
攻撃判定をプレイヤーの頭あたりに設置しましょう。


最後にフレームに表示する画像を何も設定されていない画像を選択しましょう。


最後にジャンプ中のキャラクターのモーションの頭上に接続点を設置します。


反対側のフレームも忘れず設定しておきましょう。
これでアニメーションの設定は完了です。

③オブジェクトの設定

「オブジェクト」で「ブロック破壊」という名前のオブジェクトを作成してください。
オブジェクトの設定はアニメーションの設定は「★★player」を選択。
「タイルの壁判定と衝突する」にのみチェックをいれます。


モーションは先ほどアニメーションで登録した「ブロック破壊」を選択しましょう。
アクションの名前も「ブロック破壊」にしておきます。


その他の条件設定は「攻撃の設定」を選択し、「タイルに当たる攻撃判定にする」にのみ
チェックをいれてOKを押しましょう。


これでタイルだけを攻撃するアクションが完成しました。


④オブジェクトの接続

プレイヤーオブジェクトを選択した後、右上の歯車マークをクリックしてください。

オブジェクト設定項目の追加の画面が開かれたら
「オブジェクトを接続する」にチェックをいれてください。


「オブジェクトの接続」が追加されました。

これを開く前にまずは「スイッチ管理」を開きましょう。

「ブロック破壊」という名前のスイッチを作成しておきます。
この時、初期値にチェックを入れておきましょう。
これによりゲーム開始時からスイッチがオンになった状態となります。


それでは先ほど追加した「オブジェクトの接続」を開いてみましょう。
基本設定の名前を「ブロック破壊」。
接続するオブジェクトを先ほど作成したオブジェクトの「ブロック破壊」に設定。
このオブジェクトのスイッチを先ほどスイッチ管理で追加した「ブロック破壊」に設定。
接続点を使用で「接続点」を選択しましょう。
オプションの「このオブジェクトの子オブジェクトとする」にチェックをいれます。


これで設定がオブジェクトの接続が完了しました。
5. テストプレイ
それでは先ほど設定した壊せるブロックをステージに設置して早速テストプレイを
行ってみましょう!

またゲームオーバーの確認も行うため攻撃判定を持った
エネミーの設置もしておきましょう。


それではF5キーを押してテストプレイを行なってみてください。





































ブロックの破壊、ゲームオーバー、ステージ2への以降
上手くいったでしょうか。

これで初心者が作る2D横スクロールアクションゲーム編の説明は全て終了となります。

お疲れ様でした。

Special Thanks: あいあんとべあ 様
おまけ
「タイル」で!マークが書かれたブロックを選択してみてください。
ギミック設定で「タイルにあたる攻撃判定に触れたら」にチェックを入れます。
変更後の状態を「タイルを変更する」にして、茶色のブロックを選択します。
「オブジェクトが出現する」にチェックをいれ、
前のガイドで作成したキノコのオブジェクトを選択しましょう。


そして、この「!ブロック」のタイルを設置してテストプレイでたたいて見ると…



















このようにブロックからキノコを出現させることができます。

他にもブロックの上を通ったら消えるブロックや、滑りやすいブロックなど
タイルの設定次第で様々なギミックのブロックを作成することができます。

いろいろと試してみると面白いでしょう。