Problems with character rotation and mecanim animations

I just followed this tutorial: http://unity3d.com/learn/tutorials/modules/beginner/live-training-archive/top-down-2d

Where you can take 4 sprites and make an animation just using the 4 frames.

Since my drawing skills are poor, I tried to make a rayman style character, and I made my own animations in the animator:

The game object is compose for a parent body, 2 arm children and 1 head child.

The problem comes when I try to make the character move. This is the srcipt:

using UnityEngine;
using System.Collections;

public class PlayerMovementScript : MonoBehaviour {

	public float speed;

	void FixedUpdate()
	{
		Vector3 mousePosition = Camera.main.ScreenToWorldPoint (Input.mousePosition);
		Quaternion rot = Quaternion.LookRotation (transform.position-mousePosition,Vector3.forward);
		transform.rotation = rot;
	
		transform.eulerAngles = new Vector3 (0, 0, transform.eulerAngles.z);
		rigidbody2D.angularVelocity = 0;

		float input = Input.GetAxis ("Vertical");
		rigidbody2D.AddForce (gameObject.transform.up * speed * input);
	}
}

Since I change the rotations to create the animations, the body does not face the direction the mouse is at.

If I use this sprites as animations, the body does face the mouse:

29849-character_idle.png

So the question is. There is any way to make a set of sprites animated with mecanim to face the movement direction while still their rotation is modified for the animation?

edit1: The main difference with this example, is that what I try to do, is with a TopDown camera: http://unity3d.com/learn/tutorials/modules/beginner/2d/2d-overview

Edit: Is more info needed?

This is quite an old question, so I’m sure you must have an answer by now. However since this question comes up on common search results, I will attempt to provide an answer.
What you want to do, is have a more complex hierarchy to split animating functionality, with other functionality.

Lets say you have “./Player/Head”, and you control the rotation of “Head” in the animation.
What you really want in this case is for the character to face the mouse position as well as animate the way you want.

That’s easy. You have several options. The best one however, is to make your hierarchy more like “./Player/PlayerObject/Head” and then proceed to move your Animator controller off of “Player”, and onto “PlayerObject”. The animation remains the same, but you may need to re-key the rotation of “PlayerObject”. Next, you will want to write a script that rotates the object towards the mouse, and attach it onto “Player”. You can achieve this relatively easily by calling on ScreenToWorldPoint in your script, and rotating your transform of “Player”, through the quaternion angle of the two points. Make sure you define the main camera beforehand.

void FixedUpdate () 
{
    Vector3 STWP = mainCamera.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, mainCamera.farClipPlane));
    transform.rotation = Quaternion.LookRotation(Vector3.forward, new Vector3((STWP.x - transform.position.x), STWP.y - transform.position.y, STWP.z - transform.position.z)) ;
}