🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

1回答

2228閲覧

この意味がわかりません!

msaba

総合スコア14

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

0クリップ

投稿2019/10/06 11:17

編集2019/10/06 13:28

Assets/Scenes/SavasController.cs(15,14):

1 2これは何をつたえたいのでしょうか 3写真も要望があればはります 4```C# 5コードusing UnityEngine; 6using System.Collections; 7 8public class SavasController : MonoBehaviour 9{ 10 void Update() 11 { 12 transform.Translate(0, 0.2f, 0); 13 14 if (transform.position.y > 5) 15 { 16 Destroy(gameObject); 17 } 18 19 void OnTriggerEnter2D(Collider2D coll) 20 { 21 Destroy(coll.gameObject); 22 Destroy(gameObject); 23 } 24 } 25}```

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

OnTriggerEnter2D というローカル関数が宣言されているけど使われていないと書いてあります。

追記

C#

1public class SavasController : MonoBehaviour 2{ 3 void Update() 4 { 5 transform.Translate(0, 0.2f, 0); 6 7 if (transform.position.y > 5) 8 { 9 Destroy(gameObject); 10 } 11 12 void OnTriggerEnter2D(Collider2D coll) 13 { 14 Destroy(coll.gameObject); 15 Destroy(gameObject); 16 } 17 } 18}

OnTriggerEnter2D は Update メソッドの中にあるローカル関数になっています。Update の外からは見えないので、Update の中から呼ばれていなければどこからも呼ばれていません。
何かを写したのだとしたら、たぶん次のようになっていたのではないかと思います。

C#

1public class SavasController : MonoBehaviour 2{ 3 void Update() 4 { 5 transform.Translate(0, 0.2f, 0); 6 7 if (transform.position.y > 5) 8 { 9 Destroy(gameObject); 10 } 11 } 12 13 void OnTriggerEnter2D(Collider2D coll) 14 { 15 Destroy(coll.gameObject); 16 Destroy(gameObject); 17 } 18}

投稿2019/10/06 11:30

編集2019/10/06 13:48
Zuishin

総合スコア28669

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

msaba

2019/10/06 12:45

どういうことなんですか?
Zuishin

2019/10/06 12:45

使われていないので削除したらいいんじゃないかということです。
msaba

2019/10/06 13:03

シューティングゲームを作っているんですがホームページのようにやっていてそこに書いてったのですが・・・衝突判定みたいなので使っているのですが・・・
Zuishin

2019/10/06 13:05

どこか間違っているのでしょう。
msaba

2019/10/06 13:12

わかりました ちょっとみてみます・・・
msaba

2019/10/06 13:14

ちなみに今のunityに使えないってことなんですか?
Zuishin

2019/10/06 13:17

OnTriggerEnter2D という関数はユーザー定義の関数です。これがどこからも呼ばれていないというエラーなので、Unity に使えるかどうかはあまり関係ありません。呼び出しているところはありますか? ソースコードの中を検索してみてください。ローカル関数なので、何か別の関数の中にある関数だと思います。
Zuishin

2019/10/06 13:19

MonoBehavior に同名のメソッドがあるので、おそらくこれと間違えてどこかに書いているのだと思います。
msaba

2019/10/06 13:22

OnTriggerEnter2Dはこれが初めてなんで他で使ってないんですが・・・
Zuishin

2019/10/06 13:25

ちょっと質問を編集してその周辺のコードを追記してください。見てみます。 ```C# namespace Foo { class Bar { } } ``` のように、```C# と ``` の間に入れると見やすくなります。
msaba

2019/10/06 13:28

わかりました
msaba

2019/10/06 13:34

ほかもいれたほうがいいですか?
Zuishin

2019/10/06 13:35

OnTriggerEnter2D があるクラスだけで構いません。
msaba

2019/10/06 13:43

だったらこれだけなんですが・・・ あとは2Dの重力とコライダーをaddしただけです
Zuishin

2019/10/06 13:49

追記しました。
msaba

2019/10/06 13:58

いけました! よく{}をよくみてなかったです!お手数おかけしました!w
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問