Jag har en flashfilm där jag lagt 81 movieclips.. Inga namn satta på dom utan använder systemets inbyggda "instanceX" där X är en siffra som automatiskt räknar uppKonstigt fel..
De ligger i ett ruta 9x9
Jag försöker nu byta plats på 2 kolumner med följande kod
som ni ser så lagrar jag alla object som matchar mina koordinater i 2 arrays - och sen sätter jag ditt _x på dom.. men bara ena kolumnen flyttas.. och ibland ingen alls
base = 2.35;
pos = new Array(10, 50, 90, 130, 170, 210, 250, 290, 330);
startPos = new Array(10, 130, 250);
row1 = new Array();
row2 = new Array();
function scramble(yv,sp) {
while (xp1 == xp2) {
xp1 = pos[random(3) + sp * 3]+base;
xp2 = pos[random(3) + sp * 3]+base;
}
trace(xp1 + " moved to " + xp2);
x = 0;
r1 = 0;
r2 = 0;
while (x<81) {
x++;
if ((_root["instance"+x]._x == xp1) && (_root["instance"+x]._x>yv) && (_root["instance"+x]._x<yv+90)) {
r1++;
row1[r1] = x;
}
if ((_root["instance"+x]._x == xp2) && (_root["instance"+x]._x>yv) && (_root["instance"+x]._x<yv+90)) {
r2++;
row2[r2] = x;
}
}
x = 0;
while (x < 9) {
x++;
_root["instance" + row1[x]]._x = xp2;
_root["instance" + row2[x]]._x = xp1;
}
}
scramble(250,2);