2019/7/4監督スクリプトを記述しようこのページでは、前回に引き続き、ゲームの監督スクリプトを記述していきます。監督スクリプトの主なお仕事は以下のような感じでしたね。数球の状況によって、次の番が自分かCPUかを決定する前回までで自ターン、CPUターン時の動きについて、スクリプト化完了しました。今回は最後に、発射後の待ち時間や次の番が自分かCPUかを決定するスクリプトを書いていきましょう!これも結構話盛り沢山なので、2ページに分けて説明していきます!スクリプトを書こう4-1(発射後の待ち、次の番判定)今回はUpdateメソッド中の、waittime=1、つまり待ち時間中の処理を書いていきます。この変数にピンと来ていない方は、制作手順2-2のページ前半で、Updateメソッドの全容を紹介していますので、まずはそちらをご確認下さい。_)m待ち時間、次の番判定の処理について(概要)待ち時間中は、とりあえず台上全ての球が停止するのを見守ります。全ての球が止まったら、待ち時間中に起こったイベントによって、次の番が自分かCPUかを決定します。スクリプトを書く前に、まずはどのイベントが起こると次の番はどうなるかについて一旦整理しておきます。ビリヤードご存知の方もそうでない方も、ここはややこしい所ですので落ち着いて整理していきましょう。1手球がポケットに入った場合→ファールで次は相手の番(もし9番球がポケットに入った場合、9番球は復活する)2手球がどの数球とも当たっていない場合→ファールで次は相手の番3手球が最初に最小番号の数球に当たっていない場合→ファールで次は相手の番(もし9番球がポケットに入った場合、9番球は復活する)41~3に該当せず、かつ数球が台上から一つも減ってない場合→ファールでは無いが、次は相手の番51~3に該当せず、数球が一つ以上台上から減った場合→次は再度自分の番(もし9番球がポケットに入った場合、入れた人がその時点で勝利)なお、「ファールで次は相手の番」となった場合、相手は手球を自由な位置に配置出来ます(要するにcanmove=0)。以上のような場合分けをする必要があります。これをスクリプトにざっくり書くと、とりあえず以下のようになります。場合分けが多いので、どうしても概要だけでも長いスクリプトになってしまいますが...。(9番球が消滅した場合){//【要追加】39番球復活}}}}}既に長いスクリプトになっていますが...、まずは↑のような大まかな流れを理解して下さい。次に細かなスクリプトを挿入していきます。コメント行の最初に【要追加】と書いてある行には、その後書いてあるような内容のスクリプトを追加する必要があります。↑のスクリプト中には、if文の条件部分が日本語で書いてある所が多くあり、これもスクリプト化する必要がありますね。これらのスクリプトについては次回説明します。その前に、以下では手球・数球スクリプトと相互作用するメソッドについて先に解説しておきます。何で!?と思われるかもしれませんが、これらのメソッドを理解しておくことで、次回の説明が非常に楽になるからです!急がば回れ、という感じになりますが、お付き合い願います。_)m手球・数球スクリプトと相互作用するメソッドについて手球・数球スクリプトの解説は制作手順3のページで行います。実は、上で概要を書きました、監督スクリプト中の待ち時間、次の番判定の処理部分については、手球・数球スクリプトの挙動と大きく関わりがあります。以下では、手球・数球スクリプトから呼び出される監督スクリプト内のメソッドを解説しておきます。いずれのメソッドも仕組みは凄く単純ですが、凄く重要な役割を果たしています。手球・数球スクリプト側から解説した制作手順3のページと併せて以下を読んで頂くと、理解が早まると思います!ちなみにこの後、2種類の動的配列が登場します。今回と次回、これらの動的配列が大活躍していきますが、動的配列???という方は一旦こちらのページに別途纏めましたので併せて参考にして下さい。_)m手球消失をお知らせするメソッド手球が消滅した場合、手球スクリプトから呼び出されるメソッドです。中身としては、監督スクリプト側で手球消滅したことを記憶しておくだけになります。このメソッドのお陰で、上で概要を書いた次の番判定スクリプト中でのif(手球残っている場合)が簡単に書けます(詳細は次回説明します!)。false;}手球と当たった数球番号をメモしておくメソッド手球と数球が当たった時に、当たった数球の番号を当たった順に監督スクリプト内にメモしておくメソッドになります。いう動的配列(本配列は、手球発射前に中身がリセットされます...制作手順2-3前半参照)に番号をメモします。(最初に最小番号の数球に当たっていない場合)が簡単に書けます(詳細は次回説明します!)。9}でして、下で示すメソッドを通じて、各数球が消滅した際、その数球の番号を動的配列remaininglistから除外していきます。よって、以前からの説明の通り、本配列は台上に残っている数球の番号リストになる、という訳です!動的配列remaininglistの利用価値は非常に高く、これまで制作手順2-2、2-3、2-4中でも何度も登場してきましたね。(数球が一つも減ってない場合)が簡単に書けるようになります(詳細は次回説明します!)。除外番号が9の場合は特殊な措置が必要なため、del9ballというbool型変数にそのことをメモしておきます。(9番球が消滅した場合)が簡単に書けます(詳細は次回説明します!)。true;}最後に今回は、待ち時間、次の番判定の処理について、Updateメソッド中にスクリプトの概要を書いていきました。手球・数球スクリプトから呼び出される監督スクリプト内のメソッドを3つ紹介しました。このページでも前回に引き続き、ぷよセットオブジェクト(親)に付けるスクリプトを記述していきます。このページでも前回に引き続き、各ぷよオブジェクトに付けるスクリプトを記述していきます。このページでも、前回に引き続き、ゲームの監督スクリプトを記述していきます。このページでは、ゲームの監督スクリプトを記述していきます。前回に引き続き、「ワガハイ式ビリヤード」のゲーム制作ページになります。このページでは、前回に引き続き、ゲームの監督スクリプトを記述していきます。このページでは、組ぷよに付けるスクリプトを記述していきます。このページでは、ゲームの監督スクリプトを記述していきます。コメントをキャンセルメールアドレスが公開されることはありません。Unityゲーム制作日記.。