protected override void MoveSnake() { var blocks = _blockSpawner.GetBlocksSpawned(); if (blocks.Count > 0 && _moveInteractions > _checkDirectionTime) { var block = blocks[0]; var desiredDirection = (block.transform.position - _snakeHead.transform.position).normalized; var currentDirection = (_snakeHead.transform.position - _snakeHead.LastPostion).normalized; UpdateBotDirection(currentDirection, desiredDirection); _moveInteractions = 0; } _moveInteractions++; //update before call base base.MoveSnake(); }