Conferi o codigo inumeras vezes, mas quando eu tento refatorar ele nao aceita a chamada de metodo, se eu volto para o antigo funciona.
para me certificar que não estava declarando algo errado estou utilizando as mesmas variaveis em ambos os modos e só funciona no antigo.
private void FixedUpdate() { float distance = Vector3.Distance(transform.position, Player.transform.position);
Vector3 direction = Player.transform.position - transform.position;
if (distance > 2.5)
{
movimentation.Moviment(direction, speed);
//rigB.MovePosition(rigB.position + direction.normalized * Speed * Time.deltaTime);
anim.SetBool("Attacking", false); [...]
aqui no scrit novo
public void Moviment(Vector3 mov, float generalSpeed) { rigB.MovePosition(rigB.position + mov.normalized * generalSpeed * Time.deltaTime); }