void Awake()
    {
        _targetPos = theCam.position;

        _attachedOrbit = new AttachedOrbit ();
        _freeFallingOrbit = new FreefallOrbit ();
        _normalOrbit = new NormalOrbit ();
        _attachedOrbit.Startup (this);
        _freeFallingOrbit.Startup (this);
        _normalOrbit.Startup (this);
        _orbit = _normalOrbit;

        _rigid = player.GetComponent<Rigidbody> ();
    }
 public void Freefall()
 {
     _orbit = _freeFallingOrbit;
 }
 public void Normal()
 {
     _orbit = _normalOrbit;
 }
 public void Attached()
 {
     _orbit = _attachedOrbit;
 }