Javascript - Detect wall collision and flip

I have a wall and a sprite. I want the sprite to flip and face the other direction once it hits the wall.

I tried this:

function OnTriggerEnter(sprite: Collider){	
	if(sprite.gameObject.tag == "wall"){
	    transform.Rotate (Vector3.up * 180);
	}
}

Only thing the sprite does is push the wall away rather than flip. Please help!

Not sure about you using 2D, but anyway,
you could try this :

(Warning: it’s in Boo, but you could port it)

    def OnCollisionEnter(collision as Collision):
        for contact as ContactPoint in collision.contacts:
            tag="wall"
            if contact.thisCollider.CompareTag(tag) or \
               contact.otherCollider.CompareTag(tag):
                flip=true

If you’re only looking for forward collisions,

    def OnCollisionEnter(collision as Collision):
    	for contact as ContactPoint in collision.contacts:
            tag="wall"
            if Vector3.Dot(self.transform.forward, contact.normal)>=0.7:
                flip=true

The flipping code could be a lerp so it looks smoother though.

rotation=self.transform.rotation
rotation.eulerangles.y+=180
if flip:
    self.transform.rotation=Quaternion.Lerp(
                            self.transform.rotation, 
                            rotation, 
                            60*Time.deltaTime)

#Rotates at 60 degrees per second.