teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

nillチェック追加

2021/05/03 23:04

投稿

task58_github
task58_github

スコア24

answer CHANGED
@@ -27,7 +27,10 @@
27
27
 
28
28
  void Start(){
29
29
  //ShingoRedがアタッチされているGameObjectを取得し、GetComponentでShingoRedを取得する。
30
+ var obj = GameObject.Find("Box");
31
+ Debug.Log(obj);//これがnullならObjectを取得できていない。Findの引数を確認する。
30
- singo = GameObject.Find("Box").GetComponent<ShingoRed>();
32
+ singo = obj.GetComponent<ShingoRed>();
33
+ Debug.Log(singo);//こっちがnullならShigoRedを取得できていない。コンポーネントが、ちゃんとアタッチされているか確認する。
31
34
  }
32
35
 
33
36
  void Update(){
@@ -43,4 +46,8 @@
43
46
 
44
47
  ShingoRed.Whiteを取得のみ公開し、他スクリプトから読み取り可能にする。
45
48
  そして、ShingoRedコンポーネントをCarStopperで取得し、Whiteの値を読み取ることで、
46
- 信号の状態に応じた処理が可能になる。
49
+ 信号の状態に応じた処理が可能になる。
50
+
51
+ 5/4 追記
52
+ エラーが出ると指摘を頂いたのでNullチェックを追加。
53
+ 理論上はこのscriptでできるはずなので引数間違いの可能性が高い。