Collision not detected?

I made a quick thing to test OnCollisionEnter, in this test there were two identical cubes, the only difference being that one of them was affected by gravity and had this script on it:

using UnityEngine;
using System.Collections;

public class DestroyOnHit : MonoBehaviour {
	void OnCollisonEnter2D(Collision2D col)
	{
		Debug.Log ("Collided");
		Destroy(col.collider);
	}
}

The cube on top was raised so that it was hovering above the bottom one, so that when the game ran it would fall down and collide with the other cube, causing one of them to be destroyed (I’m not sure which :/). However, whenever I run it the above cube just falls down and pushes the other down, neither were destroyed, and no collision was detected. Any thoughts?

here are pictures of the cube’s settings:

the top one:

the lower one:

Any thoughts? Thanks!

You’ve misspelled OnCollisionEnter2D as OnCollisonEnter2D; you left off the ‘i’ after the ‘s’ in ‘Collision’.

Also I thought it was interesting that you called Destroy on the actual Collider instead of its child gameObject. I looked it up and according to the docs that doesn’t seem like it will have the behavior that you want. You should probably pass in the gameObject on the collider instead of the collider itself.