How can I make it so that when 2 objects collide, they will be destroyed and instantiate only 1 object at their contact point?
These 2 objects are also clones of each other.
Here is my current code:
When they collide, they will instantiate an object. This code instantiates an object per object though so they instantiate a total of 2 objects instead of 1.
public Vector3 rocket;
void OnCollisionEnter2D(Collision2D col)
{
if (col.gameObject.CompareTag ("rocketTag"))
{
//Assigns the 'Vector3 'rocket'' to the position of the collision.
ContactPoint2D contactPositioned = col.contacts[0];
Vector3 contactPosition = contactPositioned.point;
rocket = new Vector3(contactPosition.x, contactPosition.y);
//This instantiates the Explosion object on the rocket's position / Vector3.
Instantiate(Resources.Load("Explosion"), rocket, Quaternion.identity);
//Destroys the rocket.
Destroy (gameObject);
//When 2 rockets collide, they instantiate a total of 2 explosions, but I only need 1 explosion.
}
}
Thanks! I saw someone asking about the same question here though, but it was in Javascript, and when I tried to convert it to C#, it didn’t work. I also couldn’t ask them there because it was locked and it was also from 2 years ago, so I just decided to make another one.