public void Update(float deltaTime)
    {
        if (spellCaster.IsCasting())
        {
            return;
        }
        var     pos = playerGmj.transform.position;
        Vector3 movementDirection = targetPos - playerGmj.transform.position;

        if (movementDirection.magnitude < minimumMovementDistance)
        {
            playerAnimator.Idle();
            movementDirection = Vector3.zero;
        }
        else
        {
            playerAnimator.Walk();
        }
        movementDirection.Normalize(); //THIS IS WHAT I CHANGED IF YOU GOT ERROR
        var proposedPosition = pos + pushBack * deltaTime + movementDirection * deltaTime;
        var finalPos         = proposedPosition;

        playerGmj.transform.position = finalPos;
        pushBack = pushBack * (1 - deltaTime);
    }