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

回答編集履歴

1

文面のミスを修正

2018/02/10 10:12

投稿

Bongo
Bongo

スコア10816

answer CHANGED
@@ -1,7 +1,7 @@
1
1
  ご質問の文面から、型が違うためにうまくいかないということは把握されているものと思います。
2
- あとはどうやって`setted`がtrueのBaggageを数え上げるかというところですね。
2
+ あとはどうやって`setted`がtrueのBaggageを数え上げるかというところですね。
3
3
 
4
4
  方針の一案としましては、すでに[FindGameObjectsWithTag](https://docs.unity3d.com/ScriptReference/GameObject.FindGameObjectsWithTag.html)でシーン中の特定のタグを持つゲームオブジェクトを全部探し出す方法はご存じのようですので、それを応用すればいいかと思います。
5
5
 
6
- 荷物に「Baggage」タグを付けているとすると、`GameObject.FindGameObjectsWithTag("Baggage");`ですべての荷物オブジェクトを探し出すことができるはずです。あとは全荷物オブジェクトをループで走査して、`setted`がtrueの荷物が見つかるたびにカウント用変数をカウントアップしていけばいいのではないでしょうか。
6
+ 荷物に「Baggage」タグを付けているとすると、`GameObject.FindGameObjectsWithTag("Baggage");`ですべての荷物オブジェクトを探し出すことができるはずです。あとは全荷物オブジェクトをループで走査して、`setted`がtrueの荷物が見つかるたびにカウント用変数(`settedCount`)をカウントアップしていけばいいのではないでしょうか。
7
7
  荷物オブジェクトには`BaggageScript`コンポーネントがアタッチされているでしょうから、それを`GetComponent<BaggageScript>()`で取得、あとはそれの`setted`を調べてやれば、その荷物オブジェクトがゴールの上に乗っているか判定できるはずです。