Hallo
Ich versuche mich gerade an einer einfachen Bildlaufleiste. Die Laufleisten wiederholt sich um einen "unendlichen" Durchlauf zu simulieren. Dieses klappt auch wunderbar. Wenn ich allerdings an einer estimmten Stelle gelange verschwindet die erste Laufleisten und man erkennt den Übergang.
Könnte mir bei der Beseitigung dieses Problems jemand behilflich sein?
Danke schon einmal.
Code:
var speed = 0;
var maxspeed = 10;
var damper = 5;
var gap = 14;
var leiste = new Array(2);
leiste[0] = container.attachMovie("bilderleiste", "leiste0", 1);
leiste[1] = container.attachMovie("bilderleiste", "leiste1", 2);
leiste[1]._y = leiste[0]._y + leiste[0]._height + gap;
this.onEnterFrame = function() {
speed = -(_ymouse - frame._height / 2) / 10;
if (speed < -maxspeed) speed = -maxspeed;
if (speed > maxspeed) speed = maxspeed;
for (var i=0; i<leiste.length; i++) {
leiste[i]._y += speed;
}
for (var i=0; i<leiste.length; i++) {
if ((leiste[i]._y > frame._height) && speed > 0) moveUp(i);
if ((leiste[i]._y < -leiste[i]._height - gap) && speed < 0) moveDown(i);
}
}
function moveUp(y) {
if (y == leiste.length - 1) {
leiste[y]._y = leiste[0]._y - leiste[y]._height - gap;
} else {
leiste[y]._y = leiste[y + 1]._y - leiste[y]._height - gap;
}
}
function moveDown(y) {
if (y == 0) {
leiste[y]._y = leiste[leiste.length - 1]._y + leiste[leiste.length - 1]._height + gap;
} else {
leiste[y]._y = leiste[y - 1]._y + leiste[y - 1]._height + gap;
}
}