ты сам-то понял что хотел сказать ? :))
mc.createTextField("text"+y, y, -330, -11, 700, 30);
mc["text"+i].variable = "text"+y;
это ничего что у тебя текстовое поле называется точно так же как и переменная, значение которой в этом поле хорошо бы отобразить ? :)

Код:
i = 10;
for (y=0; y<i; y++) {
duplicateMovieClip("menu", "menu"+y, y);
var mc = this["menu"+y];
mc._y = menu._y+(15*y);
mc.createTextField("text"+y, y, -330, -11, 700, 30);
mc["text"+y].variable = "txt"+y;
mc["txt"+y] = mc;
}
вот так проверь - убедишься что все у тебя нормально с текстовыми полями... остается только поставить подгрузку файликов с правильными переменными.
зы: но я бы хранил структуру меню с названиями кнопок в одной ХМЛке и грузил ее один раз вместо того чтобы грузить каждый пункт отдельно...