Показать сообщение отдельно
Старый 17.07.2013, 19:07
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 8  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
Цитата:
//reset the row for another use
row = 0;
...используют поле вместо переменной накой-то

Насколько я понял - там уровень представлен 1-мерным массивом, в который загнали построчно 2-мерный.
row = i / lvlColumns - получается номер строки
column = i - (row - 1) * lvlColumns - номер столбца
Умножаем на размеры ячейки - получаем координаты
Но я бы мозг свой так не мучал, а просто прошёлся бы 2-мя циклами:
Код AS3:
for (i = 0; i < numCols; i++) {
    for (j = 0; j < numRows; j++) {
        var cellValue:int = lvlArray[j * numCols + i];
        var x:Number = i * cellWidth;
        var y:Number = j * cellHeight;
        if (cellValue == 1) {
            // Добавить мувиклип в координаты x, y
        }
    }
}
Или вообще бы использовал 2-мерный массив
Или вообще бы 2-мерный массив использовал