プレイヤーがスイッチに接触したら壁が壊れるスクリプトを作りたいのですが、コンパイルエラーが起き、Assets/Script/TakeoverScript/Destroy.cs(58,28): error CS1503: Argument 1: cannot convert from 'bool' to 'UnityEngine.GameObject'というエラーが出ます。
どこをどう直せばプレイヤーがスイッチ(switchとタグ付けしたもの)に接触したら壁(Wallとタグ付けしたもの)が壊れるスクリプトを作れるでしょうか。教えて頂けませんでしょうか。
c#
1コードusing System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4 5/*! 6 * 他のオブジェクトがぶつかった時に、ぶつかったオブジェクトを削除します。 7 */ 8public class Destroy : MonoBehaviour 9{ 10 [Tooltip("当たり判定の対象として認識するオブジェクトのタグ")] 11 public string targetTag = ""; 12 13 [Tooltip("ぶつかった時にこのオブジェクトを削除するか")] 14 public bool DestroyThisObject = true; 15 16 [Tooltip("ぶつかった時にぶつかったオブジェクトを削除するか")] 17 public bool DestroyThatObject = true; 18 19 // [Tooltip("ぶつかった時に他のオブジェクトを削除するか")] 20 // public bool DestroyOtherObject = true; 21 22 void Reset() 23 { 24 targetTag = ""; 25 } 26 27 void DestroyObject(GameObject obj/*,obj2*/) 28 { 29 if (DestroyThatObject) { 30 GameObject.Destroy(obj); 31 } 32 if (DestroyThisObject) { 33 GameObject.Destroy(this.gameObject); 34 } 35 // if (DestroyOtherObject) { 36 // GameObject.Destroy(obj2); 37 // } 38 } 39 40 41 // void OnTriggerEnter(Collider other) 42 // { 43 // if (targetTag == "" || other.gameObject.tag == targetTag) { 44 // DestroyObject(other.gameObject); 45 // } 46 // } 47 48 void OnTriggerEnter(Collider other) 49 { 50 if(other.gameObject.CompareTag("switch")) 51 { 52 DestroyObject(other.gameObject.CompareTag("Wall")) 53 } 54 } 55} 56
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。