olá atualmente eu estou no capítulo 1 do curso na aula 10 e hoje fui abrir o projeto para continuar a aula e ele parecia corrompido. não sei o que fazer para recuperar o projeto pois já tentei de tudo 
Além disso eu estava com bug no meu condigo
olá atualmente eu estou no capítulo 1 do curso na aula 10 e hoje fui abrir o projeto para continuar a aula e ele parecia corrompido. não sei o que fazer para recuperar o projeto pois já tentei de tudo 
Além disso eu estava com bug no meu condigo
Ola, colega!
O que está acontecendo
O erro principal é este:
CS0120 – Uma referência de objeto é necessária para o campo, método ou propriedade
InputManager.Movementnão estática
No seu script PlayerBehaviour, você está acessando assim:
InputManager.Movement
Isso só funciona se Movement for static.
Mas pelo erro, ele não é estático, ou seja, pertence a uma instância de InputManager, não à classe em si.
Por causa disso, a Unity não consegue compilar o projeto e abre aquele alerta pedindo para entrar em Safe Mode.
Por que a Unity pede Safe Mode?
Quando há erro de compilação, a Unity não consegue importar os scripts corretamente.
O Safe Mode serve justamente para você corrigir o código sem o projeto quebrar de vez.
Pode entrar em Enter Safe Mode sem medo.
Opção 1 — Tornar Movement estático (se for a ideia do curso)
No script InputManager, algo assim:
public static float Movement { get; private set; }
E no Update() dele:
Movement = Input.GetAxis("Horizontal");
Aí o seu código atual funciona normalmente:
float moveDirection = InputManager.Movement * Time.deltaTime * moveSeed;
InputManagerSe não for para ser estático, você precisa de uma referência:
[SerializeField] private InputManager inputManager;
E usar assim:
float moveDirection = inputManager.Movement * Time.deltaTime * moveSeed;
(lembrando de arrastar o InputManager no Inspector)
Abçs;