質問: ### 前提・実現したいこと 現在2Dのもぐらたたきを作っています モグラが一定の高さまで飛んで降りてくる ハンマーと当たれば爆発する 当たらなければそのまま初期位置まで落ちていく 以上の動作までできています この動きをモグラ以外の動物をランダムで出てこさせたいと思っています 出てくる場所は固定です 現在、一つずつ同じ動きをする動物を複数作っています この複数のオブジェクトを一定のリズムで、出てくる動物はランダムにする方法が知りたいです 説明が下手で申し訳ありませんがご教示ください ### 発生している問題・エラーメッセージ ``` エラーメッセージ ``` ### 該当のソースコード ``` ソースコード ``` ### 試したこと ここに問題に対して試したことを記載してください。 ### 補足情報(FW/ツールのバージョンなど) ここにより詳細な情報を記載してください。
回答: C# ( Unityすら ) やったことありませんが。 私の読解力がアレなのか、ちょっとよくわかりません。 > > 現在、一つずつ同じ動きをする動物を作っています > > この複数のオブジェクトをランダムに一定のリズムで出す方法が知りたいです > > > どういう意味なのかがわからないです。 ランダムなのか、一定なのか... 例えば、 乱数発行で モグラ -> タヌキ -> 犬 -> ウサギ となったなら、 ウサギまでやったら次はモグラに戻って...みたいにするのか、 それとも完全にランダムなのか。 もし完全にランダムなら乱数発行し、 0のとき: もぐら 1のとき: うさぎ 2のとき: 犬 ... みたいにif文とかでふるい分けする。 [追記1] コードも無いし、私自身はUnityはやっていないので妄想ですが。 私なら、 例えば UML風に書くと ``` [ Monster ] - name : String - id : int + CONSTRUCTOR( name : String, id : int ) + name() : String + id() : int + isHit() : bool ``` おおざっぱに書くと、 ``` class Monster{ private String name; // 実際に格納するフィールド public String Name{ // プロパティ get{ return this.name; } } public Monster( String name, int id ){ /* コンストラクタ */ } isHit(){ if( name.Equals( "モグラ" ) )return true; return false; } } ``` みたいにして、クラス化。 isHitメンバ ( メソッド ) は name もしくはidが"モグラ"ならtrueを返し、それ以外ならfalseを返す みたいにオブジェクトに管理させる。 で、ここまでは多分同じじゃないかな。 次に「どのオブジェクトを出現させるか」みたいな管理クラスを設ける。 少なくとも List mosters をフィールドとして保持し、乱数を発行したときに その番号のmonsterを出現させる...みたいにする。