Вход

Просмотр полной версии : бесконечная лента


NеoLeо
21.07.2004, 04:34
встал вопрос, никак не могу придумать принцип... есть конвеер, лента, по которой с одинаковой скоростью и расстоянием должен бежать вагончик, скажем. то есть нужно нарисовать в бщем-то один вагончик а потом его множить... но как так сделать, чтобы вагончик повторялся с одинаковым промежутком и бесконечно!?

Kinsler
21.07.2004, 11:30
типа так: (считаю что едет справа налево)
берешь ДВА вагончика , в начальный момент один находится в поле видимости второй ставишь справа ЗА областью видимости
начинают ехать, когда в поле видимости появляется второй целиком координаты первого становятся такие чтоб он стал на место второго в НАЧАЛЬНОМ положении и у них меняются имена

NеoLeо
21.07.2004, 13:47
хм.. а как бы это так сделать...

Штрек
22.07.2004, 04:35
Оригинал написал(а) NеoLeо
хм.. а как бы это так сделать...
Напр. так -
fps = 12;//твой fps
n = 5;// кол-во одновременно видимых на сцене вагонов
spide = 5;// ясное дело - скорость
xxx = Stage.width+vagon._width/2+20;
time = 1000*(Stage.width+vagon._width+40)/n/(fps*spide);
vagon._visible = 0;
i = 1;
function prohod() {
i++;
if (i>n) {
i = 1;
}
vagon.duplicateMovieClip("vagon"+i, 99+i);
this["vagon"+i]._x = xxx;
this.onEnterFrame = function() {
for (j=1; j<=n; j++) {
this["vagon"+j]._x -= spide;
if (this["vagon"+j]._x<=-vagon._width/2-10) {
this["vagon"+j]._x = xxx;
}
}
};
}
setInterval(function () {
prohod();
}, time);
Нарисуешь vagon и поместишь на сцену.

Штрек
22.07.2004, 04:41
Если чего непонятно - гл.исх. ;)

NеoLeо
22.07.2004, 12:43
thanx!