|
|
|||||
Регистрация: Jun 2003
Адрес: Москва
Сообщений: 168
|
постепенный вывод массива
как вывести массив объектов (плитки) на экран, так чтобы мир из плиток прорисовывался постепенно, т.е. появляется первая плитка, через секунда вторая плитка и так в последовательности i,j
например: cellWidth=25; function buildTiles() { depth=0; for (var j = 1; j<=40; ++j) { for (var i = 1; i<=40; ++i) { if (j == 1) { tiles[i] = []; } depth++; var name = "cell"+i+"_"+j; path.attachMovie("tile", name, depth); var clip = path[name]; tiles[i][j] = {x:i, y:y, z:j, depth:depth,clip:clip}; var x = (i)*cellWidth; // раскладка плиток от левого верхнего угла var y = -(j)*cellWidth; tiles[i][j].clip._x = x; tiles[i][j].clip._y = y; } } } Последний раз редактировалось KUZEN; 13.12.2005 в 17:49. |
|
|||||
Ветеран форума
|
setInterval()
__________________
BestMasterиZация |
|
|||||
допустим так:
cellSize = 25; rows = 5; cols = 5; target = this; tileds = new Array(); currentID = 0; numTileds = rows * cols; for(var i=0; i<cols; i++) { tileds[i] = new Array(); for(var j=0; j<rows; j++) { var ceil = target.attachMovie("tile", "tile" + (i*cols + j), (i*cols + j)); tileds[i].push(seil); ceil._x = j * cellSize; ceil._y = i * cellSize; ceil._width = ceil._height = cellSize; ceil._visible = false; } } function showTiled() { target["tile" + currentID]._visible = true; if(++currentID == numTileds) { clearInterval(intervalID); } } intervalID = setInterval(showTiled, 1000) |
|
|||||
Регистрация: Jun 2003
Адрес: Москва
Сообщений: 168
|
(по предыдущему ответу): где разместить эту строку -
intervalID = setInterval(showTiled, 1000) в onEnterFrame или можно внутри другой функции? |
|
|||||
Регистрация: Nov 2003
Адрес: Север
Сообщений: 244
|
Цитата:
в onEnterFrame лучше не стОит можно в другой функции, если только она не вызывается несколько раз подряд (стоИт в onEnterFrame или типо того), потому что -- см. хэлп по SetInterval |
Часовой пояс GMT +4, время: 20:27. |
|
« Предыдущая тема | Следующая тема » |
|
|