Unityプロジェクトでは、いくつかのプレハブにスクリプトが添付されています。数秒ごとにランダムなプレハブが生成されます。これは、添付のスクリプトの一部です。
private void OnCollisionEnter2D(Collision2D collision)
{
if (collision.transform.CompareTag("ground"))
{
if (transform.gameObject.name == "FallingKeule(Clone)")
{
Destroy(transform.gameObject);
}
if (transform.gameObject.name == "FallingHeart(Clone)")
{
Destroy(transform.gameObject);
}
if (transform.gameObject.name == "FallingCup(Clone)")
{
Destroy(transform.gameObject);
}
else
{
print("You lost a life!");
Player.GetComponent<Colliding>().LostLife();
Destroy(transform.gameObject);
}
}
}
GameObjectがランダムに生成され、ヒットした場合、それは「FallingKeule(Clone)」-> 「(クローン)」は、プレハブがコードの初期化によってクローン化されるためです
if (transform.gameObject.name == "FallingKeule(Clone)")
されていません! elseコードが完成しました:
else
{
print("You lost a life!");
Player.GetComponent<Colliding>().LostLife();
Destroy(transform.gameObject);
}
回答 1 件
関連記事
関連した質問
- エディターがUnityでプレイモードに入る前にロードするシーンを変更することは可能ですか?
- XRボタン全機能
- PlayモードテストでSceneManagerを使用するEditorSceneManager
- PUN2 |プロセスは2回呼び出されます
- UnityプロジェクトへのFirebaseAdminSDKの追加
- 私はこれにプライベートまたはパブリックを使用することはできません
- シーンをリロードした後、GameObjectを無効のままにする(Unity)
- インスタンス化されたプレハブの親としてパネルを1つに設定するにはどうすればよいですか?
- 小さなシーンをロードするとUnityエディター/スタンドアロンビルドがクラッシュする
- Unityで別のスクリプトから関数と変数を参照する方法は?
else if
を使用する必要があります ステートメント:またははるかに良い:
あるいは: