# Player Rotation to gravity

I am having a problem as the player will keep facing one direction other than rotate according to where he is on the planet. What can I add to solve this issue? For Gravity I followed Brackeys tutorial.

This is the script:

using System.Collections;

using System.Collections.Generic;

using UnityEngine;

public class GravityAttractor : MonoBehaviour
{

``````public static List<GravityAttractor> Attractors;
public Rigidbody2D rb;
const float G = 6.674f;
public bool attract;

void Awake()
{
rb = GetComponent<Rigidbody2D>();
}
void FixedUpdate()
{
foreach (GravityAttractor attractor in Attractors)
{
if (attractor != this)
{
Attract(attractor);

}
}
}

void OnEnable()
{
if (Attractors == null)
Attractors = new List<GravityAttractor>();

}

void OnDisable()
{
Attractors.Remove(this);

}

public void Attract(GravityAttractor objToAttract)
{
if (attract == true)
{
Rigidbody2D rbToAttract = objToAttract.rb;

Vector2 direction = rb.position - rbToAttract.position;
float distance = direction.magnitude;

if (distance == 0f)
return;

float forceMagnitude = G * (rb.mass * rbToAttract.mass) / Mathf.Pow(distance, 2);
Vector2 force = direction.normalized * forceMagnitude;

}

}
``````

}

Any help is appreciated!

You can use Quaternion.LookRotation(). Just give it your negative gravity vector as the up direction. I use Quaternion.Slerp here to smooth the rotation, but if you donâ€™t need to smooth the rotation you can just set transform.rotation to the target rotation directly

``````public float speed;
private Quaternion targetRotation;

public void Attract(blahblah)
{