痔と腰痛に苦しみながらゲームを作った記録この広告は、90日以上更新していないブログに表示しています。!!!!!!!!!!!!!たぶんもうみんな知ってると思うんですけど、ぼくは今更Containsとかいうウルトラスーパー便利機能に感動したので書きます。過去に作ったRTSに出てくる砲兵の範囲攻撃を実装する際にwhile文か何かをミスってEditorをフリーズさせたりさせなかったりした経験があるので個人的に爆発攻撃の実装はいやだな~って感じなんですけど、ゲームには必須ですよね。榴弾を作るぞ!www.youtube.comこれを作りました。爆発範囲内に被弾対象のコライダが1つでもあれば1回ダメージが入ります。爆発範囲内に被弾対象のコライダが2つ以上あってもダメージは1回しか入りません。しようロボットは複数のコライダを持つ複数の部品で構成されています。Physics.OverlapSphere等を使って爆発範囲内のコライダを取得すると思うんですけど、じゃあ取得した後にどうしよう。今回はコライダのrootオブジェクトを取得して犠牲者リストにぶち込み、すべてのコライダの処理後に犠牲者リスト内のオブジェクトにダメージを与えるという処理をすることにしました。犠牲者リスト.Countが0以下のとき、1つめのコライダのroot.transform.gameObjectが犠牲者リストにAddされます。2個め以降の処理はどうしよう...for文とかを使ってコライダのrootオブジェクトと犠牲者リスト内のオブジェクトで一致している物があるか調べるのかな?いやだな~と思っていたのですがContainsとかいう便利機能を発見!ヤバい!お手軽!Cointainsを使うとリスト内にお望みのブツが含まれているかどうかがすぐに判定できる...何も考えなくて良いんだ...。(C#プログラミング)これで簡単にリストの中にコライダのrootオブジェクトが含まれているかがわかります。含まれていなければこのrootオブジェクトをリストに新たに追加します。{Debug.Log("コライダのルートオブジェクトは既にこの爆風に被弾しています。{AddDamage(obj);}的な事を書けばよろしいかとおもいます。爆発物を作る際に「リストの中に同じものが入っているかどうか」を調べるハメになった場合、Containsを使うと何も考えずに済むよという話です。アレがこうなりました。Designer5【注意】この記事は「とりあえず動いた」を記録するものです。検索はてなブログをはじめよう!kaninoyokonovさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。