プレイヤーがスイッチに接触したら壁が壊れるスクリプトを作りたいのですが、何故かUnityが実行出来ない(最後の行のDestroyObjectでエラーが出ます)です。どこをどう直せば良いか教えて頂けませんでしょうか。
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 void Reset() 20 { 21 targetTag = ""; 22 } 23 24 void DestroyObject(GameObject obj) 25 { 26 if (DestroyThatObject) { 27 GameObject.Destroy(obj); 28 } 29 if (DestroyThisObject) { 30 GameObject.Destroy(this.gameObject); 31 } 32 33 } 34 35 void OnTriggerEnter(Collider other) 36 { 37 if(other.gameObject.CompareTag("switch")) 38 { 39 DestroyObject(other.gameObject.CompareTag("Wall")); 40 } 41 } 42} 43 44 45
「Unityが実行できない」とはどういう状況でしょうか?
スクリプトを実行するとエラーが出て止まるのか、そもそも実行する前にエラーが出ているのか、そこを明記しないと解決には至らないと思いますよ。
回答1件
あなたの回答
tips
プレビュー