• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
This question was closed Aug 12, 2017 at 09:39 PM by Zailcompany for the following reason:

Other

avatar image
0
Question by Zailcompany · Aug 12, 2017 at 11:55 AM · collisioncolliderdestroycollider2dcollision2d

OnCollisionEnter is not working for me!!

Hello there I'm trying to use OnCollisionEnter to destroy an object (just like collecting a coin), and I have 2objects and both of them have rigid body and colliders I have added my script to one of them and the name that I wrote is the name of the other object which doesn't have the script. I'm trying to destroy this gameObject whenever it was hit by the other gameObject's collider . But the script doesn't work. Please help!!!! Thanks!!

 public class DestroyCubes : MonoBehaviour
 {
     void OnCollisionEnter (Collision col)
     {
         if(col.gameObject.name == "Cube")
         {
             Destroy(col.gameObject);
         }
     }
 }
Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

  • Sort: 
avatar image
0
Best Answer

Answer by FlaSh-G · Aug 12, 2017 at 01:27 PM

Put a few Debug.Logs in there to find out what exactly is not working.

 public class DestroyCubes : MonoBehaviour
 {
   void OnCollisionEnter (Collision col)
   {
     Debug.Log("OnCollisionEnter works.");
     if(col.gameObject.name == "Cube")
     {
       Debug.Log("The GameObject name is Cube.");
       Destroy(col.gameObject);
     }
   }
 }

Then you can continue to investigate.

Comment
Add comment · Show 1 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Zailcompany · Aug 12, 2017 at 03:11 PM 0
Share

I don't know what was I missing but I copied your code and it worked! :D Anyway thank you for your help sir.

Welcome to Unity Answers

The best place to ask and answer questions about development with Unity.

To help users navigate the site we have posted a site navigation guide.

If you are a new user to Unity Answers, check out our FAQ for more information.

Make sure to check out our Knowledge Base for commonly asked Unity questions.

If you are a moderator, see our Moderator Guidelines page.

We are making improvements to UA, see the list of changes.



Follow this Question

Answers Answers and Comments

114 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

OnTriggerEnter2D working, OnColliderEnter2D not working 1 Answer

How to set collision for an object with specific collider size? 3 Answers

Collision detection problem 0 Answers

How do I detect which collider is being collided with? 0 Answers

Instantiate 1 object after 2 objects collide. ( C# ) 1 Answer

  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges