Здравствуйте!
Я никак не могу решить одну задачу, связанную с моей программой. У меня нарисована сетка, вроде шахматной доски, и на этой сетке в каждой ячейке может располагаться один объект (клип). Все клипы ставятся динамически, заполняя ячейки слева-направо, сверху-вниз. Позиция каждого клипа вычисляется по функции, в зависимости от порядкового номера. Клипы можно удалять с сетки.
Проблема заключается в следующем: нужна функция, находящая свободную ячейку на сетке, и возвращающая порядковый номер этой клетки.
Я делал так: брал 2 вложенных цикла. Первый вычисляет координаты ячейки, второй, вложенный, для этих координат перебирает все клипы на доске. Казалось всё просто. Но я не знаю, как вывести первое подходящее значение из под 2х циклов. Приведу свой идиотский код:

Код AS1/AS2:
getNextFreeSlot = function()
{
var num=0;
for(var i=0;i<=LastIndex;i++) //LastIndex - номер последнего добавленного элемента
{
var checkX = GetSlotPosX(i); //функция возвращает координату X
var checkY = GetSlotPosY(i); //функция возвращает координату Y
for(var j=0;j<=LastIndex;j++)
{
var num1 = 0;
var mc:MovieClip = _root["myslot"+j];//все клипы имеют название вроде "myslot5"
if(mc._x == checkX && mc._y == checkY)
{
num1++;
}
else
{
if(j==LastIndex &&num1==0)
{
num = i;
break;
}
}
}//end for j
} //end for i
return num;
}
Основные вопросы - как выходить сразу из 2х циклов, как всё таки найти клетку, которой не соответствует ни одна координата.. 5 дней переписывал функцию с нуля, ничего не работало как надо, мозг вскипел.. Помогите пожалуйста!