Odd issue with collision between player and enemy.

I use the following script:

void OnCollisionEnter(Collision collision)
{

if (collision.gameObject.tag == "Enemy")
{
    Destroy(this.gameObject);
    Application.LoadLevel(Application.loadedLevel);
}

}

The problem is that the collision only causes the player’s death if he moves into the enemy. If it’s the enemy who moves into the player nothing happens - the enemy just stands next to the player.

Any idea why this is happening?

It depends how the enemy is moved. If it’s not by physic (gravity, character controller, force etc) it won’t raise a collision event. One of the two collider involved must have a non-kinematic rigidbody.